Forum Italiano sui Prodotti NI

annulla
Visualizzazione dei risultati per 
Cerca invece 
Intendevi dire: 

SALVATAGGIO AUTOMATICO FILE .TXT

Ciao,

vi scrivo sottoporvi 2 problemi:

1.è possibile, una volta bloccato il run del .vi, farlo ripartire dall'ultima itarezione? Vi chiedo questo perché salvando i dati in un .txt con l'inserimento dell'intestazione solo al primo ciclo, ogni volta che c'è uno stop imprevisto viene riscritta l'intestazione e questo potrebbe portarmi problemi copiando i dati in excel.

2. Come si può implementare il salvataggio automatico mediante creazione di un nuovo file al variare del giorno di acquisizione ?

(il nome del file dovrà essere la data stessa di acquisizione)

 

Grazie

Francesco

0 Kudos
Messaggio 1 di 6
7.296Visualizzazioni

Potresti provare qualcosa del genere:

 

FileDelGiorno.PNG

 

Se il file non esiste entri nel case visualizzato: lo crei e scrivi l'intestazione. Se non esiste si esegue l'altro caso che si limita a far passare il refnum e l'errore (non c'è bisogni di scrivere l'intestazione perchè c'è già).

Col formato che ho usato io il file si chiama "YYYYMMDD.TXT"; tu puoi accomodare il nome come più si adatta alle tue esigenze però attenzione a non usare caratteri proibiti (tipo la barra nella data '/').

In effetti il vi si dovrebbe arricchire per gestire il caso di errore diverso da 7.



Proud to use LW/CVI from 3.1 on.

My contributions to the Developer Community
________________________________________
If I have helped you, why not giving me a kudos?
0 Kudos
Messaggio 2 di 6
7.293Visualizzazioni

Ciao,

avendo la versione 7.1 qualche .vi è diverso.

-Come si chiama il .vi subito dopo il build path?

-Il blocco all'interno dell'if è un write.txt file? 

 

Grazie

Francesco

0 Kudos
Messaggio 3 di 6
7.289Visualizzazioni

-Come si chiama il .vi subito dopo il build path?

GetFileSize.Qualunque vi che abbia accesso al file va bene: serve solo per ricevere l'errore di file not found. Il GetFileSize nella versione 8.2 apre il file se lo trova, quindi è comodo da usare.

 

-Il blocco all'interno dell'if è un write.txt file?

No è OpenFile: in questo modo in qualsiasi caso dal case si esce con il refnum al file aperto su cui scrivere.



Proud to use LW/CVI from 3.1 on.

My contributions to the Developer Community
________________________________________
If I have helped you, why not giving me a kudos?
0 Kudos
Messaggio 4 di 6
7.283Visualizzazioni

Ciao,

ok, credo non c siano problemi con questi due blocchi. Sto provando ma non funziona alla perfezione, potresti allegarmi anche l'immagine del "case false"? (così verifico di non aver fatto errori)

 

Grazie

Francesco

0 Kudos
Messaggio 5 di 6
7.278Visualizzazioni

Il case false ha semplicemente due fili che portano il cluster di errore e il file refnum dall'ingresso all'uscita. Se non c'è errore ti trovi col file già aperto (identificato dal refnum) e puoi passare a scriverci dentro i dati.

Come ti dicevo, in questo caso dovresti aggiungere un controllo, perchè potrebbe verificarsi un errore di I/O sul file diverso dal 7.



Proud to use LW/CVI from 3.1 on.

My contributions to the Developer Community
________________________________________
If I have helped you, why not giving me a kudos?
0 Kudos
Messaggio 6 di 6
7.269Visualizzazioni