다양한 제품(AH)의 생산 실행과 해당 시작 및 종료 시간에 대한 색인화된 목록이 있습니다. 때로는 동일한 제품이 두 줄에 연속으로 있는 경우도 있습니다(1행과 2행 및 7행과8) 첫 번째 행의 시작 시간과 두 번째 행의 종료 시간을 하나의 행으로 결합하고 싶습니다. 이를 위해 JSL을 어떻게 사용합니까?

나는 이것이 당신이 원하는 것을 해야 한다고 생각합니다.
다음과 같은 수식으로 "그룹"을 계산하려면 테이블에 새(숫자) 열을 추가하세요.
If(Row() == 1,
counter = 0;
);
If(:Product != Lag(:Product),
counter++;
);
counter;
Then you can use Summary table to perform the min/max part</CODE></P>
<P><SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="jthi_1-1713458056939.png" style="width: 999px;"><SPAN class="lia-inline-image-display-wrapper" image-alt="jthi_1-1713458056939.png" style="width: 999px;"><SPAN class="lia-inline-image-display-wrapper" image-alt="jthi_1-1713458056939.png" style="width: 999px;"><SPAN class="lia-inline-image-display-wrapper" image-alt="jthi_1-1713458056939.png" style="width: 999px;"><span class="lia-inline-image-display-wrapper" image-alt="jthi_1-1713458056939.png" style="width: 999px;"><img src="https://us.v-cdn.net/6038925/uploads/images/63473i931158173607E606/jthi_1-1713458056939.png" role="button" title="jthi_1-1713458056939.png" alt="jthi_1-1713458056939.png" /></span></SPAN></SPAN></SPAN></SPAN></P>
<P>필요에 따라 요약 테이블에서 열을 제거하고 다시 정렬합니다.</P>
<P> </P>
<P>다음은 해당 작업을 수행하는 Enhanced Log의 스크립트입니다.</P>
<P> </P>
<PRE><CODE class=" language-jsl">// Open Data Table: Run Time Index.jmp
// → Data Table("Run Time Index")
Open("$DOWNLOADS/Run Time Index.jmp");
// New column: R
Data Table("Run Time Index") << New Column("R",
Numeric,
"Continuous",
Format("Best", 12),
Formula(
If(Row() == 1, counter = 0);
If(:Product != Lag(:Product),
counter
++);
counter;
)
);
// Data table summary
// → Data Table("Run Time Index By (R, Product)")
Data Table("Run Time Index") << Summary(
Group(:R, :Product),
Min(:Run Index),
Min(:Start),
Max(:End),
Freq("None"),
Weight("None"),
statistics column name format("column"),
Link to original data table(0)
);
// Delete columns
Data Table("Run Time Index By (R, Product)") << Delete Columns(:R, :N Rows);
// Move selected column: Run Index
Data Table("Run Time Index By (R, Product)") << Move Selected Columns({:Run Index}, To First);
// Change column modeling type: Run Index
Data Table("Run Time Index By (R, Product)"):Run Index << Set Modeling Type("Ordinal");