2015-01-27 2 views
0

내가 행동 방식 ACTION_REPLACE으로, 팝업 형태에서, 버튼을(). action_replace()에는 BOM의 제품을 대체하는 로직이 있습니다. 모델은 product.template입니다. OpenERP에서 버튼 클릭 이벤트에 레코드 삽입을 제어하려면 어떻게해야합니까?

I 버튼을 클릭 할 때마다

는 새 레코드는 product_template 테이블에 삽입됩니다. 또한 product_product 테이블의 default_code라는 필드가 빈 문자열로 업데이트되었습니다 (제품 ID에 연결된 product_template_id는 product_product 테이블에 존재하지 않으므로).

내가 배운 것은 버튼을 클릭 할 때마다 시스템의 기본 동작은 데이터를 먼저 저장 한 다음 버튼 클릭 기능을 실행하는 것입니다. 이러한 레코드 삽입을 피할 수있는 방법이 있습니까?

답변

0

버튼 클릭 아무것도 자체하지 않습니다. 버튼에 첨부 된 함수의 코드는 해당 레코드를 삽입하는 코드입니다.

버튼을 클릭 할 때 다른 동작을 사용하려면 action_replace() 기능을 무시해야합니다.

+0

Daniel, 내가 배운 것은 버튼을 클릭 할 때마다 시스템의 기본 동작은 데이터를 먼저 저장 한 다음 버튼 클릭 기능을 실행하는 것입니다. 이것에 대해 의견을 말하십시오. – Nebojsa

+0

테스트가 내가 만든 나의 ACTION_REPLACE() 함수는 아무것도하지 않고 내가 버튼을 클릭 할 때마다 여전히 기록은 product_template 테이블에 삽입되었다. – Nebojsa

+0

내 버튼 기능 정의는 "DEF ACTION_REPLACE (자기, CR, UID, IDS 문맥 = 없음)"없다. ids는 product_template 테이블에 새로 삽입 된 레코드의 id를 반환합니다. – Nebojsa

관련 문제