Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

UI Button
colorturquoise
titleL

$IncDate([Datum][,+Tage][,+Monate]) 

Dadurch können zu einem Datum sowohl Tage als auch Monate addiert werden. 

Note
titleBitte beachten Sie:

"Tage" darf auch Null und negativ sein (negative Werte werden in Abzug gebracht) 

"Monate" darf auch Null und negativ sein (negative Werte werden in Abzug gebracht) 

Wird nur IncDate([Datum]) angegeben, so wird genau ein Tag zum Datum addiert.


$Calc(<Formel>,<Formatanweisung>,<Nachkommastellen>,<Dezimal Separator>,<Tausender Separator>)

Mit der Funktion $Calc() können Sie die verschiedensten Berechnungen durchführen.

Mit dieser Funktion können in Feldzuweisungen Zahlenwerte berechnet werden, wobei die vier Grundrechenarten (addieren +, subtrahieren - , multiplizieren * , dividieren /) verwendet werden können. (siehe auch Beispiel "Berechnen des Einzelgewichtes einer Vorgangsposition" im Kapitel: Regeln mit der Auswertungsposition "Vor dem Speichern (nach einer Neuanlage, Änderung oder beim Import)"

Es ergeben ich folgenden mögliche Werte:

  • <Formel>: String Ausdruck von Werten die berechnet werden +-*/  (Punkt-vor-Strich)
  • <Formatanweisung>: ohne Angabe: 'Betrag' ansonsten 'Menge', 'Gewicht' oder 'Format'
  • <Nachkommastellen>: Anzahl, wie viele Nachkommastellen verwendet werden, maximal: 9
  • <Dezimal Separator>: nur wirksam bei Formatanweisung: 'Format'. Hier wird der Dezimal Separator angegeben (nur ein Zeichen).
  • <Tausender Separator>: nur wirksam bei Formatanweisung: 'Format'. Hier wird der Tausender Separator angegeben (nur ein Zeichen).

Wird der Parameter Format ohne den Parameter <Tausender Separator> verwendet, erfolgt die Ausgabe ohne Tausender Trennzeichen.

Beispiele:

  • $Calc(«Vsd.Gew»*3,'',0)
    • In diesem Beispiel wird das im Versanddatensatz angegebene Gewicht mit der Zahl 3 multipliziert. Das Ergebnis wird kaufmännisch gerundet und ohne Nachkommastellen dargestellt.
  • $Calc(«Variable»+1.55,Format,4,') = 1234'1234
    • Freie Formatierung ohne Tausender Separator.
  • $Calc(«Variable»+1.55,Format,5,',",") = 1,234'12345
    • Freie Formatierung mit Tausender Separator.


    • Note
      titleBitte beachten Sie:

      Im letzten Beispiel ist der letzte Parameter ein , (Komma) womit es eigentlich einen weiteren Parameter darstellen würde. Um dennoch ein , (Komma) als Parameter übergeben zu können, wurde das , (Komma) durch zwei " separiert = ","



UI Button
colorturquoise
titleM

$Mid(string, start, anzahl)

In "string" werden ab "start" "anzahl" Zeichen zurückgegeben. 

Beispiel: 

$Mid(testen, 2, 3) 

Man erhält: est 

In "Testen" werden ab der 2. Position 3 Zeichen ausgegeben. 


UI Button
colorturquoise
titleL

Wie kann man in einer Artikelbezeichnung Text ersetzen? 

Funktionsaufbau: $Replace(Text,Suchtext,Ersetzungstext) 

In den Regeln kann mit dieser Funktion ein Wert in einem Feld ersetzt werden. 

Beispiel

In der Artikelbezeichnung soll der Wert "Auskünfte" gegen "Rückfragen oder eine Beratung" ersetzt werden. 

In der Regel für Artikel ist die Auswertungsposition "Suchen und Ersetzen" auszuwählen. Es sollte noch eine Bedingung hinterlegt werden, dass es nur die Artikel betrifft, welche in der Artikelbezeichnung 1 den Wert "Auskünfte" haben. Diese Formel könnte z.B. lauten: 

Pos('Auskünfte',ToText(«Art.Bez1»)) >0 

Anschließend ist eine Anweisung zu erstellen, welche das Feld "Bezeichnung1" enthält. 

In der Art der Feldzuweisung wird "Feldwert über Formel füllen" eingestellt. 

Als Vorgabewert wird folgende Formel hinterlegt: 

$Replace(«Art.Bez1»,Auskünfte,Rückfragen oder eine Beratung) 

Beachten Sie: Die Formatierung im Artikel-Text kann nicht beibehalten werden. 


UI Button
colorturquoise
titleM

Wie kann in einer Feldzuweisung mit einem Datum gerechnet werden? 

$IncDate(Datum,Wert) 

Es werden zum Datum die bei "Wert" angegebenen Tage addiert. 

Beispiel: 

Mit $IncDate(«Vsd.Dat»,2) werden auf das Versanddatum 2 Tage addiert. 

Wie kann in einem Vorgang ein frühester und spätester Liefertermin angegeben werden? 

In einer Vorgangsposition wird bei einem Artikel ein Lieferdatum hinterlegt. Da sich das Lieferdatum in einem Zeitraum von plus/minus einem Monat bewegt, wird hierfür ein Selektionsfeld für den frühesten Termin und ein Selektionsfeld für den spätesten Termin angelegt. Über eine Regel mit Feldzuweisung für Vorgangspositionen wird dieses Datum mittels folgenden Formeln ermittelt: 

Formel für den frühesten Termin: $IncDate(«VPo.LiefDat», ,-1) 

Formel für den spätesten Termin: $IncDate(«VPo.LiefDat», , 1) 

Wie kann man die Informationen aus den Selektionen des Ansprechpartners in die Positionen des Vorgangs übergeben? 

Möchte man mit der Regel-Erweiterung "Feldänderung während der Vorgangserfassung" (NE-1081) in ein Positionsselektionsfeld (Selektion 1) den Inhalt eines Selektionsfeldes (auch Selektion 1) aus dem Ansprechpartner der Rechnungsanschrift des Vorgangs eintragen lassen, so kann dies beispielsweise mit folgender Formel realisiert werden: 

$DBInfo(Ansprechpartner,IX;AdrNrAnsNrNa;3,«Vog.AdrNr»,«Vog.AnsNr»,«Vog.Re.Asp.Ansp»,Sel1) 

Beachten Sie: 

  • Es wird ein abweichender Index übergeben.
  • Der Name des Ansprechpartners muss eindeutig sein.


UI Button
colorturquoise
titleL

Soll eine $DBInfo-Formel in einer $IF-Abfrage mit einem String verglichen werden, muss die $DBInfo-Formel zwischen Hochkomma stehen.

Beispiel: 

Der Inhalt eines Vertreter-Selektionsfeldes soll abgefragt und mit einem Text verglichen werden: 

$if('$DBInfo(Vertreter,«Vog.VtrNr»,Sel1)' = 'bis 50% Rabatt' ,«VPo.ProvSz»,'')


UI Button
colorturquoise
titleXL

Wie lassen sich Reaktionszeiten in Abhängigkeit zu den Öffnungszeiten einer Firma berechnen?

$IncWhour()

Über die Funktion: $incWhour lässt sich die Zeit bestimmen, bis wann eine Reaktion in Abhängigkeit von Arbeitszeit und Feiertagen zu erwarten ist. So kann z. B. anhand des Erstelldatums eines Vorgang- oder Projekt-Datensatzes eine Reaktionszeit errechnet werden. 

Note
titleBeachten Sie:

Der Wert wird immer in der Einheit: "Stunden" interpretiert.

Besonderheiten bei der Eingabe der Stunden innerhalb der Formel

Die Anzahl der Stunden, welche auf einen Zeitpunkt addiert werden sollen, lassen sich wie folgt in der Formel erfassen:

  • Verwendung des mittels $IncWHour mitgegebenen Wertes mittels Komma-Trennzeichen: 1,0 = 1 Stunde
  • Verwendung des mittels $IncWHour mitgegebenen Wertes mit Tausender-Trennzeichen: 1.0 = 10 Stunden
Note
titleBeachten Sie:

Das Addieren von Stunden stellt die einfachste Methode dar, eine Reaktionszeit zu berechnen.

Weiterhin lassen sich die Stunden auch anteilig übergeben. Beachten Sie hierbei bitte, dass der übergebene Wert in Anführungszeichen zu übergeben ist, damit das Komma nicht als Parameter-Trennung interpretiert wird.

Beispiele:

  • $IncWHour(«Prj.ErstDat»,"0,5") für 0,5 Stunden (30 Minuten)
  • $IncWHour(«Prj.ErstDat»,"0,4") steht für 0,4 Stunden (60 x 0,4 = 24 Minuten)

Eingangs-Parameter und Ausgabe

  1. Startdatum mit der Zeitangabe, von welcher aus gerechnet wird
  2. Stunden, die berechnet werden sollen
  3. Optional kann auch die ID der zu beachtenden Öffnungs- und Arbeitszeiten-Tabelle angegeben werden - so kann z. B. nach Abteilungen unterschieden werden: Öffnungs- und Arbeitszeiten.
Code Block
IncWHour([Ausgangs Datum mit Uhrzeit im Format TT.MM.JJJJ SS:MM:SS], [Anzahl der Stunden], [Optional: ID der Öffnungszeit])

Rückgabe:

Code Block
Datum & Uhrzeit im Format TT.MM.JJJJ SS:MM:SS