Questo blocco funzione da eseguire in task Back, copia un file all’intermo del file system, attivando Enable il file definito in Source viene copiato nel file definito in Destination se il file esiste viuene sovrascritto. Al termine della copia si attiva l’uscita Done che rimane attiva fino alla disattivazione del comando Enable. In Time viene ritornato il tempo impiegato per la copia.
In caso di errore esecuzione viene attivata per un loop di programma l’uscita Fault.
Descrizione
Enable (BOOL) Comando abilitazione esecuzione. Per rieseguire disabilitare e poi riabilitare questo ingresso.
SpyOn (BOOL) Se attivo permette di spiare il funzionamento della FB (Vedi articolo).
Source (@STRING) Definizione percorso file sorgente.
Destination (@STRING) Definizione percorso file destinazione.
Done (BOOL) Si attiva al termine della esecuzione comando e rimane attiva fino alla disabilitazione di Enable.
Fault (BOOL) Attivo per un loop se errore esecuzione comando.
Time (REAL) Tempo di esecuzione copia, espresso in secondi

Trigger di spy
Se SpyOn attivo è possibile utilizzare la console di spionaggio per verificare il funzionamento della FB. Sono previsti vari livelli di triggers.
Livelli di trigger
Trigger | Descrizione |
---|---|
16#10000000 | Lg: Log esecuzione. |
16#40000000 | Er: Errore di esecuzione. |
Esempi
Come utilizzare gli esempi.
Attivando da debug la variabile Start viene eseguita la copia del file “D:/SDir/SFile.txt” nel file “D:/DDir/DFile.txt“.
LogicLab (Ptp114, ST_FSFileCopy)
PROGRAM ST_FSFileCopy
VAR
Start : BOOL; (* Start copy command *)
Copy : FSFileCopy; (* File copy *)
END_VAR
// *****************************************************************************
// PROGRAM "ST_FSFileCopy"
// *****************************************************************************
// A source file is copied to a destination file. The two files are located in
// different directories.
// -----------------------------------------------------------------------------
// -------------------------------------------------------------------------
// COPY FILE
// -------------------------------------------------------------------------
Copy.SpyOn:=TRUE;
Copy.Source:=ADR('D:/SDir/SFile.txt');
Copy.Destination:=ADR('D:/DDir/DFile.txt');
Copy(Enable:=Start);
// [End of file]