2016-07-26 3 views
1

ListPage 양식을 작성하고 버튼을 배치했습니다. 이 버튼을 클릭하면 메소드를 실행하려고합니다. 나는 ListPage 폼의 메서드를 덮어 쓸 수 없다는 것을 알고 있으므로 폼이 사용하고있는 테이블에 메서드를 만들고 싶습니다.목록 페이지 양식에서 클릭 한 버튼을 기반으로 메소드 실행

그래서 테이블 메서드에서 버튼을 클릭했는지 확인해야합니다. 어떻게 수행 할 수 있습니까?

난과 방법을 만들려고 한 :

MenuItem.clicked(); 

하지만 난 MenuItem 그렇게 .clicked();가 인식 선언하는 방법을 모르겠습니다. 내가 어떻게이 일을 할 수 있니?

+0

잠깐, 테이블 메서드에서 메뉴 항목을 "클릭"하시겠습니까? 그런 다음 메뉴 항목이 다른 방법을 실행해야합니까? 처음에 어떻게 테이블 메소드를 트리거할까요? 이것은 혼란스러워 보입니다. 해결하고자하는 실제 문제에 대해 좀 더 알려주십시오. 또한 ListPages의 다른 버튼이 어떻게 작동하는지 살펴 보았습니까? –

답변

2

목록 페이지의 버튼에 "do"하고 싶은 것 같습니다. 들어가야 할 패턴은 코드/로직을 담을 클래스를 생성 한 다음 메뉴 항목을 통해이를 참조하는 것입니다.

이 같은 주요 방법으로 클래스 ( MyClass) 만들기 :
static void main (Args _args) 
{ 
    // Your X++ code here. 
} 

그런 다음 ObjectType = ClassObject = MyClassaction menu item을 만들 수 있습니다.

목록 페이지에 action menu item을 추가하면 코드를 실행할 수 있습니다. _args은 데이터를 MyClass에 전달하는 방법이며 원하는 경우 다시 양식을 참조 할 수도 있습니다. _args.record()을 통해 레코드를 가질 수 있도록 목록 페이지의 메뉴 항목에 DataSource 속성을 설정하려고합니다.

+0

정확함, 이것은 내가 의미 한 것입니다. 나는 Action Menu Item을 만들었고 모든 것이 내가 원하는대로 작동한다. 고맙습니다. – user6639789