Crystal Reports 2008 - Schwierigkeiten mit dem zurücksetzen eine shared-variable
Update: Könnte Es ein anderes Problem?
Ich bin mir ziemlich sicher, dass ich getroffen habe die richtigen Schritte, aber was ist wenn es ein anderes Thema, das hier?
Ich mehrere Parameter haben, und es scheint, wie es möglicherweise zurücksetzen, aber dann ist der sub-reports könnte die Berechnung über alle Parameter unabhängig, so dass, obwohl es zurücksetzen, es wird eine Neuberechnung in allen der mehreren arbeiten, um zahlen, die ich angegeben habe in meiner Arbeit um die Anzahl der parameter.
Hintergrund
Ich habe einen Crystal Reports-Bericht 2008-Bericht mit ein paar sub-reports, teilen Ihre gesamten Werte wieder auf den Hauptbericht zur manipulation.
Den sub-reports funktionieren für einen einzelnen Datensatz, aber nicht zurückgesetzt, wenn mehrere Datensätze ausgewählt sind, wodurch Sie zeigen die Summe über alle Datensätze.
Dies ist ein Problem mit einer bekannten Lösung, aber wenn ich Versuch, es in meinem Bericht, es scheint nicht zu funktionieren, wie erwartet.
Ich bin mir ziemlich sicher, dass es ein Problem entweder mit der syntax der Formeln oder mit dem layout, wo ich bin platzieren.
Bekannte Schritte zu Ergreifen
Das Problem ist, dass Crystal sub-berichten nicht explizit zurückzusetzen; dies ist by-design.
Zu zwingen, den Bericht zurücksetzen, müssen Sie zum einfügen einer Formel in ein Rekord-level-Gruppe (D. H. nicht-Bericht-Kopfzeile) vor der sub-Bericht ausgeführt, stellt die shared-variable auf null zurück.
Layout des Berichts
- Berichtskopf (unterdrückt)
- Seitenkopf (basic page information)
- Gruppenkopf 1a -- shared variable zurücksetzen Formel
- Gruppenkopf 1b -- Arbeitsauftrags Informationen
- Details -- Unterbericht für Arbeit schätzt und Unterbericht für Materialien Schätzungen
- Gruppenfuß 1a -- Formeln anzeigen der Summe für beide Unterberichte
- Gruppenfuß 1b -- die lange Beschreibung des Arbeitsauftrags (keine sub-report)
- Berichtsfuß (unterdrückt)
- Fußzeile (basic page information)
Der freigegebenen variable Erstellung Formel in Arbeit Unterbericht (platziert in einem Unterbericht berichtsfuß):
WhilePrintingRecords;
Shared CurrencyVar subTotal_LaborCosts;
subTotal_LaborCosts := Sum ({R_PFWR_ESTS_LABBYCODE.TOTALLABORCOSTS});
Der freigegebenen variable Formel im Hauptbericht (platziert in Haupt -, Berichts -, Fußzeile 1a):
WhilePrintingRecords;
Shared CurrencyVar subTotal_LaborCosts;
subTotal_LaborCosts
Shared-Variable Zurücksetzen Formel (platziert im Hauptbericht, Gruppenkopf 1a):
WhilePrintingRecords;
Shared CurrencyVar subTotal_LaborCosts;
subTotal_LaborCosts:=0;
Kann jeder sehen, wohin ich gehe falsch gemacht? Danke!
InformationsquelleAutor SeanKilleen | 2011-12-15
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Ihre Berechnung ist ein skalarer Wert, möchten Sie vielleicht zu prüfen, mit einem SQL-Expression-Feld, eher als ein Unterbericht. Das Feld SQL korreliert werden können, um die Haupt-Abfrage, wahrscheinlich der Gruppierung Feld, Ihre situation.
** edit **
Scheint es, dass Sie wollen, eine Zusammenfassung der Personalkosten für jede Zeile in den Abschnitt "Details", und Sie wollen eine übersicht über die in der Fußzeile. Vorausgesetzt, das ist richtig, gehen Sie folgendermaßen vor:
Erstellen Sie einen SQL-Ausdruck:
--{%TOTAL_LABOR_COST}
(
WÄHLEN SIE TOTALLABORCOSTS
VON R_PFWR_ESTS_LABBYCODE
--link zu einem Feld im Hauptbericht, wahrscheinlich eine, die änderungen für jede Zeile in den Abschnitt Details
--WO
-- Gruppe, wenn nötig
--GRUPPE VON
)
Ort-Feld im Detailbereich
Danke für die weiteren Einblicke! Wenn es Ihnen nichts ausmacht, bitte sehen Sie meine aktuelle Frage. Ich Frage mich, ob es könnte ein anderes problem sein. Der Unterbericht angezeigt werden berechnet über alle parameter eingegebenen Werte für die parameter, statt eine zu einem Zeitpunkt, basierend auf was auch immer berichten Aufzeichnung, die wir gerade sehen.
InformationsquelleAutor craig
Ich herausgefunden, was das problem war.
Das Eigentliche Problem
Das Problem war nicht, dass die Formel nicht zurückgesetzt (es war).
War das problem in der Art hatte ich verknüpfte die Felder des Berichts " an den Unterbericht parameter.
Hatte ich verknüpfte die paramerter für meinen Hauptbericht an den parameter für meine sub-report. Diese, in der Tat, übergeben Sie jeden Wert in den parameter auf den Unterbericht, so lief es mit allen Werten zu jeder Zeit.
Fix
Um dies zu beheben, änderte ich den Wert, der war verbunden mit dem subreport-parameter.
Ich habe es aus dem Hauptbericht parameter-Feld (mehrere Werte), um einen Wert im Hauptbericht aufgeführt, die workorder Nummer (Gewährleistung, es würde immer nur eine haben).
InformationsquelleAutor SeanKilleen