25. Oktober 2011 13:20
currreport.showoutput(currreport.pageno = 1);
gCustomer2.RESET;
gCustomer2.SETRANGE("No.","Sales Invoice Line"."Therapy doctor");
IF gCustomer2.FIND('-') THEN BEGIN
FAX := '@@SFX@@';
FAX2 := STRSUBSTNO('@@nummer %1@@', gCustomer2."Fax No.");
FAX3 := STRSUBSTNO('@@Betreff %1 %2 %3 %4@@', 'Auftrag:', "Sales Header"."No.", 'Kd-Nr.:',
"Sales Header"."Sell-to Customer No.");
END ELSE
CurrReport.SKIP;
CurrReport.PAGENO := 0;
25. Oktober 2011 13:44
IF LastCustomerNo <> "Sales Invoice Line"."Therapy doctor" THEN BEGIN
LastCustomerNo := "Sales Invoice Line"."Therapy doctor";
CurrReport.SHOWOUTPUT(TRUE);
END ELSE
CurrReport.SHOWOUTPUT(FALSE);
26. Oktober 2011 08:19
26. Oktober 2011 08:56
26. Oktober 2011 09:14
26. Oktober 2011 09:49
26. Oktober 2011 10:17
26. Oktober 2011 10:41
26. Oktober 2011 12:07
IF NOT CurrReport.PREVIEW AND (COUNT > 1) THEN BEGIN
SalesInvHeader := "Sales Invoice Header";
SalesInvHeader.SETRECFILTER;
EVALUATE(ReportID,COPYSTR(CurrReport.OBJECTID(FALSE),7));
REPORT.RUNMODAL(ReportID,TRUE,FALSE,SalesInvHeader);
CurrReport.SKIP;
END;
IF NOT CurrReport.PREVIEW AND (COUNT > 1) THEN BEGIN
SalesInvHeader := "Sales Invoice Header";
SalesInvHeader.SETRECFILTER;
EVALUATE(ReportID,COPYSTR(CurrReport.OBJECTID(FALSE),7));
REPORT.RUNMODAL(ReportID,TRUE,FALSE,SalesInvHeader);
26. Oktober 2011 13:02
27. Oktober 2011 12:24
OnRun()
contact.SETFILTER(contact.Auflistung,'%1',TRUE);
IF contact.FIND('-') THEN REPEAT
MESSAGE('%1',contact);
REPORT.RUNMODAL(50170,FALSE,FALSE,contact);
UNTIL contact.NEXT = 0;
Sales Invoice Line, Header (1) - OnPreSection()
CurrReport.SHOWOUTPUT(CurrReport.PAGENO = 1);
MESSAGE(Contact."Fax No.");
FAX := '@@SFX@@';
FAX2 := STRSUBSTNO('@@nummer %1@@', Contact."Fax No.");
27. Oktober 2011 14:05
27. Oktober 2011 14:09
27. Oktober 2011 14:12
27. Oktober 2011 14:32
Contact
Sales header (contact.No.-> Sales Header.Sell-to Contact No.)
Sales Line ( die üblichen Schlüssel)
27. Oktober 2011 15:05
27. Oktober 2011 15:08
wenn ich mir die requestform anzeigen lasse ist das boolean feld auf "true" vorgefiltert, was die kontakte kennzeichnen soll, die überhaupt eine auflistung erhalten.
27. Oktober 2011 15:17
contact.SETFILTER(contact."Auflistung",'%1',TRUE);
IF contact.FIND('-') THEN REPEAT
MESSAGE('%1',contact);
REPORT.RUNMODAL(50170,FALSE,FALSE,contact);
UNTIL contact.NEXT = 0;
27. Oktober 2011 15:32
27. Oktober 2011 15:36
27. Oktober 2011 16:03
Doch, es wird die Filterung der Contact-Variablen übergeben. Du musst in der Schleife noch die Variable kopieren und mit SETRECFILTER, auf genau einen Datensatz abfiltern. Beispiel siehe mein obiges Posting.chri0211 hat geschrieben: sprich: es wird überhaupt darkeine kundennummer an den report übergeben!
Und hier ist auch dein Denkfehler dazu. Jedes DataItem in einem Report wird ja automatisch als Schleife durchlaufen. Und zwar alle Datensätze, die sich im Dataset befinden.chri0211 hat geschrieben:Im Report gibt es keine Schleife, kein garnix!
27. Oktober 2011 17:05
28. Oktober 2011 08:52
28. Oktober 2011 09:01
28. Oktober 2011 09:25
if (today > 3103JJ) and < (3004JJ) then begin //dies, weil die Listen definitiv im Monat nach dem Quartal gedruckt werden.
StartDate := 0101JJ;
EndDate := 3103JJ;
end;
if (today > 30.06) and < (3107JJ) then begin
StartDate := 0104JJ;
EndDate := 3006JJ;
end;