파일 가져오기 후 스크립트가 실행되지 않음안녕하세요, 저는 디렉토리에서 많은 파일을 가져오고 하나의 큰 파일(45개 파일)로 쌓았습니다. 하나의 큰 파일로 가져온 후 스크립트가 데이터 세트를 정리하고 열과 행을 추가하는 등의 작업을 수행합니다. 내가 만난 문제는 전체 조각으로 함께 실행되면 스크립트에서 오류가 발생합니다. 가져오기를 먼저 실행하고 파일이 jmp로 로드될 때까지 기다린 다음 코드의 두 번째 부분을 실행하면 작동합니다. 나는 wait(150) 사이에 데이터를 가져오기에 충분한 시간이 있었지만 여전히 작동하지 않습니다.오류 메시지는 ""Column" Column/*###/(j)의 액세스 또는 평가에서 잘못된 인수라고 말합니다. PVOTC 업데이트에 대한 가져오기 직후 스크립트가 실행되지 않는 것을 확인했습니다. 아래는 내 코드입니다. 도움을 주시면 감사하겠습니다.
files = Files In Directory( loadPath);
For( i = 1, i <= N Items( files ), i++, //previous steps non drb or already parsed)
subLoadPath = loadPath ||files[i];
stepID = num(word(2,word(-1,subLoadPath,"/" ),"_"));
If( Is directory(subLoadPath) & stepID >= 11, // 11 is the step started to parse
tableName = word(-1,subLoadPath,"/" );
tableName_flow = word(-2,subLoadPath,"/" );
dt = Multiple File Import(
<<SET folder="">= 1, j--,
If( (Col N Missing( Column( j ) ) / N Row()) == 1,
dt << delete columns( j )
)
);
Wait(5);
dt << Clear Column Selection(); </SET>스크립팅Re: 파일 가져오기 후 스크립트가 실행되지 않습니다.아마도 둘 이상의 테이블이 열려 있을 것입니다. 다음과 같이 명시적으로 시도하십시오.
If( (Col N Missing( Column(dt, j ) ) / N Row()) == 1
열 함수가 예상한 것과 다른 테이블(실제로는 현재 테이블)을 사용하고 있는 것 같습니다. 열 함수에 dt를 추가하면 어떤 테이블인지 알 수 있습니다. 그렇지 않으면 현재 테이블입니다(한 번에 실행할 때 따라잡지 못할 수 있음).
Re: 파일 가져오기 후 스크립트가 실행되지 않습니다.크레이지
답장을 보내 주셔서 감사합니다. 이제 변경했지만 여전히 코드를 전체적으로 실행할 수 없습니다. PVOTC 누락된 값이 업데이트되지 않고 "'Column', Column/*의 액세스 또는 평가에서 잘못된 인수가 잘못되었습니다."라는 동일한 오류 메시지도 표시됩니다. ###*/(제이)"
</CODE><CODE class=" language-jsl">dtImpt = Multiple File Import(
<<SET folder="">= 1, j--,
If( (Col N Missing( Column( j ) ) / N Row()) == 1,
dt << delete columns( j )
)
);
dt << Clear Column Selection(); </SET>
</CODE></PRE><P> </P></LINGO-BODY><LINGO-SUB id="lingo-sub-390303" slang="en-US" mode="NONE">Re: 파일 가져오기 후 스크립트가 실행되지 않습니다.</LINGO-SUB><LINGO-BODY id="lingo-body-390303" slang="en-US" mode="NONE"><P>후에</P><PRE><CODE class=" language-jsl">dt = Multiple File Import(...) << Import Data;
dt는 하나의 테이블만 가져온 경우에도 데이터 테이블 목록을 보유합니다.
기다릴 필요가 없습니다(150).
테이블을 하나만 가져온 경우 dt[1]은 현재 데이터 테이블이 됩니다.
편집: 피할 수 있으면 현재 데이터 테이블()을 사용하지 마십시오. 가능한 경우 dt[1]과 같은 명시적 핸들을 사용하십시오. 현재 데이터 테이블은 JSL이 발명되기 전에 JMP처럼 작동하려고 시도하는 JSL 함수입니다. 여기서 마지막으로 만진 테이블은 다음 플랫폼에서 사용되는 테이블입니다.