내 스크립트는 디버거를 통해 실행되지 않지만 디버거 없이 실행됩니다.안녕하세요!
스크립트 창에서 "스크립트 실행" 버튼만 사용하면 완벽하게 작동할 수 있는 스크립트가 있지만 디버거를 열고 "실행" 버튼을 사용하면 오류 메시지가 나타납니다.
메시지는 "하나의 요소 목록 또는 행렬 "플래그"가 있는 목록을 첨자화하는 것은 이제 스칼라가 아닌 목록입니다.
참조하는 스크립트의 줄은 아래에서 굵게 표시됩니다.
flag = loc(-5<=CalcMassesFromPeak<=5);
// Show(flag);
y= NRow(flag);
WellLookup = ESIOligoInfo["WellIDs"];
if(y!=0,FlaggedWells = WellLookup[flag],FlaggedWells = "");
디버거를 사용하지 않을 때 스크립트가 잘 실행되기 때문에 스크립트에 문제가 있다고 생각하지 않습니다. 나는 단지 무슨 일이 일어나고 있는지 모른다!
도움이 될 수 있도록 전체 스크립트를 첨부했습니다.
Re: 내 스크립트는 디버거를 통해 실행되지 않지만 디버거 없이는 실행됩니다.@Melanie_J_Drake
나는 이것이 몇 년 전의 것이라는 것을 알고 있지만 동일한 문제에 대한 정보를 찾으려고 할 때 이것을 발견했습니다.경고를 끌 수 있다고 말씀하셨습니다.JMP 16에서 이 작업을 수행하는 방법을 모르겠습니다. 아직 사용할 수 있는지 아십니까?
고맙습니다!
Re: 내 스크립트는 디버거를 통해 실행되지 않지만 디버거 없이는 실행됩니다.나는 이것이 13.0에 대한 두 가지 업데이트에서 나온 것이라고 생각합니다. 새로운 기능에서 도난:
- JSL 디버거 기본 설정에서 Break for Compatibility Warnings는 새로운 옵션입니다.
잠재적인 JSL 호환성 문제가 발견되면 스크립트 실행을 중지합니다. 디버거
옵션이 켜져 있을 때 스크립트의 각 잠재적 문제에 대해 한 번만 중지됩니다. 만일 거기에
스크립트에서 여러 번 발생하고 문제가 아니라고 판단되면 다음을 수행할 수 있습니다.
옵션을 끕니다. 기본 설정은 기본적으로 선택되어 있습니다.
- 1x1 행렬을 행렬이나 목록의 첨자로 사용하면 이제 결과는 행렬이나
스칼라 숫자 대신 목록.
디버거는 스칼라 결과 대신 행렬 또는 목록 결과를 제공할 수 있는 것을 사용하고 있다고 알려줍니다. 환경 설정에서 경고를 끌 수 있습니다. 하지만 먼저 귀하의 스크립트가 12에서 13으로의 동작 변경을 처리할 수 있는지 확인하겠습니다.
Re: 내 스크립트는 디버거를 통해 실행되지 않지만 디버거 없이는 실행됩니다.
Preference dialogPreference dialog기본 설정 대화 상자
일반적으로 나를 위해 이것을 여행하는 호환성 문제는 위에 설명되어 있습니다. 한 번에 [42]에 1::1(1에서 1까지의 요소 배열)을 첨자하면 42가 반환됩니다. 이제 [42]를 반환합니다. 원래 생각은 스칼라 값이 일반적인 경우이지만 N==1에 대한 특별한 경우가 없기 때문에 모든 1::N에 대해 일관성이 있는 것이 더 좋습니다.
This makes the debugger pause, making debugging painful. Change the preference! It probably works the way you expect it to now.This makes the debugger pause, making debugging painful. Change the preference! It probably works the way you expect it to now.이로 인해 디버거가 일시 중지되어 디버깅이 어려워집니다. 환경 설정을 변경하십시오! 아마도 지금 기대하는 방식으로 작동할 것입니다.