Salta sotto le righe se una tabella è vuota all'interno di un ciclo forCiao, ho il seguente script che si trova all'interno di un ciclo for. Mi piace continuare il ciclo se la tabella mydt è vuota e saltare le righe sottostanti.
Apprezzo il vostro aiuto. Grazie
--------------------------------------------
midt = Tabella dati ( dt5 );
Se (( è vuoto (mydt)), continua());
miodsummario = Tabella dati ( dt5 ) << Riepilogo (
Gruppo( :BoardNo ),
Massimo ( :Ora di inizio ),
formato nome colonna statistiche( "stat della colonna" )
);
mydt << Aggiornamento (
Con( Tabella dati ( miodsummario ) ),
Corrispondenza colonne( :BoardNo = :BoardNo ),
Aggiungi colonne dalla tabella di aggiornamento (: Max of starttime)
);
mydt << seleziona dove ( :starttime == :Max di starttime ) << invertire la selezione della riga ;
mydt << eliminare le righe ;
mydt << eliminare le colonne ( "Numero massimo di ora di inizio" );
Vicino ( mydtsusumary, nosave );
Vicino (mydt,salva);
Re: Salta sotto le righe se una tabella è vuota all'interno di un ciclo forGrazie Jim.
Ri: Salta sotto le righe se una tabella è vuota all'interno di un ciclo forIf( condizione == vero,
Rottura();
);
Re: Salta sotto le righe se una tabella è vuota all'interno di un ciclo forGrazie Cameron. Il problema non è se la tabella è vuota o non ha valore. il problema, se la condizione è vera, voglio saltare tutte le righe sottostanti e passare all'indice del ciclo for successivo.
if (condizione = Vero,
....
... salta tutto sotto
...
);
Grazie.
Re: Salta sotto le righe se una tabella è vuota all'interno di un ciclo forCosa stai usando la funzione Is Empty() per fare?Se si tratta di verificare se la tabella stessa non contiene dati, si sta utilizzando questa funzione in modo errato.Ti dirà se la variabile mydt (non la tabella di dati a cui fa riferimento) non ha valore o ha il valore vuoto.Se vuoi controllare se la tabella dati non contiene nulla, allora fai qualcosa come N Row(mydt) == 0 come controllo logico.
Re: Salta sotto le righe se una tabella è vuota all'interno di un ciclo forGrazie per il rapido feedback e la soluzione. L'ho provato ma ottengo un errore nella sezione di aggiornamento.
argomento mancante{8} nell'accesso o nella valutazione di 'Data Table' , Data Table /*####*/ (miodsumario)
mydt << Aggiorna(
Con (Tabella dati /*####*/ (miodsummario) ),
Sembra che stia elaborando la sezione Aggiorna quando mydt è vuoto e non dovrebbe. Grazie
Re: Salta sotto le righe se una tabella è vuota all'interno di un ciclo forPerché non invertire semplicemente la logica usando "!" e inserire tutte quelle righe nella tua istruzione 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 );
);