wie in vs Bericht erstellen damit mark. Datensätze benutzt

11. März 2011 17:04

Hallo,

wie erstelle ich einen Bericht in VS2008 so, dass ich nur die markierten Datensätze in den Bericht reinnehme?

Ich habe bisher alle Anleitungen nicht so verstanden, dass ich es geschafft habe.

Wie muss die sql aussehen, dass das funktioniert.
Da muss sicher was in der where-anweisung ergänzt werden, aber ich das dann ein filter oder ein parameter.

wenn ich zb in vs2008 eine sql-query erstellt habe:

select firstname, lastname from FilteredContact WHERE lastname='mustermann'

Wie muss ich dann lastname='mustermann' ersetzen, dass nach upload des berichtes nach crm nicht der mustermann-datensatz angezeigt wird, sondern der (bzw. die) datensätze die markiert sind?

Danke, Gruss Pit

Re: wie in vs Bericht erstellen damit mark. Datensätze benut

14. März 2011 09:23

Hallo Pit,

suche einmal im SDK nach "Use Filters in a Report", dort wirst du alle Informationen finden.

Re: wie in vs Bericht erstellen damit mark. Datensätze benut

14. März 2011 17:11

Hallo Michael,

vielen Dank, jetzt klappts. Im Prinzip musste ich ja nur FilteredContact mit "AS CRMAF_FilteredContact" ergänzen.

Was nun noch ein Problem ist, dass ich jetzt durch diesen Zusatz "AS CRMAF_...." nicht mehr verstehe, wie ich einen Wert an einen Subreport übergebe.

Ich habe jetzt fast den ganzen Tag probiert und gelesen und es geht definitiv nicht.

Ich habe zB einen Report der den Privatkunden auswählt...
select lastname, firstname, contactid FROM FilteredContact AS CRMAF_FilteredContact

und den Subreport...
select CRMAF_Filterednew_ver.new_name AS Name, CRMAF_FilteredContact.contactid FROM Filterednew_ver AS CRMAF_Filterednew_ver INNER JOIN FilteredContact AS CRMAF_FilteredContact ON CRMAF_Filterednew_ver.new_vnid = CRMAF_FilteredContact.contactid WHERE (CRMAF_Filterednew_ver.new_name = N'Test') ORDER BY name

Jetzt habe ich um Subreport einen Parameter (Bericht nicht sql oder?) angelegt, diesen "test1" benannt, datatyp text, HIDDEN ....
was muss ich hier als value eingeben, wenn ich in den subreport den ausgewählten Kontakt übergeben will ???

und was muss in den subreport-properties des Mainreports unter Parameter eingegeben werden?
Name: test1
und bei value?

bisher habe ich mit der value CRM_FilteredContact herumexperiementiert, aber es klappt nicht.

Ich habe es zwar geschafft eine Textvariable zu übergeben, aber was muss ich übergeben, damit der subreport nur die Datensätze der ausgewählten Kontakte anzeigt? ... wohl die guid des kontaktes, aber wie übergebe ich die und so würde ich diese im Subreport einbauen? Muss ich dafür im subreport die sql-abfrage ändern und wenn ja wie?

Danke, Gruss Pit

Re: wie in vs Bericht erstellen damit mark. Datensätze benut

17. März 2011 14:23

kann mir hierzu jemand was sagen?

Re: wie in vs Bericht erstellen damit mark. Datensätze benut

29. März 2011 12:54

Hallo Pit,
wenn ich dich richtig verstanden habe, hast du in deinem Main Report eine Abfrage mit
SELECT
CRMAF_FilteredContact.lastname,
CRMAF_FilteredContact.firstname,
CRMAF_FilteredContact.contactid
FROM FilteredContact AS CRMAF_FilteredContact
jetzt hast du in einer Oberfläche das Control für einen SubReport hinzugezogen. Im Sub Bericht einen Parameter mit test1. Wenn ich mich jetzt nicht täusche, kannst du im Control für den SubReport den Parameter (test1) auswählen. Als Value müsstest du dann die contactid übergeben (Fields!contactid.Value)

Grüße geez

Re: wie in vs Bericht erstellen damit mark. Datensätze benut

29. März 2011 13:53

Was mir nochmal bei einem genauren durchlesen aufgefallen ist, dass der test1-Parameter in der Abfrage nicht benutzt wird.
Bsp. Darstellung:
Main Report
SELECT
CRMAF_FilteredContact.lastname,
CRMAF_FilteredContact.firstname,
CRMAF_FilteredContact.contactid
FROM FilteredContact AS CRMAF_FilteredContact

SubReport
select CRMAF_Filterednew_ver.new_name AS Name, CRMAF_FilteredContact.contactid FROM Filterednew_ver AS CRMAF_Filterednew_ver INNER JOIN FilteredContact AS CRMAF_FilteredContact ON CRMAF_Filterednew_ver.new_vnid = CRMAF_FilteredContact.contactid WHERE (CRMAF_Filterednew_ver.new_name = N'Test') AND CRMAF_FilteredContact.contactid = @test1 ORDER BY name

Wenn jetzt im SubReport Control der Sub-Bericht ausgewählt wurde, und als Parameter "test1" und als Value "Fields!contactid.Value" steht dann wird in den Subreport die jeweilige GUID übergeben und im Sub-Report darauf gefiltert.

Hoffe ich konnte helfen ;)

Grüße geez

Re: wie in vs Bericht erstellen damit mark. Datensätze benut

1. April 2011 12:34

Hi geez,

vielen Dank für die super Hilfe.

Jetzt geht es mal so weit mit den Parametern. Das war wichtig.
Durch den @ Zusatz im query des subreports habe ich nach hochladen ins crm aber nicht mehr die Möglichkeit, den subreport auszuführen, wenn KEIN parameter übergeben wurde. Wie kann ich das noch lösen?

und ausserdem frage ich mich noch, wie ich mehrere in CRM ausgewählte Datensätze an den subreport übergeben kann?

Danke, Gruss Pit

Re: wie in vs Bericht erstellen damit mark. Datensätze benut

4. April 2011 15:48

Hi Pit,
das ist logisch. Denn der Parameter erwartet die ID von einem Kontakt. Dieser wird nur in Verbindung mit dem Main Bericht befüllt. Wenn dann müsstest du das ganze über dem Main Bericht ausführen. Frage: Wenn du dein Sub-Bericht einspielst muss im Feld "Parent Report" der Main Bericht ausgewählt sein. Dies sollte automatisch passieren. Kannst du das prüfen ob das gefüllt ist?

Markierst du mehrere Kontakte oder mehrere New_Var Datensätze? Aber ich gehe mal davon aus dass du mehrere Kontakte markierst. Dann würden die Guids der selektierten Kontakte in "Fields!ContactId.Value" geschrieben und im Sub-Bericht im "@test1" Parameter gefüllt. Du musst auch den Main Bericht dementsprechend auch eingespielt haben (Verknüpfte Datensätze: Kontakt Anzeigen in: Liste für verknüpfte Datensätze / Berichtsanzeige / In Datensätze)

Vielleicht hilft dir das.

Grüße
geez

Re: wie in vs Bericht erstellen damit mark. Datensätze benut

12. Oktober 2012 19:06

Hallo,
ich versuche auch genau das Gleiche derzeit aber es will mir einfach nicht gelingen.
CRMAF habe ich ja inzwischen eingegeben, das klappt also mit der GUID übergeben aus CRM.
Wo finde ich das "Control" im Subreport bzw was st mit "control" gemeint?
Den Parameter - davon verstehe ich nichts, wo muss ich den setzen und was gibt man da genau ein?

Wäre total super wenn mir jemand hier ein bisschen in die SChuhe helfen würde - dann könnte ich meine 5 Reports endlich fertigmachen :-(

Re: wie in vs Bericht erstellen damit mark. Datensätze benut

15. Oktober 2012 07:59

Hi,
mit "Control" ist ein Steuerelement gemeint (Zu finden in Tools-Liste [heißt meines wissens auch Sub-Report bzw Unterbericht]). In deinem Unterbericht musst du zuerst einen Parameter erstellen. Anschließend wählst du in deinem Main-Bericht das Sub-Report-Steuerelement aus gehst in die Eigenschaften, wählst hier deinen Sub-Bericht aus. Danach gehst du in den Reiter "Parameter" hierbei kannst du dann den erstellten Parameter aus deinem Sub-Bericht auswählen und den Wert aus deinem Main-Bericht übergeben.
Ich hoffe ich konnte dir weiterhelfen.

Grüße
gE3z