FSFileCopy, file system copy file

  1. Home
  2. Knowledge Base
  3. Manualistica
  4. Programmazione IEC 61131-3
  5. Gestione file system
  6. FSFileCopy, file system copy file

Questo blocco funzione esegue la copia di 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.

Function block
CODESYS: Non disponibile
LogicLabeLLabUtyLib

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.

Errori

In caso di errore eseguendo immediatamente dopo la funzione SysGetLastError è possibile rilevare il codice di errore. Fare riferimento alla tabella seguente per la descrizione.

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)
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]

Ti è stato utile questo articolo ?

Ultimo aggiornamento: 17 Ottobre 2020