JMP 16.2.0(MacOS)을 사용하여 JSL에서 열의 표시 너비를 설정하려고 할 때 JMP 15에서 보지 못한 몇 가지 문제가 나타납니다.
1. 디스플레이 너비 설정 기능은 사용 방법에 따라 두 가지 모드로 작동하는 것으로 보입니다. 하드 코딩된 arg 값으로 호출하면 영구적인 것 같습니다.
col = Column("SN");
col << Set Display Width( 200 );그러나 var arg로 호출하면 원하는 대로 표시되지만 파일과 함께 저장되지 않는 것 같습니다. (또는 최소한 예상대로 저장되지 않았습니다.)
x = 100;
col << Set Display Width( x );
후자의 경우 파일을 저장한 다음 다시 열면 너비가 200으로 렌더링됩니다(아마도 이전 코드를 실행한 결과). 따라서 200은 파일 저장 닫기 및 다시 열기를 통해 지속되지만 100은 그렇지 않습니다.
더 이상하게도 JMP 15로 테이블을 열면 너비가 100으로 렌더링되고(그리고 y = col << 디스플레이 너비 가져오기() 지시는 그것을 확인합니다). 그러나 돌아가서 JMP 16으로 열면 너비가 200으로 렌더링됩니다. 이는 실제로 두 값이 모두 파일과 함께 저장되고 JMP가 JMP 16의 열 너비 속성에 새 모드를 추가했음을 나타냅니다. 참고로 첨부파일에 문제가 있습니다.
2. 만약 디스플레이 너비 설정() function은 JSL 스크립트의 마지막 함수이며 가변 인수를 사용하며 스크립트 가능[] 오류가 발생하고 작업이 수행되지 않는 것으로 보입니다. 그러나 하드 코딩된 값이 주어지면 모든 것이 잘 작동하는 것처럼 보입니다(설정 값이 로그에 표시됨). 이 기능 또는 JMP 16용 JSL 스크립트 종료에 대한 새로운 구문 요구 사항이 있습니까? JMP 15에서는 이 동작이 발생하지 않습니다.
3. 약간 관련이 없지만 JMP 16을 사용하여 이를 이해하려고 할 때 개행 문자가 있는 문자열에 최소 하나의 다른 비공백 문자가 필요한 것처럼 보입니다. 그렇지 않으면 무시되는 것 같습니다. 이것이 디자인 변경인지 SQA 감독인지 확실하지 않습니다.
col << Set Display Width( 200 );
y = col << Get Display Width();
Show(y); Write("\!n");
Write("---");
x=100;
col << Set Display Width( x );
y = col << Get Display Width();
Show(y);산출:
y = 200;---
y = 200;
예를 들어 문자열의 줄 바꿈 앞에 마침표가 추가되면 ".\!N" , 개행이 인식됩니다.
y = 200;.
---
y = 200;
안녕 @SteveTerry - <
Eval(EvalExpr(col << Set Display Width( Expr(x) )));
향후 릴리스에서 평가를 수정하는 방법을 살펴보겠습니다.
줄 바꿈 문제의 경우 "\!n"보다는 "\!N"을 시도하는 것이 좋습니다.전자는 호스트 환경에 따라 달라지는 줄 바꿈을 삽입하고 후자는 특정 "줄 바꿈" 문자를 삽입합니다.내 Mac의 귀하의 예제는 변경 없이 작동하는 것 같지만 이것이 시스템 설정에 따라 달라질 수 있는지 확실하지 않습니다.
해결 방법에 감사드립니다. @danschikore . 단독 "\!n" 문제에서 "\!N"은 차이를 만들지 않았습니다. (그리고 "\!n"은 항상 Mac에서 잘 작동했습니다). 동료도 이 동작을 확인했습니다(16.1에서). JMP 팀에 보고하는 가장 좋은 방법은 무엇입니까?