25. Mai 2013 13:16
Hallo Thomas,
aus der kurzen Frage ist mir nicht klar, ob ihr mit Preislisten arbeiten wollt/müsst. Dann müßte man sich tiefer in Euer Konzept einarbeiten. Daher kann ich nicht sagen, wie gut sich euer Vorgehen mit dem aktuellen Dynamics-Konzept bei den Preislisten abdecken lässt.
Wenn es um die einfache Ermittlung des "aktuellen" Preises für eine Rechnung geht, dann kann man folgenden Ansatz überlegen.
Eine neue Entität ("Gebührenmodell") erstellen, in dem Ihr euer Preismodell abbildet. Bei Euch reichen vielleicht ein paar Wertefelder (Preis Jahr1, Preis Jahr2, Preis Folgejahr) und das primäre Feld zur Beschreibung ("Staffel 9,99 / 12,99 / 15.99"). Das ganze kann man mit Quartals- oder Monatsbezug definieren. Auf jeden Fall könnt Ihr hier ganz firmenindividuell arbeiten. Die Anzahl der unterschiedlichen Preismodelle (und der Pflegeaufwand) wird vermutlich überschaubar sein
Zu jedem Auftrag wird ein Lookup auf Gebührenmodell und das Startdatum hinterlegt. Wenn sich die Zuordnung zwischen Vertrag und Gebührenmodell nicht ändern darf, dann kann man die Parameter z.B. über JScript bei der Aktivierung des Vertrags automatisch in Auftragshilfsfelder kopieren. (Damit wird die Programmierung der Abrechnung einfacher) Wenn man aber viele Felder im Gebührenmodell hat oder sich die zugeordneten Gebührenmodelle zum Verträg häufig ändern, dann ist es sicher besser, immer die relevanten Werte aus dem Gebührenmodell über eine Abfrage zu holen.
Es wird monatlich eine Funktion gestartet, die über das Datum feststellt, ob man sich im Jahr 1, 2 oder N befindet. Dann kann man über das verknüpfte Gebührenmodell (bzw. die kopierten Werte in den Auftragshilfsfelder ) den passenden Wert für den aktuellen Durchlauf holen.
Ggf. ergänzt man im Auftrag auch noch Felder, wann und für welchen Monat die letzte Abrechnung erfolgte (Dann muss man im Rechnungslauf nur den Abrechnungsähler um 1 hochsetzen).
Wenn Ihr Hilfe bei der Umsetzung braucht, dann gibt es hier im Forum einige Leute, die sich über eine direkte Ansprache freuen