Home › Forum › Nuclos Konfiguration › Reporting › intid an subreport übergeben
- Dieses Thema hat 6 Antworten und 2 Teilnehmer, und wurde zuletzt aktualisiert vor 8 Jahren, 8 Monaten von
Markus Reichel.
-
AutorBeiträge
-
20 März 2015 um 22:04 Uhr #8317
Markus Reichel
TeilnehmerHallo, ich bin recht neu in nuclos unterwegs und kümmer mich eigentlich nur um kleinere konfigurationsarbeiten in nuclos (also kein IT ass). Ich habe ein report mit subreport und subsubreport wie im wiki beschrieben in nuclos hochgeladen.
Ich kann den report zwar ausführen, aber leider sind die Inhalte der sub- und subsubreports leer. Nach den selectscrips sind aber daten vorhanden.Ich habe alles nach wikianweisung gemacht, kann aber anhand dieser anweisungen nicht erkennen wie die intid vom hauptreport an die subreports weitergegeben wird. Ich denke dass da mein fehler ist. Im ireport ist das ja kein problem… im subreport unter „Parameters“ die intid übergeben, aber das wird ja beim hochladen in nuclos wieder gelöscht und ich weiß leider nicht wie man die intid stattdessen übergibt.
Also meine frage: wo und wie übergibt man in nuclos die intid vom hauptreport an die subreports?
Gruß Markus
23 März 2015 um 16:23 Uhr #8318Papa Schlumpf
TeilnehmerEs ist schwierig, das Problem ohne weitere Informationen zu lösen, aber ich werde einfach mal ein paar wichtige Dinge zusammenfassen. Wie im Wiki steht:
Bei der Verwendung von Datenquellen für Subreports ist zu beachten, dass der Subreport im Detailbereich des übergeordneten Reports platziert werden muss, da nur so die Verbindungs- und Kontextinformationen an den Subreport erfolgreich übergeben werden können. Wenn Sie für die angegebene Datenquelle in Nuclos Datenquellen-Parameter definiert haben, so wird versucht, diese anhand der Felder des aktuell verarbeiteten Hauptdatensatzes zu füllen. Dies ist in identischer Weise für tiefer geschachtelte Subreports möglich.
Man muss also Folgendes beachten:
- – Subreports nur im Detailbereich des nächsthöheren Bereiches verwenden
- – Die Parameter der Datenquelle eines Subreports müssen Felder des aktuellen Datensatzes des übergeordneten Formulars sein und sie müssen gleich heißen wie die Felder im Report
Die [tt]intid[/tt] braucht also nicht extra übergeben zu werden, alle Parameter werden automatisch ausgefüllt. Das heißt aber auch, dass die Datenquelle des Unterformulars relativ zur [tt]intid[/tt] des übergeordneten Datensatzes funktionieren muss. Die Datenquelle des Subsubreports muss entsprechend die [tt]intid[/tt] eines Datensatzes des Subreports verwenden (und nicht die des obersten Reports). Man kann das umgehen, indem man die [tt]intid[/tt] des nächsthöheren Datensatzes als Feld in die Datenquelle einbaut und dann dieses Feld als Parameter der Datenquelle des Subreports verwendet.
Bei geschachtelten Subreports müssen die Unterreports außerdem als Parameter immer weitergegeben werden. Beispiel: es gibt die Reports A -> B -> C. Dann braucht das Formular in Nuclos zwei Subreports (nämlich B und C). In iReport müssen entsprechend die Parameter dafür angelegt werden. Report A braucht [tt]SubreportB[/tt] und [tt]SubreportC[/tt], Report B bekommt den Parameter [tt]SubreportC[/tt].
Beim Einfügen von B in A (in iReport) nun Folgendes angeben:
- – [tt]Subreport Expression[/tt]: [tt]${SubreportB}[/tt]
- – Die üblichen anderen Einstellungen wie auf dem Screenshot im Wiki gezeigt
[li]- Einen Parameter, der [tt]${SubreportC}[/tt] weitergibt (bei [tt]Parameters[/tt], eine Zeile unter [tt]Datasource Expression[/tt])
24 März 2015 um 11:19 Uhr #8320Markus Reichel
Teilnehmervielen dankt für die Antwort. Also dass die untergeordneteten intids aus dem Datensatz des übergeordneten Reports stammen, müsste bei mir so sein. Im Test bei iReport lief ja alles perfekt mit dem select-skript und den übergebenen Parametern, nur leider nicht nach dem Hochladen in nuclos.
24 März 2015 um 14:03 Uhr #8321Markus Reichel
Teilnehmer:::UPDATE:::
Also die Subreports klappen, nur die SubSubreports leider nocht nicht, die werden einfach leer angezeigt. Ich habe aber den Inhalt mit den übergebenen Parametern in nuclos überprüft und die Vorschau spuckt mir aber die richtigen Tabellen aus. Ich denke ich habe bei dem verfahren wie SubSubreport hochzuladen sind einen Fehler gemacht. Ich hab mir die Anleitung im Wiki aber jetzt auch zum 3. mal durchgelesen und habe keine Ahnung was ich anders machen soll. Hier mal ein paar Vermutungen:
1) Man muss ja im iReport die subsubreports als parameter im subreport, wie auch im mainreport anlegen. Laut wiki muss man auch die SubSubReports auch als Parameter im iReport vom Mainreport auf den Subreport übergeben. Muss ich die Parameter auch irgendwo in nuclos in der Datenquelle übergeben?
2) Wenn ich die Reports im Reiter Konfiguration->Report->Report hochlade, muss das diese Struktur haben
-Ausgabeformat -> (mainreport)-Subreports ->Subreport1
->Subreport2
->SubSubreport1
->SubSubreport2
?Gruß Markus
24 März 2015 um 14:09 Uhr #8322Markus Reichel
TeilnehmerIm wiki steht „!!Die Ergebnismenge des übergeordneten Datensatzes darf bei Verwendung nur aus einer Zeile bestehen!!!“
Heißt das einfach nur dass jede select-auswahl des subformulars eine einzigartige zeile des übergeordneten formulars haben darf? Also Das übergeordnete Formular darf beliebig viele Zeilen haben, aber das sub darf sich bei der übergabe der Parameter immer nur auf eine zeile beziehen?
24 März 2015 um 19:52 Uhr #8323Papa Schlumpf
TeilnehmerRichtig, in Nuclos unter „Subreports“ alle Subreports hochladen und einen Namen verteilen, egal wie tief sie geschachtelt sind. Dann per Parameter immer weitergeben. Wenn der Subsubreport zwar angezeigt wird, aber leer ist, dann liegt es ja aber schon mal nicht daran.
Die Datenquelle muss nirgendwo übergeben werden, die wird ja durch die [tt]Data Source Expression[/tt] geladen.
Könntest du vielleicht deine Reports und Datenquellen hier posten, damit wir einen Blick darauf werfen können?
26 März 2015 um 12:27 Uhr #8324Markus Reichel
TeilnehmerHallo, ein Kollege kommt bald aus dem Urlaub zurück und wird da mal drüber gucken. Ich hätte da noch eine andere Frage:
Ist es prinzipiell möglich ein Protokoll mit subsubsub-Protokollen in nuclos einzubinden?
-
AutorBeiträge