현재 JSL 스크립트에서 사용 중인 테이블을 다른 스크립트로 호출하고 싶습니다. 그렇게 할 수 있는 방법이 있습니까? 코드 스니펫을 첨부했습니다. 이 스크립트에 연결한 다른 jsl 스크립트에서 dt1_Name(또는 dt)을 사용하고 싶습니다.
dt1_Name= Pick File(
"Select the JMP MasterFile",
"",
{"JMP Files|jmp;jsl;jrn", "All Files|*"},
1,
0,
""
);
Show( dt1_Name );
dt = Open( dt1_Name );
Show( dt );
bwidth = 150;
dt << bring window to front;
box_win = New Window( "Select Columns",
H List Box(
Panel Box( "Select Columns", ColListData = Col List Box( dt, All, Grouped,width( bwidth ), nLines( 5 ) ) ),
V List Box(
Panel Box( "Case Selected Columns Into Roles",
Lineup Box( N Col( 2 ), Spacing( 3 ),
Button Box( "START DATE", colLista << Append( ColListData << Get Selected ) ),
ColLista = Col List Box( width( bwidth ), N Lines( 1 ), Max Items( 1 ), Min Items( 1 ) ),
Button Box( "END DATE", colListb << Append( ColListData << Get Selected ) ),
ColListb = Col List Box( width( bwidth ), N Lines( 1 ), Max Items( 1 ), Min Items( 1 ) ),
Button Box( "PAY DATE", colListc << Append( ColListData << Get Selected ) ),
ColListc = Col List Box( width( bwidth ), N Lines( 1 ), Max Items( 1 ), Min Items( 1 )),
Button Box( "STATUS", colListd << Append( ColListData << Get Selected ) ),
ColListd = Col List Box( width( bwidth ), N Lines( 1 ), Max Items( 1 ), Min Items( 1 ) ),
Button Box( "Remove",
ColLista << RemoveSelected;
ColListb << RemoveSelected;
ColListc << RemoveSelected;
),
Spacer Box()
)
),
Lineup Box( N Col( 3 ), Spacing( 0, 3 ),
Spacer Box( <<SET auto="" stretching=""></SET>다음을 사용하여 스크립트를 빌드한 방법에 따라 네임스페이스 작동할 수 있습니다.
다음으로 각 스크립트를 시작하면
Names Default to Here( 1 );
특정 스크립트의 모든 변수 등은 해당 스크립트에만 고유합니다.
첫 번째 스크립트가 다음과 같은 경우:
Names default to here(1);
a = 1;
::b = 2;
그런 다음 앞에 :: 연산자를 사용하여 전역적으로 범위가 지정되었기 때문에 b 변수를 볼 수 있습니다.
Names default to here(1);
try(show(a));
try(show(::b));
따라서 테이블 변수를 전역 범위로 정의하는 한 다른 스크립트에서 해당 변수를 호출할 수 있어야 합니다.