English
Instant Developer Foundation Documentazione
  • Reference Librerie
  • Librerie Componenti
  • Web Service

Receive File

funzione copia link

Scopo

Questa funzione permette di trasferire un file dal web server all'applicazione. Dopo aver memorizzato il file nel file system dell'applicazione, restituisce il percorso locale in cui file è stato registrato.

Sintassi

string LocalFileName = ""     // Leggo il nome del file salvato in locale
// 
LocalFileName := WebService.ReceiveFile(percorso locale, percorso remoto)

Argomenti

Percorso locale E' una stringa contenente il percorso per il salvataggio in locale del file ricevuto dal web service.
Percorso remoto E' una stringa contenente il percorso remoto al quale il web service deve recuperare il file richiesto. E' un percorso assoluto relativo al server dove è installato il Web Service.

Valore di ritorno

Viene ritornata una stringa contenente il percorso completo del file ricevuto dal web service. Nel caso in cui il file non venga salvato in locale a causa di un errore, viene ritornata una stringa nulla.

Esempio di codice

// *******************************************
// Scarica un determinato file dal Web Service
// *******************************************

public void FileRepository.ScaricaFile()
{
  // se c'è un nome file
  if NOT(IsNull(Files.FileNome))
  {
    string LocalFilename = ""       // 
    MyEsempiGLWebService ws = new() // 
    string remotepath = ""          // 
    // 
    remotepath := ws.Percorso()
    // 
    // Imposto l'indirizzo di questa istanza del Web Service

    ws.Url := GetSetting(Application, WebServiceUrl)
    // 
    // Scarico e apro il file

    LocalFilename := ws.ReceiveFile(Path() +c C\ +c temp, remotepath +c
      Files.FileNome)
    // 
    // Apro il documento in un'altra finestra

    EsempiGL.OpenDocument(Mid(LocalFilename, Length(Path()) + C2, ??),
      True, ??)
    // 
    // Aggiungo il file alla lista dei file temporanei da cancellare alla fine
    // della sessione

    EsempiGL.AddTempFile(LocalFilename)
  }
}
  • La funzione ReceiveFile non funziona se il web service non è stato creato con IN:DE.
  • La funzione ReceiveFile non funziona se il web service e l'applicazione che lo utilizza sono sviluppati in linguaggi diversi, per funzionare correttamente quindi devono essere entrambi in C# o entrambi in Java.
  • Per utilizzare la ReceiveFile è necessario conoscere il percorso assoluto del file sul server dove risiede il WebService. E' quindi necessario conoscere a priori il percorso e i nomi del file, oppure realizzare una funzione nel Web Service che fornisca questi valori all'applicazione.
  • Inviando un file ad Web Service con la SendFile e scaricandoli con la ReceiveFile, è possibile realizzare un contenitore di file condiviso tra tutte le applicazioni che utilizzano il Web Service, centralizzando i documenti e mantenendone un'unica copia.
  • A partire dalla versione 20.5 la funzione restituisce NULL se l'operazione non è stata autorizzata dal web service tramite l'evento OnFileOperation.
  • Il primo parametro Percorso locale deve indicare una directory. Il sistema genera un GUID random, vi inserisce il contenuto del file ricevuto dal web service, e restituisce il path completo del file creato in locale. A partire dalla versione 20.0 se il primo parametro è una directory viene aggiunto il GUID random ma se il percorso punta ad un file il sistema utilizza quello come percorso completo del file locale. Per esempio:
    1. la chiamata ReceiveFile("C:\TEMP", "[REMOTEPATH]) crea un file locale in C:\TEMP\[GUID-RANDOM].[EXT] dove EXT è l'estensione fornita dal web service.
    2. la chiamata ReceiveFile("C:\TEMP\MyImage.gif", "[REMOTEPATH]) creava un file locale in C:\TEMP\MyImage.gif\[GUID-RANDOM].[EXT] nelle versioni precendenti mentre crea il file C:\TEMP\MyImage.gif a partire dalla versione 20.5.

Ultima modifica: 25/09/2024 / Validità: da 6.7.2950

Vedi Anche

  • Path (funzione)
  • Mid (funzione)
  • Add Temp File (procedura)
  • Send File (funzione)
  • Length (funzione)
  • Open Document (procedura)
  • On File Operation (evento)

Hai trovato utile l'articolo?

Grazie per il feedback!

Ti serve altro aiuto?

Consulta il Forum