Hilfe Nummer: 741560
Interne Funktionen, die auf Eigenschaften angewendet werden können.
Gültigkeit
Exist()
, FValid()
und PropCount()
ähneln sich, sie unterscheiden sich wie folgt:
-
Exist()
- Gibt zurück ob Eigenschaftswert gesetzt ist; es kann bestimmt werden, ob deren [Standardwert] berücksichtigt wird.
-
FValid()
- Gibt zurück ob Eigenschaftswert oder deren [Standardwert] gesetzt ist.
-
PropCount()
- Gibt die Anzahl der Eigenschaftswerte zurück ohne den [Standardwert] zu zählen.
Die Geschwindigkeit der Auswertung dieser drei Funktionen unterscheidet sich kaum.
Exist( prop )
Die Funktion kann überladen und somit auch mit anderen Parametern genutzt werden: Exist( prop, checkDefaultValue )
|
Variante 1 |
Variante 2
|
Parameter
|
prop |
Eigenschaft des Objekts |
prop |
Eigenschaft des Objekts
|
|
checkDefaultValue |
[Standardwert] berücksichtigen
|
Rückgabewert
|
Gibt TRUE zurück, wenn prop einen Wert enthält oder deren [Standardwert] gesetzt ist. |
Gibt TRUE zurück, wenn prop einen Wert enthält.
|
Beispiel
|
Exist(ME.RightOrder) |
TRUE |
Exist(ME.PeggingConditionExpr,TRUE) |
FALSE
|
ME ist hier ein Auftrag. |
ME ist hier ein Artikel, dessen [Verknüpfungsbedingung] nicht gesetzt ist.
|
Bemerkungen
|
Verhalten ist gleich dem bei checkDefaultValue FALSE. |
- Bei checkDefaultValue TRUE enspricht das Verhalten dem von
FValid(prop) .
- Bei checkDefaultValue FALSE enspricht das Verhalten dem von
PropCount(prop)>0 .
|
ExistIF( objects, condition )
Parameter
|
objects |
Klasse oder Objektliste
|
condition |
Bedingung, TARGET -Variablen können genutzt werden.
|
Rückgabewert
|
Gibt TRUE zurück, wenn mindestens eins der Objekte in objects die condition erfüllt..
|
Beispiel
|
ExistIF(ME.Order.RightmostOrder,TARGET.Qty>=100) |
TRUE
|
ME ist hier ein Auftrag, der mindestens einen Auftrag in [Aufträge ganz rechts] hat, dessen [Menge] mindestens 100 ist]. Funktional entspricht das Beispiel SumIF(ME.Order.RightmostOrder,TARGET.Qty>=100,1)>0 , allerdings wird es in der Regel schneller ausgewertet, da die Auswertung beendet wird, sobald ein Objekt die condition erfüllt.
|
Bemerkungen
|
- Ähnelt
CheckAllContents_Or() , dort können aber keine TARGET -Variablen genutzt werden.
- Klassen werden mit ihrem internen Namen, von einfachen Anführungszeichen umschlossen, eingegeben, also etwa 'Order' für die Auftragsklasse.
|
FValid( prop )
Parameter
|
prop |
Eigenschaft des Objekts
|
Rückgabewert
|
TRUE wenn prop einen Wert enthält, sonst FALSE.
|
Beispiel
|
FValid(ME.Qty) |
FALSE
|
ME ist hier ein Auftrag.
|
PropCount( prop )
Parameter
|
prop |
Eigenschaft des Objekts
|
Rückgabewert
|
Gibt die Anzahl der Eigenschaftswerte von prop zurück, der [Standardwert] wird nicht gezählt.
|
Beispiel
|
ME.Comments |
3
|
ME ist hier ein Auftrag mit drei Einträgen für [Kommentar].
|
CheckAllContents_And( prop, condition, value )
Parameter
|
prop |
Eigenschaft des Objekts
|
condition |
Vergleichsoperator
|
value |
Vergleichswert
|
Rückgabewert
|
Gibt TRUE zurück, wenn alle Eigenschaftswerte von prop condition und value entsprechen.
|
Beispiel
|
<code>CheckAllContents_And(ME.Comments,'==','c') |
FALSE
|
ME ist hier ein Auftrag mit [Kommentar] "a;b;c;d", es sind also nicht alle Werte gleich "c".
|
CheckAllContents_Or( prop, condition, value )
Parameter
|
prop |
Eigenschaft des Objekts
|
condition |
Vergleichsoperator
|
value |
Vergleichswert
|
Rückgabewert
|
Gibt TRUE zurück, wenn mindestens ein Eigenschaftswert von prop condition und value entsprechen.
|
Beispiel
|
<code>CheckAllContents_Or(ME.Comments,'==','c') |
TRUE
|
ME ist hier ein Auftrag mit [Kommentar] "a;b;c;d", ein Werte ist also gleich "c".
|
Objekte
GetObjectName( obj )
Parameter
|
obj |
Objekt
|
Rückgabewert
|
Gibt den Objektnamen von obj zurück.
|
Beispiel
|
GetObjectName(PROJECT) |
"Beispiel 1"
|
Wenn [Alias] des Projekts "Beispiel 1" ist.
|
Bemerkung
|
Es werden [Alias], [Anzeigename] und [Name] (in dieser Reihenfolge) ausgewertet.
|
DisplayStr( prop )
Parameter
|
prop |
Objekteigenschaft
|
Rückgabewert
|
Gibt den Wert zurück, der von der [Anzeigeformel] für prop zurückgegeben würde.
|
Beispiel
|
DisplayStr(ME.Qty) |
"50 Stück"
|
ME ist hier ein Auftrag mit [Menge] und die [Anzeigeformel] von [Menge] INPUT+' Stück' ist.
|
GetEnumName( prop )
Parameter
|
prop |
Aufzählungseigenschaft
|
Rückgabewert
|
Gibt den Namen des Eigenschafswerts von prop zurück.
|
Beispiel
|
GetEnumName(ME.Status) |
"Freigegeben"
|
ME ist hier ein Vorgang mit [Status] "I".
|
ExpressionStr( prop, 0 )
Parameter
|
prop |
Eigenschaft deren Formel bezogen wird
|
Wird nicht genutzt
|
Rückgabewert
|
Gibt den Formelstring von prop zurück.
|
Beispiel
|
Find(ExpressionStr(ME.VirtualPropertyExpression,0),'Format')
|
Filtert die Eigenschaftsdefinitionstabelle auf Einträge, deren [Virtuelle Eigenschaftsformel] "Format" enthält.
|
SetProps( objectList, expr )
Parameter
|
objectList |
Objektliste deren Eigenschaften gesetzt werden sollen
|
expr |
Eigenschaftszuweisungsformel
|
Rückgabewert
|
Setzt anhand von expr Eigenschaften der Objekte in objectList.
|
Beispiel
|
SetProps(ME.LeftRecursiveOrder,TARGET.LET=ME.LET)
|
ME ist hier ein Auftrag, für den für alle Aufträge in [Übergeordnete Aufträge (rekursiv)] der [Fälligkeitstermin] auf den von ME gesetzt.
|
SetPropsIF( objectList, conditionExpr, expr )
Parameter
|
objectList |
Objektliste deren Eigenschaften gesetzt werden sollen
|
conditionExpr |
Filterformel
|
expr |
Eigenschaftszuweisungsformel
|
Rückgabewert
|
Setzt anhand von expr Eigenschaften der Objekte in objectList, die conditionExpr erfüllen.
|
Beispiel
|
SetPropsIF(ME.LeftRecursiveOrder,
ME.IsReplenishmentOrder=='1'
&& ME.LET<TARGET.LET,
TARGET.LET=ME.LET
)
|
ME ist hier ein Auftrag, für den für alle Aufträge in [Übergeordnete Aufträge (rekursiv)] der [Fälligkeitstermin] auf den [Fälligkeitstermin] von ME gesetzt wird, falls deren [Fälligkeitstermin] später als dieser ist.
|
StrProps( props, delimiter )
Die Funktion kann überladen und somit auch mit anderen Parametern genutzt werden: StrProps( objectList, expr, delimiter )
|
Variante 1 |
Variante 2
|
Parameter
|
props |
Zieleigenschaft (Array) |
objectList |
Objektliste
|
delimiter |
Trennzeichen |
expr |
Formel die eine Eigenschaft vorgibt
|
|
delimiter |
Trennzeichen
|
Rückgabewert
|
Gibt einen String mit den Eigenschaftswerten von props, getrennt mit delimiter, zurück. |
Gibt einen String mit den Eigenschaftswerten von expr der Objekte in objectList, getrennt mit delimiter, zurück.
|
Beispiele
|
StrProps(ME.Comments,';') |
"X;Y;Z" |
StrProps(ME.Comments[2],';') |
"Y"
|
ME ist hier ein Objekt mit [Kommentar] "X;Y;Z".
|
StrProps(ME.Child,TARGET.Code,';') |
"A;B;C" |
StrProps(ME.Child[1],TARGET.Code,';') |
"A"
|
ME ist hier ein Objekt, dessen [Untergeordnete Objekte] "A", "B" und "C" sind.
|
StrPropsIF( objectList, conditionExpr, expr, delimiter )
Parameter
|
objectList |
Objektliste deren Eigenschaften gesetzt werden sollen
|
conditionExpr |
Filterformel
|
expr |
Eigenschaftszuweisungsformel
|
delimiter |
Trennzeichen
|
Rückgabewert
|
Gibt einen String mit den Eigenschaftswerten von expr der Objekte in objectList, getrennt mit delimiter, zurück, die conditionExpr entsprechen.
|
Beispiel
|
StrPropsIF(ME.Child,Len(TARGET.Code,)==4,TARGET.Code,';') |
"A:10;A:20" |
"A:110" und "A:120" werden nicht ausgegeben, da sie mehr als vier Zeichen haben.
|
ME ist hier ein Objekt, dessen [Untergeordnete Objekte] "A:10", "A:20", "A:110" und "A:120" sind.
|
GetPropertyDef( propertyID )
Die Funktion kann überladen und somit auch mit anderem Parameter genutzt werden: GetPropertyDef( code )
|
Variante 1 |
Variante 2
|
Parameter
|
propertyID |
Integer, Eigenschafts-ID |
code |
Eigenschaftsdefinitionscode
|
Rückgabewert
|
Eigenschaftsdefinitionsobjekt
|
GetClassDef( classID )
Die Funktion kann überladen und somit auch mit anderem Parameter genutzt werden: GetPropertyDef( code )
|
Variante 1 |
Variante 2
|
Parameter
|
classID |
Integer, Klassen-ID |
code |
Klassendefinitionscode
|
Rückgabewert
|
Klassendefinitionsobjekt
|
Hilfe Nummer: 741560