JMP에서 최신 파일만 가져오려면 어떻게 해야 합니까?안녕하세요 여러분,
현재 날짜 및 이름 필터가 활성화된 IMF 기능을 사용하여 디렉터리에서 여러 파일을 가져오는 스크립트가 있습니다. 약 4000개의 파일을 가져온 다음 데이터 테이블을 하나의 데이터 테이블로 정리하여 저장합니다. 디렉토리가 새 파일로 계속 업데이트되고 있으며 마지막 날짜 테이블에 추가할 수 있도록 새 파일만 가져오고 싶습니다.
- JMP 로그에서 가져오기가 완료된 타임스탬프를 얻을 수 있고 이를 사용하여 마지막으로 가져온 날짜에서만 실행되도록 데이터 필터를 업데이트할 수 있는지 궁금합니다.
- 파일 이름 열에서 파일 이름을 가져오고 목록을 만든 다음 디렉터리와 비교해 보았으나 운이 없었습니다.
당신의 도움에 감사드립니다.
tblRef = 다중 파일 가져오기(
<<폴더 설정( "C:\Docs\" ),
<< 숨김 표시 설정( 0 ),
<<하위 폴더 설정( 0 ),
<<이름 필터 설정( "*IA-N5*;" ),
<<이름 설정 활성화( 1 ),
<<크기 필터 설정( {27136, 110080} ),
<<크기 설정 활성화( 0 ),
<<날짜 필터 설정( {3772434440.006, 3786862040} ),
<<날짜 설정 활성화( 0 ),
<<파일 이름 추가 열 설정( 1 ),
<<파일 크기 추가 열 설정( 0 ),
<<파일 추가 날짜 열 설정( 1 ),
<<가져오기 모드 설정( "CSVData" ),
<<문자 집합 설정( "Best Guess" ),
<<스택 모드 설정( "스택 유사" ),
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<<가져오기 콜백 설정(Empty())
) << 데이터 가져오기;
tblRef << Set Name("데이터");
자동화 및 스크립팅데이터 접근데이터 혼합 및 정리Re: JMP에서 최신 파일만 가져오려면 어떻게 해야 합니까?MFI 가져오기 결과 테이블에서 최대 파일 날짜를 선택하고 다음 가져오기에서 이를 사용하여 파일을 제한할 수 있습니까?
Re: JMP에서 최신 파일만 가져오려면 어떻게 해야 합니까?최대 파일 날짜를 어떻게 선택할 수 있나요?
로그에서 타임스탬프를 얻을 수 있는 방법이 있습니까?
Re: JMP에서 최신 파일만 가져오려면 어떻게 해야 합니까?파일 날짜 열 추가 설정을 활성화했으므로 데이터 테이블에 파일 날짜가 있어야 합니다. 그런 다음 예를 들어 사용할 수 있습니다 콜 맥스()
Col Max(:File Date)
Re: JMP에서 최신 파일만 가져오려면 어떻게 해야 합니까?여전히 모든 것을 가져오고 있습니다. 이것이 내가 한 일입니다:
dt=open("C:\사용자\");
LastImport = dt << Col Max(:"파일 날짜");
maxDate = LastImport[1];
tblRef = 다중 파일 가져오기(
<<폴더 설정( "C:\Docs" ),
<< 숨김 표시 설정( 0 ),
<<하위 폴더 설정( 0 ),
<<이름 필터 설정( "*IA-;" ),
<<이름 설정 활성화( 1 ),
<<크기 필터 설정( {27136, 110080} ),
<<크기 설정 활성화( 0 ),
<<날짜 필터 설정( {maxDate, 3786862040} ),
<<날짜 설정 활성화( 0 ),
<<파일 이름 추가 열 설정( 1 ),
<<파일 크기 추가 열 설정( 0 ),
<<파일 추가 날짜 열 설정( 1 ),
<<가져오기 모드 설정( "CSVData" ),
<<문자 집합 설정( "Best Guess" ),
<<스택 모드 설정( "스택 유사" ),
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<
<<가져오기 콜백 설정(Empty())
) << 데이터 가져오기;
tblRef << Set Name("데이터");
Re: JMP에서 최신 파일만 가져오려면 어떻게 해야 합니까?여러 파일 가져오기 설정 내에서 날짜/시간 값을 평가해야 한다고 생각합니다. 아래는 예시입니다. Eval(EvalExpr()) 및 Expr()이 어떻게 사용되는지 확인하세요( Eval Insert, Eval Expr, Parse 및 Substitute를 사용하여 하나의 표현식을 다른 표현식에 삽입합니다. )
Names Default To Here(1);
dt = New Table("12345678_Cycle_123456781_Cycle",
Add Rows(6),
Compress File When Saved(1),
New Column("Cycle",
Numeric,
"Continuous",
Format("Best", 12),
Set Values([1, 2, 3, 4, 5, 6])
),
New Column("File Date",
Numeric,
"Continuous",
Format("yyyy-mm-ddThh:mm:ss", 20, 0),
Input Format("yyyy-mm-ddThh:mm:ss", 0),
Set Values(
[3741613139.034, 3741613139.034, 3741613139.034, 3783350373.379, 3783350373.379,
3783350373.379]
)
)
);
max_date = Col Max(Column(dt, "File Date"));
mfi = Eval(EvalExpr(Multiple File Import(
<<SET folder="">),
<<SET show="" hidden=""></SET></SET>Re: JMP에서 최신 파일만 가져오려면 어떻게 해야 합니까?효과가 있었습니다. 정말 고마워요!
Re: JMP에서 최신 파일만 가져오려면 어떻게 해야 합니까?최대 파일 날짜 파일을 여러 번 가져오는 것을 방지하려면 최대 시간에 시간을 추가해야 할 수도 있습니다. 새 파일을 받는 빈도에 따라 1초만 추가해도 충분할 수 있습니다.
max_date = Col Max(Column(dt, "File Date")) + 1;
그러나 MFI는 소수도 이해하므로 예를 들어 0.01을 추가할 수 있습니다(소량의 파일로 테스트하는 것이 좋을 수 있음).