모달 SQL 쿼리 스크립트안녕하십니까,
쿼리가 스크립팅될 때 SQL 쿼리에 "모달 동작"을 추가하는 것이 가능한지 궁금합니다. 내 예는 다음과 같습니다.
***** 스크립트 시작 *****
새 SQL 쿼리(
연결(...),
고르다(...),
에서(...)
) << 수정 << 모달;
doStuffWithTheTableFromTheQuery();
***** 스크립트 종료 *****
"<< Modal"이 작동하지 않는다는 것을 알고 있습니다. PostQueryScript()가 있다는 것도 알고 있습니다. 그러나 나는 그것 없이 내 스크립트를 작성하고 싶습니다. SQL 쿼리를 모달로 만드는 방법이 있습니까?
고맙습니다!
Re: 모달 SQL 쿼리 스크립트완벽한!
감사,
승리자
Re: 모달 SQL 쿼리 스크립트이봐, vkessler,
변화
) << run;
에게:
) << run foreground;
운영 기본 설정이 설정된 경우 자체적으로 백그라운드에서 쿼리를 실행하므로 (기본값) doStuffWithTheTableFromTheQuery() 너무 빨리 실행됩니다. 사용하는 경우 전경 실행 , 스크립트는 계속하기 전에 쿼리가 완료될 때까지 기다립니다.
HTH,
에릭
Re: 모달 SQL 쿼리 스크립트에릭,
조언 감사합니다. 프롬프트 필터를 사용하면 쿼리가 모달이 됩니다. 그러나 이것은 불행히도 내 문제를 해결하지 못합니다. 이는 데이터베이스에서 실제 다운로드하는 데 시간이 필요하고 테이블을 스크립팅할 수 없기 때문에 "doStuffWithTheTableFromTheQuery()"가 다시 실패하기 때문입니다. 내 솔루션은 이제 프롬프트 필터와 while 루프가 있는 쿼리입니다. "wait(0)"은 효과가 없는 것 같습니다. 내 코드 예제는 다음과 같습니다.
새 SQL 쿼리(
연결(...),
쿼리명("SQL 테이블"),
고르다(...),
에서(...),
어디에(... 즉각적인(...) ...)
) << 실행;
checkForDataTable = 함수({분},
dt스위치 = 0;
dtCountTry = 0;
dtCountMax = 120 * 최소; // 120 * 최소 * 0,5 s = 최소 분
동안( dtSwitch == 0 & dtCountTry < dtCountMax,
dtCountTry++;
노력하다(
dt = 데이터 테이블( "SQL 테이블" );
dt스위치 = 1;
,
If( dtCountTry == dtCountMax,
Throw( "스크립트가 중지되었습니다. SQL 쿼리는 "||Char(min)||"를 사용했습니다. 분." )
);
기다림( 0.5 );
);
);
);
checkForDataTable(10);
doStuffWithTheTableFromTheQuery();
Re: 모달 SQL 쿼리 스크립트이봐, vkessler,
쿼리 작성기 창(쿼리 개체에 수정을 전달할 때 나타나는 창)을 모달로 만드는 방법은 없습니다. 그러나 사용자가 변경할 수 있게 하려는 것이 쿼리의 필터 부분으로만 제한되어 있는 경우 쿼리에 프롬프트 필터를 포함하도록 만든 다음 수정 대신 Run Foreground를 수행할 수 있습니다. 필터 프롬프트는 *가* 모달이므로 사용자에게 필터를 업데이트하라는 메시지가 표시되고 JSL의 다음 줄이 실행되기 전에 쿼리가 완료될 때까지 실행됩니다("Foreground" 덕분에).
필터를 묻는 메시지가 충분하고 수행 방법을 모르는 경우 알려주시면 시작할 수 있습니다.
감사,
에릭
Re: 모달 SQL 쿼리 스크립트wait(0); 귀하의 쿼리 후. 다음 단계를 계속하기 전에 쿼리가 완료되도록 허용해야 합니다.
Re: 모달 SQL 쿼리 스크립트문제는 쿼리가 실행되기 전에 스크립트가 진행된다는 것입니다. 따라서 "doStuffWithTheTableFromTheQuery()"는 테이블이 없기 때문에 실패합니다. 스크립트가 계속되기 전에 테이블의 존재를 확인하는 while 루프에 대한 해결 방법이 있지만 모달 SQL 쿼리와 같은 다른 솔루션이 있는지 궁금합니다.
Re: 모달 SQL 쿼리 스크립트SQL 쿼리가 모달이 되기를 원하는 이유를 제공할 수 있습니까?