단일 스크립트를 생성하여 데이터베이스에서 데이터를 가져온 다음 해당 데이터 세트로 분석을 수행하려면 어떻게 해야 합니까?모두 안녕
데이터베이스에서 데이터를 가져온 다음 다양한 플롯을 만들고 해당 데이터 세트로 일부 분석을 수행하는 JSL 스크립트를 만들려고 합니다. 지금까지 데이터베이스 쿼리 빌더를 사용하여 필요한 데이터를 얻을 수 있었지만 동일한 스크립트를 사용하여 필요한 플롯을 수행할 수는 없었습니다. JSL에서 스크립팅을 처음 사용하는 경우 이는 정말 어려운 작업인 것 같습니다. 아래는 2개의 데이터베이스에서 데이터를 가져와 병합할 수 있었던 스크립트입니다. 그러나 이 데이터 테이블을 저장한 다음 플롯을 만들고 싶습니다.쿼리 전에 Obj 참조를 추가하려고 하면 데이터가 반환되지 않습니다. 어떤 제안?
최상의,
데브라이
New SQL Query(
Version( 130 ),
Connection(
"ODBC:DSN=Parametric 32;Description=Parametric 32;UID=GUEST;PWD=;APP=JMP;WSID=DEBRAJG-W10LT;"
),
QueryName( "LSO-THK" ),
Select(
Column( "WAFER", "t1" ),
Column( "DATE_TIME", "t1", Numeric Format( "m/d/y h:m:s", "0", "NO", "" ) ),
Column( "LOT", "t1" ),
Column( "TESTER", "t1" ),
Column( "RECEIPE", "t1" ),
Column( "THICKNESS_1", "t1" ),
Column( "THICKNESS_2", "t1" ),
Column( "THICKNESS_3", "t1" ),
Column( "THICKNESS_4", "t1" ),
Column( "THICKNESS_5", "t1" ),
Column( "THICKNESS_6", "t1" ),
Column( "THICKNESS_7", "t1" ),
Column( "THICKNESS_8", "t1" ),
Column( "THICKNESS_9", "t1" ),
Column( "THICKNESS_AVG", "t1" ),
Column( "THICKNESS_STD", "t1" ),
Column( "THICKNESS_MIN", "t1" ),
Column( "THICKNESS_MAX", "t1" ),
Column( "THICKNESS_RANGE", "t1" ),
Column( "OPERATION", "t2" ),
Column( "WIP_MSG_KEY", "t2" ),
Column( "WIP_MSG_LEVEL3", "t2" ),
Column( "WIP_MSG_LEVEL2", "t2" ),
Column( "WIP_MSG_LEVEL1", "t2" )
),
From(
Table( "WFLSOTHK", Schema( "dbo" ), Alias( "t1" ) ),
Table(
"FT_WF_HIST",
Alias( "t3" ),
Join(
Type( Left Outer ),
EQ(
Column(
"DATE_TIME",
"t1",
Numeric Format( "m/d/y h:m:s", "0", "NO", "" )
),
Column(
"DATE_TIME",
"t3",
Numeric Format( "m/d/y h:m:s", "0", "NO", "" )
)
) & EQ( Column( "LOT", "t1" ), Column( "LOT", "t3" ) )
)
),
Table(
"WF_MESA_WIP_MSG_HIST",
Alias( "t2" ),
Join(
Type( Left Outer ),
EQ( Column( "WAFER", "t1" ), Column( "WAFER", "t2" ) ) &
EQ( Column( "LOT", "t1" ), Column( "LOT", "t2" ) )
)
)
),
Where(
In List(
Column( "OPERATION", "t2" ),
{"O0TS"},
UI( SelectListFilter( ListBox, Base( "Categorical" ) ) )
)
)
) >> Run
해석학데이터 테이블다른스크립팅Re: 데이터베이스에서 데이터를 가져온 다음 해당 데이터 세트로 분석을 수행하는 단일 스크립트를 어떻게 생성합니까?문제는 주로 네임스페이스 때문인 것으로 나타났습니다. 나는 주위를 파고 들었고 아래 줄에서 해결책을 찾았습니다.
https://community.jmp.com/t5/Discussions/Getting-a-data-table-reference-from-NewSQLQuery-lt-lt-Run/td-p/187001Re: 데이터베이스에서 데이터를 가져온 다음 해당 데이터 세트로 분석을 수행하는 단일 스크립트를 어떻게 생성합니까?Save()를 Include()로 전환했는데 이제 제대로 작동합니다. 왜 그런지 모르겠지만 ......Re: 데이터베이스에서 데이터를 가져온 다음 해당 데이터 세트로 분석을 수행하는 단일 스크립트를 어떻게 생성합니까?고마워 짐. 그것은 효과가 있었다. 나는 처음에 >>run 이후에 세미콜론이 누락되었다고 생각합니다. 이것이 내가 예상했던 방식으로 작동하지 않는 이유입니다.
그러나 스크립트는 저장되었고 내가 처음에 넣은 플롯을 생성했습니다. 그런 다음 .csv 파일을 삭제하고 다시 실행하면 파일을 다시 저장하지 않고 곡선을 그립니다. 간헐적으로 작동합니다. 파일을 저장한 다음 몇 번 곡선을 그리는 반면 대부분의 다른 경우에는 데이터베이스에서 데이터를 가져온 후에 중지됩니다. 내가 놓친 트릭이나 변경해야 하는 매개변수가 있습니까? 아래는 SQL 데이터베이스 쿼리에 추가하고 간헐적으로 작동하는 코드의 일부입니다.
dt = data table("WFLSOTHK");
dt << Save ("C:\path to directory\file_name.csv");
dt << Open ( "C:\path to directory\file_name.csv" );
dt << Fit Group(
Bivariate(
.
.
.
),
Bivariate(
.
.
.
),
<<{Arrange in Rows( 1 )}
)
Re: 데이터베이스에서 데이터를 가져온 다음 해당 데이터 세트로 분석을 수행하는 단일 스크립트를 어떻게 생성합니까?이것을 테스트할 데이터베이스가 없지만 이 방법론이 작동해야 한다고 생각합니다.
Names default to here(1);
New SQL Query(
Version( 130 ),
Connection(
"ODBC:DSN=Parametric 32;Description=Parametric 32;UID=GUEST;PWD=;APP=JMP;WSID=DEBRAJG-W10LT;"
),
QueryName( "LSO-THK" ),
Select(
Column( "WAFER", "t1" ),
Column( "DATE_TIME", "t1", Numeric Format( "m/d/y h:m:s", "0", "NO", "" ) ),
Column( "LOT", "t1" ),
Column( "TESTER", "t1" ),
Column( "RECEIPE", "t1" ),
Column( "THICKNESS_1", "t1" ),
Column( "THICKNESS_2", "t1" ),
Column( "THICKNESS_3", "t1" ),
Column( "THICKNESS_4", "t1" ),
Column( "THICKNESS_5", "t1" ),
Column( "THICKNESS_6", "t1" ),
Column( "THICKNESS_7", "t1" ),
Column( "THICKNESS_8", "t1" ),
Column( "THICKNESS_9", "t1" ),
Column( "THICKNESS_AVG", "t1" ),
Column( "THICKNESS_STD", "t1" ),
Column( "THICKNESS_MIN", "t1" ),
Column( "THICKNESS_MAX", "t1" ),
Column( "THICKNESS_RANGE", "t1" ),
Column( "OPERATION", "t2" ),
Column( "WIP_MSG_KEY", "t2" ),
Column( "WIP_MSG_LEVEL3", "t2" ),
Column( "WIP_MSG_LEVEL2", "t2" ),
Column( "WIP_MSG_LEVEL1", "t2" )
),
From(
Table( "WFLSOTHK", Schema( "dbo" ), Alias( "t1" ) ),
Table(
"FT_WF_HIST",
Alias( "t3" ),
Join(
Type( Left Outer ),
EQ(
Column(
"DATE_TIME",
"t1",
Numeric Format( "m/d/y h:m:s", "0", "NO", "" )
),
Column(
"DATE_TIME",
"t3",
Numeric Format( "m/d/y h:m:s", "0", "NO", "" )
)
) & EQ( Column( "LOT", "t1" ), Column( "LOT", "t3" ) )
)
),
Table(
"WF_MESA_WIP_MSG_HIST",
Alias( "t2" ),
Join(
Type( Left Outer ),
EQ( Column( "WAFER", "t1" ), Column( "WAFER", "t2" ) ) &
EQ( Column( "LOT", "t1" ), Column( "LOT", "t2" ) )
)
)
),
Where(
In List(
Column( "OPERATION", "t2" ),
{"O0TS"},
UI( SelectListFilter( ListBox, Base( "Categorical" ) ) )
)
)
) >> Run;
dt = data table("WF_MESA_WIP_MSG_HIST");
dt << save("Path to save location");
dt << Graph Builder(.............);