cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
The Discovery Summit 2025 Call for Content is open! Submit an abstract today to present at our premier analytics conference.
Choose Language Hide Translation Bar
View Original Published Thread

애플리케이션 현재 데이터 테이블

HubP_SDe
Level III

친애하는 커뮤니티 여러분,

 

여러분의 도움과 수많은 검색 및 반복을 통해 이제 첫 번째 JMP 응용 프로그램을 마무리하는 단계에 이르렀습니다.

 

나는 아직도 몇 가지 점에서 어려움을 겪고 있는데, 누군가가 쉬운 해결책을 제안할 것입니다. ;):

  1. Dialog1 스크립트의 끝에서 사용자가 선택한 데이터 테이블을 엽니다.
    • OnNext1 = Function( {},
       file_path = FilePath << GetText();
       If ( file_path != "",
        //IST Text File
        dt = Open(
         file_path,
         Columns(...)
         ...
        );
        ...
        
        CurrentDataTable( dt );
        Dialog2 << CreateInstance( dt );
       )
    • 하지만 Dialog2에 도달하면 CurrentDataTable이 올바르게 설정되지 않습니다.
    • 파일 경로 필드를 채우고 "다음"을 누르면 볼 수 있습니다.
      Dialog2 Title = ^APPNAME - ^TABLENAME
      테이블 이름이 표시되지 않거나 미리 로드된 다른 DataTable 이름이 표시됩니다.
    • undefined
  2. 다음 문제는 이전 문제로 해결될 것으로 예상됩니다.
    • Dialog2 스크립트가 끝나면 주어진 문자열로 시작하는 모든 열을 Dialog2 Col 목록 상자에 추가하겠습니다.
    • 현재는 확실히 1번 문제로 인해 완전히 비어 있습니다.
    • 게다가 다음과 같은 오류가 발생합니다.
      • Send는 'Send' 액세스 또는 평가 시 22번의 스크립팅 가능 객체를 기대합니다. ColList1 << /*###*/Background Color( 2147483647 ) /*###*/
        Send는 'Send' , ColList1 << /*###*/Set Data Type( "numeric" ) /*###*/ 액세스 또는 평가에서 스크립팅 가능한 개체를 3번 예상합니다.
        Send는 'Send' , ColList1 << /*###*/Get Items/*###*/의 액세스 또는 평가에서 스크립팅 가능한 개체를 기대합니다.
  3. Dialog2에서 무슨 일이 일어나든 이제 "확인"을 누르면 모듈 "Report1"에 사용된 계산된 사용자 정의 Quantile 변수와 관련된 다음 오류가 발생합니다.
    • 잘못된 매트릭스 토큰입니다.
      69행 열 41: ...les( ( Percent1 /100 ), [►( Percent1 /100 ), ( Perc...

원래 English (US) 로 작성된 이 게시물은 귀하의 편의를 위해 번역되었습니다. 답장을 보내면 English (US) 로 다시 번역됩니다.

2 REPLIES 2
Craige_Hales
Super User

Re: 애플리케이션 현재 데이터 테이블

데이터 테이블 참조를 변수(예제에서는 dt)로 유지하고 항상 dt:col(등)을 사용하여 열을 참조하세요. 현재 데이터 테이블에 의존하지 마십시오. 사용자가 테이블을 클릭하거나 새 창이 열릴 때 현재 데이터 테이블이 변경됩니다.

오류 " 보내기에 스크립팅 가능한 개체가 필요함 "라고 설명하면 더 잘 설명할 수 있습니다. @Audrey_Shull . << 연산자는 보내기 연산자입니다. 왼쪽은 객체여야 하고 오른쪽은 객체가 처리할 메시지여야 합니다.

myobject << message( ... );

오류는 왼쪽이 메시지를 허용하는 개체(스크립트 가능한 개체)가 아님을 의미합니다. "myobject"는 예상한 것과 다릅니다. 노력하다

show(myobject);
or
show(type(myobject));

무슨 일이 일어나고 있는지 알아보기 위해.

 

 

원래 English (US) 로 작성된 이 게시물은 귀하의 편의를 위해 번역되었습니다. 답장을 보내면 English (US) 로 다시 번역됩니다.

HubP_SDe
Level III

Re: 애플리케이션 현재 데이터 테이블

고마워요 마크님,

 

  1. "Dialog1" 스크립트의 끝부분을 자세히 살펴보면 "dt" 참조를 "Dialog2"에 전달하고 있으며 이를 코드에서 명시적으로 사용하고 있음을 알 수 있습니다.
    • CurrentDataTable 명령이 아니라 이 명령도 " "Dialog2" 제목 필드의 ^TABLENAME" 전역 참조입니다.
    • "^APPNAME - ^dt"를 시도했지만 "^dt"가 원시 문자열로 표시됩니다.
      undefined
    • 또한 "TABLENAME = dt;"를 추가하려고 했습니다. "Dialog2" "OnModuleLoad"에서는 Dialog2 창 제목에는 아무것도 변경되지 않습니다. TABLENAME은 비어 있습니다.
  2. "스크립팅 개체" 오류를 처리할 때 "Dialog2"의 ColList 개체가 앱 실행 시 테이블이 아직 열려 있지 않아 null인 것 같습니다.
    • 이 문제를 해결하려면 스크립트에서 Col List Box를 동적으로 생성해야 한다고 가정합니다.

건배!

원래 English (US) 로 작성된 이 게시물은 귀하의 편의를 위해 번역되었습니다. 답장을 보내면 English (US) 로 다시 번역됩니다.