유효한 JSL 코드에 나타나는 알 수 없는 메시지최근 JSL이 유효한 코드에 대해 알 수 없는 메시지를 보고하는 것을 확인했습니다. 다음은 최신 예입니다(알 수 없는 메시지가 강조 표시됨).
Names Default to Here(1);
Delete Symbols();
databaseFile = Pick File(
"Select Music Collection File",
"$DOCUMENTS",
{"Music Collection|csv"},
1,
0
);
albumTable = Open(databaseFile);
albumTable << <FONT color="#FF0000">Delete Rows</FONT>(N Rows());
:Name("Artist/Album") << Set Name("Title");
:Single 2 << Set Name("CD Single");
:LP << Value Labels({0 = "False", 1 = "True"});
:EP << Value Labels({0 = "False", 1 = "True"});
:Single << Value Labels({0 = "False", 1 = "True"});
:Album << Value Labels({0 = "False", 1 = "True"});
:CD Single << Value Labels({0 = "False", 1 = "True"});
:Want << Value Labels({0 = "False", 1 = "True"});
albumTable << <FONT color="#FF0000">New Column</FONT>(
"Artist Block",
Character,
Formula(If(:Format == "", :Title))
);
albumTable << <FONT color="#FF0000">New Column</FONT>(
"Artist",
Character,
Formula(
If(Row() != 1,
If(:Artist Block == "",
Lag(:Artist, 1),
:Artist Block
),
:Artist Block
)
)
);
albumTable << <FONT color="#FF0000">Move Selected Columns</FONT>({"Artist"}, To First);
tableName = albumTable << <FONT color="#FF0000">Get Name</FONT>();
artistCategoryTable = albumTable << <FONT color="#FF0000">Subset</FONT>(
Output Table("Artist Category " || tableName),
Copy Formula(0),
All Rows,
Selected Columns Only(0)
);
Close(albumTable, NoSave);
artistRowFilter = artistCategoryTable << <FONT color="#FF0000">Data Filter</FONT>(
Mode(Include(1)),
Inverse(1),
Add Filter(
Columns(:Artist Block),
Where(:Artist Block == "")
),
Invisible
);
artistCategoryTable << <FONT color="#FF0000">Delete Rows</FONT>;
artistCategoryTable << <FONT color="#FF0000">Delete Columns</FONT>(:Artist Block);
artistRowFilter << <FONT color="#FF0000">Clear</FONT>;
artistRowFilter << <FONT color="#FF0000">Delete</FONT>;이 색상 코딩을 본 다른 스크립트에서와 마찬가지로 이 스크립트는 문제 없이 실행됩니다. 유효한 JSL 메시지가 알 수 없음으로 표시되는 이유에 대한 아이디어가 있습니까?
스크립팅Re: 유효한 JSL 코드에 알 수 없는 메시지가 나타납니다.나는 갖는 것을 좋아한다 "색상 알 수 없는 개체 메시지" 활성화됨:

그러면 개체가 초기화되었는지 빠르게 확인할 수 있습니다.
그러나 때로는 메시지가 "알려져 있음"에도 불구하고 빨간색으로 표시됩니다.
몇 분 후 Jmp가 오류를 수정합니다.
예: dt는 데이터 테이블로 알려져 있으며 몇 분 후에 Jmp는 데이터 테이블을 보낼 수 있음을 알게 됩니다. 데이터 업데이트 시작 데이터 테이블에.
왜 데이터 테이블 시작 알 수 없음으로 표시?

Re: 유효한 JSL 코드에 알 수 없는 메시지가 나타납니다.그거였다. 다크 모드 테마를 만들려고 할 때 실수로 "색상 알 수 없는 개체 메시지"를 활성화한 것 같습니다.
Re: 유효한 JSL 코드에 알 수 없는 메시지가 나타납니다."알 수 없는 개체 메시지 색상 지정" 기본 설정이 켜져 있는 것 같습니다. 스크립트 편집기 기본 설정 그룹의 "JSL 서식 지정" 그룹 상자에서 이 설정을 찾을 수 있습니다.스크립트를 실행하기 전에 albumTable 변수가 할당되지 않았으므로 jmp는 개체 메시지를 알 수 없음으로 표시하는 데 공격적이지 않습니다.스크립트가 실행되면 albumTable이 테이블과 동일하게 설정되고 해당 테이블이 닫힙니다.이 시점에서 jmp는 어떤 메시지가 유효한지 더 잘 결정할 수 있으며 닫힌 테이블은 "delete rows" 메시지를 처리할 수 없기 때문에 메시지가 빨간색으로 표시됩니다.개체와 메시지를 평가하는 데 시간이 많이 걸릴 수 있으므로 JMP는 변수가 변경될 때마다 모든 스크립트를 다시 확인하지 않으므로 스크립트의 형식을 다시 지정하거나 메시지가 있는 줄을 편집하여 색상 업데이트를 확인해야 할 수 있습니다.
Re: 유효한 JSL 코드에 알 수 없는 메시지가 나타납니다.
@제프_퍼킨슨 쓴 :
정말 이상합니다. 나는 전에 그것을 본 적이 없다. 실행 중인 JMP 버전은 무엇입니까?
같게. 내가 말했듯이 몇 달 전까지만 해도 이 문제가 없었습니다. 정말 이상합니다. 나는 얼마 전에 JSL을 위한 어두운 모드 테마를 만드는 실험을 시도했지만 스타일 목록의 모든 항목이 JSL에서 연결되는 것에 정통하지 않기 때문에 궁극적으로 기본 설정으로 돌아갔습니다. 내가 색상 과학에 대해 충분히 알고 있어서 보색이지만 전체 테마에 잘 맞는 색상을 선택하는 데 꽤 **삑삑**거리는 것은 도움이 되지 않습니다. 지금은 그렇게 많은 자유 시간이 없습니다. :frowning_face:
JMP 14.3을 실행하고 있습니다. 저는 회사의 JMP 관리자로서 JMP 사용자를 최신 상태로 유지하려고 노력합니다.
Re: 유효한 JSL 코드에 알 수 없는 메시지가 나타납니다.이제 나는 당신이 설명하는 것을 이해합니다. 그림은 스크립트 편집기의 색상 코딩이 유효한 메시지를 올바르게 색칠하지 않는다는 것을 설명하는 데 도움이 됩니다. 대신, 기본 환경 설정에 따라 빨간색으로 표시됩니다. 알 수 없는 메시지 .

정말 이상합니다. 나는 전에 그것을 본 적이 없다. 실행 중인 JMP 버전은 무엇입니까?
Re: 유효한 JSL 코드에 알 수 없는 메시지가 나타납니다.
@Craige_Hales 쓴 :
또한: 알려지지 않은 JMP가 준비하지 못한 일이 발생했을 때 JMP가 사용하는 간결한 오류 메시지입니다. 문제를 격리하기 위해 로그를 관찰하면서 한 번에 JSL 문을 실행할 수 있습니다. JMP는 JSL이 구문 분석되고 실행될 때 오류 진단을 시도합니다. JMP가 오류에 대한 계획 없이 오류를 포착하는 경우 JMP가 말할 수 있는 모든 것은 다음과 같습니다. 알려지지 않은 .
독립적인 예를 게시할 수 있다면 JMP는 그것을 찾은 다음 사람에게 더 나은 메시지를 줄 수 있습니다.예제를 기술 지원에 보내면 추적할 수 있습니다.
문제 라인이 알려지고 변수의 값을 연구할 수 있으면 문제가 더 분명해질 수 있습니다(로그에 인쇄). 숫자 데이터가 필요한 누락된 값 또는 문자 데이터일 수도 있고, 교환된 함수 호출에 대한 두 개의 매개변수일 수도 있고, 너무 크거나 작은 테이블 행을 사용하는 것일 수도 있습니다. 이 모든 것보다 더 나은 메시지가 있어야 합니다. 알려지지 않은 .
전달하려는 내용이 누락된 것이 아니라면 메시지 창이나 디버거에서 보고된 오류를 참조하는 것 같습니다. 내가 얻는 플래그는 코드에 있습니다. JSL의 기본 색상 코딩을 기반으로 빨간색 키워드는 오류 또는 알 수 없는 메시지입니다. 스크립트를 저장할 때 오류 메시지가 표시되지 않고 문제 없이 실행되므로 빨간색 키워드가 알 수 없는 메시지일 가능성만 남아 있습니다.
Re: 유효한 JSL 코드에 알 수 없는 메시지가 나타납니다.JSL 태그가 있는 게시물에 코드를 추가하면 강조 표시가 되지 않으므로 다음은 플래그가 있는 코드의 스크린샷입니다.

원래 게시물에서 언급했듯이 스크립트는 의도한 대로 작동하지만 많은 행에 알 수 없는 메시지로 표시된 예약어가 있다는 사실은 또 다른 근본적인 문제가 있다고 생각하게 합니다. 저는 몇 년 동안 JSL을 사용해 왔으며 이제 이러한 알 수 없는 메시지 플래그를 받은 것은 지난 몇 달밖에 되지 않았습니다. 지금 생각해 보니 JMP 설치를 14.3으로 업데이트한 후에 시작된 것 같습니다.
gzmorgan0은 다음과 같이 썼습니다.
albumTable << 행 삭제(N Rows()); 이 JSL의 의도는 무엇입니까?
해당 코드 줄은 앨범 데이터가 아닌 데이터 테이블의 마지막 행을 삭제합니다.
gzmorgan0은 다음과 같이 썼습니다.
데이터 필터를 사용하는 모든 코드가 혼란스럽습니다. 간단히 사용
artistCategoryTable <SPAN class="token operator"><</SPAN><SPAN class="token operator"><</SPAN><SPAN class="token messages"> select where</SPAN><SPAN class="token punctuation">(</SPAN><SPAN class="token punctuation">:</SPAN>Artist<SPAN class="token operator">==</SPAN><SPAN class="token string">""</SPAN><SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">;</SPAN>
artistCategoryTable <SPAN class="token operator"><</SPAN><SPAN class="token operator"><</SPAN><SPAN class="token messages"> delete rows</SPAN><SPAN class="token punctuation">(</SPAN><SPAN class="token punctuation">)</SPAN><SPAN class="token punctuation">;</SPAN>
스크립트에 있는 필터링 코드는 프로세스를 수동으로 진행할 때 JMP에서 생성한 것입니다. 약 5년 동안 JSL을 사용해 왔지만, 제 작업량이 너무 많아서 새로운 것을 마스터하는 것은 고사하고 새로운 것을 배울 시간이 거의 없기 때문에 처음부터 완전히 스크립트를 생성하는 경우는 거의 없습니다. . 우리 고객 중 한 명이 R을 사용하고 있고 우리도 똑같이 해야 한다고 주장하기 때문에 이제 내가 R을 배워야 한다는 사실을 덧붙입니다.
Re: 유효한 JSL 코드에 알 수 없는 메시지가 나타납니다.편집: 아래 추가 설명 후 이 답장을 무시하십시오...감사합니다 Jeff!
또한: 알려지지 않은 JMP가 준비하지 못한 일이 발생했을 때 JMP가 사용하는 간결한 오류 메시지입니다. 문제를 격리하기 위해 로그를 관찰하면서 한 번에 JSL 문을 실행할 수 있습니다. JMP는 JSL이 구문 분석되고 실행될 때 오류 진단을 시도합니다. JMP가 오류에 대한 계획 없이 오류를 포착하면 JMP가 말할 수 있는 모든 것은 알려지지 않은 .
독립적인 예를 게시할 수 있다면 JMP는 그것을 찾은 다음 사람에게 더 나은 메시지를 줄 수 있습니다.예제를 기술 지원에 보내면 추적할 수 있습니다.
문제 라인이 알려지고 변수의 값을 연구할 수 있으면 문제가 더 분명해질 수 있습니다(로그에 인쇄). 숫자 데이터가 필요한 누락된 값 또는 문자 데이터일 수도 있고, 교환된 함수 호출에 대한 두 개의 매개변수일 수도 있고, 너무 크거나 작은 테이블 행을 사용하는 것일 수도 있습니다. 이 모든 것보다 더 나은 메시지가 있어야 합니다. 알려지지 않은 .
@EvanMcCorkle @Audrey_Shull
Re: 유효한 JSL 코드에 알 수 없는 메시지가 나타납니다.@mdawson69 ,
강조 표시되는 JSL 라인은 무엇입니까? JSL에는 혼란스러운 여러 줄이 있습니다.
자세한 내용이 없으면 귀하의 문제를 이해할 수 없습니다.