7. August 2012 09:52
7. August 2012 10:18
Seiivo hat geschrieben:Allerdings werde ich aus dem Aufbau der Reports nicht wirklich schlau und finde auch keine Tutorials oder ähnliches, die das neu Erstellen eines Reports beschreiben. Könntet ihr mir ein bisschen Starthilfe geben, was ich brauche und wie die Grundstruktur von so einem Report aussieht?
Seiivo hat geschrieben:Jetzt wurde ich gefragt, ob es mir möglich wäre einen Report zu erstellen, welcher die Summe der Aufträge mit einer Stückzahl eines Artikels kleiner 4000 und anderen Ausschlusskritieren bildet.
7. August 2012 12:14
7. August 2012 13:00
Jetzt wurde ich gefragt, ob es mir möglich wäre einen Report zu erstellen, welcher die Summe der Aufträge mit einer Stückzahl eines Artikels kleiner 4000 und anderen Ausschlusskritieren bildet.
7. August 2012 13:51
Documentation()
Sales Header, Body (1) - OnPreSection()
CurrReport.SHOWOUTPUT(FALSE);
IF ("Sales Header"."Document Type" = "Document Type"::Order) AND
NOT(PreviousNo = "Sales Header"."No.") THEN BEGIN
MESSAGE("Sales Header"."No.");
PreviousNo := "Sales Header"."No.";
Sendungen := 0;
END;
Sales Header, Body (1) - OnPostSection()
IF ("Sales Header"."Document Type" = "Document Type"::Order) THEN BEGIN
IF (Sendungen > 0) AND (Sendungen <= 4000) THEN BEGIN
TotalMatches += 1;
MESSAGE('TotalMatches = %1', TotalMatches);
END;
END;
Documentation()
Sales Line, Body (1) - OnPreSection()
CurrReport.SHOWOUTPUT(FALSE);
IF ("Sales Header"."No." = "Sales Line"."Document No.")
AND ("Sales Header"."Document Type" = "Sales Line"."Document Type")
AND ("Sales Header"."Document Type" = "Document Type"::Order) THEN BEGIN
IF (COPYSTR("No.", 1, 3) = 'PO_')
AND NOT (COPYSTR("No.", 1, 10) = 'PO_1N_2PWS')
AND NOT (COPYSTR("No.", 1, 9) = 'PO_1N_3PW') THEN BEGIN
MESSAGE('Quantity: %1', Quantity);
Sendungen += Quantity;
END;
END;
Sales Line, Body (1) - OnPostSection()
7. August 2012 15:05
IF ("Sales Header"."No." = "Sales Line"."Document No.")
AND ("Sales Header"."Document Type" = "Document Type"::Order)
IF (COPYSTR("No.", 1, 3) = 'PO_')
AND NOT (COPYSTR("No.", 1, 10) = 'PO_1N_2PWS')
AND NOT (COPYSTR("No.", 1, 9) = 'PO_1N_3PW')
MESSAGE('Quantity: %1', Quantity);
8. August 2012 10:32
Documentation()
Sales Header - OnPreDataItem()
Sales Header - OnAfterGetRecord()
IF NOT(PreviousNo = "Sales Header"."No.") THEN BEGIN
PreviousNo := "Sales Header"."No.";
Sendungen := 0;
END;
IF (Sendungen > 0) AND (Sendungen <= 4000) THEN BEGIN
TotalMatches += 1;
END;
//*******************************************************************
MESSAGE('Auftrag %1, Sendungen: %2', "No.", Sendungen);
Sales Header - OnPostDataItem()
SETFILTER("No.", 'PO_*&<>PO_1N_2PWS*&<>PO_1N_3PW*');
Sales Line - OnAfterGetRecord()
Sendungen += Quantity;
//MESSAGE('Artikel, Quantity = %1, Document No. = %2', Quantity, "Document No.");
8. August 2012 11:12
Seiivo hat geschrieben://NACHTRAG 2:
Und doch noch eine Frage. Wie kann ich ausschließlich die erledigten Aufträge mit einbeziehen?
Abermals vielen Dank!
Viele Grüße,
Seiivo
8. August 2012 12:29
8. August 2012 13:35
Seiivo hat geschrieben:Hallo winfy,
ich glaube fast bei uns wird alles über Rahmenaufträge gelöst, ich soll die auf jeden Fall für die "Rechnung" gebrauchen.
Im Moment beziehe ich nur die aktiven Rahmenaufträge mit ein, es sollen aber alle Rahmenaufträge, auch in der Vergangenheit liegende, mit einbezogen werden.
Tabellen 112 und 113 scheinen dafür ja die richtigen zu sein, oder?
Viele Grüße,
Joschka
8. August 2012 13:48
8. August 2012 14:26
Seiivo hat geschrieben:Was mir jetzt noch Kopfzerbrechen bereitet ist das Setzen des Filters. Man soll nach verschiedenen Artikelnummern filtern können, das mit dem PO_ usw. hat sich erübrigt (die wissen noch nicht so ganz was die wollen).
Seiivo hat geschrieben:Am besten wäre es, wenn man nach dem Initialisieren des Reports in der Filter-Form eine vorgegebene Auswahl an Teilartikelnummern hat, die man einstellen kann. Ist das mit einfachen Mitteln möglich? Problem dabei ist wahrscheinlich, dass die Lizenz hier sehr beschränkt ist, Formen editieren ist z.B. nicht möglich.
Seiivo hat geschrieben:Außerdem wäre es super, wenn der Filter von der Verkaufszeile automatisch auch in die Verkaufsrechnungszeile übernommen wird. Dafür müsste ich den Filter nach dem Setzen lesen können, ist das möglich?
8. August 2012 14:45