System-Skriptsprache: OLTP-Funktionen, Funktionen für dynamische Business Objects (Dynamic business object functions)

Zu den Funktionen für dynamische Business Objects gehören s. g. Getter-Funktionen, um den Wert eines weiteren Feldes abzufragen, Setter-Funktionen, um einem weiteren Feld einen Wert zuzuweisen sowie Validate-Funktionen, um zu prüfen, ob ein Wert einem weiteren Feld zugewiesen werden kann. Mithilfe der Funktion resetDbo kann der Wert auf den Vorschlagswert zurückgesetzt werden. Besitzt das weitere Feld keinen Vorschlagswert, dann wird der Wert auf den Vorschlagswert des Datentypen zurückgesetzt.

Getter-Funktionen:

Getter-Funktionen für Wertelisten:

Reset-Funktion:

Setter-Funktionen:

Setter-Funktionen für Wertelisten:

Validate-Funktionen:

Allgemeine Informationen zu den OLTP-Funktionen der System-Skriptsprache erhalten Sie im Artikel System-Skriptsprache: OLTP-Funktionen.

Getter-Funktionen

dboCisDate

Name dboCisDate
Beschreibung dboCisDate gibt den Wert eines weiteren Feldes vom Feldtyp Datum oder Datum und Uhrzeit zurück.
Signaturen CisDate dboCisDate(String schemaName, CisObject object, String attributeName)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, dann wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount
  • object ist die Instanz eines Business Objects.
  • attributeName ist der Name des weiteren Feldes.
Ergebnis Die Funktion gibt den Wert eines weiteren Feldes vom Feldtyp Datum oder Datum und Uhrzeit als ein CisDate zurück.

Ist dem weiteren Feld kein Datum bzw. Datum und Uhrzeit zugewiesen, wird der Vorschlagswert des weiteren Feldes zurückgegeben. Besitzt das weitere Feld keinen Vorschlagswert, wird der Standardwert null des Datentypen CisDate zurückgegeben.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele dboCisDate("EXTPartner", loadPartner("70010"), "DATE_OF_BIRTH") gibt das weitere Feld zurück.

isNull(dboCisDate("EXTPartner", loadPartner("70010"), "DATE_OF_BIRTH")) prüft, ob dem weiteren Feld ein Datum zugewiesen ist.

Kontext OLTP
Hinweise
Siehe auch dboListCisDate, setDboCisDate, setDboListCisDate, validateDboCisDate

Folgendes Beispiel aus der Aktivitätsdefinition help.dboCisDate gibt den Wert eines weiteren Feldes vom Feldtyp Datum oder Datum und Uhrzeit eines Partners als eine Zeichenkette zurück.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var r_dboValue := "";

var dboValue := dboCisDate("EXTPartner", p_partner, p_name);
if (not isNull(dboValue))
r_dboValue := cast(String, dboValue);

result.IS_ASSIGNED := not isNull(dboValue);
result.DBO_VALUE := r_dboValue;
}

 

dboCisObject

Name dboCisObject
Beschreibung dboCisObject gibt den Wert eines weiteren Feldes vom Feldtyp Business Entity zurück.
Signaturen CisObjectReference dboCisObject(String schemaName, CisObject object, String attributeName)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

Ergebnis Die Funktion gibt den Wert eines weiteren Feldes vom Feldtyp Business Entity als eine untypisierte CisObjectReference zurück. Um das Ergebnis zu verwenden, müssen Sie die untypisierte Referenz mithilfe der Funktion cast in eine Referenz für das gewünschte Business Object umwandeln.

Ist dem weiteren Feld kein Business Entity zugewiesen, wird der Vorschlagswert des weiteren Feldes zurückgegeben. Besitzt das weitere Feld keinen Vorschlagswert, wird der Standard-Wert null des Datentypen CisObjectReference zurückgegeben.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele cast(CisObjectReference(com.cisag.app.general.obj.Partner), dboCisObject("EXTPartner", loadPartner("70010"), "SPOUSE")) gibt den im weiteren Feld hinterlegten Partner als typisierte CisObjectReference zurück.

isNull(dboListCisObject("EXTPartner", loadPartner("70010"), "SPOUSE")) prüft, ob dem weiteren Feld ein Business Entity zugewiesen ist.

Kontext OLTP
Hinweise
Siehe auch dboListCisObject, setDboCisObject, setDboListCisObject, validateDboCisObject

Folgendes Beispiel aus der Aktivitätsdefinition help.dboCisObject gibt die Identifikation eines in einem weiteren Feld eines Partners hinterlegten Partners als eine Zeichenkette zurück zurück.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var r_dboValue := "";

var dboValue := dboCisObject("EXTPartner", p_partner, p_name);
if (not isNull(dboValue))
r_dboValue := cast(CisObject(com.cisag.app.general.obj.Partner), dboValue):number;

result.IS_ASSIGNED := not isNull(dboValue);
result.DBO_VALUE := r_dboValue;
}

 

dboDomesticAmount

Name dboDomesticAmount
Beschreibung dboDomesticAmount gibt den Wert eines weiteren Feldes vom Feldtyp Betrag in Hauswährung oder Preis in Hauswährung zurück.
Signaturen CisObject(com.cisag.app.general.obj.DomesticAmount) dboDomesticAmount(String schemaName, CisObject object, String attributeName)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, dann wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

Ergebnis Die Funktion gibt den Wert eines weiteren Feldes vom Feldtyp Betrag in Hauswährung oder Preis in Hauswährung als einen typisierten Part CisObject(com.cisag.app.general.obj.DomesticAmount) zurück. Der Betrag bzw. Preis wird in der Hauswährungskombination derjenigen Organisation zurückgegeben, für die das weitere Feld erfasst wurde.

Ist dem weiteren Feld kein Betrag bzw. Preis in der Hauswährung zugewiesen, wird der Vorschlagswert des weiteren Feldes zurückgegeben. Besitzt das weitere Feld keinen Vorschlagswert, wird ein Part mit dem Standardwert 0 des Datentyps Number in allen drei Hauswährungen zurückgegeben.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele dboDomesticAmount("EXTPartner", loadPartner("10010"), "CREDIT_LIMIT_ALT"):amount1 gibt den Wert des weiteren Feldes für den Partner in der 1. Hauswährung zurück.
Kontext OLTP
Hinweise
Siehe auch dboListDomesticAmount, setDboDomesticAmount, setDboListDomesticAmount, validateDboDomesticAmount

Folgendes Beispiel aus der Aktivitätsdefinition help.dboDomesticAmount gibt den Wert eines weiteren Feldes vom Feldtyp Hauswährungsbetrag eines Partners in der ersten Hauswährung als eine Zahl zurück.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var r_dboValue := dboDomesticAmount("EXTPartner", p_partner, p_name):amount1;

result.DBO_VALUE := r_dboValue;
}

 

dboForeignAmount

Name dboForeignAmount
Beschreibung dboForeignAmount gibt den Wert eines weiteren Feldes vom Feldtyp Betrag oder Preis zurück.
Signaturen CisObject(com.cisag.app.general.obj.ForeignAmount) dboForeignAmount(String schemaName, CisObject object, String attributeName)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, dann wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

Ergebnis Die Funktion gibt den Wert eines weiteren Feldes vom Feldtyp Betrag oder Preis als einen typisierten Part CisObject(com.cisag.app.general.obj.ForeignAmount) zurück.

Ist dem weiteren Feld kein Betrag oder Preis zugewiesen, wird der Vorschlagswert des weiteren Feldes zurückgegeben. Besitzt das weitere Feld keinen Vorschlagswert, wird ein Part mit dem Standardwert 0 des Datentypen Number für den Betrag (amount) bzw. Preis und mit dem Standardwert null des Datentypen Guid als Währung (currency) zurückgegeben.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele dboForeignAmount("EXTPartner", loadPartner("10010"), "LIMIT"):amount gibt den Betrag bzw. Preis in Fremdwährung zurück.

loadCurrency(dboForeignAmount("EXTPartner", loadPartner("10010"), "LIMIT"):currency):isoCode gibt den ISO-Code der Fremdwährung zurück.

isNull(dboForeignAmount("EXTPartner", loadPartner("10010"), "LIMIT"):currency) prüft, ob dem weiteren Feld ein Betrag bzw. Preis zugewiesen ist.

Kontext OLTP
Hinweise
Siehe auch dboListForeignAmount, setDboForeignAmount, setDboListForeignAmount, validateDboForeignAmount

Folgendes Beispiel aus der Aktivitätsdefinition help.dboForeignAmount gibt den Wert eines weiteren Feldes vom Feldtyp Betrag oder Preis eines Partners incl. den ISO-Code der Währung als eine Zeichenkette zurück.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var r_dboValue := "";

var dboValue := dboForeignAmount("EXTPartner", p_partner, p_name);
if (not isNull(dboValue:currency))
r_dboValue := format(dboValue:amount, "#0.00") + " " + loadCurrency(dboValue:currency):isoCode;

result.IS_ASSIGNED := not isNull(dboValue:currency);
result.DBO_VALUE := r_dboValue;
}

 

dboGuid

Name dboGuid
Beschreibung dboGuid gibt den Wert eines weiteren Feldes vom Feldtyp Klassifikation zurück.
Signaturen Guid dboGuid(String schemaName, CisObject object, String attributeName)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

Ergebnis Die Funktion gibt den Wert des weiteren Feldes vom Feldtyp Klassifikation als eine Guid des Business Objects com.cisag.app.general.extension.obj.EntityExtensionHierarchy zurück, das die Eigenschaften der zugeordneten Klassifikation enthält.

Ist dem weiteren Feld keine Klassifikation zugewiesen, wird der Vorschlagswert des weiteren Feldes zurückgegeben. Besitzt das weitere Feld keinen Vorschlagswert, wird der Standardwert null des Datentypen Guid zurückgegeben.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele
getByPrimaryKey(CisObject
(com.cisag.app.general.extension.obj.EntityExtensionHierarchy), 
dboGuid("EXTPartner", loadPartner("70010"), "HOME_OFFICE")):path

gibt den Pfad des weiteren Feldes vom Feldtyp Klassifikation für den Partner zurück.

isNull(dboGuid("EXTPartner", loadPartner("70010"), "LOCATION")) prüft, ob dem weiteren Feld eine Klassifikation zugewiesen ist.

Kontext OLTP
Hinweise Verwenden Sie das Ergebnis, um die Klassifikation, z. B. mithilfe der Funktion getByPrimaryKey, zu öffnen und weitere Attribute auszuwerten. Weitere Felder vom Feldtyp Klassifikation werden im Business Object com.cisag.app.general.extension.obj.EntityExtensionHierarchy gespeichert.
Siehe auch dboListGuid, setDboGuid, setDboListGuid, validateDboGuid

Folgendes Beispiel aus der Aktivitätsdefinition help.dboGuid gibt den Pfad und die Bezeichnung eines weiteren Feldes vom Feldtyp Klassifikation eines Partners als eine Zeichenkette zurück.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var r_dboValue := "";

var dboValue := dboGuid("EXTPartner", p_partner, p_name);
if (not isNull(dboValue)) {
var classification := getByPrimaryKey(CisObject(com.cisag.app.general.extension.obj.EntityExtensionHierarchy), dboValue);
r_dboValue := classification:path + " " + classification:description;
}

result.IS_ASSIGNED := not isNull(dboValue);
result.DBO_VALUE := r_dboValue;
}

 

dboNumber

Name dboNumber
Beschreibung dboNumber gibt den Wert eines weiteren Feldes vom Feldtyp Dezimal zurück.
Signaturen Number dboNumber(String schemaName, CisObject object, String attributeName)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object
    com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

Ergebnis Die Funktion gibt den Wert des weiteren Feldes vom Feldtyp Dezimal als eine Zahl zurück.

Ist dem weiteren Feld keine Dezimalzahl zugewiesen, wird der Vorschlagswert des weiteren Feldes zurückgegeben. Besitzt das weitere Feld keinen Vorschlagswert, wird der Standardwert 0 des Datentypen Number zurückgegeben.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele dboNumber("EXTPartner", loadPartner("10010"), "CREDIT_POINTS") gibt den Wert des weiteren Feldes für den Partner zurück.
Kontext OLTP
Hinweise
Siehe auch dboListNumber, setDboNumber, setDboListNumber, validateDboNumber

Folgendes Beispiel aus der Aktivitätsdefinition help.dboNumber gibt den Wert eines weiteren Feldes vom Feldtyp Dezimal eines Partners als eine Zahl zurück.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var r_dboValue := dboNumber("EXTPartner", p_partner, p_name);

result.DBO_VALUE := r_dboValue;
}

 

dboQuantity

Name dboQuantity
Beschreibung dboQuantity gibt den Wert eines weiteren Feldes vom Feldtyp Menge zurück.
Signaturen CisObject(com.cisag.app.general.obj.Quantity) dboQuantity(String schemaName, CisObject object, String attributeName)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object
    com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

Ergebnis Die Funktion gibt den Wert des weiteren Feldes vom Feldtyp Menge als einen typisierten Part CisObject(com.cisag.app.general.obj.Quantity) zurück.

Ist dem weiteren Feld keine Menge zugewiesen, wird die Zahl 0 für die Menge und der Wert ZERO_GUID für die Einheit zurückgegeben.

Ist dem weiteren Feld keine Menge zugewiesen, wird der Vorschlagswert des weiteren Feldes zurückgegeben. Besitzt das weitere Feld keinen Vorschlagswert, wird ein Part mit dem Standardwert 0 des Datentypen Number für die Menge (amount) und mit dem Wert ZERO_GUID für die Einheit (uom) zurückgegeben, auch wenn „null“ der Standardwert des Datentpyen Guid ist.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele dboQuantity("EXTPartner", loadPartner("70010"), "WEIGHT"):amount gibt den Wert des weiteren Feldes für den Partner als Zahl zurück.

loadUom(dboQuantity("EXTPartner", loadPartner("70010"), "WEIGHT"):uom):code gibt die Identifikation der Einheit des weiteren Feldes zurück.

dboQuantity("EXTPartner", loadPartner("10010"), "WEIGHT"):uom <> ZERO_GUID prüft, ob dem weiteren Feld eine Menge zugewiesen ist.

Kontext OLTP
Hinweise
Siehe auch dboListQuantity, setDboQuantity, setDboListQuantity, validateDboQuantity

Folgendes Beispiel aus der Aktivitätsdefinition help.dboQuantity gibt die Menge und Einheit eines weiteren Feldes vom Feldtyp Menge eines Partners als eine Zeichenkette zurück.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var r_dboValue := "";

var dboValue := dboQuantity("EXTPartner", p_partner, p_name);
if (not isNull(dboValue:uom))
r_dboValue := format(dboValue:amount, "#0.00") + " " + loadUom(dboValue:uom):code;

result.IS_ASSIGNED := dboValue:uom <> ZERO_GUID;
result.DBO_VALUE := r_dboValue;
}

 

dboString

Name dboString
Beschreibung dboString gibt den Wert eines weiteren Feldes vom Feldtyp Text, E-Mail-Adresse oder Uniform Resource Locator (URL) zurück.
Signaturen String dboString(String schemaName, CisObject object, String attributeName)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object
    com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

Ergebnis Die Funktion gibt den Wert des weiteren Feldes vom Feldtyp Text, E-Mail-Adresse oder Uniform Resource Locator zurück.

Ist dem weiteren Feld kein Wert zugewiesen, wird der Vorschlagswert des weiteren Feldes zurückgegeben. Besitzt das weitere Feld keinen Vorschlagswert, wird eine leere Zeichenkette als Standardwert des Datentypen String zurückgegeben.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele dboString("EXTPartner", loadPartner("10010"), "REFERENCE") gibt den Wert des weiteren Feldes für den Partner zurück.
Kontext OLTP
Hinweise
Siehe auch dboListString, setDboString, setDboListString, validateDboString

Folgendes Beispiel aus der Aktivitätsdefinition help.dboString gibt den Wert eines weiteren Feldes vom einem der Feldtypen Text, E-Mail-Adresse oder Uniform Resource Locator (URL) eines Partners als Zeichenkette zurück.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var r_dboValue := dboString("EXTPartner", p_partner, p_name);

result.DBO_VALUE := r_dboValue;
}

 

dboText

Name dboText
Beschreibung dboText gibt den Wert eines weiteren Feldes vom Feldtyp Langtext zurück.
Signaturen String dboText(String schemaName, CisObject object, String attributeName)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object
    com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

Ergebnis Die Funktion gibt den Wert des weiteren Feldes vom Feldtyp Langtext in der Inhaltssprache des aktuellen Kontexts zurück.

Ist dem weiteren Feld kein Wert zugewiesen, wird der Vorschlagswert des weiteren Feldes zurückgegeben. Besitzt das weitere Feld keinen Vorschlagswert, wird der Wert null zurückgegeben.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, so wird der Wert null zurückgegeben.
Beispiele dboText("EXTPartner", loadPartner("10010"), "NOTES") gibt den Wert des weiteren Feldes für den Partner zurück.

isNull(dboText("EXTPartner", loadPartner("10010"), "NOTES")) prüft, ob dem weiteren Feld ein Text zugewisen ist.

Kontext OLTP
Hinweise Da die Definition eines weiteren Feldes vom Feldtyp Langtext weder eine Werteliste noch Restriktionen unterstützt, gibt es keine Funktionen dboListText, setDboListText und validateDboText.
Siehe auch dboTextContentType, setDboText

Folgendes Beispiel aus der Aktivitätsdefinition help.dboText gibt den Wert eines weiteren Feldes vom Feldtyp Langtext eines Partners als Zeichenkette in einer beliebigen Inhaltssprache zurück.

function create()
{
var p_name := parameters.NAME;
var p_language := parameters.LANGUAGE;
var p_partner := loadPartner(parameters.PARTNER);
var r_dboValue := "";

var oldContentLanguage := getNLSContentLanguage();
var oldDisplayLanguage := getNLSDisplayLanguage();
setNLSLanguages(p_language);
/*  var dboValue := dboText("EXTPartner", p_partner, p_name);*/
var dboValue := dboString("EXTPartner", p_partner, p_name);
setNLSContentLanguage(oldContentLanguage);
setNLSDisplayLanguage(oldDisplayLanguage);
if (not isNull(dboValue))
r_dboValue := dboValue;

result.IS_ASSIGNED := not isNull(dboValue);
result.DBO_VALUE := r_dboValue;
}

 

dboTextContentType

Name dboTextContentType
Beschreibung dboTextContentType gibt den Inhaltstyp eines weiteren Feldes vom Feldtyp Langtext zurück.
Signaturen Number dboTextContentType(String schemaName, CisObject object, String attributeName)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object
    com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

Ergebnis Die Funktion gibt den Inhaltstyp des weiteren Feldes vom Feldtyp Langtext zurück. Der Inhaltstyp ist einer der Einträge des ValueSets com.cisag.sys.gui.HTMLEditorContentValueSet:

  1. HTML
  2. Nur Text

Ist dem weiteren Feld kein Wert zugewiesen, wird der Inhaltstyp des Vorschlagswerts des weiteren Feldes zurückgegeben. Besitzt das weitere Feld keinen Vorschlagswert, wird der Standardwert 0 des Datentypen Number zurückgegeben.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele dboTextContentType("EXTPartner", loadPartner("10010"), "DETAILS") gibt den Inhaltstyp des weiteren Feldes für den Partner zurück.

dboTextContentType("EXTPartner", loadPartner("10010"), "NOTES") = 0 prüft, ob dem weiteren Feld ein Text zugewiesen ist.

Kontext OLTP
Hinweise Wenn Sie den Wert eines weiteren Feldes vom Feldtyp Langtext in der Bezeichung einer Aktivität ausgeben möchten, dann können Sie beim Inhaltstypen HTML (1) die Funktion formatActivityHtml und beim Inhaltstypen Nur Text (2) die Funktion formatActivity verwenden.
Siehe auch dboText, setDboText

Folgendes Beispiel aus der Aktivitätsdefinition help.dboTextContextType gibt den Inhaltstypen von einem weiteren Feld eines Partners mit dem Feldtyp Langtext als Zeichenkette zurück.

const ContentType as valueSet(com.cisag.sys.gui.HTMLEditorContentValueSet);

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var r_dboValue := dboTextContentType("EXTPartner", p_partner, p_name);

result.IS_ASSIGNED := r_dboValue > 0;
result.DBO_VALUE := valueSetDescription(ContentType, r_dboValue);
}

 

dboTimestamp

Name dboTimestamp
Beschreibung dboTimestamp gibt den Wert eines weiteren Feldes vom Feldtyp Datum und Uhrzeit oder Datum zurück.
Signaturen Timestamp dboTimestamp(Timestamp schemaName, CisObject object, Timestamp attributeName)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object
    com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

Ergebnis Die Funktion gibt den Wert des weiteren Feldes vom Feldtyp Datum und Uhrzeit oder Datum als Zeitpunkt zurück.

Ist dem weiteren Feld kein Datum und Uhrzeit bzw. Datum zugewiesen, wird der Vorschlagswert des weiteren Feldes zurückgegeben. Besitzt das weitere Feld keinen Vorschlagswert, wird der Wert null zurückgegeben, auch wenn die Konstante UNDEFINED_DATE der eigentliche Vorschlagswert des Datentypen Timestamp ist.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele dboTimestamp("EXTPartner", loadPartner("10010"), "LAST_ACCESS") gibt den Wert des weiteren Feldes für den Partner zurück.

isNull(dboTimestamp("EXTPartner", loadPartner("10010"), "LAST_ACCESS")) prüft, ob dem weiteren Feld ein Datum und eine Uhrzeit bzw. ein Datum zugewiesen ist.

Kontext OLTP
Hinweise
Siehe auch dboListTimestamp, setDboTimestamp, setDboListTimestamp, validateDboTimestamp

Folgendes Beispiel aus der Aktivitätsdefinition help.dboTimestamp gibt den Wert von einem weiteren Feld eines Partners mit dem Feldtyp Datum und Uhrzeit oder Datum als Zeitpunkt zurück.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var r_dboValue := dboTimestamp("EXTPartner", p_partner, p_name);

result.IS_ASSIGNED := r_dboValue <> UNDEFINED_DATE;
result.DBO_VALUE := r_dboValue;
}

 

dboValueSet

Name dboValueSet
Beschreibung dboValueSet gibt den numerischen Wert der Auswahl eines weiteren Feldes vom Feldtyp Auswahlfeld zurück.
Signaturen Number dboValueSet(ValueSet schemaName, CisObject object, ValueSet attributeName)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object
    com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

Ergebnis Die Funktion gibt den numerischen Wert des weiteren Feldes vom Feldtyp Auswahlfeld als Zahl zurück.

Ist dem weiteren Feld kein Wert zugewiesen, wird der Vorschlagswert des weiteren Feldes zurückgegeben. Besitzt das weitere Feld keinen Vorschlagswert, wird der Standardwert 0 des Datentypen Number zurückgegeben.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele dboValueSet("EXTPartner", loadPartner("10010"), "SIZE") gibt den numerischen Wert des weiteren Feldes für den Partner zurück.

dboValueSet("EXTPartner", loadPartner("10010"), "SIZE") > 0 prüft, ob dem weiteren Feld ein Wert zugewiesen ist.

Kontext OLTP
Hinweise Der numerische Wert (ID) wird in den Eigenschaften eines weiteren Feldes vom Feldtyp Auswahlfeld nicht angezeigt. In den meisten Fällen entspricht der numerische Wert der Reihenfolge, in der die Einträge erfasst wurden.
Siehe auch dboValueSetDescription, dboValueSetName, dboListValueSet, dboListValueSetDescription, dboListValueSetName, setDboValueSet, setDboValueSetName, setDboListValueSet, setDboListValueSetName, validateDboValueSet, validateDboValueSetName

Folgendes Beispiel aus der Aktivitätsdefinition help.dboValueSet gibt den numerischen Wert eines weiteren Feldes vom Feldtyp Auswahlfeld eines Partners als eine Zahl zurück.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var r_dboValue := dboValueSet("EXTPartner", p_partner, p_name);

result.IS_ASSIGNED := r_dboValue > 0;
result.DBO_VALUE := r_dboValue;
}

 

dboValueSetDescription

Name dboValueSetDescription
Beschreibung dboValueSetDescription gibt die Bezeichnung der Auswahl eines weiteren Feldes vom Feldtyp Auswahlfeld zurück.
Signaturen String dboValueSetDescription(String schemaName, CisObject object, String at-tributeName)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object
    com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

Ergebnis Die Funktion gibt die Bezeichnung des weiteren Feldes vom Feldtyp Auswahlfeld als eine Zeichenkette in der Inhaltssprache des aktuellen Kontexts zurück.

Ist dem weiteren Feld kein Wert zugewiesen, wird der Vorschlagswert des weiteren Feldes zurückgegeben. Besitzt das weitere Feld keinen Vorschlagswert, wird eine leere Zeichenkette als Standardwert des Datentyps String zurückgegeben.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele dboValueSetDescription("EXTPartner", loadPartner("10010"), "SIZE") gibt die Bezeichnung des weiteren Feldes für den Partner zurück.
Kontext OLTP
Hinweise
Siehe auch dboValueSet, dboValueSetName, dboListValueSet, dboListValueSetDescription, dboListValueSetName, setDboValueSet, setDboValueSetName, setDboListValueSet, setDboListValueSetName, validateDboValueSet, validateDboValueSetName

Folgendes Beispiel aus der Aktivitätsdefinition help.dboValueSetDescription gibt die Bezeichnung eines weiteren Feldes vom Feldtyp Auswahlfeld als eine Zeichenkette in einer beliebigen Anzeigesprache zurück.

function create()
{
var p_name := parameters.NAME;
var p_language := parameters.LANGUAGE;
var p_partner := loadPartner(parameters.PARTNER);

var oldLanguage := getNLSContentDisplayLanguage;
setNLSDisplayLanguage(p_language);
var r_dboValue := dboValueSetDescription("EXTPartner", p_partner, p_name);
setNLSDisplayLanguage(oldLanguage);

result.IS_ASSIGNED := dboValueSet("EXTPartner", p_partner, p_name) > 0;
result.DBO_VALUE := r_dboValue;
}

 

dboValueSetName

Name dboValueSetName
Beschreibung dboValueSetName gibt den Konstanten Wert der Auswahl eines weiteren Feldes vom Feldtyp Auswahlfeld zurück.
Signaturen String dboValueSetName(String schemaName, CisObject object, String attribu-teName)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object
    com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

Ergebnis Die Funktion gibt den konstanten Wert des weiteren Feldes vom Feldtyp Auswahlfeld als Zeichenkette zurück.

Ist dem weiteren Feld kein Wert zugewiesen, wird der Vorschlagswert des weiteren Feldes zurückgegeben. Besitzt das weitere Feld keinen Vorschlagswert, wird eine leere Zeichenkette als Standardwert des Datentypen String zurückgegeben.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele dboValueSetName("EXTPartner", loadPartner("10010"), "SIZE") gibt den konstanten Wert des weiteren Feldes für den Partner zurück.

dboValueSetName("EXTPartner", loadPartner("10010"), "SIZE") = "" prüft, ob dem weiteren Feld ein Wert zugewiesen ist.

Kontext OLTP
Hinweise
Siehe auch dboValueSet, dboValueSetDescription, dboListValueSet, dboListValueSetDescription, dboListValueSetName, setDboValueSet, setDboValueSetName, setDboListValueSet, setDboListValueSetName, validateDboValueSet, validateDboValueSetName

Folgendes Beispiel aus der Aktivitätsdefinition help.dboValueSetName gibt den konstanten Wert eines weiteren Feldes vom Feldtyp Auswahlfeld eines Partners als eine Zeichenkette zurück.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var r_dboValue := dboValueSetName("EXTPartner", p_partner, p_name);

result.IS_ASSIGNED := r_dboValue <> "";
result.DBO_VALUE := r_dboValue;
}

 

Getter-Funktionen für Wertelisten

dboListCisDate

Name dboListCisDate
Beschreibung dboListCisDate gibt die Werteliste eines weiteren Feldes vom Feldtyp Datum oder Datum und Uhrzeit zurück.
Signaturen CisDate[] dboListCisDate(String schemaName, CisObject object, String attributeName)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object
    com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

Ergebnis Die Funktion gibt die Werteliste eines weiteren Feldes vom Feldtyp Datum oder Datum und Uhrzeit als eine Liste von CisDates zurück.

Ist dem weiteren Feld kein Datum bzw. kein Datum und  keine Uhrzeit zugewiesen, wird der Vorschlagswert des weiteren Feldes zurückgegeben. Besitzt das weitere Feld keinen Vorschlagswert, wird eine Liste mit einem einzigen Listenelement mit dem Standardwert null des Datentypen CisDate zurückgegeben.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele dboListCisDate("EXTPartner", loadPartner("70010"), "APPRAISAL_DATES") gibt die Werteliste des weiteren Feldes für den Partner zurück.

toTimestamp(dboListCisDate("EXTPartner", loadPartner("70010"), "DATE_OF_BIRTH"))[0] <> UNDEFINED_DATE) prüft, ob dem weiteren Feld ein Datum bzw. ein Datum und eine Uhrzeit zugewiesen ist.

Kontext OLTP
Hinweise
Siehe auch dboCisDate, setDboCisDate, setDboListCisDate, validateDboCisDate

Folgendes Beispiel aus der Aktivitätsdefinition help.dboListCisDate gibt die Werteliste eines weiteren Feldes vom Feldtyp Datum oder Datum und Uhrzeit eines Partners in einer Zeichenkette zurück.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var r_dboValue := "";

var dboValueList := dboListCisDate("EXTPartner", p_partner, p_name);
for (element : dboValueList)
if (isNull(element))
r_dboValue := r_dboValue + "[null] ";
else if (toTimestamp(element) = UNDEFINED_DATE)
r_dboValue := r_dboValue + "[UNDEFINED_DATE] ";
else if (toTimestamp(element) = MIN_DATE)
r_dboValue := r_dboValue + "[MIN_DATE] ";
else if (toTimestamp(element) = MAX_DATE)
r_dboValue := r_dboValue + "[MAX_DATE] ";
else
r_dboValue := r_dboValue + "[" + format(element, "yyyy-MM-dd") + "] ";

result.IS_ASSIGNED := isNull(dboValueList[0]);
result.DBO_VALUE := trim(r_dboValue);
}

 

dboListCisObject

Name dboListCisObject
Beschreibung dboListCisObject gibt die Werteliste eines weiteren Feldes vom Feldtyp Business Entity zurück.
Signaturen CisObjectReference[] dboListCisObject(String schemaName, CisObject object, String attributeName)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object
    com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

Ergebnis Die Funktion gibt die Werteliste des weiteren Feldes vom Feldtyp Business Entity als eine Liste von untypisierten CisObjectReference zurück. Um das Ergebnis zu verwenden, müssen Sie die einzelnen Listenelemente mithilfe der Funktion cast in das gewünschte Business Object umwandeln.

Ist dem weiteren Feld kein Business Entity zugewiesen, wird der Vorschlagswert des weiteren Feldes zurückgegeben. Besitzt das weitere Feld keinen Vorschlagswert, wird eine Liste mit einem einzigen Listenelement mit dem Standardwert null des Datentypen CisObjectReference zurückgegeben.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele dboListCisObject("EXTPartner", loadPartner("70010"), "CHILDREN") gibt die Werteliste des weiteren Feldes für den Partner zurück.

isNull(dboListCisObject("EXTPartner", loadPartner("70010"), "CHILDREN")[0]) prüft, ob dem weiteren Feld ein Business Entity zugewiesen ist.

Kontext OLTP
Hinweise
Siehe auch dboCisObject, setDboCisObject, setDboListCisObject, validateDboCisObject

Folgendes Beispiel aus der Aktivitätsdefinition help.dboListCisObject gibt die Identifikation aller Partner in einer Zeichenkette zurück, die in einem weiteren Feld eines Partners hinterlegt sind.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var r_dboValue := "";

var dboValueList := dboListCisObject("EXTPartner", p_partner, p_name);
for (element as CisObject(com.cisag.app.general.obj.Partner) : dboValueList)
if (isNull(element))
r_dboValue := r_dboValue + "[null] ";
else
r_dboValue := r_dboValue + "[" + cast(CisObject(com.cisag.app.general.obj.Partner), element):number + "] ";

result.IS_ASSIGNED := not isNull(dboValueList[0]);
result.DBO_VALUE := trim(r_dboValue);
}

 

dboListDomesticAmount

Name dboListDomesticAmount
Beschreibung dboListDomesticAmount gibt die Werteliste eines weiteren Feldes vom Feldtyp Betrag in Hauswährung oder Preis in Hauswährung zurück.
Signaturen CisObject(com.cisag.app.general.obj.DomesticAmount)[] dboListDomesticAmount(String schemaName, CisObject object, String attributeName)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object
    com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

Ergebnis Die Funktion gibt die Werteliste eines weiteren Feldes vom Feldtyp Betrag in Hauswährung oder Preis in Hauswährung als eine Liste von typisierten Parts CisObject(com.cisag.app.general.obj.DomesticAmount) zurück.

Ist dem weiteren Feld kein Betrag bzw. Preis in Hauswährung zugewiesen, wird der Vorschlagswert des weiteren Feldes zurückgegeben. Besitzt das weitere Feld keinen Vorschlagswert, wird ein Part mit dem Standardwert 0 des Datentypen Number in allen drei Hauswährungen zurückgegeben.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele dboListDomesticAmount("EXTPartner", loadPartner("10010"), "CREDIT_LIMIT_ALT") gibt die Werteliste des weiteren Feldes für den Partner zurück.
Kontext OLTP
Hinweise
Siehe auch dboDomesticAmount, setDboDomesticAmount, setDboListDomesticAmount, validateDboDomesticAmount

Folgendes Beispiel aus der Aktivitätsdefinition help.dboListDomesticAmount gibt alle Werte von einem weiteren Feld des Feldtyps Hauswährungsbetrag eines Partners in der ersten Hauswährung in einer Zeichenkette zurück.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var r_dboValue := "";
var currency1 := loadCurrency(getCurrency1()):isoCode;

var dboValueList := dboListDomesticAmount("EXTPartner", p_partner, p_name);
for (element : dboValueList)
r_dboValue := r_dboValue + "[" + format(element:amount1, "#.00") + " " + currency1 + "] ";

result.DBO_VALUE := trim(r_dboValue);
}

function getCurrency1() as Guid
{
var currency1 as Guid;
var company := loadOrganization(getCustomizingValue("com.cisag.app.General"):company);
var baseFunction := getCustomizingValue("com.cisag.app.general.Base", company:guid);

if (not isNull(baseFunction)) {
var combination := getByPrimaryKey(CisObject(com.cisag.app.multiorg.obj.DomesticCurrencyCombination), baseFunction:combination);
currency1 := combination:currency1;
}
return currency1;
}

 

dboListForeignAmount

Name dboListForeignAmount
Beschreibung dboListForeignAmount gibt die Werteliste eines weiteren Feldes vom Feldtyp Betrag oder Preis zurück.
Signaturen CisObject(com.cisag.app.general.obj.ForeignAmount)[] dboListForeignAmount(String schemaName, CisObject object, String attributeName)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object
    com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

Ergebnis Die Funktion gibt die Werteliste eines weiteren Feldes vom Feldtyp Betrag oder Preis als eine Liste mit typisierten Parts CisObject(com.cisag.app.general.obj.ForeignAmount) zurück.

Ist dem weiteren Feld kein Betrag oder Preis zugewiesen, wird der Vorschlagswert des weiteren Feldes zurückgegeben. Besitzt das weitere Feld keinen Vorschlagswert, wird eine Liste mit einem einzigen Listenelement mit einem Part zurückgegeben, mit dem Standardwert 0 des Datentypen Number für den Betrag (amount) bzw. Preis und mit dem Standardwert null des Datentypen Guid als Währung (currency).

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele dboListForeignAmount("EXTPartner", loadPartner("10010"), "CREDIT_LIMIT_LOCAL") gibt die Werteliste des weiteren Feldes für den Partner zurück.

isNull(dboListForeignAmount("EXTPartner", loadPartner("10010"), "LIMIT")[0]:currency) prüft, ob dem weiteren Feld ein Betrag oder Preis zugewiesen ist.

Kontext OLTP
Hinweise
Siehe auch dboForeignAmount, setDboForeignAmount, setDboListForeignAmount, validateDboForeignAmount

Folgendes Beispiel aus der Aktivitätsdefinition help.dboForeignAmount gibt alle Werte eines weiteren Feldes vom Feldtyp Betrag eines Partners in einer Zeichenkette zurück, incl. dem ISO-Code der Währung.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var r_dboValue := "";

var dboValueList := dboListForeignAmount("EXTPartner", p_partner, p_name);
for (element as CisObject(com.cisag.app.general.obj.ForeignAmount) : dboValueList)
if (isNull(element:currency))
r_dboValue := r_dboValue + "[null] ";
else if (element:currency = ZERO_GUID)
r_dboValue := r_dboValue + "[ZERO_GUID] ";
else
r_dboValue := r_dboValue + "[" + format(element:amount, "#0.00") + " " + loadCurrency(element:currency):isoCode + "] ";

result.IS_ASSIGNED := not isNull(dboValueList[0]:currency);
result.DBO_VALUE := trim(r_dboValue);
}

 

dboListGuid

Name dboListGuid
Beschreibung dboListGuid gibt die Werteliste eines weiteren Feldes vom Feldtyp Klassifikation zurück.
Signaturen Guid[] dboListGuid(String schemaName, CisObject object, String attributeName)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object
    com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

Ergebnis Die Funktion gibt die Werteliste eines weiteren Feldes vom Feldtyp Klassifikation als eine Liste von Guids des Business Objects com.cisag.app.general.extension.obj.EntityExtensionHierarchy zurück, das die Eigenschaften der zugeordneten Klassifikationen enthält.

Ist dem weiteren Feld keine Klassifikation zugewiesen, wird der Vorschlagswert des weiteren Feldes zurückgegeben. Besitzt das weitere Feld keinen Vorschlagswert, wird eine Liste mit einem einzigen Listenelement mit dem Standardwert null des Datentypen Guid zurückgegeben.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele dboListGuid("EXTPartner", loadPartner("70010"), "HOME_OFFICE") gibt die Werteliste des weiteren Feldes für den Partner zurück.

isNull(dboListGuid("EXTPartner", loadPartner("70010"), "HOME_OFFICE"))[0] prüft, ob dem weiteren Feld ein Wert zugewiesen ist.

Kontext OLTP
Hinweise Verwenden Sie das Ergebnis, um die Klassifikation, z. B. mithilfe der Funktion getByPrimaryKey, zu öffnen und weitere Attribute auszuwerten. Weitere Felder vom Feldtyp Klassifikation werden im Business Object com.cisag.app.general.extension.obj.EntityExtensionHierarchy gespeichert.
Siehe auch dboGuid, setDboGuid, setDboListGuid, validateDboGuid

Folgendes Beispiel aus der Aktivitätsdefinition help.dboGuid gibt den Pfad und die Bezeichnung aller in einem weiteren Feld vom Feldtyp Klassifikation eines Partners hinterlegten Klassifikationen in einer Zeichenkette zurück.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var r_dboValue := "";

var dboValueList := dboListGuid("EXTPartner", p_partner, p_name);
var classification as CisObject(com.cisag.app.general.extension.obj.EntityExtensionHierarchy);
for (element : dboValueList)
if (isNull(element))
r_dboValue := r_dboValue + "[null] ";
else {
classification := getByPrimaryKey(CisObject(com.cisag.app.general.extension.obj.EntityExtensionHierarchy), element);
r_dboValue := r_dboValue + "[" + classification:path + " " + classification:description + "] ";
}

result.IS_ASSIGNED := not isNull(dboValueList[0]);
result.DBO_VALUE := trim(r_dboValue);
}

 

dboListNumber

Name dboListNumber
Beschreibung dboListNumber gibt die Werteliste eines weiteren Feldes vom Feldtyp Dezimal zurück.
Signaturen Number[] dboListNumber(String schemaName, CisObject object, String attributeName)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object
    com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

Ergebnis Die Funktion gibt die Werteliste eines weiteren Feldes vom Feldtyp Dezimal als eine Liste von Zahlen zurück.

Ist dem weiteren Feld keine Dezimalzahl zugewiesen, wird der Vorschlagswert des weiteren Feldes zurückgegeben. Besitzt das weitere Feld keinen Vorschlagswert, wird eine Liste mit einem einzigen Listenelement und dem Standardwert 0 des Datentypen Number zurückgegeben.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele dboListNumber("EXTPartner", loadPartner("10010"), "CREDIT_POINTS") gibt die Werteliste des weiteren Feldes für den Partner zurück.
Kontext OLTP
Hinweise
Siehe auch dboNumber, setDboNumber, setDboListNumber, validateDboNumber

Folgendes Beispiel aus der Aktivitätsdefinition help.dboNumber gibt alle Werte eines weiteren Feldes vom Feldtyp Dezimal eines Partners in einer Zeichenkette zurück.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var r_dboValue := "";

var dboValueList := dboListNumber("EXTPartner", p_partner, p_name);
for (element : dboValueList)
r_dboValue := r_dboValue + "[" + element + "] ";

result.DBO_VALUE := trim(r_dboValue);
}

 

dboListQuantity

Name dboListQuantity
Beschreibung dboListQuantity gibt die Werteliste eines weiteren Feldes vom Feldtyp Menge zurück.
Signaturen CisObject(com.cisag.app.general.obj.Quantity)[] dboListQuantity(String schemaName, CisObject object, String attributeName)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object
    com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

Ergebnis Die Funktion gibt die Werteliste eines weiteren Feldes vom Feldtyp Menge als eine Liste von typisierten Parts CisObject(com.cisag.app.general.obj.Quantity) zurück.

Ist dem weiteren Feld keine Menge zugewiesen, wird der Vorschlagswert des weiteren Feldes zurückgegeben. Besitzt das weitere Feld keinen Vorschlagswert, wird eine Liste mit einem einzigen Listenelement mit einem Part mit dem Standardwert 0 des Datentypen Number für die Menge (amount) und mit dem Wert ZERO_GUID für die Einheit (uom) zurückgegeben, auch wenn null der Standardwert des Datentpyen Guid ist.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zu der Funktion passt, wird der Wert null zurückgegeben.
Beispiele dboListQuantity("EXTPartner", loadPartner("70010"), "DIMENSIONS") gibt die Werteliste des weiteren Feldes für den Partner zurück.

dboLstQuantity("EXTPartner", loadPartner("10010"), "DIMENSIONS")[0]:uom = ZERO_GUID prüft, ob dem weiteren Feld eine Menge zugewiesen ist.

Kontext OLTP
Hinweise
Siehe auch dboQuantity, setDboQuantity, setDboListQuantity, validateDboQuantity

Folgendes Beispiel aus der Aktivitätsdefinition help.dboListQuantity gibt alle Mengen incl. Einheit eines weiteren Feldes vom Feldtyp Menge eines Partners in einer Zeichenkette zurück.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var r_dboValue := "";

var dboValueList := dboListQuantity("EXTPartner", p_partner, p_name);
for (element as CisObject(com.cisag.app.general.obj.Quantity) : dboValueList)
if (isNull(element))
r_dboValue := r_dboValue + "[null] ";
else if (element:uom = ZERO_GUID)
r_dboValue := r_dboValue + "ZERO_GUID ";
else
r_dboValue := r_dboValue + "[" + element:amount + " " + loadUom(element:uom):code + "] ";

result.IS_ASSIGNED := dboValueList[0]:uom <> ZERO_GUID;
result.DBO_VALUE := trim(r_dboValue);
}

 

dboListString

Name dboListString
Beschreibung dboListString gibt die Werteliste eines weiteren Feldes vom Feldtyp Text, Langtext, E-Mail-Adresse oder Uniform Resource Locator (URL) zurück.
Signaturen String[] dboListString(String schemaName, CisObject object, String attributeName)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object
    com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

Ergebnis Die Funktion gibt die Werteliste eines weiteren Feldes vom Feldtyp Text, Langtext, E-Mail-Adresse oder Uniform Resource Locator als eine Liste von Zeichenketten zurück.

Ist dem weiteren Feld kein Wert zugewiesen, wird der Vorschlagswert des weiteren Feldes zurückgegeben. Besitzt das weitere Feld keinen Vorschlagswert, wird eine Liste mit einem einzigen Listenelement und einer leeren Zeichenkette als Standardwert des Datentypen String zurückgegeben.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele dboListString("EXTPartner", loadPartner("10010"), "EXTERNAL_REFERENCE") gibt die Werteliste des weiteren Feldes für den Partner zurück.
Kontext OLTP
Hinweise
Siehe auch dboString, setDboString, setDboListString, validateDboString

Folgendes Beispiel aus der Aktivitätsdefinition help.dboString gibt alle Werte eines weiteren Feldes von einem der Feldtypen Text, Langtext, E-Mail-Adresse oder Uniform Resource Locator (URL) zurück.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var r_dboValue := "";

var dboValueList := dboListString("EXTPartner", p_partner, p_name);
for (element : dboValueList)
r_dboValue := r_dboValue + "[" + element + "] ";

result.DBO_VALUE := trim(r_dboValue);
}

 

dboListTimestamp

Name dboListTimestamp
Beschreibung dboListTimestamp gibt die Werteliste eines weiteren Feldes vom Feldtyp Datum und Uhrzeit oder Datum zurück.
Signaturen Timestamp[] dboListTimestamp(Timestamp schemaName, CisObject object, Timestamp attributeName)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object
    com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

Ergebnis Die Funktion gibt die Werteliste des weiteren Feldes vom Feldtyp Datum und Uhrzeit oder Datum als eine Liste von Zeitpunkten zurück.

Ist dem weiteren Feld kein Datum und Uhrzeit bzw. Datum zugewiesen, wird der Vorschlagswert des weiteren Feldes zurückgegeben. Besitzt das weitere Feld keinen Vorschlagswert, wird eine Liste mit einem einzigen Listenelement mit dem Standardwert null zurückgegeben, auch wenn die Konstante UNDEFINED_DATE der Vorschlagswert des Datentypen Timestamp ist.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele dboListTimestamp("EXTPartner", loadPartner("10010"), "LAST_ACCESS") gibt die Werteliste des weiteren Feldes für den Partner zurück.

not isNull(dboListTimestamp("EXTPartner", loadPartner("10010"), "LAST_ACCESS")[0]) prüft, ob dem weiteren Feld ein Zeitpunkt zugewiesen ist.

Kontext OLTP
Hinweise
Siehe auch dboTimestamp, setDboTimestamp, setDboListTimestamp, validateDboTimestamp

Folgendes Beispiel aus der Aktivitätsdefinition help.dboListTimestamp gibt alle Werte eines weiteren Feldes vom Feldtyp Datum und Uhrzeit oder Datum als eine Zeichenkette zurück.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var r_dboValue := "";

var dboValueList := dboListTimestamp("EXTPartner", p_partner, p_name);
for (element : dboValueList)
if (element = UNDEFINED_DATE)
r_dboValue := r_dboValue + "[UNDEFINED_DATE] ";
else if (element = MIN_DATE)
r_dboValue := r_dboValue + "[MIN_DATE] ";
else if (element = MAX_DATE)
r_dboValue := r_dboValue + "[MAX_DATE] ";
else
r_dboValue := r_dboValue + "[" + format(element, "yyyy-MM-dd hh:mm:ss") + "] ";

result.IS_ASSIGNED := dboValueList[0] <> UNDEFINED_DATE;
result.DBO_VALUE := trim(r_dboValue);
}

 

dboListValueSet

Name dboListValueSet
Beschreibung dboListValueSet gibt die numerischen Werte der Werteliste eines weiteren Feldes vom Feldtyp Auswahlfeld zurück.
Signaturen Number[] dboListValueSet(ValueSet schemaName, CisObject object, ValueSet attributeName)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object
    com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

Ergebnis Die Funktion gibt die numerischen Werte der Werteliste des weiteren Feldes vom Feldtyp Auswahlfeld als eine Liste von Zahlen zurück.

Ist dem weiteren Feld kein Wert zugewiesen, wird der Vorschlagswert des weiteren Feldes zurückgegeben. Besitzt das weitere Feld keinen Vorschlagswert, wird eine Liste mit einem einzigen Listenelement und dem Standardwert 0 des Datentypen Number zurückgegeben.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele dboListValueSet("EXTPartner", loadPartner("10010"), "PREFERENCES") gibt die numerischen Werte der Werteliste des weiteren Feldes für den Partner zurück.

dboListValueSet("EXTPartner", loadPartner("10010"), "PREFERENCES")[0] > 0 prüft, ob dem weiteren Feld ein Wert zugewiesen ist.

Kontext OLTP
Hinweise Der numerische Wert (ID) wird in den Eigenschaften eines weiteren Feldes vom Feldtyp Auswahlfeld nicht angezeigt. In den meisten Fällen entspricht der numerische Wert der Reihenfolge, in der die Einträge erfasst wurden.
Siehe auch dboValueSet, dboValueSetDescription, dboValueSetName, dboListValueSetDescription, dboListValueSetName, setDboValueSet, setDboValueSetName, setDboListValueSet, setDboListValueSetName, validateDboValueSet, validateDboValueSetName

Folgendes Beispiel aus der Aktivitätsdefinition help.dboListValueSet gibt alle numerischen Werte eines weiteren Feldes vom Feldtyp Auswahlfeld als eine Zeichenkette zurück.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var r_dboValue := "";

var dboValueList := dboListValueSet("EXTPartner", p_partner, p_name);
for (element : dboValueList)
if (element <> 0)
r_dboValue := r_dboValue + "[" + format(element, "0") + "] ";

result.IS_ASSIGNED := dboValueList[0] <> 0;
result.DBO_VALUE := trim(r_dboValue);
}

 

dboListValueSetDescription

Name dboListValueSetDescription
Beschreibung dboListValueSetDescription gibt die Werteliste mit den Bezeichungen der Auswahl eines weiteren Feldes vom Feldtyp Auswahlfeld zurück.
Signaturen String[] dboListValueSetDescription(String schemaName, CisObject object, String attributeName)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object
    com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

Ergebnis Die Funktion gibt die Bezeichnungen der Werteliste des weiteren Feldes vom Feldtyp Auswahlfeld als eine Liste von Zeichenketten zurück.

Ist dem weiteren Feld kein Wert zugewiesen, wird der Vorschlagswert des weiteren Feldes zurückgegeben. Besitzt das weitere Feld keinen Vorschlagswert, wird eine Liste mit einem einzigen Listenelement und einer leeren Zeichenkette als Standardwert des Datentypen String zurückgegeben.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele dboListValueSetDescription("EXTPartner", loadPartner("10010"), "PREFERENCES")gibt die Bezeichnungen der Werteliste des weiteren Feldes für den Partner zurück.
Kontext OLTP
Hinweise
Siehe auch dboValueSet, dboValueSetDescription, dboValueSetName, dboListValueSet, dboListValueSetName, setDboValueSet, setDboValueSetName, setDboListValueSet, setDboListValueSetName, validateDboValueSet, validateDboValueSetName

Folgendes Beispiel aus der Aktivitätsdefinition help.dboListValueSetDescription gibt die Bezeichnungen einer Werteliste von einem weiteren Feld mit dem Feldtyp Auswahlfeld als eine Zeichenkette zurück.

function create()
{
var p_name := parameters.NAME;
var p_language := parameters.LANGUAGE;
var p_partner := loadPartner(parameters.PARTNER);
var r_dboValue := "";

var oldContentLanguage := getNLSContentLanguage();
var oldDisplayLanguage := getNLSDisplayLanguage();
setNLSLanguages(p_language);
var r_dboValue := dboListValueSetDescription("EXTPartner", p_partner, p_name);
for (element : dboValueList)
r_dboValue := r_dboValue + "[" + element + "] ";
setNLSContentLanguage(oldContentLanguage);
setNLSDisplayLanguage(oldDisplayLanguage);

result.DBO_VALUE := r_dboValue;
}

 

dboListValueSetName

Name dboListValueSetName
Beschreibung dboValueSetName gibt die Werteliste mit den konstanten Namen der Auswahl eines weiteren Feldes vom Feldtyp Auswahlfeld zurück.
Signaturen String[] dboListValueSetName(String schemaName, CisObject object, String attributeName)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object
    com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

Ergebnis Die Funktion gibt die konstanten Werte der Werteliste eines weiteren Feldes vom Feldtyp Auswahlfeld als eine Liste von Zeichenketten zurück.

Ist dem weiteren Feld kein Wert zugewiesen, wird der Vorschlagswert des weiteren Feldes zurückgegeben. Besitzt das weitere Feld keinen Vorschlagswert, wird eine Liste mit einem einzigen Listenelement und einer leeren Zeichenkette als Standardwert des Datentypen String zurückgegeben.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele dboListValueSetName("EXTPartner", loadPartner("10010"), "PREFERENCES") gibt die konstanten Werte der Werteliste des weiteren Feldes für den Partner zurück.

dboListValueSetName("EXTPartner", loadPartner("10010"), "SIZE")[0] > "" prüft, ob dem weiteren Feld ein Wert zugewiesen ist.

Kontext OLTP
Hinweise
Siehe auch dboValueSet, dboValueSetDescription, dboValueSetName, dboListValueSet, dboListValueSetDescription, setDboValueSet, setDboValueSetName, setDboListValueSet, setDboListValueSetName, validateDboValueSet, validateDboValueSetName

Folgendes Beispiel aus der Aktivitätsdefinition help.dboListValueSetName gibt alle konstanten Werte eines weiteren Feldes vom Feldtyp Auswahlfeld als eine Zeichenkette zurück.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var r_dboValue := "";

var r_dboValue := dboListValueSetName("EXTPartner", p_partner, p_name);
for (element : dboValueList)
r_dboValue := r_dboValue + "[" + element + "] ";

result.IS_ASSIGNED := dboValueList[0] <> "";
result.DBO_VALUE := r_dboValue;
}

 

Reset-Funktion

resetDbo

Name resetDbo
Beschreibung resetDbo setzt den Wert eines weiteren Feldes auf dessen Vorschlagswert oder Ursprungswert zurück.
Signaturen resetDbo (String schemaName, CisObject object, String attributeName)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object
    com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

Ergebnis Der Befehl setzt das weitere Feld auf den Vorschlagswert zurück. Besitzt das weitere Feld keinen Vorschlagswert, wird das weitere Feld auf den gleichen Wert zurückgesetzt, den die Getter-Funktionen zurückgeben, wenn weder Vorschlagswert noch Wert zugwiesen sind. In den meisten Fällen enspricht dies dem Standardwert des verwendeten Datentypen.
Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, kann der Befehl nicht ausgeführt werden.
Beispiele resetDbo ("EXTPartner", loadPartner("70010"), "BALANCE")entfernt den Wert aus dem weiteren Feld.
Kontext OLTP
Hinweise Der Befehl resetDbo entfernt den Wert aus dem weiteren Feld. Für manche Feldtypen können Sie das gleiche Ergebnis erzielen, wenn Sie dem weiteren Feld den Vorschlagswert bzw. den Standardwert des Datentypen zuweisen.

Die Funktion ruft keine individuellen Prüfungen für das weitere Feld auf. Erfassen Sie daher alle erforderlichen Prüfugen in den Deklarationen der Aktivitätsdefinition.

Siehe auch

Folgendes Beispiel aus der Aktivitätsdefinition help.resetDbo entfernt den Wert aus einem weiteren Feld vom Feldtyp Timestamp eines Partners.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);

resetDbo ("EXTPartner", p_partner, p_name);
}

 

Setter-Funktionen

setDboCisDate

Name setDboCisDate
Beschreibung setDboCisDate weist einem weiteren Feld vom Feldtyp Datum einen Wert zu.
Signaturen Boolean setDboCisDate(String schemaName, CisObject object, String attributeName, CisDate date)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object
    com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

date ist der Wert, der dem weiteren Feld zugewiesen werden soll.

Ergebnis Die Funktion weist dem weiteren Feld das Datum date zu.

War die Zuweisung erfolgreich, gibt die Funktion true zurück. Sind für das weitere Feld Einschränkungen definiert und date ist unzulässig, gibt die Funktion false zurück.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele setDboCisDate("EXTItem", loadItem("10010"), "LAST_DATE", today()) weist dem weiteren Feld das heutige Datum zu.

setDboCisDate("EXTItem", loadItem("10010"), "NEXT_DATE",
addDays(cast(CisDate, first(dboCisDate("EXTItem", loadItem("10010"),
"NEXT_DATE"), today())), 90))

erhöht das Datum im weiteren Feld um 90 Tage. Besitzt das weitere Feld keinen gültigen Wert, so wird das heutige Datum angenommen.

Kontext OLTP
Hinweise setDboCisDate("EXTItem", loadItem("10010"), "MY_FIELD", new(CisDate)) versucht, dem weiteren Feld den Standardwert null des Datentypen CisDate zuzuweisen. Vergleichen Sie hierzu die Funktion resetDbo, die das weitere Feld auf dessen Vorschlagswert bzw. Ursprungswert zurücksetzt.

Die Funktion ruft keine individuellen Prüfungen für das weitere Feld auf. Erfassen Sie daher alle erforderlichen Prüfungen in den Deklarationen der Aktivitätsdefinition.

Siehe auch dboCisDate, dboListCisDate, setDboListCisDate, validateDboCisDate

Folgendes Beispiel aus der Aktivitätsdefinition help.setDboCisDate erhöht das Datum eines weiteren Feldes eines Partners um eine bestimmte Anzahl von Tagen.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var p_offset := parameters.OFFSET;
var dboSuccess := false;

var oldDboValue := cast(CisDate, first(dboCisDate("EXTPartner", p_partner, p_name), today()));
var newDboValue := addDays(oldDboValue, p_offset);

var dboSuccess := setDboCisDate("EXTPartner", p_partner, p_name, newDboValue);

result.IS_NULL := isNull(dboSuccess);
result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));
}

 

setDboCisObject

Name setDboCisObject
Beschreibung setDboCisObject weist einem weiteren Feld vom Feldtyp Business Entity einen Wert zu.
Signaturen Boolean setDboCisObject(String schemaName, CisObject object, String attributeName, CisObjectReference objectReference)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object
    com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

objectReference ist das CisObject, das dem weiteren Feld zugewiesen werden soll.

Ergebnis Die Funktion weist dem weiteren Feld das CisObjectReference objectReference zu.

War die Zuweisung erfolgreich, gibt die Funktion true zurück. Sind für das weitere Feld Einschränkungen definiert und objectReference ist unzulässig, gibt die Funktion false zurück.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele
setDboCisObject("EXTItem", parameters.object, "SUBMITTER",
getByPrimaryKey(CisObject( com.cisag.app.general.obj.UserAssignment),
parameters.userGuid)->Partner)

weist dem weiteren Feld den Partner zu, dessen Benutzer das Ereignis vom Typ Business Entity oder Benutzeraktion ausgelöst hat.

Kontext OLTP
Hinweise setDboCisObject("EXTItem", loadItem("10010"), "MY_FIELD", new(CisObject)) versucht, dem weiteren Feld den Standardwert null des Datentypen CisObject zuzuweisen. Vergleichen Sie hierzu die Funktion resetDbo, die das weitere Feld auf dessen Vorschlagswert bzw. Ursprungswert zurücksetzt.

Die Funktion ruft keine individuellen Prüfungen für das weitere Feld auf. Erfassen Sie daher alle erforderlichen Prüfungen in den Deklarationen der Aktivitätsdefinition.

Siehe auch dboCisObject, dboListCisObject, setDboListCisObject, validateDboCisObject

Folgendes Beispiel aus der Aktivitätsdefinition help.setDboCisObject weist einem weiteren Feld eines Artikels den Partner eines bestimmten Benutzers zu.

function create()
{
var p_name := parameters.NAME;
var p_item := loadItem(parameters.ITEM);
var p_user := parameters.USER;
var dboSuccess := false;

dboSuccess := setDboCisObject("EXTItem", item, p_name, loadPartnerOfUser(userGuid(p_user)));

result.IS_NULL := isNull(dboSuccess);
result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));
}

function loadPartnerOfUser(user as Guid) as CisObject(com.cisag.app.general.obj.Partner)
{
return
getByPrimaryKey(
CisObject(com.cisag.app.general.obj.UserAssignment),
user)->Partner;
}

 

setDboDomesticAmount

Name setDboDomesticAmount
Beschreibung setDboDomesticAmount weist einem weiteren Feld vom Feldtyp Betrag in Hauswährung oder Preis in Hauswährung einen Wert zu.
Signaturen Boolean setDboDomesticAmount(String schemaName, CisObject object, String attributeName, Number domesticAmount)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object
    com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

domesticAmount ist der Betrag bzw. Preis in der Leitwährung der Organisation, für die das weitere Feld erfasst wurde.

Ergebnis Die Funktion weist dem weiteren Feld den Betrag bzw. Preis domesticAmount in der Leitwährung der Organisation zu, für die das weitere Feld erfasst wurde. Sind im Customizing weitere Hauswährungen hinterlegt, wird der Betrag von der Leitwährung in die weiteren Hauswährungen zum aktuellen Wechselkurs umgerechnet.

War die Zuweisung erfolgreich, gibt die Funktion true zurück. Sind für das weitere Feld Einschränkungen definiert und der Betrag bzw. Preis in Hauswährung ist unzulässig, gibt die Funktion false zurück.

War die Zuweisung erfolgreich, aktualisiert die Funktion auch das Umrechnungsdatum für Währungen.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele setDboDomesticAmount("EXTPartner", loadPartner("20010"), "CREDIT_LIMIT", 10000) weist dem weiteren Feld für den Partner den Betrag bzw. Preis 10.000 in der Hauswährung zu.

setDboDomesticAmount("EXTPartner", loadPartner("20010"), "CREDIT_LIMIT", dboDomesticAmount("EXTPartner", loadPartner("20010"), "CREDIT_LIMIT") + 1000) erhöht den Betrag bzw. Preis in der Hauswährung um 1.000.

Kontext OLTP
Hinweise setDboDomesticAmount("EXTItem", loadItem("10010"), "MY_FIELD", new(Number)) versucht, dem weiteren Feld den Standardwert 0 des Datentypen Number zuzuweisen. Vergleichen Sie hierzu die Funktion resetDbo, die das weitere Feld auf dessen Vorschlagswert bzw. Ursprungswert zurücksetzt.

Die Funktion ruft keine individuellen Prüfungen für das weitere Feld auf. Erfassen Sie daher alle erforderlichen Prüfugen in den Deklarationen der Aktivitätsdefinition.

Siehe auch dboDomesticAmount, dboListDomesticAmount, setDboListDomesticAmount, validateDboDomesticAmount

Folgendes Beispiel aus der Aktivitätsdefinition help.setDboDomesticAmount weist einem weiteren Feld vom Feldtyp Betrag in Hauswährung bzw. Preis in Hauswährung einen Hauswährungsbetrag in der Leitwährung der Organisation zu, für die das weitere Feld erfasst wurde.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var p_amount := parameters.AMOUNT;
var dboSuccess := false;

dboSuccess := setDboDomesticAmount("EXTPartner", p_partner, p_name, p_amount);

result.IS_NULL := isNull(dboSuccess);
result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));
}

 

setDboForeignAmount

Name setDboForeignAmount
Beschreibung setDboForeignAmount weist einem weiteren Feld vom Feldtyp Betrag oder Preis einen Wert zu.
Signaturen Boolean setDboForeignAmount(String schemaName, CisObject object, String attributeName, CisObject(com.cisag.app.general.obj.ForeignAmount) foreignAmount)

Boolean setDboForeignAmount(String schemaName, CisObject object, String attributeName, Number amount, Guid currency)

Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object com.cisag.app.general.obj.Item
  • „EXTPurchaseItem“ für das Business Object „com.cisag.app.purchasing.obj.PurchaseItem“
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

amount ist der Betrag bzw. der Preis in Fremdwährung, der dem weiteren Feld zugewiesen werden soll.

currency ist die Guid der Fremdwährung.

foreignAmount ist der Part, der zugewiesen werden soll.

Ergebnis Die Funktion weist dem weiteren Feld den Betrag bzw. Preis in Fremdwährung zu.

War die Zuweisung erfolgreich, gibt die Funktion true zurück. Sind für das weitere Feld Einschränkungen definiert und der Betrag bzw. Preis in Fremdwährung ist unzulässig, gibt die Funktion false zurück.

War die Zuweisung erfolgreich, aktualisiert die Funktion auch das Umrechnungsdatum für Währungen.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben. Auch wenn currency weder null noch eine gültige Währung ist, wird null zurückgegeben.
Beispiele setDboForeignAmount("EXTPartner", loadPartner("20010"), "CREDIT_LIMIT", 10000, loadCurrency("USD"):guid) weist dem weiteren Feld den Betrag bzw. Preis 10.000 USD zu.

setDboForeignAmount("EXTPartner", loadPartner("20010"), "CREDIT_LIMIT",
dboForeignAmount("EXTPartner", loadPartner("20010"),
"CREDIT_LIMIT"):amount + 1000, dboForeignAmount("EXTPartner",
loadPartner("20010"), "CREDIT_LIMIT"):guid)

erhöht den Betrag bzw. den Preis um 1.000.

Kontext OLTP
Hinweise setDboForeignAmount("EXTItem", loadItem("10010"), "MY_FIELD", new(Number), new(Guid)) versucht, dem weiteren Feld den Standardwert 0 des Datentypen Number und den Standardwert null des Datentypen Guid zuzuweisen. Vergleichen Sie hierzu die Funktion resetDbo, die das weitere Feld auf dessen Vorschlagswert bzw. Ursprungswert zurücksetzt.

Die Funktion ruft keine individuellen Prüfungen für das weitere Feld auf. Erfassen Sie daher alle erforderlichen Prüfungen in den Deklarationen der Aktivitätsdefinition.

Siehe auch dboForeignAmount, dboListForeignAmount, setDboListForeignAmount, validateDboForeignAmount

Folgendes Beispiel aus der Aktivitätsdefinition help.setDboForeignAmount weist einem weiteren Feld vom Feldtyp Betrag bzw. Preis einen Betrag bzw. Preis zu. Ist die Währung nicht angegeben oder existiert sie nicht, wird die erste Hauswährung verwendet.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var p_amount := parameters.AMOUNT;
var p_currency := parameters.CURRENCY;
var dboSuccess := false;

var currencyGuid := loadCurrency(p_currency):guid;
if (isNull(currencyGuid))
currencyGuid := getCurrency1();

dboSuccess := setDboForeignAmount("EXTPartner", p_partner, p_name, p_amount, p_currency);

result.IS_NULL := isNull(dboSuccess);
result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));
}

function getCurrency1() as Guid
{
var currency1 as Guid;
var company := loadOrganization(getCustomizingValue("com.cisag.app.General"):company);
var baseFunction := getCustomizingValue("com.cisag.app.general.Base", company:guid);

if (not isNull(baseFunction)) {
var combination := getByPrimaryKey(CisObject(com.cisag.app.multiorg.obj.DomesticCurrencyCombination), baseFunction:combination);
currency1 := combination:currency1;
}
return currency1;
}

 

setDboGuid

Name setDboGuid
Beschreibung setDboGuid weist einem weiteren Feld vom Feldtyp Klassifikation einen Wert zu.
Signaturen Boolean setDboGuid(String schemaName, CisObject object, String attributeName, String path)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

path ist der vollständige Pfad der Klassifikation, die dem weiteren Feld zugewiesen werden soll.

Ergebnis Die Funktion weist dem weiteren Feld die Klassifikation mit dem Pfad path zu.

War die Zuweisung erfolgreich, gibt die Funktion true zurück. Sind für das weitere Feld Einschränkungen definiert und der Pfad ist unzulässig, gibt die Funktion false zurück.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele setDboGuid("EXTItem", loadItem("10010"), "NACE", "J-62-01") weist dem weiteren Feld die Klassifikation mit dem angegebenen Pfad zu.
Kontext OLTP
Hinweise setDboGuid("EXTItem", loadItem("10010"), "MY_FIELD", new(String)) versucht, dem weiteren Feld eine leere Zeichenkette als Standardwert des Datentypen String zuzuweisen. Vergleichen Sie hierzu die Funktion resetDbo, die das weitere Feld auf dessen Vorschlagswert bzw. Ursprungswert zurücksetzt.

Da die Funktion setDboGuid eine Zeichenkette erwartet, aber dboGuid eine Guid zurückgibt, können Sie den Wert eines weiteren Feldes nicht ohne zusätzliches Scripting einem anderen weiteren Feld zuweisen.

Die Funktion ruft keine individuellen Prüfungen für das weitere Feld auf. Erfassen Sie daher alle erforderlichen Prüfungen in den Deklarationen der Aktivitätsdefinition.

Siehe auch dboGuid, dboListGuid, setDboListGuid, validateDboGuid

Folgendes Beispiel aus der Aktivitätsdefinition help.setDboGuid weist einem weiteren Feld vom Feldtyp Klassifikation einen Pfad zu.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var p_path := parameters.PATH;
var dboSuccess := false;

dboSuccess := setDboGuid("EXTPartner", p_partner, p_name, p_path);

result.IS_NULL := isNull(dboSuccess);
result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));
}

 

setDboNumber

Name setDboNumber
Beschreibung setDboNumber weist einem weiteren Feld vom Feldtyp Dezimal einen Wert zu.
Signaturen Boolean setDboNumber(String schemaName, CisObject object, String attributeName, Number decimal)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

decimal ist die Zahl, die dem weiteren Feld zugewiesen werden soll.

Ergebnis Die Funktion weist dem weiteren Feld die Zahl decimal zu. War die Zuweisung erfolgreich, gibt die Funktion true zurück. Sind für das weitere Feld Einschränkungen definiert und die Zahl ist unzulässig, gibt die Funktion false zurück.
Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele setDboNumber("EXTPartner", loadPartner("70010"), "YEAR_OF_BIRTH", 2000) weist dem weiteren Feld für den Partner die Zahl 2.000 zu.

setDboNumber("EXTPartner", loadPartner("10010"), "RETURNS", dboNumber("EXTPartner", loadPartner("70010"), "RETURNS") + 1) erhöht den Wert des weiteren Feldes um 1.

Kontext OLTP
Hinweise setDboNumber("EXTItem", loadItem("10010"), "MY_FIELD", new(Number)) versucht, dem weiteren Feld den Standardwert 0 des Datentypen Number zuzuweisen. Vergleichen Sie hierzu die Funktion resetDbo, die das weitere Feld auf dessen Vorschlagswert bzw. Ursprungswert zurücksetzt.

Die Funktion ruft keine individuellen Prüfungen für das weitere Feld auf. Erfassen Sie daher alle erforderlichen Prüfungen in den Deklarationen der Aktivitätsdefinition.

Siehe auch dboNumber, dboListGuid, setDboListNumber, validateDboNumber

Folgendes Beispiel aus der Aktivitätsdefinition help.setDboNumber weist dem weiteren Feld vom Feldtyp Dezimal eine Zahl zu.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var p_number := parameters.NUMBER;
var dboSuccess := false;

dboSuccess := setDboNumber("EXTPartner", p_partner, p_name, p_number);

result.IS_NULL := isNull(dboSuccess);
result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));
}

 

setDboQuantity

Name setDboQuantity
Beschreibung setDboQuantity weist einem weiteren Feld vom Feldtyp Menge einen Wert zu.
Signaturen Boolean setDboQuantity(String schemaName, CisObject object, String attributeName, CisObject(com.cisag.app.general.obj.Quantity) quantity)

Boolean setDboQuantity(String schemaName, CisObject object, String attributeName, Number amount, Guid uom)

Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

amount ist die Menge, die dem weiteren Feld zugewiesen werden soll.

uom ist die Guid der Mengeneinheit.

quantity ist der Part, der zugewiesen werden soll.

Ergebnis Die Funktion weist dem weiteren Feld die Menge zu.

War die Zuweisung erfolgreich, gibt die Funktion „true“ zurück. Sind für das weitere Feld Einschränkungen definiert und ist die Menge unzulässig, gibt die Funktion „false“ zurück.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben. Auch wenn uom weder null noch eine gültige Mengeneinheit ist, wird null zurückgegeben.
Beispiele setDboQuantity("EXTItem", loadItem("10010"), "MAX_LOAD", 1000, loadUnit("kg"):guid) weist dem weiteren Feld die Menge 1.000 kg zu.
Kontext OLTP
Hinweise setDboQuantity("EXTItem", loadItem("10010"), "MY_FIELD", new(Number), ZERO_GUID) versucht, dem weiteren Feld den Standardwert 0 des Datentypen Number und die Guid ZERO_GUID zuzuweisen. Vergleichen Sie hierzu die Funktion resetDbo, die das weitere Feld auf dessen Vorschlagswert bzw. Ursprungswert zurücksetzt.

Die Funktion ruft keine individuellen Prüfungen für das weitere Feld auf. Erfassen Sie daher alle erforderlichen Prüfungen in den Deklarationen der Aktivitätsdefinition.

Siehe auch dboQuantity, dboListQuantity, setDboListQuantity, validateDboQuantity

Folgendes Beispiel aus der Aktivitätsdefinition help.setDboQuantity weist einem weiteren Feld vom Feldtyp Menge eine Menge zu. Ist die Mengeneinheit nicht angegeben oder existiert sie nicht, wird die Mengeneinheit kg verwendet.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var p_amount := parameters.AMOUNT;
var p_uom := parameters.UOM;
var dboSuccess := false;

var uomGuid := loadUom(p_uom):guid;
if (isNull(uomGuid))
uomGuid := loadUom("kg"):guid;

dboSuccess := setDboQuantity("EXTPartner", p_partner, p_name, p_amount, p_uom);

result.IS_NULL := isNull(dboSuccess);
result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));
}

 

setDboString

Name setDboString
Beschreibung setDboString weist einem weiteren Feld vom Feldtyp Text, E-Mail-Adresse oder Uniform Resource Locator (URL) einen Wert zu.
Signaturen Boolean setDboString(String schemaName, CisObject object, String attributeName, String text)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

text ist die Zeichenkette, die dem weiteren Feld zugewiesen werden soll.

Ergebnis Die Funktion weist dem weiteren Feld die Zeichenkette text zu. War die Zuweisung erfolgreich, gibt die Funktion true zurück. Sind für das weitere Feld Einschränkungen definiert und ist die Zeichenkette unzulässig, gibt die Funktion false zurück.
Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele setDboDomesticAmount("EXTPartner", loadPartner("20010"), "CREDIT_LIMIT", 10000) weist dem weiteren Feld für den Partner den Betrag bzw. Preis 10.000 in der Hauswährung zu.

setDboDomesticAmount("EXTPartner", loadPartner("20010"), "CREDIT_LIMIT", dboDomesticAmount("EXTPartner", loadPartner("20010"), "CREDIT_LIMIT") + 1000) erhöht den Betrag bzw. Preis in der Hauswährung um 1.000.

Kontext OLTP
Hinweise setDboString("EXTItem", loadItem("10010"), "MY_FIELD", new(String)) versucht, dem weiteren Feld eine leere Zeichenkette zuzuweisen. Vergleichen Sie hierzu die Funktion resetDbo, die das weitere Feld auf dessen Vorschlagswert bzw. Ursprungswert zurücksetzt.

Die Funktion ruft keine individuellen Prüfungen für das weitere Feld auf. Erfassen Sie daher alle erforderlichen Prüfungen in den Deklarationen der Aktivitätsdefinition.

Siehe auch dboString, dboListString, setDboListString, validateDboString

Folgendes Beispiel aus der Aktivitätsdefinition help.setDboString weist einem weiteren Feld vom Feldtyp Text, E-Mail-Adresse oder Uniform Resource Locator (URL) eine Zeichenkette zu.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var p_text := parameters.TEXT;
var dboSuccess := false;

dboSuccess := setDboString("EXTPartner", p_partner, p_name, p_text);

result.IS_NULL := isNull(dboSuccess);
result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));
}

 

setDboText

Name setDboText
Beschreibung setDboText weist einem weiteren Feld vom Feldtyp Langtext einen Wert zu.
Signaturen Boolean setDboText(String schemaName, CisObject object, String attributeName, String longText, Number contentType)

Boolean setDboText(String schemaName, CisObject object, String attributeName, String longText, Number contentType, String language)

Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

longText ist die Zeichenkette, die dem weiteren Feld zugewiesen werden soll.

contentType ist ein Wert aus dem ValueSet com.cisag.sys.gui.HTMLEditorContentValueSet.

language ist der ISO-Code einer Inhaltssprache.

Ergebnis Die Funktion weist dem weiteren Feld die Zeichenkette text zu.

War die Zuweisung erfolgreich, so gibt die Funktion true zurück. Sind für das weitere Feld Einschränkungen definiert und ist die Zeichenkette unzulässig, so gibt die Funktion false zurück.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele setDboText("EXTItem", loadItem("10010"), "OLD_TEXT", 2, loadItem("10010"):longDescription, getContentLanguage()) weist dem weiteren Feld die Langbezeichnung in der Inhaltssprache des aktuellen Kontexts zu.
Kontext OLTP
Hinweise setDboText("EXTItem", loadItem("10010"), "MY_FIELD", new(String)) versucht, dem weiteren Feld eine leere Zeichenkette zuzuweisen. Vergleichen Sie hierzu die Funktion resetDbo, die das weitere Feld auf dessen Vorschlagswert bzw. Ursprungswert zurücksetzt.

Die Funktion ruft keine individuellen Prüfungen für das weitere Feld auf. Erfassen Sie daher alle erforderlichen Prüfungen in den Deklarationen der Aktivitätsdefinition.

Siehe auch dboText, dboTextContentType

Folgendes Beispiel aus der Aktivitätsdefinition help.setDboText weist einem weiteren Feld vom Feldtyp Langtext eine Zeichenkette in einer bestimmten Inhaltssprache zu.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var p_contentType := parameters.CONTENT_TYPE;
var p_language := parameters.LANGUAGE;
var p_text := parameters.TEXT;
var dboSuccess := false;

if (isNull(valueSetName("com.cisag.sys.gui.HTMLEditorContentValueSet", p_contentType)))
p_contentType := 2; /* text only */

if (isNull(getByBusinessKey(CisObject(com.cisag.app.general.obj.Language), p_language)))
dboSuccess := setDboText("EXTPartner", p_partner, p_name, p_text, p_contentType);
else
dboSuccess := setDboText("EXTPartner", p_partner, p_name, p_text, p_contentType, p_language);

result.IS_NULL := isNull(dboSuccess);
result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));
}

 

setDboTimestamp

Name setDboTimestamp
Beschreibung setDboTimestamp weist einem weiteren Feld vom Feldtyp Datum und Uhrzeit einen Wert zu.
Signaturen Boolean setDboTimestamp(String schemaName, CisObject object, Timestamp attributeName, Timestamp timestamp)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

timestamp ist der Wert, der dem weiteren Feld zugewiesen werden soll.

Ergebnis Die Funktion weist dem weiteren Feld den Zeitpunkt timestamp zu.

War die Zuweisung erfolgreich, gibt die Funktion true zurück. Sind für das weitere Feld Einschränkungen definiert und timestamp ist unzulässig, gibt die Funktion false zurück.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele setDboTimestamp("EXTItem", loadItem("10010"), "LAST_DATE", now()) weist dem weiteren Feld den aktuellen Zeitpunkt zu.
Kontext OLTP
Hinweise setDboTimestamp("EXTItem", loadItem("10010"), "MY_FIELD", new(Timestamp)) versucht, dem weiteren Feld den Standardwert UNDEFINED_DATE des Datentypen CisDate zuzuweisen. Vergleichen Sie hierzu die Funktion resetDbo, die das weitere Feld auf dessen Vorschlagswert bzw. Ursprungswert zurücksetzt.

Die Funktion ruft keine individuellen Prüfungen für das weitere Feld auf. Erfassen Sie daher alle erforderlichen Prüfugen in den Deklarationen der Aktivitätsdefinition.

Siehe auch dboTimestamp, dboListTimestamp, setDboListTimestamp, validateDboTimestamp

Folgendes Beispiel aus der Aktivitätsdefinition help.setDboTimestamp erhöht den Zeitpunkt eines weiteren Feldes eines Partners um eine bestimmte Anzahl von Tagen.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var p_offset := parameters.OFFSET;
var dboSuccess := false;

var oldDboValue := dboTimestamp("EXTPartner", p_partner, p_name);
if (oldDboValue = UNDEFINED_DATE)
oldDboValue := now();
var newDboValue := addDays(oldDboValue, p_offset);

var dboSuccess := setDboTimestamp("EXTPartner", p_partner, p_name, newDboValue);

result.IS_NULL := isNull(dboSuccess);
result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));
}

 

setDboValueSet

Name setDboValueSet
Beschreibung setDboValueSet weist einem weiteren Feld vom Feldtyp Auswahlfeld die numerische Identifikation einer Auswahl zu.
Signaturen Boolean setDboValueSet(String schemaName, CisObject object, ValueSet attributeName, Number id)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

id ist die numerische Identifikation der Auswahl, die dem weiteren Feld zugewiesen werden soll.

Ergebnis Die Funktion weist dem weiteren Feld die Auswahl id zu.

War die Zuweisung erfolgreich, gibt die Funktion true zurück. Ist id kein gültiger Wert des ValueSets, gibt die Funktion false zurück.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele setDboValueSet("EXTItem", loadItem("10010"), "APPROVAL", 0) weist dem weiteren Feld für den Partner die Zahl 0 zu, um die Auswahl zu löschen.
Kontext OLTP
Hinweise setDboValueSet("EXTItem", loadItem("10010"), "MY_FIELD", new(Number)) versucht, dem weiteren Feld den Standardwert 0 des Datentypen Number zuzuweisen. Vergleichen Sie hierzu die Funktion resetDbo, die das weitere Feld auf dessen Vorschlagswert bzw. Ursprungswert zurücksetzt.

Die Funktion ruft keine individuellen Prüfungen für das weitere Feld auf. Erfassen Sie daher alle erforderlichen Prüfugen in den Deklarationen der Aktivitätsdefinition.

Siehe auch dboValueSet, dboValueSetDescription, dboValueSetName, dboListValueSet, dboListValueSetDescription, dboListValueSetName, setDboValueSetName, setDboListValueSet, setDboListValueSetName, validateDboValueSet, validateDboValueSetName

Folgendes Beispiel aus der Aktivitätsdefinition help.setDboValueSet weist dem weiteren Feld vom Feldtyp Auswahlfeld die numerische Identifikation eines ValueSets zu. Ist die Zahl kein Wert des ValueSets com.cisag.app.general.docman.DocumentStatus, dann wird die Zahl 0 zugewiesen, um das Feld zu leeren.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var p_id := parameters.ID;
var dboSuccess := false;

if (isNull(valueSetName("com.cisag.app.general.docman.DocumentStatus", p_id)))
p_id := 0; /* default */

dboSuccess := setDboValueSet("EXTPartner", p_partner, p_name, p_id);

result.IS_NULL := isNull(dboSuccess);
result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));
}

 

setDboValueSetName

Name setDboValueSetName
Beschreibung setDboValueSetName weist einem weiteren Feld vom Feldtyp Auswahlfeld den Namen einer Auswahl zu.
Signaturen Boolean setDboValueSetName(String schemaName, CisObject object, ValueSet attributeName, String constant)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

constant ist der Name der Auswahl, die dem weiteren Feld zugewiesen werden soll.

Ergebnis Die Funktion weist dem weiteren Feld die Auswahl constant zu.

War die Zuweisung erfolgreich, gibt die Funktion true zurück. Ist constant kein gültiger Wert des ValueSets, gibt die Funktion false zurück.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele setDboValueSetName("EXTItem", loadItem("10010"), "APPROVAL", "APPPROVED") weist dem weiteren Feld den Wert APPROVED zu.
Kontext OLTP
Hinweise setDboValueSetName("EXTItem", loadItem("10010"), "MY_FIELD", new(String)) versucht, dem weiteren Feld eine leere Zeichenkette als Standardwert des Datentypen Number zuzuweisen. Vergleichen Sie hierzu die Funktion resetDbo, die das weitere Feld auf dessen Vorschlagswert bzw. Ursprungswert zurücksetzt.

Die Funktion ruft keine individuellen Prüfungen für das weitere Feld auf. Erfassen Sie daher alle erforderlichen Prüfugen in den Deklarationen der Aktivitätsdefinition.

Siehe auch dboValueSet, dboValueSetDescription, dboValueSetName, dboListValueSet, dboListValueSetDescription, dboListValueSetName, setDboValueSet, setDboListValueSet, setDboListValueSetName, validateDboValueSet, validateDboValueSetName

Folgendes Beispiel aus der Aktivitätsdefinition help.setDboValueSetName weist dem weiteren Feld vom Feldtyp Auswahlfeld den Konstanten Namen einer Auswahl zu. Ist der Name keine gültige Auswahl, wird das Feld zurückgesetzt.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var p_constant := parameters.CONSTANT;
var dboSuccess := false;

var dboSuccess := setDboValueSet("EXTPartner", p_partner, p_name, p_constant);
if (not isNull(dboSuccess) and not dboSuccess)
dboSuccess := setDboValueSet("EXTPartner", p_partner, p_name, 0);

result.IS_NULL := isNull(dboSuccess);
result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));
}

 

Setter-Funktionen für Wertelisten

setDboListCisDate

Name setDboListCisDate
Beschreibung setDboListCisDate weist einem weiteren Feld vom Feldtyp Datum eine Werteliste zu.
Signaturen Boolean setDboListCisDate(String schemaName, CisObject object, String attributeName, CisDate[] dateList[])
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

dateList ist die Werteliste, die dem weiteren Feld zugewiesen werden soll.

Ergebnis Die Funktion weist dem weiteren Feld die Werteliste dateList zu.

War die Zuweisung für alle Elemente der Werteliste erfolgreich, gibt die Funktion true zurück. Sind für das weitere Feld Einschränkungen definiert und mindestens ein Element der Werteliste ist unzulässig, gibt die Funktion false zurück. Um die einzelnen Elemente zu überprüfen, steht die Funktion validateDboCisDate zur Verfügung.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele setDboListCisDate("EXTItem", loadItem("10010"), "DATES", list(addDays(today(), -1), today(), addDays(today(), 1))) weist dem weiteren Feld eine Werteliste mit dem Datum von gestern, heute und morgen zu.
Kontext OLTP
Hinweise setDboListCisDate("EXTItem", loadItem("10010"), "MY_FIELD", list(new(CisDate)) versucht, dem weiteren Feld den Standardwert null des Datentypen CisDate zuzuweisen. Vergleichen Sie hierzu die Funktion resetDbo, die das weitere Feld auf dessen Vorschlagswert bzw. Ursprungswert zurücksetzt.

Die Funktion ruft keine individuellen Prüfungen für das weitere Feld auf. Erfassen Sie daher alle erforderlichen Prüfungen in den Deklarationen der Aktivitätsdefinition.

Siehe auch dboCisDate, dboListCisDate, setDboCisDate, validateDboCisDate

Folgendes Beispiel aus der Aktivitätsdefinition help.setDboListCisDate fügt der Werteliste eines weiteren Feldes für den Partner ein neues Element mit dem heutigen Datum hinzu.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var dboSuccess := false;

var newElement := today();
var valueList := dboListCisDate("EXTPartner", p_partner, p_name);
if (isNull(valueList[0]))
valueList[0] := newElement;
else
add(valueList, newElement);

dboSuccess := setDboListCisDate("EXTPartner", p_partner, p_name, valueList);

result.IS_NULL := isNull(dboSuccess);
result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));
}

 

setDboListCisObject

Name setDboListCisObject
Beschreibung setDboListCisObject weist einem weiteren Feld vom Feldtyp Business Entity eine Werteliste zu.
Signaturen Boolean setDboListCisObject(String schemaName, CisObject object, String attributeName, CisObject[] valueList)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

valueList ist die Werteliste, die dem weiteren Feld zugewiesen werden soll.

Ergebnis Die Funktion weist dem weiteren Feld die Werteliste valueList zu.

War die Zuweisung für alle Elemente der Werteliste erfolgreich, gibt die Funktion true zurück. Sind für das weitere Feld Einschränkungen definiert und mindestens ein Element der Werteliste ist unzulässig, gibt die Funktion false zurück. Um die einzelnen Elemente zu überprüfen, steht die Funktion validateDboCisObject zur Verfügung.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele setDboListCisObject("EXTItem", loadItem("10010"), "APPROVERS", list(loadPartner("70010"))) weist dem weiteren Feld eine Werteliste mit dem Partner 70010 zu.

setDboListCisObject("EXTItem", loadItem("10010"), "APPROVERS", union(minus(dboListCisObject("EXTItem", loadItem("10010"), "APPROVERS"), list(new(Guid))), list(loadPartner("70010")))) fügt den Partner 70010 der Werteliste hinzu.

setDboListCisObject("EXTItem", loadItem("10010"), "APPROVERS", minus(dboListCisObject("EXTItem", loadItem("10010"), "APPROVERS"), list(loadPartner("70010")))) entfernt den Partner 70010 von der Werteliste.

Kontext OLTP
Hinweise setDboListCisObject("EXTItem", loadItem("10010"), "MY_FIELD", list(new(CisObject)) versucht, dem weiteren Feld den Standardwert null des Datentypen CisObject zuzuweisen. Vergleichen Sie hierzu die Funktion resetDbo, die das weitere Feld auf dessen Vorschlagswert bzw. Ursprungswert zurücksetzt.

Die Funktion ruft keine individuellen Prüfungen für das weitere Feld auf. Erfassen Sie daher alle erforderlichen Prüfungen in den Deklarationen der Aktivitätsdefinition.

Siehe auch dboCisObject, dboListCisObject, setDboCisObject, validateDboCisObject

Folgendes Beispiel aus der Aktivitätsdefinition help.setDboListCisObject fügt der Werteliste eines weiteren Feldes für den Partner eines bestimmten Benutzers hinzu.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var dboSuccess := false;

var newElement := today();
var valueList := dboListCisDate("EXTPartner", p_partner, p_name);
if (isNull(valueList[0]))
valueList[0] := newElement;
else
add(valueList, newElement);

dboSuccess := setDboListCisDate("EXTPartner", p_partner, p_name, valueList);

result.IS_NULL := isNull(dboSuccess);
result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));
}

 

setDboListDomesticAmount

Name setDboListDomesticAmount
Beschreibung setDboListDomesticAmount weist einem weiteren Feld vom Feldtyp Betrag in Hauswährung oder Preis in Hauswährung eine Werteliste zu.
Signaturen Boolean setDboListDomesticAmount(String schemaName, CisObject object, String attributeName, Number[] domesticAmountList)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

domesticAmountList ist die Werteliste, die dem weiteren Feld zugewiesen werden soll.

Ergebnis Die Funktion weist dem weiteren Feld die Werteliste domesticAmountList zu.

War die Zuweisung für alle Elemente der Werteliste erfolgreich, gibt die Funktion true zurück. Sind für das weitere Feld Einschränkungen definiert und mindestens ein Element der Werteliste ist unzulässig, gibt die Funktion false zurück. Um die einzelnen Elemente zu überprüfen, steht die Funktion validateDboDomesticAmount zur Verfügung.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele setDboListDomesticAmount("EXTItem", loadItem("10010"), "AMOUNTS", list(500, 600)) weist dem weiteren Feld eine Werteliste mit den Werten 500 und 600 zu.
Kontext OLTP
Hinweise setDboListDomesticAmount("EXTItem", loadItem("10010"), "MY_FIELD", list(new(Number)) versucht, dem weiteren Feld den Standardwert 0 vom Datentyp Number zuzuweisen. Vergleichen Sie hierzu die Funktion resetDbo, die das weitere Feld auf dessen Vorschlagswert bzw. Ursprungswert zurücksetzt.

Die Funktion ruft keine individuellen Prüfungen für das weitere Feld auf. Erfassen Sie daher alle erforderlichen Prüfungen in den Deklarationen der Aktivitätsdefinition.

Siehe auch dboDomesticAmount, dboListDomesticAmount, setDboDomesticAmount, validateDboDomesticAmount

Folgendes Beispiel aus der Aktivitätsdefinition help.setDboListDomesticAmount weist der Werteliste eines weiteren Feldes eines Partners zwei Beträge bzw. Preise in Hauswährung zu.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var p_amount1 := parameters.AMOUNT1;
var p_amount2 := parameters.AMOUNT2;
var dboSuccess := false;

dboSuccess := setDboListDomesticAmount("EXTPartner", p_partner, p_name, list(p_amount1, p_amount2));

result.IS_NULL := isNull(dboSuccess);
result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));
}

 

setDboListForeignAmount

Name setDboListForeignAmount
Beschreibung setDboListForeignAmount weist einem weiteren Feld vom Feldtyp Betrag oder Preis eine Werteliste zu.
Signaturen Boolean setDboListForeignAmount(String schemaName, CisObject object, String attributeName, CisObject( com.cisag.app.general.obj.ForeignAmount)[] foreignAmountList)

Boolean setDboListForeignAmount(String schemaName, CisObject object, String attributeName, Number[] amountList, Guid[] currencyList)

Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

amountList ist die Werteliste mit Beträgen bzw. Preisen in Fremdwährung, die dem weiteren Feld zugewiesen werden sollen.

currencyList ist die Werteliste mit der Guid der Fremdwährungen.

foreignAmountList ist eine Werteliste mit den Parts, die zugewiesen werden sollen.

Ergebnis Die Funktion weist dem weiteren Feld die Werteliste mit den Beträgen bzw. Preisen in Fremdwährung zu.

War die Zuweisung für alle Elemente der Werteliste erfolgreich, gibt die Funktion true zurück. Sind für das weitere Feld Einschränkungen definiert und mindestens ein Element der Werteliste ist unzulässig, gibt die Funktion false zurück. Um die einzelnen Elemente zu überprüfen, steht die Funktion validateDboForeignAmount zur Verfügung.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele setDboListForeignAmount("EXTItem", loadItem("10010"), "AMOUNTS", list(500, 600), list(loadCurrency("SEK"), loadCurrency("NOK")) weist dem weiteren Feld eine Werteliste mit den Werten 500 SEK und 600 NOK zu.
Kontext OLTP
Hinweise setDboListForeignAmount("EXTItem", loadItem("10010"), "MY_FIELD", list(new(Number)), list(new(Guid))) versucht, dem weiteren Feld den Standardwert 0 des Datentypen Number und den Standardwert null des Datentypen Guid zuzuweisen. Vergleichen Sie hierzu die Funktion resetDbo, die das weitere Feld auf dessen Vorschlagswert bzw. Ursprungswert zurücksetzt.

Die Funktion ruft keine individuellen Prüfungen für das weitere Feld auf. Erfassen Sie daher alle erforderlichen Prüfugen in den Deklarationen der Aktivitätsdefinition.

Siehe auch dboForeignAmount, dboListForeignAmount, setDboForeignAmount, validateDboForeignAmount

Folgendes Beispiel aus der Aktivitätsdefinition help.setDboListForeignAmount fügt der Werteliste eines weiteren Feldes für den Partner zwei Beträge bzw. Preise in Fremdwährung hinzu. Ist eine Währung ungültig, wird die erste Hauswährung verwendet.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var p_amount1 := parameters.AMOUNT1;
var p_amount2 := parameters.AMOUNT2;
var p_currency1 := parameters.CURRENCY1;
var p_currency2 := parameters.CURRENCY2;
var dboSuccess := false;

var currency1Guid := loadCurrency(p_currency1):guid;
if (isNull(currency1Guid))
currency1Guid := getCurrency1();
var currency2Guid := loadCurrency(p_currency2):guid;
if (isNull(currency2Guid))
currency2Guid := getCurrency1();

dboSuccess := setDboListForeignAmount("EXTPartner", p_partner, p_name, list(p_amount1, p_amount2), list(currency1Guid, currency2Guid));

result.IS_NULL := isNull(dboSuccess);
result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));
}

function getCurrency1() as Guid
{
var currency1 as Guid;
var company := loadOrganization(getCustomizingValue("com.cisag.app.General"):company);
var baseFunction := getCustomizingValue("com.cisag.app.general.Base", company:guid);

if (not isNull(baseFunction)) {
var combination := getByPrimaryKey(CisObject(com.cisag.app.multiorg.obj.DomesticCurrencyCombination), baseFunction:combination);
currency1 := combination:currency1;
}
return currency1;
}

 

setDboListGuid

Name setDboListGuid
Beschreibung setDboListGuid weist einem weiteren Feld vom Feldtyp Klassifikation eine Werteliste zu.
Signaturen Boolean setDboListGuid(String schemaName, CisObject object, String attributeName, String[] pathList)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

pathList ist die Werteliste mit den Klassifikationspfaden, die dem weiteren Feld zugewiesen werden soll.

Ergebnis Die Funktion weist dem weiteren Feld die Werteliste pathList zu.

War die Zuweisung für alle Elemente der Werteliste erfolgreich, gibt die Funktion true zurück. Sind für das weitere Feld Einschränkungen definiert und mindestens ein Element der Werteliste ist unzulässig, gibt die Funktion false zurück. Um die einzelnen Elemente zu überprüfen, steht die Funktion validateDboGuid zur Verfügung.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele setDboListGuid("EXTItem", loadItem("10010"), "NACE", list("J-62-01", "P-85-5")) weist dem weiteren Feld die Klassifikationen mit den angegebenen Pfaden zu.

setDboListGuid("EXTItem", loadItem("10010"), "NACE", union(minus(dboListGuid("EXTItem", loadItem("10010"), "NACE"), list(new(Guid))), list("J-62-02"))) fügt der Werteliste die Klassifikation mit dem angegebene Pfad hinzu.

setDboListGuid("EXTItem", loadItem("10010"), "NACE", minus(dboListGuid("EXTItem", loadItem("10010"), "NACE"), list("P-85-5"))) entfernt die Klassifikation mit dem angegebenen Pfad aus der Werteliste.

Kontext OLTP
Hinweise setDboListGuid("EXTItem", loadItem("10010"), "MY_FIELD", list(new(String)) versucht, dem weiteren Feld eine Liste mit einer leeren Zeichenkette als Standardwert des Datentypen String zuzuweisen. Vergleichen Sie hierzu die Funktion resetDbo, die das weitere Feld auf dessen Vorschlagswert bzw. Ursprungswert zurücksetzt.

Da die Funktion setDboListGuid eine Liste von Zeichenketten erwartet, aber dboListGuid eine Liste mit Guids zurückgibt, können Sie den Wert eines weiteren Feldes nicht ohne zusätzliches Scripting einem anderen weiteren Feld zuweisen.

Die Funktion ruft keine individuellen Prüfungen für das weitere Feld auf. Erfassen Sie daher alle erforderlichen Prüfungen in den Deklarationen der Aktivitätsdefinition.

Siehe auch dboGuid, dboListGuid, setDboGuid, validateDboGuid

Folgendes Beispiel aus der Aktivitätsdefinition help.setDboListGuid fügt einem weiteren Feld vom Feldtyp Klassifikation für einen Partner einen neuen Pfad hinzu. Durch die Verwendung der Funktion union wird ein Pfad nur einmal der Klassifikation zugewiesen. Die Funktion minus entfernt den Standardwert null für ein weiteres Feld ohne eine zugeordnete Klassifikation.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var p_path := parameters.PATH;
var dboSuccess := false;

dboSuccess := setDboListGuid("EXTPartner", p_partner, p_name, union(minus(dboListGuid("EXTPartner", p_partner, "NACE"), list(new(Guid))), list(p_path)));

result.IS_NULL := isNull(dboSuccess);
result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));
}

 

setDboListNumber

Name setDboListNumber
Beschreibung setDboListNumber weist einem weiteren Feld vom Feldtyp Decimal eine Werteliste zu.
Signaturen Boolean setDboListNumber(String schemaName, CisObject object, String attributeName, Number[] numberList)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

numberList ist die Werteliste, die dem weiteren Feld zugewiesen werden soll.

Ergebnis Die Funktion weist dem weiteren Feld die Werteliste numberList zu.

War die Zuweisung für alle Elemente der Werteliste erfolgreich, gibt die Funktion true zurück. Sind für das weitere Feld Einschränkungen definiert und mindestens ein Element der Werteliste ist unzulässig, gibt die Funktion false zurück. Um die einzelnen Elemente zu überprüfen, steht die Funktion validateDboNumber zur Verfügung.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele setDboListNumber("EXTItem", loadItem("10010"), "NUMBERS", list(1, 2, 3)) weist dem weiteren Feld eine Werteliste mit den Werten 1, 2 und 3 zu.
Kontext OLTP
Hinweise setDboListNumber("EXTItem", loadItem("10010"), "MY_FIELD", list(new(Number)) versucht, dem weiteren Feld den Standardwert 0 vom Datentyp Number zuzuweisen. Vergleichen Sie hierzu die Funktion resetDbo, die das weitere Feld auf dessen Vorschlagswert bzw. Ursprungswert zurücksetzt.

Die Funktion ruft keine individuellen Prüfungen für das weitere Feld auf. Erfassen Sie daher alle erforderlichen Prüfugen in den Deklarationen der Aktivitätsdefinition.

Siehe auch dboNumber, dboListNumber, setDboNumber, validateDboNumber

Folgendes Beispiel aus der Aktivitätsdefinition help.setDboListNumber fügt der Werteliste eines weiteren Feldes für den Partner eine neue Zahl hinzu.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var p_number := parameters.NUMBER;
var dboSuccess := false;

var valueList := dboListNumber("EXTPartner", p_partner, p_name);
add(valueList, p_number);

dboSuccess := setDboListNumber("EXTPartner", p_partner, p_name, valueList);

result.IS_NULL := isNull(dboSuccess);
result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));
}

 

setDboListQuantity

Name setDboListQuantity
Beschreibung setDboListQuantity weist einem weiteren Feld vom Feldtyp Menge eine Werteliste zu.
Signaturen Boolean setDboListQuantity(String schemaName, CisObject object, String attributeName, CisObject(com.cisag.app.general.obj.Quantity)[] quantityList)

Boolean setDboListQuantity(String schemaName, CisObject object, String attributeName, Number[] amountList, Guid[] uomList)

Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

amountList ist die Werteliste mit den Mengen, die dem weiteren Feld zugewiesen werden sollen.

uomList ist die Werteliste mit der Guid der Mengeneinheit.

quantityList ist eine Werteliste mit den Parts, die zugewiesen werden sollen.

Ergebnis Die Funktion weist dem weiteren Feld die Werteliste mit den Mengen zu.

War die Zuweisung für alle Elemente der Werteliste erfolgreich, gibt die Funktion true zurück. Sind für das weitere Feld Einschränkungen definiert und mindestens ein Element der Werteliste ist unzulässig, gibt die Funktion false zurück. Um die einzelnen Elemente zu überprüfen, steht die Funktion validateDboQuantity zur Verfügung.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele setDboListQuantity("EXTItem", loadItem("10010"), "TIME", list(5), list(loadUom("day")) weist dem weiteren Feld eine Werteliste mit der Menge 5 Tage zu.
Kontext OLTP
Hinweise setDboListQuantity("EXTItem", loadItem("10010"), "MY_FIELD", list(new(Number)), list(ZERO_GUID)) versucht, dem weiteren Feld den Standardwert 0 des Datentyps Number und den Wert ZERO_GUID für den Datentyp Guid zuzuweisen. Vergleichen Sie hierzu die Funktion resetDbo, die das weitere Feld auf dessen Vorschlagswert bzw. Ursprungswert zurücksetzt.

Die Funktion ruft keine individuellen Prüfungen für das weitere Feld auf. Erfassen Sie daher alle erforderlichen Prüfungen in den Deklarationen der Aktivitätsdefinition.

Siehe auch dboQuantity, dboListQuantity, setDboQuantity, validateDboQuantity

Folgendes Beispiel aus der Aktivitätsdefinition help.setDboListQuantity fügt der Werteliste eines weiteren Feldes für den Partner zwei Mengen hinzu. Ist eine Mengeneinheit ungültig, wird kg verwendet.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var p_amount1 := parameters.AMOUNT1;
var p_amount2 := parameters.AMOUNT2;
var p_uom1 := parameters.UOM1;
var p_uom2 := parameters.UOM2;
var dboSuccess := false;

var defaultUomGuid := loadUom("kg"):guid;
var uom1Guid := loadUom(p_uom1):guid;
if (isNull(uom1Guid))
uom1Guid := defaultUomGuid;
var uom2Guid := loadUom(p_uom2):guid;
if (isNull(uom2Guid))
uom2Guid := defaultUomGuid;

dboSuccess := setDboListQuantity("EXTPartner", p_partner, p_name, list(p_amount1, p_amount2), list(uom1Guid, uom2Guid));

result.IS_NULL := isNull(dboSuccess);
result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));
}

 

setDboListString

Name setDboListString
Beschreibung setDboListString weist einem weiteren Feld vom Feldtyp Text, E-Mail-Adresse oder Uniform Resource Locator (URL) einen Wert zu.
Signaturen Boolean setDboListString(String schemaName, CisObject object, String attributeName, String[] textList)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

textList ist die Werteliste, die dem weiteren Feld zugewiesen werden soll.

Ergebnis Die Funktion weist dem weiteren Feld die Werteliste textList zu.

War die Zuweisung für alle Elemente der Werteliste erfolgreich, gibt die Funktion true zurück. Sind für das weitere Feld Einschränkungen definiert und mindestens ein Element der Werteliste ist unzulässig, gibt die Funktion false zurück. Um die einzelnen Elemente zu überprüfen, steht die Funktion validateDboString zur Verfügung.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele setDboListText("EXTItem", loadItem("10010"), "STRINGS", list("A", "B", "C")) weist dem weiteren Feld eine Werteliste mit den angebenen Werten zu.
Kontext OLTP
Hinweise setDboListString("EXTItem", loadItem("10010"), "MY_FIELD", list(new(String)) versucht, dem weiteren Feld eine leere Zeichenkette als Standardwert des Datentypen Number zuzuweisen. Vergleichen Sie hierzu die Funktion resetDbo, die das weitere Feld auf dessen Vorschlagswert bzw. Ursprungswert zurücksetzt.

Die Funktion ruft keine individuellen Prüfungen für das weitere Feld auf. Erfassen Sie daher alle erforderlichen Prüfungen in den Deklarationen der Aktivitätsdefinition.

Siehe auch dboString, dboListString, setDboString, validateDboString

Folgendes Beispiel aus der Aktivitätsdefinition help.setDboListString fügt der Werteliste eines weiteren Feldes für den Partner eine neue Zeichenkette hinzu.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var p_text := parameters.TEXT;
var dboSuccess := false;

if (p_text = "")
p_text := "[empty string]";

var valueList := dboListString("EXTPartner", p_partner, p_name);
if (valueList[0] = new(String))
valueList[0] := p_text;
else
add(valueList, p_text);
dboSuccess := setDboString("EXTPartner", p_partner, p_name, valueList);

result.IS_NULL := isNull(dboSuccess);
result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));
}

 

setDboListTimestamp

Name setDboListTimestamp
Beschreibung setDboListTimestamp weist einem weiteren Feld vom Feldtyp Datum eine Werteliste zu.
Signaturen Boolean setDboListTimestamp(String schemaName, CisObject object, Timestamp attributeName, Timestamp[] timestampList)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

timestampList ist die Werteliste, die dem weiteren Feld zugewiesen werden soll.

Ergebnis Die Funktion weist dem weiteren Feld die Werteliste timestampList zu.

War die Zuweisung für alle Elemente der Werteliste erfolgreich, gibt die Funktion true zurück. Sind für das weitere Feld Einschränkungen definiert und mindestens ein Element der Werteliste ist unzulässig, gibt die Funktion false zurück. Um die einzelnen Elemente zu überprüfen, steht die Funktion validateDboTimestamp zur Verfügung.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele setDboListTimestamp("EXTItem", parameters.object, "CHANGE_HISTORY", union(minus(dboListTimestamp("EXTItem", parameters.object, "CHANGE_HISTORY"), list(new(Timestamp))), list(now())) fügt der Werteliste des vom Ereignisparameter parameters.object referenzierten Artikels ein neues Element mit dem aktuellen Zeitpunkt hinzu. Die Funktion minus entfernt den Standardwert des Datentypen Timestamp, den die Funktion dboListTimestamp zurückgibt, wenn dem weiteren Feld kein Wert zugewiesen ist.
Kontext OLTP
Hinweise setDboListTimestamp("EXTItem", loadItem("10010"), "MY_FIELD", list(new(Timestamp)) versucht, dem weiteren Feld den Standardwert UNDEFINED_DATE des Datentyps Timestamp zuzuweisen. Vergleichen Sie hierzu die Funktion resetDbo, die das weitere Feld auf dessen Vorschlagswert bzw. Ursprungswert zurücksetzt.

Die Funktion ruft keine individuellen Prüfungen für das weitere Feld auf. Erfassen Sie daher alle erforderlichen Prüfungen in den Deklarationen der Aktivitätsdefinition.

Siehe auch dboTimestamp, dboListTimestamp, setDboTimestamp, validateDboTimestamp

Folgendes Beispiel aus der Aktivitätsdefinition help.setDboListTimestamp fügt der Werteliste eines weiteren Feldes eines Partners ein neues Element mit dem aktuellen Zeitpunkt hinzu.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var dboSuccess := false;

var newElement := now();
var valueList := dboListTimestamp("EXTPartner", p_partner, p_name);
if (valueList[0] = new(Timestamp))
valueList[0] := newElement;
else
add(valueList, newElement);

dboSuccess := setDboListTimestamp("EXTPartner", p_partner, p_name, valueList);

result.IS_NULL := isNull(dboSuccess);
result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));
}

 

setDboListValueSet

Name setDboListValueSet
Beschreibung setDboListValueSet weist einem weiteren Feld vom Feldtyp Auswahlfeld eine Werteliste mit der numerischen Identifikation einer Auswahl zu.
Signaturen Boolean setDboListValueSet(String schemaName, CisObject object, ValueSet attributeName, Number[] idList)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

idList ist die Werteliste, die dem weiteren Feld zugewiesen werden soll.

Ergebnis Die Funktion weist dem weiteren Feld die Werteliste idList zu.

War die Zuweisung für alle Elemente der Werteliste erfolgreich, gibt die Funktion true zurück. Sind für das weitere Feld Einschränkungen definiert und mindestens ein Element der Werteliste ist unzulässig, gibt die Funktion false zurück. Um die einzelnen Elemente zu überprüfen, steht die Funktion validateDboValueSet zur Verfügung.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele setDboListValueSet("EXTItem", loadItem("10010"), "SELECTION", list(1, 2, 3)) weist dem weiteren Feld eine Werteliste mit den numerischen Identifikationen 1, 2 und 3 zu.
Kontext OLTP
Hinweise setDboListValueSet("EXTItem", loadItem("10010"), "MY_FIELD", list(new(Number)) versucht, dem weiteren Feld den Standardwert 0 des Datentyps Number zuzuweisen. Vergleichen Sie hierzu die Funktion resetDbo, die das weitere Feld auf dessen Vorschlagswert bzw. Ursprungswert zurücksetzt.

Die Funktion ruft keine individuellen Prüfungen für das weitere Feld auf. Erfassen Sie daher alle erforderlichen Prüfungen in den Deklarationen der Aktivitätsdefinition.

Siehe auch dboValueSet, dboValueSetDescription, dboValueSetName, dboListValueSet, dboListValueSetDescription, dboListValueSetName, setDboValueSet, setDboValueSetName, setDboListValueSetName, validateDboValueSet, validateDboValueSetName

Folgendes Beispiel aus der Aktivitätsdefinition help.setDboValueSet fügt der Werteliste eines weiteren Feldes eines Partners eine neue numerische Identifikation einer Auswahl hinzu. Ist die Auswahl ungültig, gibt die Funktion setDboValueSet den Wahrheitswert false zurück.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var p_id := parameters.ID;
var dboSuccess := false;

var valueList := dboListNumber("EXTPartner", p_partner, p_name);
if (valueList[0] = new(Number))
valueList[0] := p_id;
else
add(valueList, p_id);

dboSuccess := setDboListNumber("EXTPartner", p_partner, p_name, valueList);

result.IS_NULL := isNull(dboSuccess);
result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));
}

 

setDboListValueSetName

Name setDboListtValueSetName
Beschreibung setDboListValueSetName weist einem weiteren Feld vom Feldtyp Auswahlfeld eine Werteliste mit den konstanten Namen einer Auswahl zu.
Signaturen Boolean setDboListValueSetName(String schemaName, CisObject object, ValueSet attributeName, String[] constantList)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

constantList ist die Werteliste, die dem weiteren Feld zugewiesen werden soll.

Ergebnis Die Funktion weist dem weiteren Feld die Werteliste constantList zu.

War die Zuweisung für alle Elemente der Werteliste erfolgreich, gibt die Funktion true zurück. Sind für das weitere Feld Einschränkungen definiert und mindestens ein Element der Werteliste ist unzulässig, gibt die Funktion false zurück. Um die einzelnen Elemente zu überprüfen, steht die Funktion validateDboValueSetName zur Verfügung.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele setDboListValueSetName("EXTItem", loadItem("10010"), "SELECTION", list("ONE", "TWO", "THREE")) weist dem weiteren Feld eine Werteliste mit den konstanten Namen der Auswahl zu.
Kontext OLTP
Hinweise setDboListValueSetName("EXTItem", loadItem("10010"), "MY_FIELD", list(new(String)) versucht, dem weiteren Feld eine leere Zeichenkette als Standardwert des Datentypen String zuzuweisen. Vergleichen Sie hierzu die Funktion resetDbo, die das weitere Feld auf dessen Vorschlagswert bzw. Ursprungswert zurücksetzt.

Die Funktion ruft keine individuellen Prüfungen für das weitere Feld auf. Erfassen Sie daher alle erforderlichen Prüfugen in den Deklarationen der Aktivitätsdefinition.

Siehe auch dboValueSet, dboValueSetDescription, dboValueSetName, dboListValueSet, dboListValueSetDescription, dboListValueSetName, setDboValueSet, setDboValueSetName, setDboListValueSet, validateDboValueSet, validateDboValueSetName

Folgendes Beispiel aus der Aktivitätsdefinition help.setDboValueSetName weist der Werteliste eines weiteren Feldes eines Partners durch Komma getrennte Namen hinzu. Ist eine Auswahl ungültig, gibt die Funktion setDboValueSetName den Wahrheitswert false zurück.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var p_constantNames := parameters.CONSTANTS;
var dboSuccess := false;

var constantNames := split(p_constantNames, ",");
if (isEmpty(constantNames))
constantNames := list(new(String));
dboSuccess := setDboListValueSetName("EXTPartner", p_partner, p_name, constantNames);

result.IS_NULL := isNull(dboSuccess);
result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));
}

/* Splits „p_text“ into an array at each occurence of „p_separator“ */
function split(p_text as String, p_separator as String) as String[]
{
if (p_separator = "")
p_separator := " ";
var increment := length(p_separator);
var sep as String;
var word as String;
var r_wordList as String[];
var i := 0;
var startPos := 0;

while (i + increment - 1 < length(p_text)) {
sep := substring(p_text, i, i + increment);
if (sep = p_separator) {
word := trim(substring(p_text, startPos, i));
i := i + increment;
startPos := i;
if (word <> "" and word <> p_separator)
add(r_wordList, word);
} else {
i := i + 1;
}
}

word := substring(p_text, startPos);
if (word <> "" and word <> p_separator)
add(r_wordList, word);

return r_wordList;
}

 

Validate-Funktionen

validateDboCisDate

Name validateDboCisDate
Beschreibung validateDboCisDate prüft, ob ein CisDate einem weiteren Feld vom Feldtyp Datum zugewiesen werden kann.
Signaturen Boolean validateDboCisDate(String schemaName, CisObject object, String attributeName, CisDate date)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

date ist der Wert, der geprüft werden soll.

Ergebnis Die Funktion prüft, ob das Datum date dem weiteren Feld zugewiesen werden kann.

War die Prüfung erfolgreich, gibt die Funktion true zurück. Sind für das weitere Feld Einschränkungen definiert und date ist unzulässig, gibt die Funktion false zurück.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele validateDboCisDate("EXTItem", loadItem("10010"), "LAST_DATE", today()) prüft, ob das heutige Datum ein zulässiger Wert für das weitere Feld ist.
Kontext OLTP
Hinweise validateDboCisDate("EXTItem", loadItem("10010"), "MY_FIELD", new(CisDate)) prüft, ob der Standardwert null des Datentyps CisDate ein zulässiger Wert für das weitere Feld ist, d. h. ob das weitere Feld durch diese Zuweisung geleert werden kann. Siehe auch die Funktion resetDbo, die das weitere Feld auf dessen Vorschlagswert bzw. Ursprungswert zurücksetzt.
Siehe auch dboCisDate, dboListCisDate, setDboCisDate, setDboListCisDate

Folgendes Beispiel aus der Aktivitätsdefinition help.validateDboCisDate prüft, ob das heutige Datum einem weiteren Feld vom Feldtyp Datum zugewiesen werden kann.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var testValue := today();
var dboSuccess := false;

dboSuccess := validateDboCisDate("EXTPartner", p_partner, p_name, testValue);

result.IS_NULL := isNull(dboSuccess);
result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));
}

 

validateDboCisObject

Name validateDboCisObject
Beschreibung validateDboCisObject prüft, ob ein Wert einem weiteren Feld vom Feldtyp Business Entity zugewiesen werden kann.
Signaturen Boolean validateDboCisObject(String schemaName, CisObject object, String attributeName, CisObjectReference objectReference)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

objectReference ist der Wert, der geprüft werden soll.

Ergebnis Die Funktion prüft, ob das von objectReference referenzierte Business Entity dem weiteren Feld zugewiesen werden kann.

War die Prüfung erfolgreich, gibt die Funktion true zurück. Sind für das weitere Feld Einschränkungen definiert und object ist unzulässig, gibt die Funktion false zurück.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele validateDboCisObject("EXTItem", parameters.object, "SUBMITTER", getByPrimaryKey(CisObject( com.cisag.app.general.obj.UserAssignment), parameters.userGuid)->Partner) prüft, ob der Partner des Benutzers, der das Ereignis vom Typ Business Entity oder Benutzeraktion ausgelöst hat, ein zulässiger Wert für das weitere Feld ist.
Kontext OLTP
Hinweise validateDboCisObject("EXTItem", loadItem("10010"), "MY_FIELD", new(CisObject)) prüft, ob der Standardwert null des Datentypen CisObject ein zulässiger Wert für das weitere Feld ist, d. h. ob das weitere Feld durch diese Zuweisung geleert werden kann. Siehe auch die Funktion resetDbo, die das weitere Feld auf dessen Vorschlagswert bzw. Ursprungswert zurücksetzt.
Siehe auch dboCisObject, dboListCisObject, setDboCisObject, setDboListCisObject

Folgendes Beispiel aus der Aktivitätsdefinition help.validateDboCisObject prüft, ob der Partner eines Benutzers einem weiteren Feld vom Feldtyp Business Entity zugewiesen werden kann.

function create()
{
var p_name := parameters.NAME;
var p_item := loadItem(parameters.ITEM);
var p_user := parameters.USER;
var testValue := loadPartnerOfUser(userGuid(p_user));
var dboSuccess := false;

dboSuccess := validateDboCisObject("EXTItem", item, p_name, testValue);

result.IS_NULL := isNull(dboSuccess);
result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));
}

function loadPartnerOfUser(user as Guid) as CisObject(com.cisag.app.general.obj.Partner)
{
return
getByPrimaryKey(
CisObject(com.cisag.app.general.obj.UserAssignment),
user)->Partner;
}

 

validateDboDomesticAmount

Name validateDboDomesticAmount
Beschreibung validateDboDomesticAmount prüft, ob ein Wert einem weiteren Feld vom Feldtyp Betrag in Hauswährung oder Preis in Hauswährung zugewiesen werden kann.
Signaturen Boolean validateDboDomesticAmount(String schemaName, CisObject object, String attributeName, Number amount)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

amount ist der Wert, der geprüft werden soll.

Ergebnis Die Funktion prüft, ob amount dem weiteren Feld zugewiesen werden kann.

War die Prüfung erfolgreich, gibt die Funktion true zurück. Sind für das weitere Feld Einschränkungen definiert und object ist unzulässig, gibt die Funktion false zurück.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele validateDboDomesticAmount("EXTItem", loadItem("10010"), "INITIAL_VALUE", 100) prüft, ob 100 ein zulässiger Wert für das weitere Feld ist.
Kontext OLTP
Hinweise validateDboDomesticAmount("EXTItem", loadItem("10010"), "MY_FIELD", new(Number)) prüft, ob der Standardwert 0 des Datentyps Number ein zulässiger Wert für das weitere Feld ist, d. h. ob das weitere Feld durch diese Zuweisung geleert werden kann. Siehe auch die Funktion resetDbo, die das weitere Feld auf dessen Vorschlagswert bzw. Ursprungswert zurücksetzt.
Siehe auch dboDomesticAmount, dboListDomesticAmount, setDboDomesticAmount, setDboListDomesticAmount

Folgendes Beispiel aus der Aktivitätsdefinition help.setDboDomesticAmount prüft, ob ein Wert einem weiteren Feld vom Feldtyp Betrag in Hauswährung oder Preis in Hauswährung zugewiesen werden kann.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var testValue := parameters.AMOUNT;
var dboSuccess := false;

dboSuccess := validateDboDomesticAmount("EXTPartner", p_partner, p_name, testValue);

result.IS_NULL := isNull(dboSuccess);
result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));
}

 

validateDboForeignAmount

Name validateDboForeignAmount
Beschreibung validateDboForeignAmount prüft, ob ein Wert einem weiteren Feld vom Feldtyp Betrag oder Preis zugewiesen werden kann.
Signaturen Boolean validateDboForeignAmount(String schemaName, CisObject object, String attributeName, CisObject(com.cisag.app.general.obj.ForeignAmount) foreignAmount)

Boolean validateDboForeignAmount(String schemaName, CisObject object, String attributeName, Number amount, Guid currency)

Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

amount ist der Wert, der geprüft werden soll.

currency ist die Guid der Fremdwährung.

foreignAmount ist der Part, der geprüft werden soll.

Ergebnis Die Funktion prüft, ob der Betrag bzw. Preis in Fremdwährung dem weiteren feld zugewiesen werden kann.

War die Prüfung erfolgreich, gibt die Funktion true zurück. Sind für das weitere Feld Einschränkungen definiert und object ist unzulässig, gibt die Funktion false zurück.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben. Auch wenn currency weder null noch eine gültige Währung ist, wird null zurückgegeben.
Beispiele validateDboForeignAmount("EXTPartner", loadPartner("20010"), "CREDIT_LIMIT", 10000, loadCurrency("USD"):guid) prüft, ob der Betrag bzw. Preis 10.000 USD dem weiteren Feld zugewiesen werden kann.
Kontext OLTP
Hinweise validateDboForeignAmount("EXTItem", loadItem("10010"), "MY_FIELD", new(Number), new(Guid)) prüft, ob der Standardwert 0 des Datentyps Number und der Standardwert null des Datentyps Guid ein zulässiger Betrag oder Preis für das weitere Feld ist, d. h. ob das weitere Feld durch diese Zuweisung geleert werden kann. Siehe auch die Funktion resetDbo, die das weitere Feld auf dessen Vorschlagswert bzw. Ursprungswert zurücksetzt.
Siehe auch dboForeignAmount, dboListForeignAmount, setDboForeignAmount, setDboListForeignAmount

Folgendes Beispiel aus der Aktivitätsdefinition help.setDboForeignAmount prüft, ob ein numerischer Wert und die Guid einer Währung einem weiteren Feld vom Feldtyp Betrag oder Preis zugewiesen werden können.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var testAmount := parameters.AMOUNT;
var testCurrency := loadCurrency(parameters.CURRENCY):guid;
var dboSuccess := false;

dboSuccess := validateDboForeignAmount("EXTPartner", p_partner, p_name, testAmount, testCurrency);

result.IS_NULL := isNull(dboSuccess);
result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));
}

 

validateDboGuid

Name validateDboGuid
Beschreibung validateDboGuid prüft, ob ein Wert einem weiteren Feld vom Feldtyp Klassifikation zugewiesen werden kann.
Signaturen Boolean validateDboGuid(String schemaName, Guid object, String attributeName, String path)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

path ist der Pfad der Klassifikation, die geprüft werden soll.

Ergebnis Die Funktion prüft, ob die Klassifikation mit dem Pfad path dem weiteren Feld zugewiesen werden kann.

War die Prüfung erfolgreich, gibt die Funktion true zurück. Sind für das weitere Feld Einschränkungen definiert und object ist unzulässig, gibt die Funktion false zurück.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele validateDboGuid("EXTItem", loadItem("10010"), "NACE", "J-56-1-2") prüft, ob die Klassifikation ein zulässiger Wert für das weitere Feld ist.
Kontext OLTP
Hinweise validateDboGuid("EXTItem", loadItem("10010"), "MY_FIELD", new(String)) prüft, ob eine leere Zeichenkette als Standardwert des Datentyps String ein zulässiger Wert für das weitere Feld ist, d. h. ob das weitere Feld durch diese Zuweisung geleert werden kann. Siehe auch die Funktion resetDbo, die das weitere Feld auf dessen Vorschlagswert bzw. Ursprungswert zurücksetzt.
Siehe auch dboGuid, dboListGuid, setDboGuid, setDboListGuid

Folgendes Beispiel aus der Aktivitätsdefinition help.validateDboGuid prüft, ob der Pfad einer Klassifikation einem weiteren Feld vom Feldtyp Klassifikation zugewiesen werden kann.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var testValue := parameters.PATH;
var dboSuccess := false;

dboSuccess := validateDboGuid("EXTPartner", p_partner, p_name, testValue);

result.IS_NULL := isNull(dboSuccess);
result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));
}

 

validateDboNumber

Name validateDboNumber
Beschreibung validateDboNumber prüft, ob ein Wert einem weiteren Feld vom Feldtyp Dezimal zugewiesen werden kann.
Signaturen Boolean validateDboNumber(String schemaName, CisObject object, String attributeName, Number decimal)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

decimal ist der Wert, der geprüft werden soll.

Ergebnis Die Funktion prüft, ob decimal dem weiteren Feld zugewiesen werden kann.

War die Prüfung erfolgreich, gibt die Funktion true zurück. Sind für das weitere Feld Einschränkungen definiert und object ist unzulässig, gibt die Funktion false zurück.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele validateDboNumber("EXTItem", loadItem("10010"), "SIZE", 100) prüft, ob 100 ein zulässiger Wert für das weitere Feld ist.
Kontext OLTP
Hinweise validateDboNumber("EXTItem", loadItem("10010"), "MY_FIELD", new(Number)) prüft, ob der Standardwert 0 des Datentyps Number ein zulässiger Wert für das weitere Feld ist, d. h. ob das weitere Feld durch diese Zuweisung geleert werden kann. Siehe auch die Funktion resetDbo, die das weitere Feld auf dessen Vorschlagswert bzw. Ursprungswert zurücksetzt.
Siehe auch dboNumber, dboListNumber, setDboNumber, setDboListNumber

Folgendes Beispiel aus der Aktivitätsdefinition help.validateDboNumber prüft, ob ein Wert einem weiteren Feld vom Feldtyp Dezimal zugewiesen werden kann.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var testValue := parameters.NUMBER;
var dboSuccess := false;

dboSuccess := validateDboNumber("EXTPartner", p_partner, p_name, testValue);

result.IS_NULL := isNull(dboSuccess);
result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));
}

 

validateDboQuantity

Name validateDboQuantity
Beschreibung validateDboQuantity prüft, ob ein Wert einem weiteren Feld vom Feldtyp Menge zugewiesen werden kann.
Signaturen Boolean validateDboQuantity(String schemaName, CisObject object, String attributeName, CisObject(com.cisag.app.general.obj.Quantity) quantity)

Boolean validateDboQuantity(String schemaName, CisObject object, String attributeName, Number amount, Guid uom)

Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

amount ist die Menge, die geprüft werden soll.

uom ist die Guid der Mengeneinheit.

quantity ist der Part, der geprüft werden soll.

Ergebnis Die Funktion prüft, ob die Menge dem weiteren Feld zugewiesen werden kann.

War die Prüfung erfolgreich, gibt die Funktion true zurück. Sind für das weitere Feld Einschränkungen definiert und object ist unzulässig, gibt die Funktion false zurück.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben. Auch wenn uom weder ZERO_GUID noch eine gültige Mengeneinheit ist, wird null zurückgegeben.
Beispiele validateDboQuantity("EXTItem", loadItem("10010"), "DEAD_WEIGHT", 10000, loadUom("kg"):guid) prüft, ob die Menge 10.000 kg dem weiteren Feld zugewiesen werden kann.
Kontext OLTP
Hinweise validateDboQuantity("EXTItem", loadItem("10010"), "MY_FIELD", new(Number), ZERO_GUID) prüft, ob der Standardwert 0 des Datentypen Number und der Wert ZERO_GUID eine zulässige Menge für das weitere Feld ist, d. h. ob das weitere Feld durch diese Zuweisung geleert werden kann. Siehe auch die Funktion resetDbo, die das weitere Feld auf dessen Vorschlagswert bzw. Ursprungswert zurücksetzt.
Siehe auch dboQuantity, dboListQuantity, setDboQuantity, setDboListQuantity

Folgendes Beispiel aus der Aktivitätsdefinition help.setDboDomestic prüft, ob ein numerischer Wert und die Guid einer Mengeneinheit einem weiteren Feld vom Feldtyp Menge zugewiesen werden können.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var testAmount := parameters.AMOUNT;
var testUom := loadUom(parameters.UOM):guid;
var dboSuccess := false;

dboSuccess := validateDboQuantity("EXTPartner", p_partner, p_name, testAmount, testUom);

result.IS_NULL := isNull(dboSuccess);
result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));
}

 

validateDboString

Name validateDboString
Beschreibung validateDboString prüft, ob ein Wert einem weiteren Feld vom Feldtyp Text, E-Mail-Adresse oder Uniform Resource Locator (URL) zugewiesen werden kann.
Signaturen Boolean validateDboString(String schemaName, CisObject object, String attributeName, String text)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

text ist der Wert, der geprüft werden soll.

Ergebnis Die Funktion prüft, ob text dem weiteren Feld zugewiesen werden kann.

War die Prüfung erfolgreich, gibt die Funktion true zurück. Sind für das weitere Feld Einschränkungen definiert und object ist unzulässig, gibt die Funktion false zurück.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele validateDboString("EXTItem", loadItem("10010"), "APPROVAL_STATUS", "APPROVED") prüft, ob die Zeichenkette ein zulässiger Wert für das weitere Feld ist.
Kontext OLTP
Hinweise validateDboString("EXTItem", loadItem("10010"), "MY_FIELD", new(String)) prüft, ob eine leere Zeichenkette als Standardwert des Datentyps String ein zulässiger Wert für das weitere Feld ist, d. h. ob das weitere Feld durch diese Zuweisung geleert werden kann. Siehe auch die Funktion resetDbo, die das weitere Feld auf dessen Vorschlagswert bzw. Ursprungswert zurücksetzt.
Siehe auch dboString, dboListString, setDboString, setDboListString

Folgendes Beispiel aus der Aktivitätsdefinition help.validateDboString prüft, ob ein Wert einem weiteren Feld vom Feldtyp Text, E-Mail-Adresse oder Uniform Resource Locator (URL) zugewiesen werden kann.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var testValue := parameters.TEXT;
var dboSuccess := false;

dboSuccess := validateDboString("EXTPartner", p_partner, p_name, testValue);

result.IS_NULL := isNull(dboSuccess);
result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));
}

 

validateDboTimestamp

Name validateDboTimestamp
Beschreibung validateDboTimestamp prüft, ob ein Wert einem weiteren Feld vom Feldtyp Datum und Uhrzeit zugewiesen werden kann.
Signaturen Boolean validateDboTimestamp(String schemaName, CisObject object, String attributeName, Timestamp time)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

time ist der Wert, der geprüft werden soll.

Ergebnis Die Funktion prüft, ob der Zeitpunkt time dem weiteren Feld zugewiesen werden kann.

War die Prüfung erfolgreich, gibt die Funktion true zurück. Sind für das weitere Feld Einschränkungen definiert und time ist unzulässig, gibt die Funktion false zurück.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele validateDboTimestamp("EXTItem", loadItem("10010"), "LAST_DATE", now()) prüft, ob der aktuelle Zeitpunkt ein zulässiger Wert für das weitere Feld ist.
Kontext OLTP
Hinweise validateDboTimestamp("EXTItem", loadItem("10010"), "MY_FIELD", new(Timestamp)) prüft, ob der Standardwert UNDEFINED_DATE des Datentyps Timestamp ein zulässiger Wert für das weitere Feld ist, d. h. ob das weitere Feld durch diese Zuweisung geleert werden kann. Siehe auch die Funktion resetDbo, die das weitere Feld auf dessen Vorschlagswert bzw. Ursprungswert zurücksetzt.
Siehe auch dboTimestamp, dboListTimestamp, setDboTimestamp, setDboListTimestamp

Folgendes Beispiel aus der Aktivitätsdefinition help.validateDboTimestamp prüft, ob der aktuelle Zeitpunkt einem weiteren Feld vom Feldtyp Datum und Uhrzeit zugewiesen werden kann.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var testValue := now();
var dboSuccess := false;

dboSuccess := validateDboCisDate("EXTPartner", p_partner, p_name, testValue);

result.IS_NULL := isNull(dboSuccess);
result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));
}

 

validateDboValueSet

Name validateDboValueSet
Beschreibung validateDboValueSet prüft, ob eine Zahl einem weiteren Feld vom Feldtyp Auswahlfeld zugewiesen werden kann.
Signaturen Boolean validateDboValueSet(String schemaName, CisObject object, String attributeName, Number id)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

id ist die numerische Identifikation der Auswahl, die geprüft werden soll.

Ergebnis Die Funktion prüft, ob id dem weiteren Feld zugewiesen werden kann.

War die Prüfung erfolgreich, gibt die Funktion true zurück. Sind für das weitere Feld Einschränkungen definiert und object ist unzulässig, gibt die Funktion false zurück.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele validateDboValueSet("EXTItem", loadItem("10010"), "APPROVAL_STATUS", 50) prüft, ob 50 ein zulässiger Wert für das weitere Feld ist.
Kontext OLTP
Hinweise validateDboValueSet("EXTItem", loadItem("10010"), "MY_FIELD", new(Number)) prüft, ob der Standardwert 0 des Datentyps Number ein zulässiger Wert für das weitere Feld ist, d. h. ob das weitere Feld durch diese Zuweisung geleert werden kann. Siehe auch die Funktion resetDbo, die das weitere Feld auf dessen Vorschlagswert bzw. Ursprungswert zurücksetzt.
Siehe auch dboValueSet, dboValueSetDescription, dboValueSetName, dboListValueSet, dboListValueSetDescription, dboListValueSetName, setDboValueSet, setDboValueSetName, setDboListValueSet, setDboListValueSetName, validateDboValueSetName

Folgendes Beispiel aus der Aktivitätsdefinition help.validateDboValueSet prüft, ob eine numerische Identifikation einer Auswahl einem weiteren Feld vom Feldtyp Auswahlfeld zugewiesen werden kann.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var testValue := parameters.ID;
var dboSuccess := false;

dboSuccess := validateDboValueSet("EXTPartner", p_partner, p_name, testValue);

result.IS_NULL := isNull(dboSuccess);
result.IS_SUCCESS := cast(Boolean, first(dboSuccess, false));
}

 

validateDboValueSetName

Name validateDboValueSetName
Beschreibung validateDboValueSetName prüft, ob eine Zeichenkette einem weiteren Feld vom Feldtyp Auswahlfeld zugewiesen werden kann.
Signaturen Boolean validateDboValueSetName(String schemaName, CisObject object, String attributeName, String constant)
Parameter schemaName identifiziert das weitere Feld. Der Schemaname beginnt mit EXT, gefolgt vom Namen des Business Objects ohne dessen Namensraum. Befindet sich das Business Object in einem anderen Namensraum als com.cisag, wird der zweite Teil des Namensraums in Großbuchstaben zwischen EXT und dem Namen des Business Objects eingefügt. Beispiele von Schemanamen sind:

  • EXTItem für das Business Object com.cisag.app.general.obj.Item
  • EXTPurchaseItem für das Business Object com.cisag.app.purchasing.obj.PurchaseItem
  • EXTSEMObjectAccount für das Business Object com.sem.ext.app.fin.financialaccounting.obj.ObjectAccount

object ist die Instanz eines Business Objects.

attributeName ist der Name des weiteren Feldes.

constant ist der konstante Name der Auswahl, die geprüft werden soll.

Ergebnis Die Funktion prüft, ob constant dem weiteren Feld zugewiesen werden kann.

War die Prüfung erfolgreich, gibt die Funktion true zurück. Sind für das weitere Feld Einschränkungen definiert und object ist unzulässig, gibt die Funktion false zurück.

Fehlerquellen Wenn das Schema unter dem angegebenen Namen nicht existiert oder einen Feldtyp verwendet, der nicht zur Funktion passt, wird der Wert null zurückgegeben.
Beispiele validateDboValueSetName("EXTItem", loadItem("10010"), "APPROVAL_STATUS", "APPROVED")prüft, ob APPROVED ein zulässiger Wert für das weitere Feld ist.
Kontext OLTP
Hinweise validateDboValueSetName("EXTItem", loadItem("10010"), "MY_FIELD", new(String)) prüft, ob eine leere Zeichenkette als Standardwert des Datentyps String ein zulässiger Wert für das weitere Feld ist, d. h. ob das weitere Feld durch diese Zuweisung geleert werden kann. Siehe auch die Funktion resetDbo, die das weitere Feld auf dessen Vorschlagswert bzw. Ursprungswert zurücksetzt.
Siehe auch dboValueSet, dboValueSetDescription, dboValueSetName, dboListValueSet, dboListValueSetDescription, dboListValueSetName, setDboValueSet, setDboValueSetName, setDboListValueSet, setDboListValueSetName, validateDboValueSet

Folgendes Beispiel aus der Aktivitätsdefinition help.validateDboValueSetName prüft, welche Elemente einer Liste von konstanten Namen einem weiteren Feld vom Feldtyp Auswahlfeld zugewiesen werden können.

function create()
{
var p_name := parameters.NAME;
var p_partner := loadPartner(parameters.PARTNER);
var p_constantValues := parameters.CONSTANT_VALUES;
var r_pass := "";
var r_fail := "";

/*
for (testValue : split(p_constantValues, " "))
if (cast(Boolean, first(validateDboValueSetName("EXTPartner", p_partner, p_name, testValue), false))
r_pass := r_pass + testValue + " ";
else
r_fail := r_fail + testValue + " ";
*/

result.PASS := r_pass;
result.FAIL := r_fail;
}

/* Splits „p_text“ into an array at each occurence of „p_separator“ */
function split(p_text as String, p_separator as String) as String[]
{
if (p_separator = "")
p_separator := " ";
var increment := length(p_separator);
var sep as String;
var word as String;
var r_wordList as String[];
var i := 0;
var startPos := 0;

while (i + increment - 1 < length(p_text)) {
sep := substring(p_text, i, i + increment);
if (sep = p_separator) {
word := trim(substring(p_text, startPos, i));
i := i + increment;
startPos := i;
if (word <> "" and word <> p_separator)
add(r_wordList, word);
} else {
i := i + 1;
}
}

word := substring(p_text, startPos);
if (word <> "" and word <> p_separator)
add(r_wordList, word);

return r_wordList;
}

Czy ten artykuł był pomocny?