(JSL을 통해 업데이트한 후) 한 테이블의 Graph Builder 비주얼을 다른 테이블로 재사용/이동하는 방법은 무엇입니까?안녕하세요 여러분,
저는 제이에스엘 로 작업하고 있으며 표 A 에 대한 여러 개의 Graph Builder 시각화를 만들었습니다.
스크립트의 후반부에서 테이블 A와 테이블 B를 업데이트하거나 결합합니다 (키로 Time을 사용하고 필터로 ID를 사용). 이렇게 하면 새 테이블이 생성됩니다( 병합된 테이블 이라고 부르겠습니다).
문제는 다음과 같습니다.
숙고하다 -
-
Graph Builder 스크립트를 한 테이블에서 다른 테이블로 전송하거나 다시 바인딩하는 JSL 기반 방법이 있습니까?
-
특정 KPI가 시간 창에 따라 필터링된 행에 대해서만 계산되는 경우 가장 안정적인 워크플로는 무엇입니까?
아래 코드도 시도해 보았지만 GUI 창의 왼쪽 상단 패널에 mt calcTable이 표시되지 않습니다.
scriptNames = dt_merged << Get Table Script Names;
Show(scriptNames);
// Loop through and copy each script to calcTable
For(i = 1, i <= N Items(scriptNames), i++,
scriptName = scriptNames[i];
scriptCode = dt_merged << Get Table Script(scriptName);
// Add the same script to calcTable
calcTable << Set Table Script(scriptName, scriptCode);
Show("Copied script:", scriptName);
);
자동화 및 스크립팅콘텐츠 구성데이터 혼합 및 정리Re: JSL을 통해 업데이트한 후 Graph Builder 시각적 자료를 한 테이블에서 다른 테이블로 재사용/이동하는 방법은 무엇입니까?일반적으로 테이블 스크립트를 복사하는 것은 이와 비슷해 보이지만 해당 테이블 스크립트가 어떻게 보이는지에 따라 수정이 필요할 수 있습니다.
Names Default To Here(1);
dt1 = Open("$SAMPLE_DATA/Big Class.jmp");
dt2 = Open("$SAMPLE_DATA/Big Class Families.jmp");
dt2 << Delete Scripts(dt2 << Get Table Script Names); // demo purposes
For Each({scriptname}, dt1 << Get Table Script Names,
s = dt1 << Get Script(scriptname);
Eval(EvalExpr(
dt2 << New Script(scriptname, Expr(NameExpr(s)))
));
);
스크립트(및 변수)를 이동하기 때문에 Concatenate를 사용할 수도 있지만 다른 것을 망칠 수 있으므로 루프를 사용할 것입니다.
Names Default To Here(1);
dt1 = Open("$SAMPLE_DATA/Big Class.jmp");
dt2 = Open("$SAMPLE_DATA/Big Class Families.jmp");
dt2 << Delete Scripts(dt2 << Get Table Script Names); // demo purposes
dt_temp = dt1 << Subset(Rows(1), private);
dt_temp << Delete Rows(1);
dt2 << Concatenate(
dt_temp,
"Append to first table"
);
Close(dt_temp, no save);