안녕하세요 여러분,
데이터를 추출하기 위해 다양한 SQL 쿼리를 실행하는 3개의 스크립트가 있습니다. 또 다른 스크립트는 포함()을 사용하여 해당 스크립트 각각을 실행한 다음 세 테이블을 일부 수정하고 조인합니다.
해당 스크립트 중 두 개에서 개별 스크립트를 실행하거나 include()를 사용하여 호출하면 동일한 테이블이 표시됩니다. 그러나 마지막 스크립트의 경우 실행하면 8000개 정도의 행이 표시되지만, include() 명령을 통해 실행하면 4000개 미만의 행이 표시됩니다. 이 외에도 일부 열도 누락되었습니다.
다른 모든 것을 제거했으며 이제 아래와 같은 한 줄이 있는 jsl 스크립트만 있습니다.
포함("...\Test.jsl");
Test.jsl을 직접 실행할 때와는 다른 테이블이 제공됩니다.
나는 이전에 이 동작을 본 적이 없으며 이전 두 스크립트를 어떻게 실행하더라도 동일한 테이블을 얻는다는 사실은 include()의 일부 기능이 내 데이터와 작동하지 않는다는 것을 알려줍니다.
이전에 이런 일을 겪은 적이 있습니까? 혹시 모르니 JMP 17.0.0을 사용하겠습니다.
감사합니다,
다양한 충돌이 있을 수 있습니다. 스크립트에 비슷한 이름의 변수가 있습니까? 스크립트가 Names Default To Here(1)로 시작합니까? 아니면 <를 사용합니까? < https://www.jmp.com/support/help/en/17.2/#page/jmp/programming-functions.shtml?os=win&source=application#ww5015591 및 https://www.jmp.com/support/help /en/17.2/#page/jmp/include-a-script.shtml#ww306193
안녕하세요 Jarmo님,
답변 주셔서 감사합니다. 네, New Context도 시도해 봤습니다.
문제는 SQL 코드에 있을 수 있다고 생각합니다. 특정 값을 다운로드하도록 작성되었지만 일부 추가 매개변수를 다운로드하도록 수정하여 모든 것이 혼란스러울 수 있습니다. SQL 스크립트를 다시 살펴봐야 합니다. 이는 JMP 문제가 아닐 수도 있으므로 이 게시물을 삭제하시기 바랍니다.
다시 한 번 감사드립니다.
확인해야 할 또 다른 사항: 쿼리는 백그라운드에서 실행될 때나 포그라운드에서 실행될 때 타이밍 동작이 다를 수 있습니다. 때로는 명시적으로 Run Foreground를 사용하는 것이 도움이 될 수 있습니다.
