Mehrere Belids an Selektion/Report übergeben

mgosx

Aktives Mitglied
Hallo zusammen,

ich habe einen Report erstellt, der über mehrere selektierte Belege den Gesamtbedarf der jeweiligen Artikel ausgibt.

Hier die Abfrage / Tabelle der Datenquelle:

(
SELECT A.Artikelnummer, A.Matchcode, A.Basismengeneinheit, SUM(P.Menge) as Menge, A.Mandant
FROM KHKVKBelegePositionen P INNER JOIN KHKArtikel A ON A.Mandant=P.Mandant AND A.Artikelnummer=P.Artikelnummer
WHERE Belid in ( CFN_Parameter('Belid') )
GROUP BY A.Artikelnummer, A.Matchcode, A.Basismengeneinheit, A.Mandant
) as TAB

Die Datenstruktur hat nur 1 Feld Belid, das als Schlüssel der Klasse clsVKBelegnummer angelegt ist.

Ich rufe meinen Report, der auf o.g. Abfrage basiert aus einer Liste mit VKBelegen aus, aus der ich mehrere selektieren kann.
So lange ich nur einen Beleg selektiere, klappt der Report, wenn ich mehrere Belege selektiere, dann wird ein Bericht nur mit dem Bedarf des 1. selektierten VKBelegs geöffnet.
Wie kann ich mit den Standardzugriffen vom AppDesigner eine Liste an Belids über ein Selektionselement/Datenstruktur an einen Bericht/dessen Datenquelle übergeben?

Gruss Mark
 
Aus der Liste bekommen Sie ein Multiselect raus, aber in einem Selektionselement ist es aktuell noch nicht möglich (also die Einstellung Multiselect im Feld der Datenstruktur. Sie können aber das SQL via Call-Platzhalter erzeugen.

Im Kontextmenü der Liste hinterlegen Sie diese Makros:
upload_2019-6-7_10-40-53.png

In der SQL-Where-Bedingung der Datenquelle des Berichtes hinterlegt man den Call-Platzhalter:
1=1 $[Call(DLLAufrufe.dll,DLLAufrufe.CallAufrufTemplate,$[Parameter(BelID)])]

Beschreibung für Call-Platzhalter: Zusatzdokumentation für Developer Partner im WDB 203334
 
Vielen Dank für die Info.
Wenn ich das richtig verstanden habe, müsste ich somit von IPlaceholderHandler einen Call ableiten.

Ist dies so richtig?


mit freundlichen Grüssen
Mark Göbl
 
Zurück
Oben