Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.
Auszug
hiddentrue

Nuclos FileProvider: print, save, newFile, NuclosFile, Drucker, Ausgabeformat, byte[].

globe with meridians Sprache: Deutsch · English

open book FileProvider

NuclosFiles drucken, speichern und aus Byte-Arrays erzeugen.

Status
colourGrey
titleReferenz
Status
colourBlue
titleEntwickler
Status
colourGreen
titleStand: Jul 2026
Status
colourGrey
titlegilt fuer Nuclos 4.2026.x

Panel
bgColor#F4F5F7

Auf dieser Seite

Inhalt
maxLevel2
minLevel2

Wozu dient der FileProvider?

Der FileProvider beinhaltet Methoden zur Weiterverarbeitung von NuclosFiles – Drucken, serverseitiges Speichern und Konvertieren.

Info
titleAusgabeformate

Als Anhang speicherbar sind nur NuclosFiles im Ausgabeformat Datei oder Bildschirm. Für den Drucker ist das

Allgemein

Der FileProvider ist eine Hilfsklasse, die alle notwendigen Methoden zur Weiterverarbeitung von NuclosFiles beinhaltet.

Info

In Nuclos können nur NuclosFiles als Anhang gespeichert werden, die im Ausgabeformat "Datei" oder "Bildschirm" erstellt wurden. Dateien, die für den Drucker bestimmt sind, müssen im Format (Standard) Drucker Client/Server erstellt werden, da hier ein eigener Datei-Header verwendet wird. Dies kann dazu führen, dass für ein Formular oder einen Report zwei Ausgabeformate erstellt werden müssen, um je nach Bedarf beide Möglichkeiten abzudecken.

Funktionsumfang

 

...

nötig – ggf. zwei Ausgabeformate je Report/Formular.

print(file[, printername])

Schickt das

...

NuclosFile an den Standard- oder einen benannten Drucker.

Codeblock
languagejava
public static void print(NuclosFile file) 

...

throws BusinessException;

...

Soll im Rahmen des Ausdrucks nicht der Standard-Drucker verwendet werden, kann der Name eines anderen Druckers angegeben werden

...


public static void print(NuclosFile file, String printername) throws BusinessException;

...

save

...

(file, directory)

Speichert das NuclosFile serverseitig im angegebenen Verzeichnis.

Codeblock
languagejava
public static void save(NuclosFile file, String directory) throws BusinessException;
Codeblock
languagejava
package org.nuclet.businessentity; 

import org.nuclet.printout.FormularAbschlussAuftragPO;
import org.nuclos.api.common.NuclosFile;
import org.nuclos.api.provider.PrintoutProvider;
import org.nuclos.api.provider.FileProvider;

public class AbschlussAuftragRegel implements InsertFinalRule {

   public void insertFinal(InsertContext context) throws BusinessException { 
        
		Auftrag a = context.getBusinessObject(Auftrag.class);
      	
		NuclosFile result = PrintoutProvider.run(FormularAbschlussAuftragPO.Deutsch_PDF, a.getId());
        
		// store file in FTP-Directory
		FileProvider.save(result, "/home/ftp/");
		// Print file on default printer
        FileProvider.print(result);
    }
}

byte[] in NuclosFile umwandeln

Über FileProvider.newFile(File) lässt sich ein Byte-Array in ein NuclosFile überführen:

Codeblock
languagejava
public static NuclosFile writeArrayToNuclosFile(String filename, byte[] content) throws BusinessException {
    File file = null;
    try {
        file = new File(filename);
        FileUtils.writeByteArrayToFile(file, content);
        return FileProvider.newFile(file);
    } catch (IOException exception) {
        throw new BusinessException("Fehler beim Erzeugen der Datei " + file.getName() + ": " + exception.getMessage());

...

Ein Beispiel finden Sie hier.

 


    }
}

Verwandte Seiten

gear QueryProvider


Daten laden.

Öffnen →

gear BusinessObjectProvider


BOs schreiben.

Öffnen →

gear DatasourceProvider


Datenquellen ausführen.

Öffnen →

...