[gelöst] Report Proformarechnung

26. Oktober 2010 11:14

In einen erstellten Report Proformarechnung möchte ich einige Daten aus der Artikelkarte holen.
Dazu habe ich mal ein Bild angehangen, das dokumentiert, was ich gemacht habe.

Zuerst hole ich die Daten, was im rechten Teil des Bildes zu erkennen ist, das klappt auch. Leider tauchen die beiden Infos immer einen Artikel später auf, siehe dazu den linken Teil des Bildes. Dir Info Customs Tariff No. sowie Country of Origin von Artikel Nr. 113690 gehören also zum ersten Artikel (Nr. 107973). Warum passiert das, ud wie behebe ich das?
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Zuletzt geändert von misterelektro1981 am 26. Oktober 2010 11:56, insgesamt 1-mal geändert.

Re: Report Proformarechnung

26. Oktober 2010 11:27

Mal wieder ins Blaue geraten ist da irgendwo ein next, wo keins sein darf.

Wieso habt ihr eigentlich eine eigene Tabelle für Proformarechnungen? Bei meinen bisherigen Proforma-Rechnungen hat immer ein angepasster AB-Druck ausgereicht.

Re: Report Proformarechnung

26. Oktober 2010 11:34

Hallo McClane,

ich weiß nicht genau in welchem Zusammenhang ich ein Next suchen soll. In dem DataItem wo ich den Code hinzugefügt habe steht folgendes:
Code:
// Hole die Daten von der Artikelkarte, wo die Nr. der Artikelkarte gleich der Nr. aus den Proforma Invoice Line gleich ist
Item.SETRANGE(Item."No.","Proforma Invoice Line"."No.");
IF Item.FINDFIRST THEN BEGIN
END;
//

IF Number = 1 THEN
  ProformaInvoiceLine.FIND('-')
ELSE
  ProformaInvoiceLine.NEXT;
"Proforma Invoice Line" := ProformaInvoiceLine;

IF NOT "Proforma Invoice Header"."Prices Including VAT" AND
   (ProformaInvoiceLine."VAT Calculation Type" = ProformaInvoiceLine."VAT Calculation Type"::"Full VAT")
THEN
  ProformaInvoiceLine."Line Amount" := 0;

IF (ProformaInvoiceLine.Type = ProformaInvoiceLine.Type::"G/L Account") AND (NOT ShowInternalInfo) THEN
  "Proforma Invoice Line"."No." := '';
im OnAfterGerRecord Trigger

Eine weitere Frage. Wie kann ich folgende 2 Bedingungen verknüpfen.
CurrReport.SHOWOUTPUT(ProformaInvoiceLine.Type > 0);
und
CurrReport.SHOWOUTPUT(ITEM."Tariff No." <> '');

Hatte es beides zusammengeschrieben aber dann kommt eine für mich bekannte Fehlermeldung.... Muss ich hier mit if arbeiten, quasi
Code:
if Item."Tariff No." <> ''
and ProformaInvoiceLine.Type > 0
then CurrReport.SHOWOUTPUT(True)
end;

Re: Report Proformarechnung

26. Oktober 2010 11:50

Na, da hast du doch eines gefunden, und genau das Richtige :wink:
Code:
ProformaInvoiceLine.NEXT;

Dein Code, der die Infos von der Artikelkarte zieht, muss da hinter. Sonst ist es die falsche Rechnungszeile. Siehst du gut in deinem Beispiel: erste Zeile: Zollangaben sind leer, da noch kein find('-') stattgefunden hat. Zweite Zeile: da stehen dann die Angaben des ersten Artikels.

Übrigens kannst du hier wieder ein get auf den Artikel machen (statt des setrange/findfirst).

das Andere:
Code:
CurrReport.SHOWOUTPUT:=((Item."Tariff No." <> '')and(ProformaInvoiceLine.Type > 0
));
(die äußeren Klammern können auch weg bleiben)

Re: Report Proformarechnung

26. Oktober 2010 11:56

Vielen Dank mal wieder.