Fakturierung [Konzept]

Dein Thema passt einfach in kein Forum? Dann probiers mal hier.
Antworten
chrootdev
Beiträge: 70
Registriert: 18. April 2008 17:52

Fakturierung [Konzept]

Beitrag von chrootdev »

Hallo,

ich bastle gerade an einer fakturierungssoftware, und jetzt stehe ich vor einem problem.

Und zwar:

Ich habe in einer tabelle alle artikel mit nettopreis, steuersatz, usw., und in der tabelle "rechnung" werden die erstellen rechnungen eingetragen, mit rechnungsnummer usw. Für die artikel wird nur die jeweilige "artikel id" eingetragen, damit der rest, fals die rechnung nachgedruckt werden muss, einfach aus der artikeltabelle genommen wird.

Das problem ist jetzt, wird ein artikel gelöscht, kann die rechnung nicht mehr nachgedruckt werden.

Wie löst man so etwas am professionellsten?
  • 1. Artikel kann nicht gelöscht werden (ist glaub ich schwachsinn)
    2. aktuelle artikeldaten werden komplett in die rechnungstabelle eingetragen (tendenz hierzu ist am größten)
    3. sontiges?
Ich hoffe bei diesem problem kann mir jemand helfen, danke!

Mfg
upsala
Beiträge: 3946
Registriert: 5. Februar 2006 20:52
Wohnort: Landshut
Kontaktdaten:

Beitrag von upsala »

Artikel deaktivieren... Dasselbe gilt ja auch für Kundendaten usw...
chrootdev
Beiträge: 70
Registriert: 18. April 2008 17:52

Beitrag von chrootdev »

Danke für die antwort!

Also artikel in der datenbank belassen und einfach deaktivieren? Genauso wie alles andere?

Danke!

Mfg
FaS
Beiträge: 184
Registriert: 25. Mai 2006 19:48
Kontaktdaten:

Beitrag von FaS »

Wird eine Rechnung gedruckt, werden alle referenzierten Artikel mit dem heutigen Datum versehen. Artikel werden dann nicht direkt gelöscht, sondern wie grad erwähnt deaktiviert. Nach einem Jahr oder so können die ja dann gelöscht werden oder so.

Aber das würde ich nicht machen. Artikelpreise beispielsweise können sich doch ändern, oder nicht? Dann würde ein Rechnungsnachdruck ja anders aussehen als das Original??
chrootdev
Beiträge: 70
Registriert: 18. April 2008 17:52

Beitrag von chrootdev »

Darum gehts mir ja, das die daten theoretisch geändert werden können, und dann sieht kein nachdruck mehr gleich aus!

Darum mein ansatz die daten in einer eigenen tabelle (rechnungen) zu speichern.

Eine redundanz wird ja dadurch ausgeschlossen, das auf die daten aus für den nachdruck nie zugegriffen wird.
upsala
Beiträge: 3946
Registriert: 5. Februar 2006 20:52
Wohnort: Landshut
Kontaktdaten:

Beitrag von upsala »

Meine Meinung:

In der Rechnung steht ArtikelNr, Anzahl, Preis.

Im Artikel steht ArtikelNr, Beschreibung(en), Gültigkeitsdatum, Preisvorschlag, Steuersatz, ...
chrootdev
Beiträge: 70
Registriert: 18. April 2008 17:52

Beitrag von chrootdev »

Ja, und damit bin ich wieder bei post #1.

Das kann doch nicht so schwierig sein oder?

Ich könnte auch jedes mal überprüfen ob dieser datensatz in der tabelle steht, und den kompletten datensatz kopieren wenn jemand dann was ändert, und dabei setze ich einen flag auf den neuen datensatz das das dann der aktuelle ist.

Aber ob das so sinnvoll ist? Wie wird das bei anderen ERPs gelöst?
FaS
Beiträge: 184
Registriert: 25. Mai 2006 19:48
Kontaktdaten:

Beitrag von FaS »

chrootdev hat geschrieben:Ja, und damit bin ich wieder bei post #1.
Nein, bist du nicht. Ich denke der von upsala genannte "Preis" ist stellvertretend für alle Rechnungsrelevanten Daten; diese dürfen natürlich ab Bestelldatum oder sowas nie mehr verändert werden, müssen also zusammen mit dem Auftrags-Datensatz gespeichert werden. Aus den Auftrags-Daten kann dann die Rechnung zusammengeschustert werden.
Speziellere Angaben, welche für die Rechnung irrelevant sind, residieren dann im Artikel-Datensatz.
Ob du nun sowas wie implicit sharing realisierst oder nicht, ist doch dir überlassen bzw. musst du mit den Anforderungen wie Speicherplatz (keine Ahnung wo sonst noch das Problem sein sollte) abwägen... Allerdings dürfte man die Daten dann ja nie ohne ein vorhergehendes Prüfen auf Auftragsverknüpfungen verändern/löschen (bspw. durch andere Programme oder manuell), was u.U. problematisch werden könnte, von daher musst du das doch eigentlich alles selbst entscheiden, oder etwa nicht?

MfG,
FaS
methusalem
Beiträge: 186
Registriert: 11. August 2005 08:21

Beitrag von methusalem »

in einem mir nicht ganz unbekannten Warenwirtschaftssystem haben wir:

Auftragskopfdaten mit eindeutiger ID (enthält Lieferdatum, Kunde und sonstige Stammdaten)

Auftragspositionen mit eindeutiger ID und Verweis auf die ID des Auftragskopfes (enthält Artiklenummer, Preis, Stück, Steuersatz, ...)

Artiklestamm (Artikelnummer, Mwst, Aktiv, ...)
Kundenstamm

Preisliste (Artikelnummer, gueltig_von, gueltig_bis, Preis, ...)

Wird ein Eintrag aus einer Stammdatentabelle (z.B. Artikel) einmal benutzt darf er nie mehr gelöscht werden. Geändert werden kann er aber schon.
Martin
chrootdev
Beiträge: 70
Registriert: 18. April 2008 17:52

Beitrag von chrootdev »

Danke für eure Hilfe, ich habe mich jetzt dafür entschieden, das daten die verwendet wurden, erst dann gelöscht werden wenn die rechnung, nach der gesetzlichen aufbewahrungspflicht gelöscht werden kann.

Jetzt quält mich aber noch die fragen nach diesem beispiel:

Ich weiss es dürfen keine rechtsberatungen gemacht werden, aber geht eigentlich nur um einen hinweis oder so.

Was passiert wenn:
Ich eine rechnung ausstelle, diese drucke und dem kunde aushändige. Danach wird der artikelname geändert.
Nach einiger zeit kommt der kunde und hätte gern einen nachdruck seiner rechnung.

Dann wird die gleiche rechnung, jedoch mit einem anderen artikelnamen ausgedruckt.

Darf das sein?

Danke!
methusalem
Beiträge: 186
Registriert: 11. August 2005 08:21

Beitrag von methusalem »

das sollte dir dein Auftraggeber beantworten.

Bei uns ist es auch so, das du aus Blumen Kekse machen kannst. Und ich denke, das wir das längst unterbunden hätten, wenn es nicht zuläßig ist. Aber ich kenne keine Stammdaten bei uns im System, wo eine Änderung der Bezeichnung nicht möglich wäre.
Martin
chrootdev
Beiträge: 70
Registriert: 18. April 2008 17:52

Beitrag von chrootdev »

Hmmm, das problem ist das der auftraggeber eben hier nachfragt! ;-)

Verstehe wie das gemeint ist, da du ja den jeweiligen posten anhand der artikelnummer identifizieren kannst, da ist die bezeichnung eher nebensächlich.

Danke!

Mfg
upsala
Beiträge: 3946
Registriert: 5. Februar 2006 20:52
Wohnort: Landshut
Kontaktdaten:

Beitrag von upsala »

Dann gibts es halt für die Artikel auch eine History:
Bis zum 1.4. heist Artikel 5 Blume
Ab dem 2.4. heist Artikel 5 Erde
Usw...
Antworten