안녕하세요,
여기에 새로운 JSL 스크립터가 있습니다. 모든 기존 행(데이터 테이블의 25개 행) 뒤에 5개의 새 행을 추가하려고 합니다. 디버깅하는 동안 문제가 없습니다. 예상대로 1씩 증가하여 25에서 1로 변경되지만 For 루프 도중/이후 어느 시점에서도 데이터 테이블에 새 행이 추가되지 않습니다. 내가 뭘 잘못하고 있는지 잘 모르겠습니다. 도움을 주시면 감사하겠습니다!
dt=current data table();
For(i=N Rows(dt),i>=1, i--,
dt << Add Rows( 5, i );
);
이건 "닫았다가 다시 열어라"라는 간단한 사례였다고 생각합니다. 데이터 테이블을 닫았다가 다시 열었을 때 코드가 제대로 작동했기 때문에 데이터 테이블이 어떻게 든 손상되었을 것입니다. 불편을 끼쳐 드려 죄송합니다.
나는 조금 혼란스러워요. 아래 표를 보면

귀하의 스크립트가 생성됩니다

내가 이해하는 것이 당신이 원하는 것입니다.
위의 데이터 테이블을 생성하는 코드와 확장을 사용하는 스크립트는 다음과 같습니다.
Names Default To Here( 1 );
// Create a table with 25 rows
dt = New Table( "Example",
Add Rows( 25 ),
New Script( "Source", Data Table( "Untitled 97" ) << Subset( All rows, Selected columns only( 0 ) ) ),
New Column( "Column 1",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values(
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25]
)
)
);
Wait( 5 );
// Now create the new rows
For( i = N Rows( dt ), i >= 1, i--,
dt << Add Rows( 5, i )
);
저는 2개의 인수 형식을 사용한 적이 없지만 스크립팅 인덱스에는 두 번째 인수의 의미를 지정하기 위해 키워드를 사용하는 이 예가 나와 있습니다.
dt << Add Rows( 3, after( 5 ) );