Minimum-Maximum-Summe: Unterschied zwischen den Versionen

Aus Asprova Hilfe
Wechseln zu: Navigation, Suche
Zeile 1: Zeile 1:
 
{{DISPLAYTITLE:Minimum-Maximum-Summe}}
 
{{DISPLAYTITLE:Minimum-Maximum-Summe}}
 
<div align="right">Hilfe Nummer: 741570</div>
 
<div align="right">Hilfe Nummer: 741570</div>
+
<div align="right">[[Interne Funktionen]]</div>
<div align="right">[[Interne Funktionen|Interne Funktionen]]</div>
+
<div align="right">[[Formeleditor]]</div>
<div align="right">[[Formeleditor|Formeldialog]]</div>
 
 
<hr>
 
<hr>
Interne Funktionen, die mit Minimum/Maximum/Summe zusammenhängen.
 
  
 +
Asprova stellt Ihnen die folgenden Funktionen zum Ermitteln von Maximum, Minimum, Summe etc. zur Verfügung.
  
Max( Liste, Eigenschaft )
+
== Maximum ==
 
+
=== Max( list, prop ) ===
Parameter
+
{| class="wikitable"
 
+
|-
 
+
!rowspan="2"|Parameter
{|
+
|width="1px"|''list''||Klassenname oder Eigenschaft mit [Datentyp] "Objekt"
 +
|-
 +
|''prop''||Zieleigenschaft
 +
|-
 +
!Rückgabewert
 +
|colspan="2"|Gibt den maximalen Wert von ''prop'' in ''list'' zurück.
 +
|-
 +
!rowspan="4"|Beispiele
 +
|<code>Max('Order',TARGET.Qty)</code>||70
 +
|-
 +
|colspan="2"|
 +
{| class="wikitable
 
|-
 
|-
|   ||Liste||Klassenname|| 
+
|+ Auftragstabelle
 
|-
 
|-
||   ||Eigenschaft||Eigenschaft
+
!style="background: #3C78AE; color:white;"|Auftragscode
 +
!style="background: #3C78AE; color:white;"|Artikel
 +
!style="background: #3C78AE; color:white;"|Menge
 +
|- style="background: white"
 +
|01||Artikel A||align="right" style="background: #A1FFD0;"|50
 +
|- style="background: #DFEBF4;"
 +
|02||Artikel A||align="right" style="background: #A1FFD0;"|35
 +
|- style="background: white"
 +
|03||Artikel B||align="right" style="background: #A1FFD0; border-width: 2px; border-color: red;"|70
 
|-
 
|-
 
|}
 
|}
 
+
|-
Rückgabewert
+
|<code>Max(ME.Child,TARGET.Work_OperationProductionTime)</code>||180M
 
+
|-
 
+
|colspan="2"|<code>ME.Operation</code> ist hier Auftrag "01".
 
{|
 
{|
 
|-
 
|-
|   ||Maximalwert einer Eigenschaft in einer spezifischen Objektliste.||  
+
|style="background-color:#A1FFD0; border-style: solid; border-width: 1px; padding: 5px;"|01:10<br>2H
 +
|&#x2192;
 +
|style="background-color:#A1FFD0; border-style: solid; border-width: 2px; border-color: red; padding: 5px;"|01:20<br>3H
 +
|&#x2192;
 +
|style="background-color:#A1FFD0; border-style: solid; border-width: 1px; padding: 5px;"|01:30<br>2H
 +
|&#x2192;
 +
|style="background-color:#A1FFD0; border-style: solid; border-width: 1px; padding: 5px;"|01:40<br>1H
 +
|-
 +
|}
 
|-
 
|-
 
|}
 
|}
  
Beispiel
+
=== MaxIF( list, condition, prop ) ===
 
+
{| class="wikitable"
 
+
|-
{|
+
!rowspan="3"|Parameter
 +
|width="1px"|''list''||Klassenname oder Eigenschaft mit [Datentyp] "Objekt"
 +
|-
 +
|''condition''||Filterbedingung
 +
|-
 +
|''prop''||Zieleigenschaft
 +
|-
 +
!Rückgabewert
 +
|colspan="2"|Gibt den maximalen Wert von ''prop'' in ''list'' zurück, solange ''condition'' erfüllt wird.
 +
|-
 +
!rowspan="4"|Beispiele
 +
|<code>MaxIF('Order',TARGET.Item=='Artikel A',TARGET.Qty)</code>||50
 +
|-
 +
|colspan="2"|
 +
{| class="wikitable
 +
|-
 +
|+ Auftragstabelle
 
|-
 
|-
|   ||Max('Order', Target.'Order quantity') -> 50<br /><br />Es existieren drei Einträge in der Tabelle. Das Maximum (50) der Auftragsmenge wird ausgegeben.||  
+
!style="background: #3C78AE; color:white;"|Auftragscode
 +
!style="background: #3C78AE; color:white;"|Artikel
 +
!style="background: #3C78AE; color:white;"|Menge
 +
|- style="background: white"
 +
|01||Artikel A||align="right" style="background: #A1FFD0; border-width: 2px; border-color: red;"|50
 +
|- style="background: #DFEBF4;"
 +
|02||Artikel A||align="right" style="background: #A1FFD0;"|35
 +
|- style="background: white"
 +
|03||Artikel B||align="right" style="background: #A1FFD0;"|70
 
|-
 
|-
 
|}
 
|}
 
+
|-
 
+
|<code>MaxIF(ME.Child,TARGET.Work_OperationProcNo>=30,TARGET.Work_OperationProductionTime)</code>||120M
[[Image:incodefunc-max01.jpg]]
+
|-
 
+
|colspan="2"|<code>ME.Operation</code> ist hier Auftrag "01".
 
{|
 
{|
 
|-
 
|-
|   ||Max(ME.Child,TARGET.Work_OperationProductionTime) -> 10800<br /><br />ME.Child ist der Auftrag und 1080 Sekunden die minimale Produktionszeit der Vorganges, welcher dem Auftrag angehört.||  
+
|style="background-color:#A1FFD0; border-style: solid; border-width: 1px; padding: 5px;"|01:10<br>2H
 +
|&#x2192;
 +
|style="background-color:#A1FFD0; border-style: solid; border-width: 1px;padding: 5px;"|01:20<br>3H
 +
|&#x2192;
 +
|style="background-color:#A1FFD0; border-style: solid; border-width: 2px; border-color: red;  padding: 5px;"|01:30<br>2H
 +
|&#x2192;
 +
|style="background-color:#A1FFD0; border-style: solid; border-width: 1px; padding: 5px;"|01:40<br>1H
 +
|-
 +
|}
 
|-
 
|-
 
|}
 
|}
  
  
[[Image:incodefunc-max02.jpg]]
+
=== MaxValue( value1, value2 ) ===
&nbsp;
+
{| class="wikitable"
 
+
|-
MaxIF( Liste, Bedingung, Eigenschaft )
+
!rowspan="2"|Parameter
 
+
|width="1px"|''value1''||Erster Vergleichswert
Parameter
+
|-
 
+
|''value2''||Zweiter Vergleichswert
 
+
|-
{|
+
!Rückgabewert
 +
|colspan="2"|Gibt den größeren Wert von ''value1'' und ''value2'' zurück.
 +
|-
 +
!rowspan="15"|Beispiele
 +
|<code>MaxValue(1.2,3.4)</code>||3.4
 +
|-
 +
|colspan="2"|Bei Zahlen wird direkt verglichen welche größer ist.
 +
|-
 +
|<code>MaxValue('ab','cd')</code>||"cd"
 +
|-
 +
|<code>MaxValue('Ab','cd')</code>||"Ab"
 +
|-
 +
|colspan="2"|Strings werden lexikographisch (Großbuchstaben vor Kleinbuchstaben) ausgewertet.
 +
|-
 +
|<code>MaxValue(#2020/01/01#,#2021/01/01#)</code>||01/01/2021
 +
|-
 +
|colspan="2"|Spätere Daten haben den größeren Wert.
 
|-
 
|-
|   ||Liste||Klassenname oder eine Eigenschaft vom Typ Objekt|| 
+
|<code>MaxValue(TRUE,FALSE)</code>||TRUE
 
|-
 
|-
||   ||Bedingung||Bedingung zum Filtern der Liste
+
|colspan="2"|TRUE wird als größer als FALSE angesehen.
 
|-
 
|-
||   ||Eigenshaft||Zieleigenschaft
+
|<code>MaxValue(RGB(12,34,56),RGB(98,76,54))</code>||RGB(98,76,54)
 
|-
 
|-
|}
+
|colspan="2"|Bei Farben werden die numerischen Werte in der Reihenfolge "R", "G" und "B" verglichen.
 
 
Rückgabewert
 
 
 
 
 
{|
 
 
|-
 
|-
|   ||Gibt den maximalen Wert der spezifizierten Eigenschaften für Objekte der Liste aus und erfüllt die hinterlegte Bedingung.||  
+
|<code>MaxValue(''<Eigenschaft ohne Wert>'',123)</code>||123
 
|-
 
|-
|}
+
|<code>MaxValue(123,''<Eigenschaft ohne Wert>'')</code>||123
 
 
Beispiel
 
 
 
 
 
{|
 
 
|-
 
|-
|   ||MaxIF('Auftrag',TARGET.Item=='ProduktA',TARGET.'Auftragsmenge') -> 50<br /><br />Es existieren drei Einträge in der Auftragstabelle. Gibt die maximale Auftragsmenge (50) von ProduktA aus.||  
+
|<span style="white-space: nowrap;"><code>MaxValue(''<Eigenschaft ohne Wert>'',''<Eigenschaft ohne Wert>'')</code></span>||''kein Wert''
 
|-
 
|-
|}
+
|colspan="2"|Enthält einer der Parameter keinen Wert, so wird der andere Wert zurückgegeben.
 
 
 
 
[[Image:incodefunc-maxif01.jpg]]
 
 
 
{|
 
 
|-
 
|-
|   ||MaxIF(ME.Child,TARGET.Work_OperationProcNo>=30,TARGET.Work_OperationProductionTime) -> 7200<br /><br />ME.Child ist der Auftrag. Gibt die maximale Produktionszeit (7200s) der Vorgänge, deren Prozessnummer größer oder gleich 30 ist, aus.|| 
+
!Hinweise
 +
|colspan="2"|
 +
* ''value1'' und ''value2'' können vertauscht werden, ohne dass sich der Rückgabewert ändert.
 +
* Haben ''value1'' und ''value2'' unterschiedliche Datentypen, so ist der Rückgabewert nicht definiert.
 
|-
 
|-
 
|}
 
|}
 
 
[[Image:incodefunc-maxif02.jpg]]
 
&nbsp;
 
  
 
Min( Objekt, Eigenschaft )
 
Min( Objekt, Eigenschaft )

Version vom 15. Januar 2019, 22:25 Uhr

Hilfe Nummer: 741570
Interne Funktionen
Formeleditor

Asprova stellt Ihnen die folgenden Funktionen zum Ermitteln von Maximum, Minimum, Summe etc. zur Verfügung.

Maximum

Max( list, prop )

Parameter list Klassenname oder Eigenschaft mit [Datentyp] "Objekt"
prop Zieleigenschaft
Rückgabewert Gibt den maximalen Wert von prop in list zurück.
Beispiele Max('Order',TARGET.Qty) 70
Auftragstabelle
Auftragscode Artikel Menge
01 Artikel A 50
02 Artikel A 35
03 Artikel B 70
Max(ME.Child,TARGET.Work_OperationProductionTime) 180M
ME.Operation ist hier Auftrag "01".
01:10
2H
01:20
3H
01:30
2H
01:40
1H

MaxIF( list, condition, prop )

Parameter list Klassenname oder Eigenschaft mit [Datentyp] "Objekt"
condition Filterbedingung
prop Zieleigenschaft
Rückgabewert Gibt den maximalen Wert von prop in list zurück, solange condition erfüllt wird.
Beispiele MaxIF('Order',TARGET.Item=='Artikel A',TARGET.Qty) 50
Auftragstabelle
Auftragscode Artikel Menge
01 Artikel A 50
02 Artikel A 35
03 Artikel B 70
MaxIF(ME.Child,TARGET.Work_OperationProcNo>=30,TARGET.Work_OperationProductionTime) 120M
ME.Operation ist hier Auftrag "01".
01:10
2H
01:20
3H
01:30
2H
01:40
1H


MaxValue( value1, value2 )

Parameter value1 Erster Vergleichswert
value2 Zweiter Vergleichswert
Rückgabewert Gibt den größeren Wert von value1 und value2 zurück.
Beispiele MaxValue(1.2,3.4) 3.4
Bei Zahlen wird direkt verglichen welche größer ist.
MaxValue('ab','cd') "cd"
MaxValue('Ab','cd') "Ab"
Strings werden lexikographisch (Großbuchstaben vor Kleinbuchstaben) ausgewertet.
MaxValue(#2020/01/01#,#2021/01/01#) 01/01/2021
Spätere Daten haben den größeren Wert.
MaxValue(TRUE,FALSE) TRUE
TRUE wird als größer als FALSE angesehen.
MaxValue(RGB(12,34,56),RGB(98,76,54)) RGB(98,76,54)
Bei Farben werden die numerischen Werte in der Reihenfolge "R", "G" und "B" verglichen.
MaxValue(<Eigenschaft ohne Wert>,123) 123
MaxValue(123,<Eigenschaft ohne Wert>) 123
MaxValue(<Eigenschaft ohne Wert>,<Eigenschaft ohne Wert>) kein Wert
Enthält einer der Parameter keinen Wert, so wird der andere Wert zurückgegeben.
Hinweise
  • value1 und value2 können vertauscht werden, ohne dass sich der Rückgabewert ändert.
  • Haben value1 und value2 unterschiedliche Datentypen, so ist der Rückgabewert nicht definiert.

Min( Objekt, Eigenschaft )

Parameter


Liste Klassenname
Eigenschaft Eigenschaft

Rückgabewert


Gibt den Minimalwert einer Eigenschaft in einer hinterlegten Objektliste aus.

Beispiel


Min('Auftrag', Target.'Auftragsmenge') -> 20

Es existieren drei Einträge in der Auftragstabelle. Gibt die minimale Auftragsmenge (20) in der Auftragsliste aus.


Datei:Incodefunc-min01.jpg

Min(ME.Child,TARGET.Work_OperationProductionTime) -> 3600

ME.Child ist der Auftrag. Gibt die minimale Produktionszeit (3600s) in der Auftragsliste wieder.


Datei:Incodefunc-min02.jpg  

MinIF( Liste, Bedingung, Eigenschaft )

Parameter


Liste Klassenname
Bedingung Bedingung zum Filtern der Liste
Eigenshaft Eigenschaft

Rückgabewert


Gibt den minimalen Wert der spezifizierten Eigenschaften für Objekte der Liste, unter Berücksichtigung der Bedingungen, aus.

Beispiel


MinIF('Auftrag',TARGET.Item=='ProduktA',TARGET.'Auftragsmenge') -> 35

Es existieren drei Einträge in der Auftragstabelle. Gibt den minimalen Wert der Auftragsmenge (35) in der Auftragsliste wieder, dessen Artikel "ProduktA" lautet.


Datei:Incodefunc-minif01.jpg

MinIF(ME.Child,TARGET.Work_OperationProcNo>=30,TARGET.Work_OperationProductionTime) -> 3600

ME.Child ist der Auftrag. Gibt die minimale Produktionszeit (3600s) der Vorgänge der Aufträge aus, deren Prozessnummer größer oder gleich 30 ist.


Datei:Incodefunc-minif02.jpg  

Sum( Liste, Eigenschaft )

Parameter


Liste Klassenname oder eine Objekttyp-Eigenschaft
Eigenschaft Zieleigenschaft

Rückgabewert


Gibt die Summe der Werte einer hinterlegten Eigenschaft für Objekte einer Liste aus.

Beispiel


Sum('Auftrag', Target.'Auftragsmenge') -> 105

Es existieren drei Einträge in der Auftragstabelle. Gibt die gesamte Anzahl (105) der Aufträge wieder.


Datei:Incodefunc-sum01.jpg

Sum(ME.Child,TARGET.Work_OperationProductionTime) -> 28800

ME.Child ist Auftrag. Gibt die Produktionszeit des Vorganges (28800s) (vom Auftrag) wieder.


Datei:Incodefunc-sum02.jpg  

SumIF( Liste, Bedingung, Eigenschaft )

Parameter


Liste Klassenname oder Objektliste
Bedingung Bedingung zum Filtern der Liste
Eigenshaft Eigenschaft

Rückgabewert


Gibt die Summe der Werte hinterlegter Eigenschaften für Objekte einer Liste, unter Berücksichtigung von Bedingungen, aus.

Beispiel


SumIF('Auftragr',TARGET.Item=='ProduktA',TARGET.'Auftragsmenge') -> 85

Es existieren drei Einträge in der Auftragtabelle. Gibt die gesamte Auftragsmenge der Aufträge, deren Artikel "ProduktA" ist, aus.


Datei:Incodefunc-sumif01.jpg

SumIF(ME.Child,TARGET.Work_OperationProcNo>=30,TARGET.Work_OperationProductionTime) -> 10800

ME.Child ist der Auftrag. Gibt die gesamte Produktionszeit (10800s) der Vorgänge aus, deren Prozessnummer größer oder gleich 30 ist.


Datei:Incodefunc-sumif02.jpg  

Product( Liste, Eigenschaft )

Parameter


Liste Objektklassenname (String) oder Objektliste
Eigenschaft Objekteigenschaft

Rückgabewert


Gibt den multiplizierten Wert hinterlegter Eigenschaften in Objektlisten wieder.

Beispiel


ProductIF( Liste, Bedingung, Eigenschaft )

Parameter


Liste Objektklassenname (String) oder Objektliste
Bedingung Filterformel
Eigenschaft Objekteigenschaft

Rückgabewert


Gibt den multiplizierten Wert in hinterlegten Eigenschaften in gefilterten Objektlisten wieder.

Beispiel


Equal( Eigenschaft )

Parameter


Eigenschaft Zieleigenschaft

Rückgabewert


Vergleich mit der Zieleigenschft; gibt WAHR bei Übereinstimmung, und FALSCH bei Abweichung, aus.

Beispiel


Equal(ME.Order.Customer)

Verbindet Aufträge mit dem gleichen Ausdruck ME.Order.Costumer. Auftrag 01 und Auftrag 02 haben den gleichen KundenA. Der Kunde des Auftrages 03 ist abweichend (KundeB).


Datei:Incodefunc-equal01.jpg

Hinweise


Diese Funktion kann lediglich in den Verknüpfungseigenschaften der Artikelklasse verwendet werden. Equal(Me.Order.Customer) hat die gleiche Bedeutung wie ME.Order.Customer == Other.Order.Customer.



Hilfe Nummer: 741570