Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.
Kommentar: Migrated to Confluence 5.3

...

MethodeBeispiel
getSystemParameter
Codeblock
package org.nuclet.businessentity; 
 
import org.nuclos.api.annotation.Rule;
import org.nuclos.api.context.UpdateContext;
import org.nuclos.api.exception.BusinessException;
import org.nuclos.api.provider.ParameterProvider;
import org.nuclos.api.rule.UpdateRule;
import org.nuclos.parameter.NuclosSystemParameter;
 
/** @name       
  * @description
  * @usage      
  * @change     
*/
@Rule(name="SendConfirmationEmail", description="SendConfirmationEmail")
public class SendConfirmationEmail implements UpdateRule {
    public void update(UpdateContext context) throws BusinessException {
     
       Auftrag a = context.getBusinessObject(Auftrag.class);
 
       if(a.isApproved()) {
           String useEmail = ParameterProvider.getSystemParameter(NuclosSystemParameter.ConfirmationEmailIsActive);
           
		   // First check, if the value of this parameter is not null
           if (useEmail != null) {
                if (usrEmail.equals("Y")) {
                    // Following method creates a NuclosEmail and sends it to the user mentioned in "Auftrag" a.
                    // For lack of space this method is not implemented in this example. Suppose it does exist.
                    sendConfirmationEmail(a);
                }
           }       
       }
    }
}

Erläuterung: Für einen abgeschlossenen Auftrag soll eine Bestätigungsemail versandt werden. In den Systemparametern wurde nun ein Parameter namens "ConfirmationEmailIsActive" hinterlegt, der festlegt, ob das System (unabhängig von Aufträgen) im aktuellen Zustand überhaupt den Versandt ermöglicht oder nicht. Findet die Regel den Wert "Y" (steht für Yes), dann kann die Email verschickt werden.

Systemparameter zur Konfiguration des Emailservers siehe Systemparameter Parameter

getNucletParameter
Codeblock
package org.nuclet.zahlungsverkehr; 

import org.nuclos.api.annotation.Rule;
import org.nuclos.api.context.UpdateContext;
import org.nuclos.api.exception.BusinessException;
import org.nuclos.api.provider.ParameterProvider;
import org.nuclos.api.rule.UpdateRule;

import org.nuclet.zahlungsverkehr.ZahlungsverkehrNucletParameter;

/** @name        
  * @description 
  * @usage       
  * @change      
*/
@Rule(name="ValidatePayment", description="ValidatePayment")
public class ValidatePayment implements UpdateRule {
    public void update(UpdateContext context) throws BusinessException {
    
		// Dateiverzeichnis für den Eingang von MT940-Dateien
        String dirMT940Files = ParameterProvider.getNucletParameter(ZahlungsverkehrNucletParameter.MT940_DIRECTORY);
        
    }
}

Erläuterung: Das Nuclet "Zahlungsverkehr" umfasst einen bestimmen Funktionsumfang an Businessobjekt, Statusmodellen und Regeln (wie auch diese), zu dem fachlich auch der SWIFT-Standard zur elektronischen Übermittlung von Kontoauszug-Daten gehört. Der Parameter "MT940_DIRECTORY" wurde angelegt, diesem Nuclet zugewiesen und beinhaltet das Verzeichnis, in welches eingegangene MT940-Dateien abgelegt werden sollen. Im Beispiel wird der Wert ausgelesen.