for 루프 내에서 테이블이 비어 있으면 아래 줄 건너뛰기안녕하세요, for 루프 안에 다음 스크립트가 있습니다. 테이블 mydt가 비어 있으면 루프를 계속하고 그 아래 줄을 건너뛰고 싶습니다.
당신의 도움에 감사드립니다. 감사해요
-------------------------------------------
mydt = 데이터 테이블 ( dt5 );
만약에 (( 비었다 (mydt)), 계속());
mydtsummary = 데이터 테이블 ( dt5 ) << 요약 (
그룹( :보드No ),
최대 ( :시작 시간 ),
통계 열 이름 형식( "열 통계" )
);
맙소사 << 업데이트 (
와 함께( 데이터 테이블 ( mydtsummary ) ),
열 일치( :BoardNo = :BoardNo ),
업데이트 테이블에서 열 추가( :Max of starttime )
);
맙소사 << 어디를 선택 ( :starttime == : 최대 시작 시간 ) << 행 선택 반전 ;
맙소사 << 행 삭제 ;
맙소사 << 열 삭제 ( "최대 시작 시간" );
닫다 ( mydtsummary, nosave );
닫다 (mydt, 저장);
Re: for 루프 내에서 테이블이 비어 있으면 아래 줄을 건너뜁니다.고마워 짐.
Re: for 루프 내에서 테이블이 비어 있으면 아래 줄을 건너뜁니다.If( 조건 == 참,
부서지다();
);
Re: for 루프 내에서 테이블이 비어 있으면 아래 줄을 건너뜁니다.감사합니다 카메론. 문제는 테이블이 비어 있거나 값이 없는지 여부가 아닙니다. 문제는 조건이 참이면 그 아래의 모든 줄을 건너뛰고 다음 for 루프 인덱스로 이동하고 싶습니다.
if(조건 = 참,
....
... 아래 모두 건너뛰기
...
);
감사해요.
Re: for 루프 내에서 테이블이 비어 있으면 아래 줄을 건너뜁니다.무엇을 하기 위해 Is Empty() 함수를 사용하고 있습니까?테이블 자체에 데이터가 없는지 확인하는 경우 이 기능을 잘못 사용하고 있는 것입니다.변수 mydt(참조하는 데이터 테이블 아님)에 값이 없거나 빈 값이 있는지 알려줍니다.데이터 테이블에 아무것도 없는지 확인하려면 논리적 확인으로 N Row(mydt) == 0과 같은 작업을 수행합니다.
Re: for 루프 내에서 테이블이 비어 있으면 아래 줄을 건너뜁니다.빠른 피드백과 해결에 감사드립니다. 시도했지만 업데이트 섹션에서 오류가 발생합니다.
'데이터 테이블', 데이터 테이블의 액세스 또는 평가에서 누락된 인수{8} /*###*/ (mydtsummary)
mydt << 업데이트(
( 데이터 테이블 /*###*/ (mydtsummary) ),
mydt가 비어 있을 때 업데이트 섹션을 처리하는 것처럼 보입니다. 그러면 안 됩니다. 감사해요
Re: for 루프 내에서 테이블이 비어 있으면 아래 줄을 건너뜁니다."!"를 사용하여 논리를 뒤집지 않는 이유는 무엇입니까? if 문에 모든 줄을 붙이시겠습니까?
If( !Is Empty( mydt ),
mydtsummary = Data Table( dt5 ) << Summary(
Group( :BoardNo ),
Max( :starttime ),
statistics column name format( "stat of column" )
);
mydt << Update(
With( Data Table( mydtsummary ) ),
Match Columns( :BoardNo = :BoardNo ),
Add Columns from Update table( :Max of starttime )
);
mydt << select where( :starttime == :Max of starttime ) << invert row selection;
mydt << delete rows;
mydt << delete columns( "Max of starttime" );
Close( mydtsummary, nosave );
Close( mydt, save );
);