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.
Abbildung 1: Projektstatus Bedingungen bearbeiten
Verfügbare Operatoren inklusive Beispiele:
Operator | Bezeichnung |
---|---|
== | gleich
|
!= | ungleich
|
<= | kleiner gleich
|
< | kleiner
|
>= | größer gleich
|
> | größer
|
CONTAINS | enthält
|
OR | oder
|
Beispiele von Bedingungen
Beispiel 1
In den nachfolgenden Beispielen müssen alle Bedingungen (Zeilen) erfüllt werden (true zurück liefern), damit ein Statuswechsel erfolgen kann.
ID | Titel | Bedingungen | Nachricht |
---|---|---|---|
10 | Projekt erzeugt | status.identifier == 10 | Status gesperrt |
Ein Projekt kann auf Projekt erzeugt gesetzt werden, wenn
Zeile 1: der momentane Status Projekt erzeugt (id:10) ist. Ansonsten wird dem Benutzer die Nachricht “Status gesperrt” in einem Dialog angezeigt.
Dieses Beispiel trifft in den Anwendungen immer bei Projekt Neuanlage zu, da die Anwendungen bei Neuanlage immer automatisch den Status auf Projekt erzeugt (id:10) setzen.
Wird danach ein Statuswechsel durchgeführt, kann der Benutzer nie mehr in den Status Projekt erzeugt wechseln, weil die ID sich dann verändert hat. Die Bedingung beim Status Projekt erzeugt gibt allerdings vor, dass die ID 1 sein muss.
Beispiel 2
ID | Titel | Bedingungen | Nachricht |
---|---|---|---|
30 | Angebot abgegeben | status.identifier < 30 ALL configurations.isComplete == true | Status zurücksetzen gesperrt Alle Konfigurationen müssen vollständig sein |
Ein Projekt kann nur auf Angebot abgegeben gesetzt werden, wenn
Zeile 1: die ID des momentane Status kleiner als 30 ist
Zeile 2: alle Konfigurationen vollständig sind
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. 2).
Beispiel 3
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 momentane 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).
Beispiel 4
ID | Titel | Bedingungen | Nachricht |
---|---|---|---|
44 | Angebot aus Bestand bedient | userPermissions CONTAINS 'sendmail_dealer_admin' OR userPermissions CONTAINS 'sendmail_dealer_sales' OR userPermissions CONTAINS 'sendmail_territory_manager' | Berechtigung Angebot aus Bestand bedient |
Ein Projekt kann nur auf den Status Angebot aus Bestand bedient gesetzt werden, wenn
Zeile 1: Der Benutzer besitzt eine der folgenden Berechtigungen: "sendmail_dealer_admin" ODER "sendmail_dealer_sales" ODER "sendmail_territory_manager"
Sind Bedingungen nicht erfüllt und der Benutzer wählt den Status in den Anwendungen aus, wird ebenfalls ein Dialog in den Anwendungen angezeigt, mit den Bedingungen, welche nicht erfüllt sind.
Felder für Bedingungen
Nachfolgend sind die zur Verfügung stehenden Felder, welche in den Bedingungen genutzt werden können, aufgezeigt.
Je nach Hersteller werden nicht alle Felder in den Anwendungen genutzt.
Felder | Beschreibung |
---|---|
delivery_text | Anmerkung an den Krone Innendienst |
order_ref | IDOC-Nummer |
external_ref | Externe Bestellnummer |
item_ref | Opportunity ID |
Bedingungen für den 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.
Verfügbare Operatoren inklusive Beispiele
Operator | Bezeichnung |
---|---|
== | gleich
|
!= | ungleich
|
<= | kleiner gleich
|
< | kleiner
|
>= | größer gleich
|
> | größer
|
CONTAINS | enthält
|
OR | oder
|
Übersicht über die Bedingungen
Bedingungen | Erläuterung |
---|---|
Status | |
| Der “status.identifier” (Status ID) muss gleich “10” sein |
| Der “status.identifier” (Status ID) muss kleiner als “20” sein |
| Der “status.identifier” (Status ID) muss entweder “10”, “20” oder “30” sein |
| Der “status.identifier” (Status ID) muss entweder “10” oder “26” oder “90” oder “24” sein |
| Das Feld für das “maturity_date” (Fälligkeitsdatum im Projekt) muss gesetzt sein |
| Das Feld für “client_customer.externalId” (Kundennummer des gewählten Endkunden) muss gesetzt sein |
| Die “dealer_customer_id” (Händler) und die “client_ customer_id” (Endkunde) müssen gesetzt sein |
Verbinden und Überschrift | |
| Der Grund für den Verlust des Auftrages liegt nicht am Preis des Konkurrenten oder das Feld “order.option.competitor” muss gesetzt sein (ein Konkurrent ist im System hinterlegt) |
| Die “pricelist” (Preisliste) ist aktiviert |
| 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 mehr als eine Konfiguration geben |
| In dem Projekt muss es mindestens eine Konfiguration geben, das Projekt darf nicht "leer" sein |
| Entweder die Anzahl der Elemente in “configurations” ist “1” oder die Anzahl der Elemente in “sortedManualPositions” ist größer als 0 |
Benutzer Berechtigungen | |
| Der Benutzer muss die Berechtigung haben, ein Angebot zu bestätigen |
| Der Benutzer muss die Berechtigung haben entweder den "basic_partner" oder den "dealer_admin" oder den "dealer_sales" zu bearbeiten |
| Der Benutzer hat nicht die Berechtigung, “app_allow_forward_basic_partner_orders”(bestimmte Aufträge weiterzuleiten) und es in dem Feld ist entweder eine “dealer_contact_id” oder eine “partner_contact_id” gesetzt. |
| Die Region des Kundenhändlers muss mit der Schlüsselregion übereinstimmen |
| Die “usage_type_id” muss entweder “2” oder “3” sein und das Feld für die “client_customer_ id” muss gesetzt sein |
| Die “usage_type_id” ist "1" und das Feld für die “client_customer_ id” ist gesetzt oder die “usage_type_id” ist "2", oder die “usage_type_id” ist "3". |
| Entweder gibt es keinen Wert für die “client_customer_ id” oder die “usage_type_id” ist nicht "2" oder "3" |
| Der “status.Identifier” (Status ID) ist gleich “10”, “20” oder “30” oder der Benutzer hat die Berechtigung “cust_app_set_ each_offer_confirmed” |
| Der “status.identifier” (Status ID) ist gleich “50” und der Benutzer hat entweder die Berechtigung “app_set_offer_lost” oder “Cust_app_set_each_offer_lost” |
Felder für Bedingungen
Nachfolgend sind die zur Verfügung stehenden Felder, welche in den Bedingungen genutzt werden können, aufgezeigt.
Je nach Hersteller werden nicht alle Felder in den Anwendungen genutzt.
Felder | Beschreibung |
---|---|
delivery_text | Anmerkung an den Krone Innendienst |
order_ref | IDOC-Nummer |
external_ref | Externe Bestellnummer |
item_ref | Opportunity ID |
Beispiel
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 momentane 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. 2).
Kopie der tabelle
Bedingungen | Erläuterung |
---|---|
| Der “Status Identifier” (Status ID) muss gleich “10” sein |
| Der “Status Identifier” (Status ID) muss kleiner als “20” sein |
| Der “Status Identifier” (Status ID) muss “10” oder “26” oder “90” oder“24” entsprechen |
| Das Feld für das “Maturity Date” (Fälligkeitsdatum) muss gesetzt sein |
| Die “Dealer Customer ID” und die “Client Customer ID” müssen gesetzt sein |
| Die Felder für die “Shipping type ID” (Versandstyp ID) und die die “Shipping address ID” (Versandsadresse) müssen gesetzt sein |
| Das Feld für die “Dealer Kontakt ID” muss gesetzt sein |
| Das Feld für den Grund für den Verlust des Auftrages darf nicht leer sein |
| Das Feld für das “Delivery Date”(Lieferdatum) muss gesetzt sein |
| Das Feld für die “Billig Term ID” (Rechnungs ID) muss gesetzt sein |
| Das Feld für die “Responsible User ID”(verantwortlicher Benutzer) muss gesetzt sein |
| Das Feld für die “Partner Customer ID”(Kundenpartner ID) muss gesetzt sein |
| Die Felder für die “Delivery term ID” (Lieferbedingungs ID) und die “Shopping Location” (Lieferort) müssen gesetzt sein |
| Jede Konfiguration muss abgeschlossen sein |
| Jede Konfiguration muss gültig sein |
| Der Grund für den Verlust des Auftrages liegt nicht am Preis des Konkurrenten oder das Feld “Order Option Competitor” muss gesetzt sein (ein Konkurrent ist im System hinterlegt) |
| Der Grund für den Verlust des Auftrages liegt nicht an der “Competitor technique” (Technik des Konkurrenten) oder das Feld “Order Option Competitor” muss gesetzt sein (ein Konkurrent ist im System hinterlegt) |
| Der Grund für den Verlust des Auftrages liegt nicht an der “Competitor comparison”(Vergleich mit dem Konkurrenten) oder das Feld “Order Option Competitor” muss gesetzt sein (ein Konkurrent ist im System hinterlegt) |
| Der Grund für den Verlust des Auftrages liegt nicht daran, dass Grimme kein Angebot gemacht hat oder das Feld “Order Option Competitor” muss gesetzt sein (ein Konkurrent ist im System hinterlegt) |
| In dem Projekt muss es mehr als eine Konfiguration geben, das Projekt darf nicht "leer" sein |
| Der Benutzer muss die Berechtigung haben, ein Angebot zu bestätigen |
| Der Benutzer muss die Berechtigung haben, eine E-Mail an den “Basic Partner” zu verschicken |
| Der Benutzer muss die Berechtigung haben entweder den "Basic Partner" oder den "Dealer Admin" oder den "Dealer Sales" zu bearbeiten |
| Der Benutzer hat nicht die Berechtigung, Partneraufträge weiterzuleiten und es ist entweder eine “Dealer Kontakt ID” oder eine “Partner Kontakt ID” vorhanden. |
| Die Region des Kundenhändlers muss mit der Schlüsselregion übereinstimmen |
| Die “Usage type ID” muss entweder “2” oder “3” sein und das Feld für die “client customer ID” muss gesetzt sein |
| Die “Usage type ID” ist "1" und das Feld für die “Client Customer ID” ist gesetzt oder die “Usage type ID” ist "2", oder die “Usage type ID” ist "3". |
| Entweder gibt es keinen Wert für die “client customer ID”, oder die “Usage type ID” ist nicht "2" oder "3" |
| Der “Status Identifier” (Status ID) muss gleich “10”, “20” oder “30” sein |
| Das Feld für “Client Customer ID” muss gesetzt sein |
| Jede Konfiguration muss abgeschlossen sein |
| Jede Konfiguration muss gültig sein |
| In dem Projekt muss es mehr als eine Konfiguration geben, das Projekt darf nicht "leer" sein |
| Der “Status Identifier” (Status ID) ist gleich “10”, “20” oder “30” oder der Benutzer hat die Berechtigung “cust app set each offer confirmed” |
| Die “pricelist” (Preisliste) ist aktiviert |
| Entweder die Anzahl der Elemente in “configurations” ist “1” oder die Anzahl der Elemente in “sortedManualPositions” ist größer als 0 (es sind also ein oder mehrere Elemente vorhanden. |
| Es wird überprüft, ob die Sammlung “configurations" entweder keinElement oder nur ein Element enthält |
| |
Add Comment