Projekt

Allgemein

Profil

TSystem Wawi » Historie » Revision 7

Revision 6 ([X] Daniel S, 15.05.2019 11:51) → Revision 7/21 ([X] Daniel S, 15.05.2019 12:11)

h1. TSystem Wawi 

 Grundtabellen für ERP (Warenwirtschaft), PARTS für Funktionsbereiche : Kopf, Position, Artikel usw. 

 <pre> 
 SCHEMA: TSystem_Wawi 
 - alle Strukturfunktionen und Tabellen 
 - Tabellen liegen nur in einzelteilen vor um Features durch Ableitung zu vererben 
 - Besonderheit: Abzuschlag nicht geclustert. (abzu_x) 
 </pre> 

 <pre> 
 Trigger werden erst in TWawi einheitlich über Funktion konkret angehangen. 
 Es gibt Funktionen zum Anhängen der Trigger welche nur den Tabellennamen übergeben bekommen. 
 - Die grundsätzlichen Triggerfunktionen sind in TSystem_Wawi abgelegt. Im Schema TWawi sind nur "Einzelne Trigger" 
 - Damit ist klar ersichtlich, welche Funktionen über alle Tabellen und welche nur über einzelne abgebildet sind. 
 </pre> 

 h2. *Grundsätzliche Idee* Idee der Trigger* 

 h3. Globale Trigger für alle Wawi Vorgänge 

 * Zeilen nehmen im Insert - wenn nicht anders angegeben - automatisch Header Defaults (Währung, Steuern) 
 + Trigger: *....b_05_i_defaults* > an Kopf, Position, Abzuschlägen 
 * Mengen werden in Triggern "20" bearbeitet. 
 + Trigger: *....b_20_iu__menge__uf* (war stkvkpuf1) 
 * Werte werden in Triggern "30" bearbeitet. Auch Preis und Preiseinheiten 
 * Parent > Child übergibt Änderungen von Währung, Steuern usw. in gleiche Datensätze (damit ist es möglich, das Unterdatensätze manuell geändert werden)  
 + Trigger: *...._a_3X_...propagate* > Übergibt Daten an Child bzw. Kopftabellen 
 * Alle Werte liegen in Einzelnen Feldern vor (..wert_abzu_netto, wert_abzuk_netto) 

 h3. Funktion, welche Trigger und Constraints an Ableitungen anhängt 

 * TSystem_Wawi.beleg_p__trigger__all__create 
 * TSystem_Wawi.beleg_p__constraints__all__create 

 *Beziehungen:* 

 * Beleg_K : k_id 
 * Beleg_P : p_k_id 
 * Abzu_X    : az_p_id bei Positionsbezogenem Abzuschlag 
 * Abzu_X    : az_k_id bei Kopfbezogenem Abzuschlag 

 

 h3. *Trigger:* 

 * @beleg_k__b_00_i__relation@; beleg_p__b_00_i__relation >> source eintragen 

 *Kopf:* 

 * @beleg_k__a_30_u__wert__propagate@ > übergibt Kopfdaten an Positionen : Steuern, Währung usw. bei Wechsel dieser 
 * @beleg_k__b_35_iu__wert__possum__tot__calculated@ > berechnet die Totalwerte aus Einzelsummen (wert + abzu = tot) 

 *Position:* 
 * @beleg_p__b_01_iu__p_nummer@ >> Kompatibilität : Holen oder Anlegen von p_k_id (INSERT INTO belzeil (be_bnr) .... keine p_k_id) 

 * @beleg_p__b_05_i__defaults@ > Defaults und Vorbereitungen  
 * @beleg_p__b_20_iu__menge__uf@    > Berechnet Menge in UF1 
 * @beleg_p__b_30_iu__wert__possum@ > Berechnet Preis, Preiseinheit totalwerte der Position > TODO: Beachte vkptotalpos 
 * @beleg_p__b_35_iu__wert__possum__tot__calculated@    > berechnet netto + abzu. Wird im After von Abzu angestossen indem netto_wert_abzu übergeben wird 

 * @beleg_p__a_30_u__wert__propagate@ > Steuern an Subdaten (abzuschläge)   
 * @beleg_p__a_35_u__wert__propagate__abzu_p@ > zum Aktualisieren abzu (Prozentualer Abzuschlag, k_rund_faktor change?!) 
 * @beleg_p__a_39_iud__wert__propagate__beleg_k@ 

 *abzuschläge* 
 * @abzu_p__b_05_i__defaults@ > Defaultwerte aus Vorgängern 
 * @abzu_p__b_30_iu__wert@ > totalwerte 
 * @abzu_p__a_30_iud__wert__propagate@  
 + Rückübergabe Werte an Belegzeile, dort beleg_p__b_35_iu__possum__tot__calculated    > beleg_p__a_39_iud__wert__propagate__beleg_k 
 + Rückgabe der Kopfbezogenen Abzuschläge an beleg_k. Dort ...possum__tot__calculated 

 

 h3. Datenfluß:  

 beleg_k > beleg_p > abzu_p* > beleg_p > beleg_k | *abzu_p > beleg_k (Kopfbezogen abzuschläge)