[gelöst]Kumulierte Werte

2. November 2011 17:18

hallo beisammen,

ich bin noch neu hier, habe aber eine dringende frage an euch:

ich sollte über ein form eine spezielle tabelle (aufbau: lfd. nr., code, wert) mit werten füllen und zwar aus den geb. rechnungszeilen jeweils mit dem kumulierten wert bezogen auf den "verk. an debitor" und danach bezogen auf den "vertretercode".

in der tabelle sollten dann bspw. die werte "kunde xy - 1000,00", "kunde xyz - 2000,00", "vertreter qw - 1500,00", "vertreter zq - 1500" stehen...

das füllen mit einzelnen werten kriege ich hin, aber ich möchte nur die kumulierten haben, das schaffe ich nicht..

hilfe hilfe...!!!!
Zuletzt geändert von HeiBai am 2. November 2011 18:21, insgesamt 1-mal geändert.

Re: Kumulierte Werte

2. November 2011 17:23

Willkommen bei uns!

HeiBai hat geschrieben:aber ich möchte nur die kumulierten haben, das schaffe ich nicht..

Wo müssen wir ansetzen: Ist die Herangehensweise nicht klar oder "nur" der Quelltext?

Re: Kumulierte Werte

2. November 2011 17:26

hallo natalie,

also wahrscheinlich eine mischung aus beidem....
ich müsste ja bestimmt eigentlich immer die werte aufsummieren bis ein codewechsel kommt, aber wie frage ich den codewechsel ab..?!?!?!? :?: :?:

Re: Kumulierte Werte

2. November 2011 17:29

HeiBai hat geschrieben:aber wie frage ich den codewechsel ab..?!?!?!? :?: :?:

Was meinst du mit Codewechsel?
Vielleicht ist es einfacher, zu zeigst erst einmal den Quelltext, den du hast.
Schreibe davor [code] und danach [/code], dann bleiben die Einrückungen erhalten.

Re: Kumulierte Werte

2. November 2011 17:38

hallo natalie,

also ich versuch´s mal:

Code:
      SIL.RESET;
      SIL.SETCURRENTKEY("Sell-to Customer No.","Document No.","No.");
      SIL.SETRANGE(Type,SIL.Type::Item);
      SIL.SETFILTER(Quantity,'<>%1',0);
      IF SIL.FINDSET THEN BEGIN
        REPEAT
          "Entry No." := "Entry No." + 1;
          Code := SIL."Sell-to Customer No.";
          Value := Value + SIL.Amount;
          INSERT(TRUE);
        UNTIL SIL.NEXT = 0;
      END;


es sollten also alle geb. rechnungszeilen (SIL) durchlaufen werden und dann hier für jede gefundene kundennr. eine einzige zeile in meiner separaten tabelle mit der entsprechenden gesamtsumme eingefügt werden (und danach das gleiche für alle vertretercodes) - aktuell macht er aber tausende zeilen mit einzelnen werten...ist ein wenig doof zu erklären, pardon...

viele grüße,
heidi

Re: Kumulierte Werte

2. November 2011 17:45

Gehen wirs mal anders an, denn dein Ansatz ist schon mal nicht verkehrt:
Stell dir vor, du müsstest selber alle Rechnungszeilen abklappern (so wie du es codiert hast) und am Ende kumulierte Zeilen schreiben.
Hierzu darfst du in deine Zieltabelle schreiben - NUR in diese Tabelle. Wie würdest du das schrittweise anstellen?

Re: Kumulierte Werte

2. November 2011 17:53

hallo natalie,

zum glück ist mein ansatz schon mal nicht ganz schlecht...

also gut, mal überlegen..schritt für schritt:
- ich gehe in den geb. rg.zeilen jede zeile nacheinander durch
- merke mir den jeweiligen "verk. an debitor" und "betrag"
- und wenn ich dann durch bin, trage ich nacheinander die gemerkten werte "debitor" und "betrag" als je einen datensatz in die zieltabelle ein.

dann bin ich aber wieder bei meinem ausgangsproblem: wie bekomme ich mit, daß der debitor sich geändert hat..?!? in einem report hätte ich hier die rec vs. xrec-möglichkeit, die fehlt mir hier aber..?!?
sorry, ich bin blond... :-(

Re: Kumulierte Werte

2. November 2011 17:59

HeiBai hat geschrieben:- ich gehe in den geb. rg.zeilen jede zeile nacheinander durch

Genau, das war ja quasi meine Startbebdingung.
- merke mir den jeweiligen "verk. an debitor" und "betrag"

Gegenvorschlag: Warum trägst du den jeweiligen Wert nicht direkt in deine Zieltabelle ein?
Dann brauchst du dir auch nicht so viel merken:
- und wenn ich dann durch bin, trage ich nacheinander die gemerkten werte "debitor" und "betrag" als je einen datensatz in die zieltabelle ein.
dann bin ich aber wieder bei meinem ausgangsproblem: wie bekomme ich mit, daß der debitor sich geändert hat..?!? in einem report hätte ich hier die rec vs. xrec-möglichkeit, die fehlt mir hier aber..?!?
sorry, ich bin blond... :-(


Also ich erklärs:
Für jeden Datensatz (den du gerade durchläufst) schaust du, ob es in deiner Zieltabelle einen passenden Eintrag gibt (suche also nach dem aktuellen Verk. an Debitor in der Zieltabelle)
- Wenn nicht: Datensatz anlegen (genauso, wie du es bisher getan hast)
- Wenn ja: Keinen neuen Datensatz anlegen, sondern im gerade gefundenen Datensatz das Feld "Value" erhöhen. Abschließendes MODIFY nicht vergessen ;-)

Deinen eigentlichen Lösungsansatz kann man zwar auch anwenden, aber den obigen halte ich für einfacher.

Re: Kumulierte Werte

2. November 2011 18:20

....es klappt - es klappt..!!!!!!
natalie, du bist ein schatz...!!!!!!!!!!!!!!!!!!!!!!!!!!!!
dankedankedanke..!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

viele liebe grüße,
heidi