English
Instant Developer Foundation Documentazione
  • Reference Librerie
  • Libreria Client
  • Libreria Standard
  • File System
  • Operazioni documenti

Save Blob File

funzione copia link

Scopo

Questa funzione salva su file il contenuto di un campo BLOB e ritorna il percorso del file salvato, calcolando l'estensione in base al MIME type del BLOB. Se si verificano problemi ritorna una stringa vuota.

Può essere utilizzata per mostrare all'utente i files contenuti nel database dell'applicazione, oppure per utilizzarli per personalizzare un book.

Sintassi

string Filename = "" // Il percorso del file salvato
// 
Filename := SaveBlobFile(campo blob, percorso, nome del file)

Argomenti

Blob E' un riferimento al campo BLOB il cui contenuto deve essere salvato su disco.
Path E' una stringa che contiene il percorso in cui salvare il file. Deve contenere un percorso assoluto sul server web. Il parametro è opzionale, se non specificato il blob viene salvato in una directory temporanea.
File Name Parametro opzionale che permette di specificare il nome del file da creare. Se non viene specificato, verrà creato un nome di file temporaneo. Se non si specifica un'estensione, verrà aggiunta l'estensione corrispondente al tipo di file contenuto nel campo BLOB.

Valore di ritorno

Viene ritornata una stringa contenente il percorso completo del file salvato. Nelle applicazioni offline viene ritornato un url temporaneo.

Esempio di codice

// ************************************
// Fired when the section is formatting
// ************************************

event Categorie.CategorieBook.CategorieReport.Detail.BeforeFormatting()
{
  // Eseguo un ciclo sulle categorie filtrando solamente alla categoria in
  // stampa ora

  for each row
  {
    select
      CategorieImmagine := Immagine
    from
      Categorie // Master Table
    where
      Idcategoria = CategorieBook.IdcategoriaCategorie
    // 
    record Categorie
      string Immagine // Brief description of field content.
    string FileName = "" // 
    // 
    // Salvo l'immagine sul disco, se ci sono riuscito la applico al book

    FileName := SaveBlobFile(Categorie.Immagine, Path() +c C/ +c temp, ??)
    if FileName <> Empty String
    {
      // Segno l'immagine salvata per essere cancellata al termine della
      // sessione

      EsempiGL.AddTempFile(FileName)
      // 
      CategorieBook.CategorieReport.Immagine.SetImage(Mid(FileName,
         Length(Path()) + C2, ??))
    }
  }
}
  • Il campo BLOB da passare dalla funzione deve essere recuperato tramite la query di un blocco For-Each, come mostrato nell'esempio seguente. E' infatti necessario un oggetto Record nel quale memorizzare il BLOB, che non è memorizzabile in una normale variabile applicativa.

Ultima modifica: 23/03/2021 / Validità: da 6.5.2680

Vedi Anche

  • Path (funzione)

Hai trovato utile l'articolo?

Grazie per il feedback!

Ti serve altro aiuto?

Consulta il Forum