18. September 2008 11:09
Huuhuu,
ich habe ein weiteres Problem. Ich soll eine Umsatzstatistik bearbeiten.
Diese wird in Excel ausgegeben.
Dort befindet sich ein Bug:
Wenn ein Artikel (bzw. Artikelnummer) mehrmals vor kommt, dann addiert er nicht die Mengen und Preise, sondern schreibt einer erneute Zeile in die Excel Tabelle.
Wenn der selbe Artikel mit verschiedenen Mengen also beispielsweise fünf mal vor kommt, dann erstellt er jeweils 5 Zeilen. Er soll aber einfach die Mengen und Umsätze etc. addieren und alles in einer Zeile stehen lassen.
Wie kann ich das Problem lösen?
Ich danke für jegliche Hilfe
Hochachtungsvoll,
InSiDeR
18. September 2008 11:27
Das ist eine sehr allgemeine Frage. Deshalb ist auch die Antwort eher allgemein:
Je nachdem welche Daten die Basis für die Statistik sind, kannst du, sofern die Daten nach Artikelnummer sortiert vorliegen, die Mengen und Preise addieren und bei Artikelwechsel die Excel Zeile ausgeben. Liegen die Daten unsortiert vor, dann arbeitest du am besten mit einer temp. Tabelle in der du die Mengen addierst und welche du nach der Datensammlung in die Excel Tabelle ausgibst.
18. September 2008 12:12
Danke für deine Hilfe, aber ich kriege es einfach nicht hin. :(
gSalesStatistics2.SETRANGE(gSalesStatistic2."Item No.", "Item Leger Entry"."Item No.")
IF gSalesStatistics2."Item No." FINDFIRST THEN BEGIN
ELSE BEGIN
END;
END;
Das hab ich bisher geschrieben.
Bin ganz neu in Navision und kenne mich mit dem Code so gut wie nocht gar nicht aus.
Kann mir da einer weiterhelfen?
Danke im voraus.
18. September 2008 13:05
InSiDeR hat geschrieben:- Code:
gSalesStatistics2.SETRANGE(gSalesStatistic2."Item No.", "Item Leger Entry"."Item No.")
IF gSalesStatistics2."Item No." FINDFIRST THEN BEGIN
ELSE BEGIN
END;
END;
Dein Programmcode ist falsch aufgebaut.
Richtig müsste es so aussehen:
- Code:
gSalesStatistics2.SETRANGE("Item No.","Item Leger Entry"."Item No.")
IF gSalesStatistics2.FINDFIRST THEN BEGIN
END ELSE BEGIN
END;
18. September 2008 13:23
Danke für die Hilfe. Wie gesagt, ich bin absoluter Neuling und muss mich damit erstmal richtig auseinander setzen.
Könnte mir denn nun jemand bei meinem eigentlichen Problem helfen?
//edit:
- Code:
lSalesStatistics.SETRANGE("Item No.","Item Ledger Entry"."Item No.");
IF lSalesStatistics.FINDFIRST THEN BEGIN
lSalesStatistics.Quantity += "Item Ledger Entry".Quantity;
lSalesStatistics."Turnover Actuall" += ROUND("Item Ledger Entry"."Sales Amount (Actual)");
lSalesStatistics."Turnover Last Year" += ROUND("Item Ledger Entry"."Sales Amount (Actual)");
lSalesStatistics."Quantity Last Year" += "Item Ledger Entry"."Invoiced Quantity" * -1;
lSalesStatistics.MODIFY;
END ELSE BEGIN
Das hab ich bisher. Die Artikelnummern werden nurnoch einmal angezeigt, aber leider werden die Mengen, Umsätze etc. nicht addiert.
Powered by phpBB © phpBB Group.
phpBB Mobile / SEO by Artodia.