초보자를 위한 JSL 연습 - 예상치 못한 "{". 아마도 ";" 또는 ","가 빠졌을 것입니다.안녕,
파일 대화창을 통해 .jmp 파일을 선택하여 여는 JSL 연습을 하고 있습니다. 사용자가 선택하지 않은 경우 종료합니다.
하지만 아래와 같은 오류가 발생합니다.
예상치 못한 "{". 아마도 ";" 또는 ","가 누락되었을 것입니다.
7번째 줄 21번째 열: if (Is Missing(fn)) ►{
무시된 나머지 텍스트는 다음과 같습니다.
{exit();}열기(fn);
내 스크립트는 아래와 같습니다.
// Open a dialog to choose a .jmp file to open
// Get the filename of the .jmp file to open
fn = Pick File("Select a .jmp file to open", "", {"JMP Files|jmp;jsl;jrn", "All Files|*"}, 1, 1, "Default Filename.jmp");
// If the user did not select a file, exit the script
if (Is Missing(fn)) {
exit();
}
// Open the selected file
Open(fn);여기서 제가 놓친 부분이 무엇인지 지적해 주시면 감사하겠습니다.
감사합니다.
자동화 및 스크립팅Re: 초보자를 위한 JSL 연습 - 예상치 못한 "{". 아마도 ";" 또는 ","가 빠졌을 것입니다.스크립팅 가이드를 읽을 시간을 내는 것이 좋습니다. JSL의 구조와 구문을 배우는 효율적인 방법임을 알게 될 것입니다.
귀하의 코드에 관하여:
If() 문 구문이 잘못되었습니다. If() 문의 형식은 다음과 같습니다.
If( condition1, result1, ,...,)
귀하께서 받으신 오류 문장은 7번째 줄, 21번째 열의 "{"를 가리키고 있습니다. 귀하의 If() 함수에는 조건은 있지만 결과가 없습니다.
If (Is Missing(fn))
조건이 있지만 두 번째 ")"는 문장을 닫습니다. 그런 다음 JMP는 "{"를 마주치고 어떻게 해야 할지 모릅니다. 당신이 정말로 원하는 것은 다음과 같다고 생각합니다.
If( Is Missing( fn ),
Exit(),
// Else Open the selected file
Open( fn )
);
또한 사용에 대해 오래고 깊이 생각해보는 것이 좋을 수도 있습니다.
Exit()
JMP를 종료합니다.
스크립트 실행을 중지하고 사용자에게 JMP 세션을 열어둔 채로 둘 수도 있습니다. 이렇게 하려면 다음을 사용합니다.
Throw()
기능.
Re: 초보자를 위한 JSL 연습 - 예상치 못한 "{". 아마도 ";" 또는 ","가 빠졌을 것입니다.잘못된 구문을 사용하고 있습니다. ( } 대신 ( 를 사용하고 } 대신 )를 사용하고 표현식을 ;로 끝내세요.)
JSL을 배우는 동안 Scripting Guide(jmp.com)를 살펴봐야 합니다. JSL에 대한 과정도 있는데, 여기 JMP Scripting Language Course 소개 와 같고, JSL Scripters Club 사용자 그룹인 JMP Scripters Club - JMP User Community 에서 제공하는 자료도 있습니다.