Eigenschaft: Unterschied zwischen den Versionen
Aus Asprova Hilfe
GK (Diskussion | Beiträge) (→SetPropsIF( objectList, conditionExpr, expr ): Neue Funktionen hinzugefügt) |
GK (Diskussion | Beiträge) K |
||
| Zeile 1: | Zeile 1: | ||
| − | {{DISPLAYTITLE:Eigenschaft & | + | {{DISPLAYTITLE:Eigenschaft & Klasse}} |
<div align="right">Hilfe Nummer: 741560</div> | <div align="right">Hilfe Nummer: 741560</div> | ||
<div align="right">[[Interne Funktionen]]</div> | <div align="right">[[Interne Funktionen]]</div> | ||
Version vom 20. Juni 2019, 16:34 Uhr
Hilfe Nummer: 741560
Interne Funktionen, die auf Eigenschaften angewendet werden können.
Inhaltsverzeichnis
- 1 Gültigkeit
- 2 Objekte
- 2.1 GetObjectName( obj )
- 2.2 DisplayStr( prop )
- 2.3 GetEnumName( prop )
- 2.4 ExpressionStr( prop, 0 )
- 2.5 SetProps( objectList, expr )
- 2.6 SetPropsIF( objectList, conditionExpr, expr )
- 2.7 StrProps( props, delimiter )
- 2.8 StrPropsIF( objectList, conditionExpr, expr, delimiter )
- 2.9 GetPropertyDef( propertyID )
- 2.10 GetClassDef( classID )
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. |
| ||
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 |
| |
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