스크립트 변수를 새 스크립트에 전달안녕,
기본적으로 for 루프를 사용하여 여러 스크립트를 데이터 테이블에 삽입하려고 합니다.
For( SV = 1, SV <= N Items( CL ), SV++,
DT2 << New Script(
Char(SV),
For( x = 7, x <= N Items( ColLst ), x++,
:Column(Char(ColLst[x])) << Hide (1);
);
For( w = 1, w <= N Items( Lst ), w++,
:Column(Char(CL[SV][w])) << Hide (0);
);
);
);문제는 이러한 스크립트 중 하나가 실행될 때 SV가 무엇인지 알지 못한다는 것입니다. 메인 스크립트에서 SV를 캡쳐해서 New Script에 세팅하는 방법이 필요합니다. 예를 들어 SV를 1로 바꾸면 내장된 모든 스크립트가 SV == 1인 것처럼 작동하므로 SV를 해당 스크립트의 올바른 값으로 "설정"하려면 For 루프가 필요합니다.
바라건대 이것은 어떤 의미가 있습니다.
Re: 새 스크립트에 스크립트 변수 전달일반적으로 이 방법을 사용하여 변수를 스크립트에 전달할 수 있습니다.
Eval (eval expr(
dt << New script (
"name",
Bivariate(
Y(expr(col_var)),
X(expr(col_list_var))
)
)
));
Re: 새 스크립트에 스크립트 변수 전달이 시도:
For( SV = 1, SV <= N Items( CL ), SV++,
Eval(Parse(Eval Insert("DT2 << New Script(
Char(SV),
For( x = 7, x <= N Items( ColLst ), x++,
:Column(Char(ColLst[x])) << Hide (1);
);
For( w = 1, w <= N Items( Lst ), w++,
:Column(Char(CL[^SV^][w])) << Hide (0);
);
);"
)));
);
Re: 새 스크립트에 스크립트 변수 전달나는 시도했다:
For( SV = 1, SV <= N Items( CL ), SV++,
DT2 << New Script(
Char(SV),
For( x = 6, x <= N Items( ColLst ), x++,
:Column(Char(ColLst[x])) << Hide (1);
);
For( w = 1, w <= N Items(
Eval(
Eval Expr(
Expr(
CL[
Eval(
Eval Expr(
Expr(SV)
)
)
]
)
)
)
), w++,
:Column(
Char(
Eval(
Eval Expr(
CL[
Eval(
Eval Expr(
Expr(SV)
)
)
][w]
)
)
)
) << Hide (0);
);
);
);오류는 다음과 같습니다.
Subscript Range in access or evaluation of 'Subscript' , CL[/*###*/Eval( Eval Expr( Expr( SV ) ) )]
Re: 새 스크립트에 스크립트 변수 전달사용해보기 평가( 평가 Expr(...Expr(SV)...)) SV(및 필요한 경우 CL)의 사전 평가를 강제합니다.