Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Lagerwert nachträglich berechnen, aber wie? (https://www.delphipraxis.net/74526-lagerwert-nachtraeglich-berechnen-aber-wie.html)

mandoki 4. Aug 2006 15:16


Lagerwert nachträglich berechnen, aber wie?
 
Hallo,

habe vor längerer Zeit eine Auftragsbearbeitung programmiert.
Enthalten war die Möglichkeit, sich jederzeit den Lagerwert (von diesem Tag) berechnen zu lassen.
Nun möchte ich aber auch im Nachhinein den Lagerwert berechnen können, also für ein früheres Datum.
Da tauchen nun aber viele Probleme auf,die ich so nicht erwartet hatte.

Für die Berechnung steht die Artikeldatei und eine Buchungsdatei (mit Zu- und Abgänge) zur Verfügung.
In der Artikeldatei wird bei bei jeder Buchung ein neuer durchschnittlicher EK errechnet und gespeichert. In der Buchungsdatei werden u.a. die Mengen und die exakten EKs und VKs gespeichert.

Nun sind diese Werte aber fast nie gleich, da die Preise sich ständig verändern...

Kann mir da jemand eventuell einen Tipp geben, welchen Rechenweg ich da einschlagen müsste?

Gruß
mandoki

mkinzler 4. Aug 2006 15:49

Re: Lagerwert nachträglich berechnen, aber wie?
 
Du wirst wohl immer von Anfang an, anhand alle Zu-/Abgänge berechnen müssen, welcher Werte zu dem Zeitpukz besteht..

TBx 4. Aug 2006 15:50

Re: Lagerwert nachträglich berechnen, aber wie?
 
Hallo!

Die Lagermenge kannst Du aus Deiner Buchungsdatei ermitteln:
Summe aller Einkäufe - summer aller Verkäufe (bis zum Auswertedatum)

Schwieriger ist die Frage der Wertermittlung:
Ist der Wert der tatsächliche Einkaufswert des Tages, für den der Lagerwert ermittelt wird?
Oder soll das über den mittleren Einkaufspreis ermittelt werden?
Oder ist der letzte VK des Artikels maßgeblich?

Verrat am besten einmal, wie Du den Lagerwert für den aktuellen Tag berechnest.

Gruß

onlinekater

mandoki 4. Aug 2006 16:52

Re: Lagerwert nachträglich berechnen, aber wie?
 
Hallo,
erst einmal vielen Dank für eure Antworten.

Zitat:

Die Lagermenge kannst Du aus Deiner Buchungsdatei ermitteln:
Summe aller Einkäufe - summer aller Verkäufe (bis zum Auswertedatum)
Das hatte ich mir zuerst auch so vorgestellt und auch versucht. Da die VK-Preise aber höher sind als die EK-Preise erhalte ich eine sehr große Summe im Minusbereich. Ich denke, ich müsste bei Verkäufen, die Menge mit dem zuletzt verbuchten EK-Preis multiplizieren. Oder bin ich da auf dem Holzweg? :roll:

Zitat:

Schwieriger ist die Frage der Wertermittlung:
Ist der Wert der tatsächliche Einkaufswert des Tages, für den der Lagerwert ermittelt wird?
Oder soll das über den mittleren Einkaufspreis ermittelt werden?
Oder ist der letzte VK des Artikels maßgeblich?
Ich denke Punkt 2 wäre ausreichend.

Zitat:

Verrat am besten einmal, wie Du den Lagerwert für den aktuellen Tag berechnest.
Hierfür lese ich einfach alle Artikel ein und multipliziere den Bestand mit dem zuletzt im Artikel gespeicherten Durchschnitts-EK. Ist zwar etwas ungenau, aber es soll nur ein "möglichst" genauer Wert ermittelt werden.

Danke für eure Hilfe. :)

marabu 4. Aug 2006 17:37

Re: Lagerwert nachträglich berechnen, aber wie?
 
Hallo mandoki,

die große negative Summe entsteht, weil du nicht die Mengendifferenz, sondern eine Wertdifferenz gebildet hast. Das ist zu diesem Zeitpunkt aber falsch. Es gibt verschiedene Verfahren zur Bestandsbewertung. Ein Unternehmer entscheidet sich frei für eines. Aus deinem ersten Beitrag entnehme ich, dass in deinem Programm mit dem gleitenden Durchschnittspreis gearbeitet wird. Die Bestandsmenge eines Artikels ist dann die Mengendifferenz aller Zu und Abgänge bis zum Stichtag. Bei negativ gespeicherten Abgängen ist das einfach SUM(Menge) WHERE Datum <= :Datum.

Jetzt musst du einfach noch den gleitenden Durchschnittspreis für Einkauf und Verkauf getrennt berechnen und die Bestandsmenge mit dem kleineren Wert multiplizieren.

Grüße vom marabu

mschaefer 4. Aug 2006 17:56

Re: Lagerwert nachträglich berechnen, aber wie?
 
A.) Lagerbestand kannst Du ja Tagesweise errechnen:

1. Tag 25
2. Tag 19
3. Tag 08
4. Tag 30
...

B.) Die Einkaufkosten des Lagerartikels rechnest Du auch exakt aus, am besten auf Monatsbasis (Buchhaltung)

1. Tag 45 * EK 20€ = 900€
4. Tag (45 * EK 20€ = 900€) + (22 * EK 16 € = 352) = 1252 € Einkaufskosten im Mai

C.) Den aktuellen Lagerwert, kannst Du n ur über die letzten Marktpreise abschätzen.
Entweder nimmst Du immer den letzten Verkaufspreis mal der aktuellen Lagermenge oder
du nimmst einen gleitenden Duchschnitt über sagen wir die Preise der letzten 2 Tage.


( VK heute * VK Menge heute ) + (Vk gestern * VK Menge gestern ) / (VK Menge heute + VK Menge gestern ) * Bestand heute

Das geht aber nur solgane du eine absetzbare Menge im Lager hast, sonst mußt Du noch eine Höchstwertbegrenzung (Marktbeschränkung einbauen).


Grüße in die Runde // Martin

mandoki 5. Aug 2006 12:18

Re: Lagerwert nachträglich berechnen, aber wie?
 
Hallo,

werde mir eure Vorschläge übers Wochenende mal genauer ansehen und versuchen das in die Praxis umzusetzen. Sollte ich damit Probleme bekommen, werde ich mich noch mal melden. Einstweilen vielen Dank für eure Mühe.

Gruß
mandoki ;)

mandoki 6. Sep 2006 21:21

Re: Lagerwert nachträglich berechnen, aber wie?
 
Hallo,

konnte die gegebenen Anregungen aus krankheitsbedingten Gründen leider erst jetzt beginnen umzusetzen.
Allerdings habe ich mit diesem Hinweis, so meine Probleme:

Zitat:

Jetzt musst du einfach noch den gleitenden Durchschnittspreis für Einkauf und Verkauf getrennt berechnen und die Bestandsmenge mit dem kleineren Wert multiplizieren.
Vielleicht sollte ich noch dazu anmerken, das die Tabelle ca. 20.000 Datensätze enthält.
Daher suche ich natürlich einen Weg dies möglichst zeitsparend zu berechnen (wenn dies halt überhaupt möglich ist).

Es wäre wirklich sehr nett, wenn mir jemand da ein einfaches Bespiel für geben könnte.
Hab wohl irgend ein Brett vorm Kopf. :?

Danke und Gruß
mandoki

mandoki 15. Sep 2006 11:36

Re: Lagerwert nachträglich berechnen, aber wie?
 
Hallo,

nach dem ich die entspechende Formel gefunden habe, war das ganze kein Problem mehr. ;)
Nochmals vielen Dank für die Hilfe.

Gruß
mandoki


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:27 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz