여러분 안녕하세요.
아래 문제를 해결하려면 도움이 필요합니다 (코드 첨부).
1. 사용자가 정보를 입력 한 다음 "제출"버튼을 누르면 위젯이 사전 정의 된 데이터 테이블에 성공적으로 저장됩니다. 그러나 위젯의 표시 테이블을 업데이트 할 수 없습니다.
2. 예를 들어, 사용자가 5 행의 데이터를 제출하고 두 번째 행이 잘못 기록 된 후 "삭제"단추를 작성하려고하지만 여전히 올바른 행을 선택하여 (위젯에서) 선택할 방법이 없습니다.
data_input = Expr(
dt = New Table( "Data Table",
Invisible,
New Column( "Sequence",
Numeric,
Formula(Sequence(1,99,1))
),
New Column( "Col1",
Numeric,
"Continuous",
Format( "d/m/y h:m:s" ),
Input Format( "d/m/y h:m:s" ),
),
New Column( "Col2",
Character,
"Nominal"
),
New Column( "Col3",
Character,
),
New Column( "Col4",
Character,
),
New Column( "Col5",
Character,
"Nominal"
),
New Column( "Col6",
Character,
"Nominal"
),
New Column( "Col7",
Character,
"Nominal"
),
New Column( "Col8",
Character,
"Nominal"
),
New Column( "Col9",
Numeric,
Format( "h:m" )
),
New Column( "Col10",
Numeric,
Format( "h:m" )
),
);
);
buffer = Expr(
Data1 = {"A", "B", "C", "D", "E", "F"};
co1 = Data1[nw["t2"]];
);
graphic = Expr(
nw = New Window( " Records ",
<<MODAL></MODAL>
좋은 날,
Black ,
이를 수행하는 몇 가지 방법이 있습니다.
- dt << 보고서로 가져 오기 , 스크립터는 추가 할 때마다 보고서를 업데이트해야하며 삭제를 위해 스크립트는 선택된 행을 가져오고 기본 테이블에서 삭제하고 표시를 업데이트해야합니다. 보고서는 테이블과 무관하며 스크립터가보기를 관리합니다.
- dt << 새 데이터 상자 () 뷰는 데이터 테이블에 연결됩니다. 따라서 행을 삭제하거나 편집하려면 사용자가 행을 삭제하거나 편집하기 만하면됩니다.
를 사용하여 테이블 상자를 만드는 또 다른 방법이 있습니다 DataTableColBox () 그러나 JMP 에보 고 한 Get Selected Rows ()를 사용할 때 오류가 발생했습니다.
첫 번째 방법 인 dt << Get As Report를 사용하여 스크립트의 수정 된 버전을 첨부했습니다. 일부 요점을 참고하십시오.
- << Modal 및 << Return Results를 주석 처리하면 보이지 않는 테이블이 결과 인 것 같습니다.
- 표시 테이블에 VScrollBox () 컨테이너를 추가했습니다.
- 선택된 행 색상을 빨간색으로 표시 (아래 스크린 샷 참조)
