php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 05-06-2007, 19:14
Someday
 Newbie
Links : Onlinestatus : Someday ist offline
Registriert seit: Jun 2005
Beiträge: 126
Someday ist zur Zeit noch ein unbeschriebenes Blatt
Standard Abrechnungs-Algorithmus

Hallo Leute,

ich bin dabei, ein System zu schreiben, was einige Dinge abrechnet. Hierbei speicher ich Konditionen mit ValidFrom und ValidTill in Form von UNIX-Timestamps, bei den unlimitierten ins ValidTill = NULL.

Wie kriege ich das jetzt hin, wenn ich alle drei Monate abrechne, dass er jede Änderung feststellt? Ich habe Preisspeicherungen immer nur zum 1. des Vertrags ermöglicht und die alten eine Sekunde vorher auslaufen lassen.

Also, folgende Situation:

Vertrag wird immer auf den 3. berechnet
Vertragsbeginn: 3.3.2007
Alter Preis gültig von 3.3.2007 bis 2.5.2007
Neuer Preis gültig von 3.5.2007 bis unlimitiert
Rechnung wird generiert am 3.6.2007

Wie kann ich diese Abfrage am logischten gestalten?

Herzlichen Dank
Henning
Mit Zitat antworten
  #2 (permalink)  
Alt 05-06-2007, 19:18
penizillin
 PHP Guru
Links : Onlinestatus : penizillin ist offline
Registriert seit: Feb 2004
Beiträge: 10.166
penizillin ist zur Zeit noch ein unbeschriebenes Blatt
Standard Re: Abrechnungs-Algorithmus

Zitat:
Original geschrieben von Someday
Wie kann ich diese Abfrage am logischten gestalten?
am logischten wäre erst mal eine problembeschreibung mit allem, was dazu gehört. womit arbeitest du? was ist wo gespeichert?
Mit Zitat antworten
  #3 (permalink)  
Alt 05-06-2007, 19:30
Someday
 Newbie
Links : Onlinestatus : Someday ist offline
Registriert seit: Jun 2005
Beiträge: 126
Someday ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Okay, Problemsituation:

2 Tabellen, die entscheidend sind:

contract - Hier sind die grundsätzlichen Vertragsdaten hinterlegt
--> Letzte Rechnungsstellung
--> Zyklus, in dem Rechnungen erstellt werden
--> Zeitpunkt der nächsten Rechnung

contractCondition - Für jede Kondition ein oder mehrere Zeilen hinterlegt
--> von Timestamp
--> bis Timestamp
--> Konditionsdaten

Ich möchte nun irgendwie die Tarif/Konditionsänderungen berücksichtigen ...

Ich arbeite derzeit mit PHP4 und mySQL.

Danke und Lieben Gruß
Henning
Mit Zitat antworten
  #4 (permalink)  
Alt 05-06-2007, 19:35
penizillin
 PHP Guru
Links : Onlinestatus : penizillin ist offline
Registriert seit: Feb 2004
Beiträge: 10.166
penizillin ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Hierbei speicher ich ... in Form von UNIX-Timestamps ...
das ist suboptimal, denn so gehen dir z.b. die schalttage im jahr verloren und du kannst die datumsfunktionen von mysql nicht nutzen.
Zitat:
Wie kriege ich das jetzt hin, wenn ich alle drei Monate abrechne, dass er jede Änderung feststellt?
wer? welche änderung?
Zitat:
Ich möchte nun irgendwie die Tarif/Konditionsänderungen berücksichtigen ...
was hindert dich daran?

in deinem kopf macht alles genau sinn, aber wir sind hier draußen...
Mit Zitat antworten
  #5 (permalink)  
Alt 05-06-2007, 19:43
Someday
 Newbie
Links : Onlinestatus : Someday ist offline
Registriert seit: Jun 2005
Beiträge: 126
Someday ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Wieso soll ich keine UNIX-Timestamps einsetzen? Mir wurde immer gesagt, dass das am besten ist. :-/

Änderungen meine ich Konditionen

Vertrag wird immer auf den 3. berechnet
Vertragsbeginn: 3.3.2007
Alter Preis gültig von 3.3.2007 bis 2.5.2007
Neuer Preis gültig von 3.5.2007 bis unlimitiert
Rechnung wird generiert am 3.6.2007

Alter und Neuer Preis sind Änderungen


Mich hindert daran meine Denkblockade, wie ich das mache, dass ich die Konditionen richtig abrufe. Ich habe ja nur den Timestamp der letzten und nächsten Rechnung. Das ist mein Zeitraum, den ich in Rechnung stelle, aber wie ermittel ich, welcher Preis wann galt? Und, wieviele Monate dazwischen liegen :-<

VG
Henning
Mit Zitat antworten
  #6 (permalink)  
Alt 05-06-2007, 19:46
penizillin
 PHP Guru
Links : Onlinestatus : penizillin ist offline
Registriert seit: Feb 2004
Beiträge: 10.166
penizillin ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von Someday
Wieso soll ich keine UNIX-Timestamps einsetzen?
habe ich das nicht gerade gesagt?
Zitat:
Mir wurde immer gesagt, dass das am besten ist. :-/
von wem?

vielleicht machst du endlich ein einfaches beispiel mit ein paar daten und zeigst, was du mit der abfrage erreichen willst.
Mit Zitat antworten
  #7 (permalink)  
Alt 05-06-2007, 19:52
Someday
 Newbie
Links : Onlinestatus : Someday ist offline
Registriert seit: Jun 2005
Beiträge: 126
Someday ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Von vielen Tutorials ;o)

In wie fern soll ich da ein Beispiel geben? Habe ich doch in dem Sinne schon im ersten Post ...

VG
Henning
Mit Zitat antworten
  #8 (permalink)  
Alt 05-06-2007, 19:55
penizillin
 PHP Guru
Links : Onlinestatus : penizillin ist offline
Registriert seit: Feb 2004
Beiträge: 10.166
penizillin ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
ein einfaches beispiel mit ein paar daten und zeigst, was du mit der abfrage erreichen willst.
Mit Zitat antworten
  #9 (permalink)  
Alt 05-06-2007, 20:00
Someday
 Newbie
Links : Onlinestatus : Someday ist offline
Registriert seit: Jun 2005
Beiträge: 126
Someday ist zur Zeit noch ein unbeschriebenes Blatt
Standard

So, Ausgangsdaten:

Vertrag wird immer auf den 3. berechnet
Vertragsbeginn: 3.3.2007
Alter Preis gültig von 3.3.2007 bis 2.5.2007
Neuer Preis gültig von 3.5.2007 bis unlimitiert
Rechnung wird generiert am 3.6.2007

Was ich erreichen will:

X Monate Produkt E.-Preis G.-Preis
Enthaltene Leistungen:

seit bis
03.03.2007 02.05.2007 X Stunden
03.05.2007 --- Y Stunden

Sowas möchte ich erreichen.
Verstehst du?

VG
Henning
Mit Zitat antworten
  #10 (permalink)  
Alt 05-06-2007, 20:04
penizillin
 PHP Guru
Links : Onlinestatus : penizillin ist offline
Registriert seit: Feb 2004
Beiträge: 10.166
penizillin ist zur Zeit noch ein unbeschriebenes Blatt
Standard

nein, kein bißchen.
Mit Zitat antworten
  #11 (permalink)  
Alt 05-06-2007, 20:10
Someday
 Newbie
Links : Onlinestatus : Someday ist offline
Registriert seit: Jun 2005
Beiträge: 126
Someday ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Also ich habe einen Vertrag, der immer am 3. fällig ist. Es wird eine Rechnung alle 3 Monate erstellt. Der Preis kann sich aber monatlich ändern. Der Preis ist mit validFrom und vallidTill gespeichert. Nun möchte ich die Preise entsprechend ermitteln und auf der Rechnung ausgeben.

Sorry, ich hab Schwierigkeiten, das genauer zu erklären :-/
Mit Zitat antworten
  #12 (permalink)  
Alt 05-06-2007, 20:54
brauni54
 Member
Links : Onlinestatus : brauni54 ist offline
Registriert seit: Feb 2005
Beiträge: 345
brauni54 ist zur Zeit noch ein unbeschriebenes Blatt
Standard

PHP-Code:
# vielleicht wäre ein
echo "mein php-code, damit Ihr es versteht";
#sinnvoll 
zeig uns doch deine abfrage wie du es bisher realisiert hast, damit wir dir helfen können
wenn du uns nix gibts können wir dir nicht mehr geben, da helfen auch noch so viele erklärungen von dir nicht!
Mit Zitat antworten
  #13 (permalink)  
Alt 05-06-2007, 22:33
Someday
 Newbie
Links : Onlinestatus : Someday ist offline
Registriert seit: Jun 2005
Beiträge: 126
Someday ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Ich habe keine Abfragen bisher, weil ich einfach noch keine sinnvolle Idee habe, wie das funktionieren könnte. Ich habe mir lediglich einen Ablauf überlegt:

1.) Vertragsdaten abrufen
2.) Preise abrufen, wo validFrom kleiner als JETZT und validFrom größer JETZT oder NULL ist
3.) Dann schauen, wieviele Monate das ist.
4.) Multiplizieren um auf Gesamtsumme zu kommen

VG
Henning
Mit Zitat antworten
  #14 (permalink)  
Alt 06-06-2007, 10:52
brauni54
 Member
Links : Onlinestatus : brauni54 ist offline
Registriert seit: Feb 2005
Beiträge: 345
brauni54 ist zur Zeit noch ein unbeschriebenes Blatt
Standard

also sollen wir dir ein code basteln? das macht sicher keiner, da wirst du schon selbst was probieren müssen un dann kannst du immer noch fragen

hast du denn überhaupt daten in deiner db? dann kannst du doch wenigstens eine select abfrage starten und deine vertragsdaten ausgeben
Mit Zitat antworten
  #15 (permalink)  
Alt 06-06-2007, 16:03
kuddeldaddeldu
 Registrierter Benutzer
Links : Onlinestatus : kuddeldaddeldu ist offline
Registriert seit: Sep 2006
Beiträge: 437
kuddeldaddeldu ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Du beschreibst immer noch kein konkretes Problem.
Bekommst Du die Auswahl der Konditionen in einem bestimmten Zeitraum nicht hin?
Weisst Du nicht, wie Du das zusammenrechnest, wenn Du die einmal hast?
Oder wo hakts jetzt?
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

Top-Side Guestbook

Gästebuch auf Textbasis (kein MySQL nötig) mit Smilies, Ip Sperre (Zeit selbst einstellbar), Spamschutz, Captcha (Code-Eingabe), BB-Code, Hitcounter, Löschfunktion, Editierfunktion, Kommentarfunktion, Kürzung langer Wörter, Seiten- bzw. Blätterfunktion, V

22.10.2018 webmaster10 | Kategorie: PHP/ Gaestebuch
ebiz-trader 6.0 - Das professionelle PHP Marktplatz Script ansehen ebiz-trader 6.0 - Das professionelle PHP Marktplatz Script

Mit unserer Lösungen können Sie nahezu jeden B2B / B2C Marktplatz betreiben den Sie sich vorstellen können. Ganz egal ob Sie einen Automarktplatz, Immobilenportal oder einfach einen Anzeigenmarkt betreiben möchten. Mit ebiz-trader können Sie Ihre Anforder

11.10.2018 Berni | Kategorie: PHP/ Anzeigenmarkt
PHP Server Monitor

PHP Server Monitor ist ein Skript, das prüft, ob Ihre Websites und Server betriebsbereit sind.

11.09.2018 Berni | Kategorie: PHP/ Security
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 07:04 Uhr.