Sie zeigen eine alte Version dieser Seite an. Zeigen Sie die aktuelle Version an.

Unterschiede anzeigen Seitenhistorie anzeigen

« Vorherige Version anzeigen Version 2 Nächste Version anzeigen »

Ausführen eines Imports

MethodeBeispiel
run
import org.nuclos.api.provider.ImportProvider;
import de.customer.SEPACodeStrukturDefinitionIDS;

public void insert(InsertContext context) throws BusinessException {
        try {
  			// Get data from file system
            NuclosFile sourceFile = FileProvider.newFile("/home/ftp/documents/SEPA-Code.csv");
            
			// Execute import
            ImportResult run = ImportProvider.run(sourceFile, false, SEPACodeStrukturDefinitionIDS.class);
            
            if(run.hasErrors()) {
                throw new BusinessException(run.getMessages());
            }
			else {
				NuclosMail nuclosMail = new NuclosMail("automaticImport@myCompany.de", "Datenimport fuer " + sourceFile.getName());
           		nuclosMail.addAttachment(sourceFile);
				nuclosMail.addAttachment(run.getLogFile());
	     		nuclosMail.setMessage("Erfolgreicher Datenimport fuer " + sourceFile.getName() + "\n\n" + run.getMessages());
            
            	MailProvider.send(nuclosMail);
			}
            
        } catch (Exception e) {
            throw new BusinessException(e);
        }
        
        
    }

Erläuterung:

Die Ausführung eines Datenimports über den ImportProvider kann aus jeder Regel heraus vorgenommen werden. Im oberen Beispiel sollen SEPA Daten in das Nuclos System geladen werden. Die externen Daten befinden sich in einer CSV-Datei auf dem Server. Diese Informationen werden in eine NuclosFile geladen und dem Provider samt zuständiger StrukturDefinition übergeben. Als Resultat erhalten wir ein ImportResult-Object. Sollte ein Fehler aufgetreten sein (hasErrors()), wird eine BusinessException geworfen und die Regelverarbeitung abgebrochen. Wenn nicht, werden die Textnachrichten, die Log-Datei und die Datendatei selbst als Bestätigung an eine Email-Adresse weitergeleitet.

Im Falle eines Laufzeit-Fehlers wird eine BusinessException geworfen.

  • Keine Stichwörter