이 코드의 목적은 보고서를 생성하기 위해 사용자 입력을 얻는 것입니다. 사용자는 월과 유형을 선택합니다. 코드는 표시된 대로 부분적으로 작동하지만 다른 JSL 파일("include"로 호출됨)에 있는 함수로 변환하려고 하면 즉시 실패합니다. 두 변수를 반환할 수 없으며 항상 "이름이 확인되지 않음" 오류가 발생합니다. Month는 목록으로 반환되고 유형은 문자열(?)로 반환된다는 것을 알고 있습니다. 내가 누락된 내용과 월 및 함수에서 반환된 유형을 어떻게 얻을 수 있습니까?
감사해요!
Names Default To Here( 1 );
monthLst = {"may", "June", "July"};
nw = New Window( "Select Month",
<<MODAL> ","회계", "재무"}, ), Spacer Box( size( 10, 10 ) ), H List Box( Align( 왼쪽 ), Spacer Box(), Button Box( "취소", bbCancelled = 1 ), 버튼 상자( "OK", bbCancelled = 0; selectMo = tb2 << 선택 가져오기; rcb = cb << 선택 가져오기; ) ) ), 스페이서 상자( 크기( 50, 10 ) ) ), 스페이서 상자( 크기( 25, 30 ) ) ); If( bbCancelled == 1, Stop(), If( selectMo == {}, //error modal ::dialogModalNoEdit( "월을 선택하십시오." ); //모달 창 함수 SelExpModal(을 반복적으로 호출합니다. MonthLst ); , //값이 선택된 경우 결과 반환 //Return(selectMo[1] ), ) ); Print(selectMo); Print(rcb);</MODAL>내가 제대로 이해한다면 ..
함수를 생성하는 경우 함수가 실행 된 후 사용할 값을 반환해야합니다 (전역 변수를 사용하지 않으려는 경우).
이 경우 예를 들어 다음과 같이 반환 할 수 있습니다 (연관 배열이 더 좋을 수 있음).
return(selectMo, rcb);
해당 스크립트가 포함 된 스크립트에서 액세스 할 수 있습니다.
Names Default To Here(1);
Include("MonthTypeFunc.jsl");
retVal = MonthTypeWindow();
show(retVal[1],retVal[2]);첨부 된 예제 스크립트. 같은 폴더에 넣고 Main.jsl을 실행합니다.
jthi 대단히 감사합니다!연관 배열 사용을 생각한 적이 없습니다.