...
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.
Info |
---|
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
status.identifier == 10
...
!=
...
ungleich
status.identifier != 20
...
<=
...
kleiner gleich
status.identifier <= 30
...
<
...
kleiner
status.identifier < 40
...
>=
...
größer gleich
status.identifier >= 50
...
>
...
größer
status.identifier > 60
...
CONTAINS
...
enthält
userPermissions CONTAINS 'app_set_order_confirmed'
...
OR
...
oder
userPermissions CONTAINS 'sendmail_dealer_admin' OR userPermissions CONTAINS 'sendmail_dealer_sales'
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
...
Code Block |
---|
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.
Info |
---|
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. |
Note |
---|
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
...
Code Block |
---|
status.identifier < 30
ALL configurations.isComplete == true |
...
Code Block |
---|
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
Info |
---|
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). |
[{"content":{"version":1,"type":"doc","content":[{"type":"paragraph","content":[]},{"type":"paragraph","content":[{"type":"text","text":"In diesem Beispiel wählt der Benutzer den Status “Angebot abgegeben“ aus. Da aber nicht alle Bedingungen erfüllt sind, kann ein Statuswechsel nicht erfolgen und die Nachricht der fehlgeschlagenen Bedingung wird angezeigt."}]},{"type":"paragraph","content":[{"type":"inlineExtension","attrs":{"extensionType":"com.atlassian.confluence.macro.core","extensionKey":"media-card","parameters":{"id":"1a062085-5eef-44fd-bfd4-97158f9ec14a","type":"image/png","name":"Abbildung 2: Dialog der fehlgeschlagenen Bedingungen SalesApp 2.png","src":"https://braindata.atlassian.net/wiki/download/attachments/1225064449/Abbildung%202:%20Dialog%20der%20fehlgeschlagenen%20Bedingungen%20SalesApp%202.png?version=1&modificationDate=1615454296015&cacheVersion=1&api=v2"}}},{"type":"text","text":"Abbildung 2: Dialog der fehlgeschlagenen Bedingungen","marks":[{"type":"textColor","attrs":{"color":"#97a0af"}},{"type":"subsup","attrs":{"type":"sub"}}]}]}]},"id":"41aaf378-d150-42a8-944a-09b59bba661e","label":"SalesApp","type":"tab"},{"content":{"version":1,"type":"doc","content":[{"type":"paragraph","content":[]},{"type":"paragraph","content":[{"type":"text","text":"In diesem Beispiel wählt der Benutzer den Status “Angebot abgegeben“ aus. Da aber nicht alle Bedingungen erfüllt sind, kann ein Statuswechsel nicht erfolgen und die Nachricht der fehlgeschlagenen Bedingung wird angezeigt."}]},{"type":"paragraph","content":[{"type":"inlineExtension","attrs":{"extensionType":"com.atlassian.confluence.macro.core","extensionKey":"media-card","parameters":{"id":"5a1145ba-ff56-4457-b467-54785354cd8f","type":"image/png","name":"Abbildung 2: Dialog der fehlgeschlagenen Bedingungen WebApp 2.png","src":"https://braindata.atlassian.net/wiki/download/attachments/1225064449/Abbildung%202:%20Dialog%20der%20fehlgeschlagenen%20Bedingungen%20WebApp%202.png?version=1&modificationDate=1615454355328&cacheVersion=1&api=v2"}}},{"type":"text","text":"Abbildung 2: Dialog der fehlgeschlagenen Bedingungen","marks":[{"type":"textColor","attrs":{"color":"#97a0af"}},{"type":"subsupBedingungen, 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. Tabs
Info |
---|
Bei den Bedingungen ist auf die korrekte Syntax zu achten! Wird hier nicht die korrekte Syntax genutzt, kommt es zu Fehlern. |
Tabs | ||||
---|---|---|---|---|
| ||||
[{"content":{"version":1,"type":"doc","content":[{"type":"mediaSingle","attrs":{"layout":"center"},"content":[{"type":"media","attrs":{"type":"external","width":2040,"height":1058,"url":"https://braindata.atlassian.net/wiki/download/attachments/1225064449/Bildschirmfoto%202024-09-06%20um%2014.50.11.png?version=1&modificationDate=1725627168600&cacheVersion=1&api=v2"}}]},{"type":"paragraph","content":[{"type":"text","text":"Abbildung 1: Projektstatus Bedingungen bearbeiten","marks":[{"type":"textColor","attrs":{"color":"#97a0af"}},{"type":"subsup","attrs":{"type":"sub"}}]}]}]},"id":"74b8a133-e5e2-41b4-83e5-4b7d98d6c4e9","label":"Backend (PIA)","type":"tab"}] |
Ü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
Tabs | ||
---|---|---|
|
...
|
...
|
...
|
...
|
...
|
...
Beispiel 3
...
ID
...
Titel
...
Bedingungen
...
Nachricht
...
50
...
Auftrag erteilt
...
Code Block |
---|
status.identifier < 50
ALL configurations.isComplete == true
ALL configurations.isValid == true
userPermissions CONTAINS 'app_set_offer_confirmed' |
...
Code Block |
---|
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
Info |
---|
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). |
...
| |||
[{"content":{"version":1,"type":"doc","content":[{"type":"mediaSingle","attrs":{"layout":"center"},"content":[{"type":"media","attrs":{"type":"external","width":1228,"height":1386,"url":"https://braindata.atlassian.net/wiki/download/attachments/1225064449/ |
...
%C3%9Cbersicht%20%C3%BCber%20alle%20IDS.png?version=1&modificationDate= |
...
1725629708138&cacheVersion=1&api=v2"}}]},{"type":"paragraph","content":[{"type":"text","text":"Abbildung |
...
2: |
...
Überblick |
...
über |
...
Status |
...
Identifier","marks":[{"type":"textColor","attrs":{"color":"#97a0af"}},{"type":"subsup","attrs":{"type":"sub"}}]}]}]},"id":" |
...
454c9d18- |
...
9eb5- |
...
47bb- |
...
8c2f- |
...
56661d0cd6ba","label":" |
...
Backend (PIA)","type":"tab"} |
...
Beispiel 4
...
ID
...
Titel
...
Bedingungen
...
Nachricht
...
44
...
Angebot aus Bestand bedient
...
Code Block |
---|
userPermissions CONTAINS 'sendmail_dealer_admin' OR userPermissions CONTAINS 'sendmail_dealer_sales' OR userPermissions CONTAINS 'sendmail_territory_manager' |
...
Code Block |
---|
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"
Info |
---|
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.
Info |
---|
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.
Info |
---|
Bei den Bedingungen ist auf die korrekte Syntax zu achten! Wird hier nicht die korrekte Syntax genutzt, kommt es zu Fehlern. |
Tabs | |
---|---|
data | [{"content":{"version":1,"type":"doc","content":[{"type":"mediaSingle","attrs":{"layout":"center"},"content":[{"type":"media] |
...
Beispiel für den Auftragstatus “Auftrag erteilt”
ID | Titel | Bedingungen | Nachricht | ||||
---|---|---|---|---|---|---|---|
50 | Auftrag erteilt |
|
|
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
Info |
---|
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). |
Tabs | ||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| [{"content":{"version":1,"type":"doc","content":[
| mediaSingle
| attrs
| {
| layout":"center"},"content
| media
| type
| external
| width
| 2040
| height
| 1058,
| url
| https://braindata.atlassian.net/wiki/download/attachments/1225064449/Bildschirmfoto%202024-09-06%20um%2014.50.11.png?version=1&modificationDate=1725627168600&cacheVersion=1&api=v2
| {
| type
| paragraph","content":[{
| text","text
| Abbildung 1: Projektstatus Bedingungen bearbeiten","marks":[{
| |||||||||||||||||||||||||
[{"content":{"version":1,"type":"textColordoc","attrscontent":[{"colortype":"#97a0af"}}paragraph","content":[]},{"type":"subsupparagraph","attrscontent":[{"type":"sub"}}]}]}]},"inlineExtension","attrs":{"extensionType":"com.atlassian.confluence.macro.core","extensionKey":"media-card","parameters":{"id":"74b8a13331854b2a-e5e2fb5d-41b449e6-83e5bc05-4b7d98d6c4e9f93f0c7e4fd5","labeltype":"Backend (PIA)image/png","type":"tab"}] |
Verfügbare Operatoren inklusive Beispiele
...
Operator
...
Bezeichnung
...
==
...
gleich
status.identifier == 10
...
!=
...
ungleich
status.identifier != 20
...
<=
...
kleiner gleich
status.identifier <= 30
...
<
...
kleiner
status.identifier < 40
...
>=
...
größer gleich
status.identifier >= 50
...
>
...
größer
status.identifier > 60
...
CONTAINS
...
enthält
userPermissions CONTAINS 'app_set_order_confirmed'
...
OR
...
oder
userPermissions CONTAINS 'sendmail_dealer_admin' OR userPermissions CONTAINS 'sendmail_dealer_sales'
Übersicht über die Bedingungen
...
Bedingungen
...
Erläuterung
...
status.identifier == 10
...
Der “status.identifier” (Status ID) muss gleich “10” sein
...
status.identifier < 20
...
Der “status.identifier” (Status ID) muss kleiner als “20” sein
...
status.identifier IN {10, 20, 30}
...
Der “status.identifier” (Status ID) muss gleich “10”, “20” oder “30” sein
...
status.identifier == 10 OR status.identifier == 26 OR status.identifier == 90 OR status.identifier == 24
...
Der “status.identifier” (Status ID) muss gleich “10” oder “26” oder “90” oder “24” sein
...
maturity_date != null
...
Das Feld für das “maturity_date” (Fälligkeitsdatum) muss gesetzt sein
...
client_customer.externalId != nil
...
Das Feld für “client_customer.externalId” muss gesetzt sein
...
dealer_customer_id != null AND client_customer_id != null
...
Die “dealer_customer_id” und die “client_ customer_id” müssen gesetzt sein
...
order.option.reason_lost_sales != 'competitor_price' OR order.option.competitor != NULL
...
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)
...
pricelist.enabled == true
...
Die “pricelist” (Preisliste) ist aktiviert
...
ALL configurations.isComplete == true
...
Jede Konfiguration muss abgeschlossen sein
...
ALL configurations.isValid == true
...
Jede Konfiguration muss gültig sein
...
ALL sortedProducts.isComplete == true
...
Jede Konfiguration muss abgeschlossen sein
...
ALL sortedProducts.isValid == true
...
Jede Konfiguration muss gültig sein
...
configurations.@count <= 1
...
In dem Projekt ist entweder keine oder nur eine Konfiguration hinterlegt
...
configurations.@count > 1
...
In dem Projekt muss es mehr als eine Konfiguration geben
...
sortedProducts.@count > 0
...
In dem Projekt muss es mindestens eine Konfiguration geben, das Projekt darf nicht "leer" sein
...
configurations.@count == 1 OR sortedManualPositions.@count > 0
...
Entweder die Anzahl der Elemente in “configurations” ist “1” oder die Anzahl der Elemente in “sortedManualPositions” ist größer als 0
...
userPermissions CONTAINS 'app_set_offer_confirmed'
...
Der Benutzer muss die Berechtigung haben, ein Angebot zu bestätigen
...
userPermissions CONTAINS 'app_edit_state_basic_partner' OR userPermissions CONTAINS 'app_edit_state_dealer_admin' OR userPermissions CONTAINS 'app_edit_state_dealer_sales'
...
Der Benutzer muss die Berechtigung haben entweder den "basic_partner" oder den "dealer_admin" oder den "dealer_sales" zu bearbeiten
...
NOT (userPermissions CONTAINS "app_allow_forward_basic_partner_orders") AND (dealer_contact_id != null OR partner_contact_id != null)
...
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.
...
dealer_customer.region.key == region.key
...
Die Region des Kundenhändlers muss mit der Schlüsselregion übereinstimmen
...
(usage_type_id == "2" OR usage_type_id == "3") AND client_customer_id != null
...
Die “usage_type_id” muss entweder “2” oder “3” sein und das Feld für die “client_customer_ id” muss gesetzt sein
...
(usage_type_id == "1" AND client_customer_id != null) OR usage_type_id == "2" OR usage_type_id == "3"
...
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".
...
client_customer_id == null OR (usage_type_id != "2" AND usage_type_id != "3" )
...
Entweder gibt es keinen Wert für die “client_customer_ id” oder die “usage_type_id” ist nicht "2" oder "3"
...
status.identifier IN {10, 20, 30, 45} OR userPermissions CONTAINS 'cust_app_set_each_offer_confirmed'
...
Der “status.Identifier” (Status ID) ist gleich “10”, “20” oder “30” oder der Benutzer hat die Berechtigung “cust_app_set_ each_offer_confirmed”
...
(status.identifier == 50 AND userPermissions CONTAINS 'app_set_offer_lost') OR userPermissions CONTAINS 'cust_app_set_each_offer_lost'
...
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”
Tabs | ||||
---|---|---|---|---|
| ||||
[{"content":{"version":1,"type":"doc","content":[{"type":"mediaSingle","attrs":{"layout":"center"},"content":[{"type":"media","attrs":{"type":"external","width":1228,"height":1386,"url":"https://braindata.atlassian.net/wiki/download/attachments/1225064449/%C3%9Cbersicht%20%C3%BCber%20alle%20IDS.png?version=1&modificationDate=1725629708138&cacheVersion=1&api=v2"}}]},{"type":"paragraph","content":[{"type":"text","text":"Abbildung 2: Überblick über Status Identifier","marks":[{"type":"textColor","attrs":{"color":"#97a0af"}},{"type":"subsup","attrs":{"type":"sub"}}]}]}]},"id":"454c9d18-9eb5-47bb-8c2f-56661d0cd6ba","label":"Backend (PIA)","type":"tab"}] |
Felder für Bedingungen
Nachfolgend sind die zur Verfügung stehenden Felder, welche in den Bedingungen genutzt werden können, aufgezeigt.
Info |
---|
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
...
Code Block |
---|
status.identifier < 50
ALL configurations.isComplete == true
ALL configurations.isValid == true
userPermissions CONTAINS 'app_set_offer_confirmed' |
...
Code Block |
---|
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
Info |
---|
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). |
Tabs | ||||
---|---|---|---|---|
| ||||
[{"content":{"version":1,"type":"doc","content":[{"type":"paragraph","content":[]},{"type":"paragraph","content":[{"type":"inlineExtension","attrs":{"extensionType":"com.atlassian.confluence.macro.core","extensionKey":"media-card","parameters":{"id":"31854b2a-fb5d-49e6-bc05-f93f0c7e4fd5","type":"image/png","name":"Abbildung 2: Dialog der fehlgeschlagenen Bedingungen SalesApp.png","src":"https://braindata.atlassian.net/wiki/download/attachments/1225064449/Abbildung%202:%20Dialog%20der%20fehlgeschlagenen%20Bedingungen%20SalesApp.png?version=1&modificationDate=1615453847086&cacheVersion=1&api=v2"},"localId":"ecf4bc2e-5568-4164-b13d-fe266be7c5f3"}},{"type":"text","text":"Abbildung 2: Dialog der fehlgeschlagenen Bedingungen","marks":[{"type":"textColor","attrs":{"color":"#97a0af"}},{"type":"subsup","attrs":{"type":"sub"}}]}]}]},"id":"2202a55f-571c-448f-9b25-29abed2e1402","label":"SalesApp","type":"tab"},{"content":{"version":1,"type":"doc","content":[{"type":"paragraph","content":[]},{"type":"paragraph","content":[{"type":"inlineExtension","attrs":{"extensionType":"com.atlassian.confluence.macro.core","extensionKey":"media-card","parameters":{"id":"38284152-de11-42e1-a9f9-626f416d558d","type":"image/png","name":"Abbildung 2: Dialog der fehlgeschlagenen Bedingungen WebApp.png","src":"https://braindata.atlassian.net/wiki/download/attachments/1225064449/Abbildung%202:%20Dialog%20der%20fehlgeschlagenen%20Bedingungen%20WebApp.png?version=1&modificationDate=1615453965414&cacheVersion=1&api=v2"},"localId":"8357af0f-7aee-4593-83db-a4a1154f18a8"}},{"type":"text","text":"Abbildung 2: Dialog der fehlgeschlagenen Bedingungen","marks":[{"type":"textColor","attrs":{"color":"#97a0af"}},{"type":"subsup","attrs":{"type":"sub"}}]}]}]},"id":"246f20b8-9336-4131-a42f-726332c8c916","label":"WebApp","type":"tab"}] |
Kopie der tabelle
...
Bedingungen
...
Erläuterung
...
status.identifier == 10
...
Der “Status Identifier” (Status ID) muss gleich “10” sein
...
status.identifier < 20
...
Der “Status Identifier” (Status ID) muss kleiner als “20” sein
...
status.identifier == 10 OR status.identifier == 26 OR status.identifier == 90 OR status.identifier == 24
...
Der “Status Identifier” (Status ID) muss “10” oder “26” oder “90” oder“24” entsprechen
...
maturity_date != null
...
Das Feld für das “Maturity Date” (Fälligkeitsdatum) muss gesetzt sein
...
dealer_customer_id != null AND client_customer_id != null
...
Die “Dealer Customer ID” und die “Client Customer ID” müssen gesetzt sein
...
shipping_type_id != null AND shipping_address_id != null
...
Die Felder für die “Shipping type ID” (Versandstyp ID) und die die “Shipping address ID” (Versandsadresse) müssen gesetzt sein
...
dealer_contact_id != null
...
Das Feld für die “Dealer Kontakt ID” muss gesetzt sein
...
order.option.reason_lost_sales != NULL
...
Das Feld für den Grund für den Verlust des Auftrages darf nicht leer sein
...
delivery_date != null
...
Das Feld für das “Delivery Date”(Lieferdatum) muss gesetzt sein
...
billing_term_id != null
...
Das Feld für die “Billig Term ID” (Rechnungs ID) muss gesetzt sein
...
responsible_user_id != null
...
Das Feld für die “Responsible User ID”(verantwortlicher Benutzer) muss gesetzt sein
...
partner_customer_id != null
...
Das Feld für die “Partner Customer ID”(Kundenpartner ID) muss gesetzt sein
...
delivery_term_id != null AND shipping_location != null
...
Die Felder für die “Delivery term ID” (Lieferbedingungs ID) und die “Shopping Location” (Lieferort) müssen gesetzt sein
...
ALL configurations.isComplete == true
...
Jede Konfiguration muss abgeschlossen sein
...
ALL configurations.isValid == true
...
Jede Konfiguration muss gültig sein
...
order.option.reason_lost_sales != 'competitor_price' OR order.option.competitor != NULL
...
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)
...
order.option.reason_lost_sales != 'competitor_technique' OR order.option.competitor != NULL
...
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)
...
order.option.reason_lost_sales != 'competitor_comparision' OR order.option.competitor != NULL
...
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)
...
order.option.reason_lost_sales != 'no_offer_by_GRIMME' OR order.option.competitor != NULL
...
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)
...
configurations.@count > 1
...
In dem Projekt muss es mehr als eine Konfiguration geben, das Projekt darf nicht "leer" sein
...
userPermissions CONTAINS 'app_set_offer_confirmed'
...
Der Benutzer muss die Berechtigung haben, ein Angebot zu bestätigen
...
userPermissions CONTAINS 'sendmail_basic_partner'
...
Der Benutzer muss die Berechtigung haben, eine E-Mail an den “Basic Partner” zu verschicken
...
userPermissions CONTAINS 'app_edit_state_basic_partner' OR userPermissions CONTAINS 'app_edit_state_dealer_admin' OR userPermissions CONTAINS 'app_edit_state_dealer_sales'
...
Der Benutzer muss die Berechtigung haben entweder den "Basic Partner" oder den "Dealer Admin" oder den "Dealer Sales" zu bearbeiten
...
NOT (userPermissions CONTAINS "app_allow_forward_basic_partner_orders") AND (dealer_contact_id != null OR partner_contact_id != null)
...
Der Benutzer hat nicht die Berechtigung, Partneraufträge weiterzuleiten und es ist entweder eine “Dealer Kontakt ID” oder eine “Partner Kontakt ID” vorhanden.
...
dealer_customer.region.key == region.key
...
Die Region des Kundenhändlers muss mit der Schlüsselregion übereinstimmen
...
(usage_type_id == "2" OR usage_type_id == "3") AND client_customer_id != null
...
Die “Usage type ID” muss entweder “2” oder “3” sein und das Feld für die “client customer ID” muss gesetzt sein
...
(usage_type_id == "1" AND client_customer_id != null) OR usage_type_id == "2" OR usage_type_id == "3"
...
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".
...
client_customer_id == null OR (usage_type_id != "2" AND usage_type_id != "3" )
...
Entweder gibt es keinen Wert für die “client customer ID”, oder die “Usage type ID” ist nicht "2" oder "3"
...
status.identifier IN {10, 20, 30}
...
Der “Status Identifier” (Status ID) muss gleich “10”, “20” oder “30” sein
...
client_customer.externalId != nil
...
Das Feld für “Client Customer ID” muss gesetzt sein
...
ALL sortedProducts.isComplete == true
...
Jede Konfiguration muss abgeschlossen sein
...
ALL sortedProducts.isValid == true
...
Jede Konfiguration muss gültig sein
...
sortedProducts.@count > 0
...
In dem Projekt muss es mehr als eine Konfiguration geben, das Projekt darf nicht "leer" sein
...
status.identifier IN {10, 20, 30, 45} OR userPermissions CONTAINS 'cust_app_set_each_offer_confirmed'
...
Der “Status Identifier” (Status ID) ist gleich “10”, “20” oder “30” oder der Benutzer hat die Berechtigung “cust app set each offer confirmed”
...
pricelist.enabled == true
...
Die “pricelist” (Preisliste) ist aktiviert
...
configurations.@count == 1 OR sortedManualPositions.@count > 0
...
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.
...
configurations.@count <= 1
...
Es wird überprüft, ob die Sammlung “configurations" entweder keinElement oder nur ein Element enthält
(status.identifier == 50 AND userPermissions CONTAINS 'app_set_offer_lost') OR userPermissions CONTAINS 'cust_app_set_each_offer_lost'
name":"Abbildung 2: Dialog der fehlgeschlagenen Bedingungen SalesApp.png","src":"https://braindata.atlassian.net/wiki/download/attachments/1225064449/Abbildung%202:%20Dialog%20der%20fehlgeschlagenen%20Bedingungen%20SalesApp.png?version=1&modificationDate=1615453847086&cacheVersion=1&api=v2"},"localId":"ecf4bc2e-5568-4164-b13d-fe266be7c5f3"}},{"type":"text","text":"Abbildung 3: Dialog der fehlgeschlagenen Bedingungen","marks":[{"type":"textColor","attrs":{"color":"#97a0af"}},{"type":"subsup","attrs":{"type":"sub"}}]}]}]},"id":"2202a55f-571c-448f-9b25-29abed2e1402","label":"SalesApp","type":"tab"},{"content":{"version":1,"type":"doc","content":[{"type":"paragraph","content":[]},{"type":"paragraph","content":[{"type":"inlineExtension","attrs":{"extensionType":"com.atlassian.confluence.macro.core","extensionKey":"media-card","parameters":{"id":"38284152-de11-42e1-a9f9-626f416d558d","type":"image/png","name":"Abbildung 2: Dialog der fehlgeschlagenen Bedingungen WebApp.png","src":"https://braindata.atlassian.net/wiki/download/attachments/1225064449/Abbildung%202:%20Dialog%20der%20fehlgeschlagenen%20Bedingungen%20WebApp.png?version=1&modificationDate=1615453965414&cacheVersion=1&api=v2"},"localId":"8357af0f-7aee-4593-83db-a4a1154f18a8"}},{"type":"text","text":"Abbildung 2: Dialog der fehlgeschlagenen Bedingungen","marks":[{"type":"textColor","attrs":{"color":"#97a0af"}},{"type":"subsup","attrs":{"type":"sub"}}]}]}]},"id":"246f20b8-9336-4131-a42f-726332c8c916","label":"WebApp","type":"tab"}] |
Info |
---|
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. |