Versions Compared

Key

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

...

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).

Tabs
[{"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":"subsup","attrs":{"type":"sub"}}]}]}]},"id":"283de82b-2e47-43d6-b065-3ac71461c49a","label":"WebApp","type":"tab"}]

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).

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"}}},{"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"}}},{"type":"text","text":"Abbildung 3: 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"}]

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

...

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.

...

Tabs
data[{"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"}]
tabsConfiguration{"position":"top"}
[{"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

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 inklusive Beispiele

Nachfolgend findet sich eine Übersicht über die Bedingungen. Diese können individuell miteinander kombiniert werden.

Der “status.identifier” muss entweder “10” oder “20” oder “30” sein

Bedingungen

Erläuterung

Projektbedingungen (Status ID)

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}

Projektbedingungen (Status ID)

status.identifier == 10
OR status.identifier == 26 OR

Die Status ID (status.identifier

== 90 OR status.identifier == 24

Der “status.identifier” (Status ID) muss entweder “10” oder “26” oder “90” oder “24” sein

Projektbedingungen (Eigenschaften des Projektes)

dealer_customer_id != null AND client_customer_id != null

Die “dealer_customer_id” (Händler) und die “client_ customer_id” (Endkunde) müssen gesetzt sein

dealer_contact_id != null

Das Feld für die “dealer_contact_id” (Händleransprechpartner)muss gesetzt sein

partner_customer_id != null

Das Feld für die “partner_customer_id”(Kundenpartner ID) muss gesetzt sein

maturity_date != null

Das Feld für das “maturity_date” (Fälligkeitsdatum) muss gesetzt sein

billing_term_id != null

Das Feld für die “billing_term_id” (Rechnungs ID) muss gesetzt sein

delivery_date != null

Das Feld für das “delivery_date”(Lieferdatum) muss gesetzt sein

responsible_user_id != null

Das Feld für die “responsible_user_id”(Werksbeauftragter) muss gesetzt sein

shipping_type_id != null AND shipping_address_id != null

Die Felder für die “shipping_type_id” (Versandstyp ID) und die “shipping_address_id” (Versand Adresse) müssen gesetzt sein

Projektbedingungen (Zugeordnete Objekte)

ALL sortedProducts.isComplete == true

Jede Konfiguration muss abgeschlossen sein

ALL sortedProducts.isValid == true

Jede Konfiguration muss gültig sein

ALL configurations.isComplete == true

Jede Konfiguration muss abgeschlossen sein

ALL configurations.isValid == true

Jede Konfiguration muss gültig sein

configurations.@count <= 1

In dem Projekt ist entweder keine oder nur eine Konfiguration hinterlegt

configurations.@count > 0

In dem Projekt muss es mindestens 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

pricelist.enabled == true

Die “pricelist” (Preisliste) ist aktiviert

dealer_customer.region.key == region.key

Die Region des Kundenhändlers muss mit der Schlüsselregion übereinstimmen

client_customer.externalId != nil

Das Feld für “client_customer.externalId” (Kundennummer des gewählten Endkunden) muss gesetzt sein

Projektbedingungen (Dynamische Option)

order.option.reason_lost_sales != NULL

Das Feld für den Grund für den Verlust des Auftrages darf nicht leer sein

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)

Benutzer Berechtigungen

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'

Die aktive Gruppe des Benutzers muss entweder die Berechtigung “A” oder “B” oder “C” haben

userPermissions CONTAINS 'sendmail_basic_partner'

Die aktive Gruppe des Benutzers muss die Berechtigung “A” haben

Kombinationsmöglichkeiten (Praxisbeispiele)

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 seingleich “10” sein

status.identifier < 20

Die Status ID (status.identifier) muss kleiner als “20” sein

status.identifier IN {10, 20, 30}

Die Status ID (status.identifier) muss entweder “10” oder “20” oder “30” sein

status.identifier == 10 OR status.identifier == 26 OR status.identifier == 90 OR status.identifier == 24

Die Status ID (status.identifier) muss entweder “10” oder “26” oder “90” oder “24” sein

Projektbedingungen (Eigenschaften des Projektes)

dealer_customer_id != null AND client_customer_id != null

Der Händler (dealer_customer_id) und der Endkunde (client_ customer_id) müssen ausgewählt sein

dealer_contact_id != null

Der Händler - Kontakt (dealer_contact_id) muss ausgewählt sein

partner_customer_id != null

Der Partner (partner_customer_id) muss ausgewählt sein

maturity_date != null

Das Fälligkeitsdatum (maturity_date) muss ausgefüllt sein

billing_term_id != null

Die Zahlungsbedingung muss (billing_term_id) muss ausgewählt sein

delivery_date != null

Das gewünschte Lieferdatum (delivery_date) muss ausgewählt sein

responsible_user_id != null

Der Werksbeauftragte (responsible_user_id) muss ausgewählt sein

shipping_type_id != null AND shipping_address_id != null

Die Versandsart (shipping_type_id) und die Versandsadresse (shipping_address_id) müssen ausgefüllt sein

Projektbedingungen (Zugeordnete Objekte)

ALL sortedProducts.isComplete == true

Jede Konfiguration muss abgeschlossen sein

ALL sortedProducts.isValid == true

Jede Konfiguration muss gültig sein

ALL configurations.isComplete == true

Jede Konfiguration muss abgeschlossen sein

ALL configurations.isValid == true

Jede Konfiguration muss gültig sein

configurations.@count <= 1

In dem Projekt ist entweder keine oder nur eine Konfiguration hinterlegt

configurations.@count > 0

In dem Projekt muss es mindestens eine Konfiguration geben

sortedProducts.@count > 0

In dem Projekt muss es mindestens eine Konfiguration geben, das Projekt darf nicht "leer" sein

pricelist.enabled == true

Die gesetzte Preisliste muss aktiv sein

dealer_customer.region.key == region.key

Die Region des Händlers (dealer_customer.region.key) muss mit der Projektregion (region.key) übereinstimmen

client_customer.externalId != nil

Die Kundennummer des gewählten Endkunden (client_customer.externalId) muss ausgefülllt sein

Projektbedingungen (Dynamische Option)

order.option.reason_lost_sales != NULL

Der Grund für den Verlust des Auftrages muss angegeben werden

order.option.reason_lost_sales != 'competitor_technique' OR order.option.competitor != NULL

Wenn der Grund für den Verlust des Auftrages eine konkurrierende Technik ist, muss auch der Mitbewerber angegeben werden

order.option.reason_lost_sales != 'competitor_price' OR order.option.competitor != NULL

Wenn der Grund des Verlust des Auftrages der Preis des Mitbewerbers ist, muss auch der Mitbewerber angegeben werden

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_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)
no_offer_by_GRIMME' OR order.option.competitor != NULL

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

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'

Die aktive Gruppe des Benutzers muss entweder die Berechtigung “A” oder “B” oder “C” haben

userPermissions CONTAINS 'sendmail_basic_partner'

Die aktive Gruppe des Benutzers muss die Berechtigung “A” haben

Kombinationsmöglichkeiten (Praxisbeispiele)

delivery_term_id != null AND shipping_location != null

Die Lieferbedingung (delivery_term_id) und der Bestimmungsort für den Versand (shipping_location) müssen ausgefüllt sein

(usage_type_id == "1" AND client_customer_id != null) OR usage_type_id == "2" OR usage_type_id == "3"

Entweder die “usageVerkaufsart (usage_type_id” (Verwendungszweckid) ist "1" und das Feld für die “clientEndkundenmaschine (ID : 1) UND der Endkunde (client_customer_ id” ist gesetzt oder die “usage_type_id” ist "2", oder die “usage_type_id” ist "3".id) ist ausgewählt

- ODER -

die Verwendungsart ist Lagermaschine (ID : 2) oder Vorführmaschine (ID : 3)

client_customer_id == null OR (usage_type_id != "2" AND usage_type_id != "3" )

Entweder gibt es keinen Wert für die “client der Endkunde (client_customer_ id” oder die “usageid) ist nicht angegeben

-ODER-

die Verkaufsart (usage_type_id” id) ist nicht "2" oder "3" Lagermaschine (ID : 2) oder Vorführmaschine (ID : 3)

status.identifier IN {10, 20, 30, 45} OR userPermissions CONTAINS 'cust_app_set_each_offer_confirmed'

Der “status.Identifier” (Status IDEntweder die Status ID (status.Identifier) ist gleich “10”, “20” oder “30” oder

-ODER-

der Benutzer hat die Berechtigung “cust_app_set_ each_offer_confirmed”“A”

(status.identifier == 50 AND userPermissions CONTAINS 'app_set_offer_lost') OR userPermissions CONTAINS 'cust_app_set_each_offer_lost'

Der “status.identifier” (Entweder die Status ID (status.identifier) ist gleich “50” und der Benutzer hat entweder die Berechtigung “app_set_offer_lost” oder “Cust_app_set_each_offer_lost”die Berechtigung “A”

-ODER-

der Benutzer hat die Berechtigung “B”

dealer_contact_id != null OR partner_contact_id != null OR (userPermissions CONTAINS 'app_allow_forward_basic_partner_orders' AND dealer_contact_id != null)

Entweder das Feld für die "der Händler-Kontakt (dealer_contact_id" oder das Feld für die ") oder der Partner-Kontakt (partner_contact_ id" ist gesetzt oder ) muss ausgewählt sein

-ODER-

der Benutzer hat die Berechtigungen "app_allow_forward_basic_partner_orders" und die "dealer_contact_id" ist gesetzt.A" und der Händler-Kontakt muss ausgewählt sein

userPermissions CONTAINS "app_allow_forward_basic_partner_orders" AND status.identifier == 80) OR status.identifier < 54

Der Entweder der Benutzer hat die Berechtigung "app_allow_forward_basic_partner_orders" und der “status.identifier” (Status ID“A” und die Status ID (status.identifier) ist gleich “80” oder der “status.identifier” (Status ID

-ODER-

die Status ID (status.identifier) ist kleiner als 54

Beispielhafte Übersicht über den Projektstatus

Tabs
data[{"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"}]
tabsConfiguration{"position":"top"}
[{"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 für den Auftragstatus “Auftrag erteilt”

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 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. 23).

Tabs
data[{"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 23: 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"}]
tabsConfiguration{"position":"top"}
[{"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 23: 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.