JSL 오류 'For'의 액세스 또는 평가에 인수가 충분하지 않습니다.안녕,
저는 JSL 스크립팅의 초보자입니다. 다음 오류에 대한 도움이 필요합니다.
"'For'에 대한 액세스 또는 평가에 충분한 인수가 없습니다."
아래 코드에서 열 이름에 특정 문자열이 포함된 열을 삭제하려고 합니다. 내가 어디에서 실수하고 있는지 잘 모르겠습니다.
dt = Current Data Table();
col_list = dt << get column names(string);
for(i = 1; i>= N Items (col_list), i++,
If(
Contains(col_list[i], "MTR") | Contains(col_list[i], "AUTO") | Contains(col_list[i], "ProcessCon") | Contains(col_list[i], "Macro") | Contains(col_list[i], "OTH_SP") ),
Remove from(col_list, i)
)
);
dt << delete columns( col_list );
알려주세요. 감사합니다.
Re: JSL 오류가 'For' 액세스 또는 평가에 인수가 충분하지 않습니다.나는 문제를 해결할 수 있었고 아래 코드는 열 이름을 기반으로 열을 삭제하는 데 효과적이었습니다.
Clear Log();
dt = Current Data Table();
col_list = dt << get column names;
For( c = N Cols( dt ), c >= 1, c--,
If(
Contains( col_list[c], "MTR" ) | Contains( col_list[c], "AUTO" ) | Contains( col_list[c], "ProcessCon" )
| Contains( col_list[c], "Macro" ),
dt << deleteColumn( c )
);
);
Re: JSL 오류가 'For' 액세스 또는 평가에 인수가 충분하지 않습니다.안녕 제프,
감사합니다. 그것은 오류를 제거했습니다. 그러나 나는 논리적 오류를 범했음에 틀림없다. 내가 가진 코드는 데이터 테이블의 모든 열을 지웠습니다.
아마도 열 삭제에 실수를하고 있습니까?
"(col_list, i)에서 제거" 대신 다음을 작성할 수 있습니까?
dt<< 열 삭제(col_list[i]); ?
구문이 확실하지 않습니다. 하지만 내 목표는 열 이름에 "MTR" 또는 "ProcessCon" 등이 있는 모든 열을 삭제하는 것입니다.
알려주세요.
Re: JSL 오류가 'For' 액세스 또는 평가에 인수가 충분하지 않습니다.첫 번째 인수 뒤에는 쉼표(,) 대신 세미콜론(;)이 있습니다.
추가 닫기 괄호도 있습니다.
그것은해야한다:
dt = Current Data Table();
col_list = dt << get column names( string );
For( i = 1, i >= N Items( col_list ), i++,
//________^
//comma here, no semi-colon
If(
Contains( col_list[i], "MTR" ) | Contains( col_list[i], "AUTO" ) |
Contains( col_list[i], "ProcessCon" ) | Contains( col_list[i], "Macro" ) |
Contains( col_list[i], "OTH_SP" )
),
Remove From( col_list, i )
//)
//don't need close parentheses above
);
dt << delete columns( col_list );