Consumer aus Katalog in Dialog übernehmen

Post Reply
User avatar
llaprosper
Posts: 748
Joined: 07. May 2009, 18:27
Location: Burscheid
Contact:

Consumer aus Katalog in Dialog übernehmen

Post by llaprosper » 13. Nov 2024, 13:41

Hallo Zusammen,

wie kann ich in einem CustomForm den User mitgeben, der im Service Katalog als Comsumer ausgewählt wurde?
Also nicht der CurrentUser, sondern der Empfänger des Services.
Könnt ihr mir da kurz auf die Sprünge helfen?
Welche Source muss ich hinzufügen (SVCServiceBookingClassBase?) und wo den Filter setzen?

Danke euch
Andreas

MF_NSc
Posts: 106
Joined: 12. Aug 2019, 15:27
Contact:

Re: Consumer aus Katalog in Dialog übernehmen

Post by MF_NSc » 13. Nov 2024, 14:10

Hallo Andreas,
schau Dir mal das hier an: https://help.matrix42.com/020_ESM/10_Se ... vice_forms

Du fügst bei den Context-Variablen "ServiceDetails" hinzu und hast dann Zugriff auf weitere Attribute (siehe weiter unten).
Dort dann einfach das gewünschte Attribut hinzufügen, z.B. ItemNumber(= SRVxxxxx) oder Recipient.
Damit kannst dann dein FormularAttribut verknüpfen (prüfen dass es nur bei Erstellung gezogen wird, ServiceDetails ist später ja nicht verfügbar, wenn Du das Form z.B. in einem Task verknüpft hast)

Image

ServiceDetails: {
Catalog: { Id, Name },
Recipient,
Id,
Name,
ItemNumber,
FullImagePath,
Parents

},

User avatar
llaprosper
Posts: 748
Joined: 07. May 2009, 18:27
Location: Burscheid
Contact:

Re: Consumer aus Katalog in Dialog übernehmen

Post by llaprosper » 13. Nov 2024, 15:05

Das habe ich in er Tat noch nicht gekannt.
Aber ganz klar ist mir das noch nicht ganz.
Habe nun die beiden Context Variablen angelegt.

Wenn ich aber z.B. den Consumer brauche, dann bringt mir das doch nichts, da ich nur die Attribute aus dem Java Script abrufen kann, oder?


BTW: Gibt es den $Filter in den Sourcen gar nicht mehr? Habe nach der Doku eine neue Source hinzugefügt und soll nun den $filter anpassen. Den gibt es aber nicht mehr.
Sind auf Version 12.05

MF_NSc
Posts: 106
Joined: 12. Aug 2019, 15:27
Contact:

Re: Consumer aus Katalog in Dialog übernehmen

Post by MF_NSc » 19. Nov 2024, 11:57

Du hast nur den "Recipient" = Empfänger des Services, richtig. Den Besteller hast Du ja schon über den Context > Currentuser.

Wenn Du weitere Daten des Users brauchst kannst Du natürlich einfach noch die SPSUserClassBase als custom_-Datenquelle reinhängen . Aber damit muss man halt nicht umständlich über den ShoppingCart o.ä. gehen. Verknüpfung dann über $id (custom_Recipient > $id)::GuidType mit Take Value From Context > ServiceDetails > Recipient.

Zu den Filtern: Breaking Changes
Schau mal unter dem Stichwort "Parametrized Filter Expressions".
Die Systemdiagnose gibt Dir eine Übersicht welche Dialoge anzupassen sind. Wichtig: speichere Dir den alten Filter vorher einmal irgendwo weg als Screenshot - weil wenn der Haken für "alten Filter verwenden" mal entfernt und gespeichert ist gibts kein zurück :-)

Link zu M42 Help Nr. 1 und hier Link zu M42 Help Nr. 2

andy_m42
Posts: 102
Joined: 02. Oct 2014, 14:04
Contact:

Re: Consumer aus Katalog in Dialog übernehmen

Post by andy_m42 » 19. Nov 2024, 14:42

ich habe es so verstanden, dass er den gesetzten user in der form hinterlegt haben möchte und möglicherweise weiterverarbeiten.
d.h. hier wäre noch eine beziehung von form zu userclassbase nötig.

für mich hört sich das folgendermaßen an:

1. DD um UserClassBase erweitern
Image
Beziehung.png
(16.72 KiB) Downloaded 85 times
2. ServiceDetails hinzufügen (wie bereits bekannt)

3. eine neue eigenschaft für ServiceDetails hinzufügen
Image
Recipient.png
(30.66 KiB) Downloaded 99 times
Image
Context.png
(4.06 KiB) Downloaded 96 times

Code: Select all

return serviceDetails.$value.Recipient;
4. Context.Recipient für User verwenden
Image
Quelle.png
(13.84 KiB) Downloaded 104 times
Image
UserAttribut.png
(19.55 KiB) Downloaded 119 times
5. User-Attribut in den Dialog ziehen und Control festlegen

falls am thema vorbei, hilft es vielleicht jemand anderem :) (dieser smiley ist einfach gruselig)
Last edited by andy_m42 on 07. Jan 2025, 11:22, edited 1 time in total.

User avatar
llaprosper
Posts: 748
Joined: 07. May 2009, 18:27
Location: Burscheid
Contact:

Re: Consumer aus Katalog in Dialog übernehmen

Post by llaprosper » 20. Nov 2024, 11:09

MF_NSc wrote: 19. Nov 2024, 11:57
Zu den Filtern: Breaking Changes
Schau mal unter dem Stichwort "Parametrized Filter Expressions".
Die Systemdiagnose gibt Dir eine Übersicht welche Dialoge anzupassen sind. Wichtig: speichere Dir den alten Filter vorher einmal irgendwo weg als Screenshot - weil wenn der Haken für "alten Filter verwenden" mal entfernt und gespeichert ist gibts kein zurück :-)

Link zu M42 Help Nr. 1 und hier Link zu M42 Help Nr. 2
Die Info kannte ich schon, mir war aber nicht klar, dass dabei auch der $filter in den zugefügten Sourcen betroffen ist.
Ist also richtig, dass dies der Grund für den Wegfall des $filter ist, richtig?

User avatar
llaprosper
Posts: 748
Joined: 07. May 2009, 18:27
Location: Burscheid
Contact:

Re: Consumer aus Katalog in Dialog übernehmen

Post by llaprosper » 20. Nov 2024, 11:10

andy_m42 wrote: 19. Nov 2024, 14:42 ich habe es so verstanden, dass er den gesetzten user in der form hinterlegt haben möchte und möglicherweise weiterverarbeiten.
d.h. hier wäre noch eine beziehung von form zu userclassbase nötig.
Genau, ich wollte den User in der form zum weiterverarbeiten haben.

MF_NSc
Posts: 106
Joined: 12. Aug 2019, 15:27
Contact:

Re: Consumer aus Katalog in Dialog übernehmen

Post by MF_NSc » 20. Nov 2024, 11:28

Ja, hatte ich auch so verstanden. Steht ja im ersten Beitrag, dass Du das ServiceDetails.Recipient bzw. Context.CurrentUser mit deinem Serviceformular-Attribut verknüpfen kannst.

Post Reply

Return to “Customizing und Reporting”

Who is online

Users browsing this forum: No registered users and 3 guests