Bedingungen für Statuswechsel
Bedingungen, die einen Statuswechsel einschränken, können in diesem Reiter verwaltet werden (Abb. 1). In den Anwendungen werden die fehlgeschlagenen Bedingungen dann angezeigt, sobald ein Wechsel in diesen Status nicht möglich ist.
Bei den Bedingungen ist auf die korrekte Syntax zu achten! Wird hier nicht die korrekte Syntax genutzt, kommt es zu Fehlern.
Übersicht über die Operatoren inklusive Beispiele
Operator | Bezeichnung |
---|---|
== | gleich
|
!= | ungleich
|
<= | kleiner gleich
|
< | kleiner
|
>= | größer gleich
|
> | größer
|
CONTAINS | enthält
|
OR | oder
|
Übersicht über die Bedingungen inklusive Beispiele
Nachfolgend findet sich eine Übersicht über die Bedingungen. Diese können individuell miteinander kombiniert werden.
Bedingungen | Erläuterung |
---|---|
Projektbedingungen (Status ID) | |
| Die Status ID (status.identifier) muss gleich “10” sein |
| Die Status ID (status.identifier) muss kleiner als “20” sein |
| Die Status ID (status.identifier) muss entweder “10” oder “20” oder “30” sein |
| Die Status ID (status.identifier) muss entweder “10” oder “26” oder “90” oder “24” sein |
Projektbedingungen (Eigenschaften des Projektes) | |
| Der Händler (dealer_customer_id) und der Endkunde (client_ customer_id) müssen ausgewählt sein |
| Der Händler - Kontakt (dealer_contact_id) muss ausgewählt sein |
| Der Partner (partner_customer_id) muss ausgewählt sein |
| Das Fälligkeitsdatum (maturity_date) muss ausgefüllt sein |
| Die Zahlungsbedingung muss (billing_term_id) muss ausgewählt sein |
| Das gewünschte Lieferdatum (delivery_date) muss ausgewählt sein |
| Der Werksbeauftragte (responsible_user_id) muss ausgewählt sein |
| Die Versandsart (shipping_type_id) und die Versandsadresse (shipping_address_id) müssen ausgefüllt sein |
Projektbedingungen (Zugeordnete Objekte) | |
| Jede Konfiguration muss abgeschlossen sein |
| Jede Konfiguration muss gültig sein |
| Jede Konfiguration muss abgeschlossen sein |
| Jede Konfiguration muss gültig sein |
| In dem Projekt ist entweder keine oder nur eine Konfiguration hinterlegt |
| In dem Projekt muss es mindestens eine Konfiguration geben |
| In dem Projekt muss es mindestens eine Konfiguration geben, das Projekt darf nicht "leer" sein |
| Die gesetzte Preisliste muss aktiv sein |
| Die Region des Händlers (dealer_customer.region.key) muss mit der Projektregion (region.key) übereinstimmen |
| Die Kundennummer des gewählten Endkunden (client_customer.externalId) muss ausgefülllt sein |
Projektbedingungen (Dynamische Option) | |
| Der Grund für den Verlust des Auftrages muss angegeben werden |
| Wenn der Grund für den Verlust des Auftrages eine konkurrierende Technik ist, muss auch der Mitbewerber angegeben werden |
| Wenn der Grund des Verlust des Auftrages der Preis des Mitbewerbers ist, muss auch der Mitbewerber angegeben werden |
| Wenn der Grund für den Verlust des Auftrages darin besteht, dass Grimme keine passende Maschine hat, muss auch der Mitbewerber angegeben werden |
Benutzer Berechtigungen | |
| Der Benutzer muss die Berechtigung haben, ein Angebot zu bestätigen |
| Die aktive Gruppe des Benutzers muss entweder die Berechtigung “A” oder “B” oder “C” haben |
| Die aktive Gruppe des Benutzers muss die Berechtigung “A” haben |
Kombinationsmöglichkeiten (Praxisbeispiele) | |
| Die Lieferbedingung (delivery_term_id) und der Bestimmungsort für den Versand (shipping_location) müssen ausgefüllt sein |
| Entweder die Verkaufsart (usage_type_id) ist Endkundenmaschine (ID : 1) UND der Endkunde (client_customer_ id) ist ausgewählt - ODER - die Verwendungsart ist Lagermaschine (ID : 2) oder Vorführmaschine (ID : 3) |
| Entweder der Endkunde (client_customer_ id) ist nicht angegeben -ODER- die Verkaufsart (usage_type_id) ist nicht Lagermaschine (ID : 2) oder Vorführmaschine (ID : 3) |
| Entweder die Status ID (status.Identifier) ist gleich “10”, “20” oder “30” -ODER- der Benutzer hat die Berechtigung “A” |
| Entweder die Status ID (status.identifier) ist gleich “50” und der Benutzer hat die Berechtigung “A” -ODER- der Benutzer hat die Berechtigung “B” |
| Entweder der Händler-Kontakt (dealer_contact_id) oder der Partner-Kontakt (partner_contact_ id) muss ausgewählt sein -ODER- der Benutzer hat die Berechtigungen "A" und der Händler-Kontakt muss ausgewählt sein |
| Entweder der Benutzer hat die Berechtigung “A” und die Status ID (status.identifier) ist gleich “80” -ODER- die Status ID (status.identifier) ist kleiner als 54 |
Beispielhafte Übersicht über den Projektstatus
Beispiel für den Auftragstatus “Auftrag erteilt”
ID | Titel | Bedingungen | Nachricht |
---|---|---|---|
50 | Auftrag erteilt | status.identifier < 50
ALL configurations.isComplete == true
ALL configurations.isValid == true
userPermissions CONTAINS 'app_set_offer_confirmed' | Status zurücksetzen gesperrt
Alle Konfigurationen müssen vollständig sein!
Alle Konfigurationen müssen gültig sein
Berechtigung zur Auftragserteilung |
Ein Projekt kann nur auf den Status Auftrag erteilt gesetzt werden, wenn
Zeile 1: die ID des momentanen Status kleiner als 50 ist
Zeile 2: alle Konfigurationen vollständig sind
Zeile 3: alle Konfigurationen gültig sind
Zeile 4: der Benutzer die Berechtigung app_set_offer_confirmed (Angebot zum Auftrag zu machen) besitzt
Sind Bedingungen nicht erfüllt und der Benutzer wählt den Status in den Anwendungen aus, werden die Nachrichten der fehlgeschlagenen Bedingungen im Dialog angezeigt (Abb. 3).
Kann ein Statuswechsel nicht durchgeführt werden, werden die fehlgeschlagenen Bedingungen angezeigt. Die Nachrichten, welche dann in einem Dialog angezeigt werden, können im Bereich der Bedingungen verwaltet werden.