In der Speditionsverwaltung können im Register Tarif die Tarife der einzelnen Regionen erfasst werden. Diese Tarife setzten sich aus den Feldern "Fixkosten" + "nach Tranchen" zusammen.
Dieser Eingabepunkt ist Teil der Verarbeitung SUBBPT und ermöglicht es, in einer spezifischen Version ein Feld in diese Tarife hinzuzufügen, welches in der Maske BPT3 gefüllt und in der Tabelle CARPRICE gespeichert wird.
Während die Aktion CREATION läuft, ist eine Maskensteuerung aktiv. Die Variable GOK wird verwendet und ausgewertet. Sie ist mit dem Wert 1 belegt. Um die Maskensteuerung zu verlassen, kann GOK auf den Wert 0 gesetzt werden.
Es ist keine Protokolldatei geöffnet.
Dieser Eingabepunkt wird in zwei Kontexten aufgerufen:
-in der Aktion LIENS bei der Belegung der Maske BPT3 aus der Tabelle CARPRICE
-in der Aktion CREATION beim Schreiben der Tabelle CARPRICE aus der Maske BPT3
Die Variable PE_CARPRIFLD gibt Auskunft über den Ursprung des Aufrufs des Eingabepunkts.
PE_CARPRIFLD="LECTAR": Aktion LIENS
PE_CARPRIFLD="CRETAR": Aktion CREATION
Der Wert der folgenden Variablen darf unter keinen Umständen geändert werden: RGARE, I, J.
Die Verwaltung der Maske BPT3 ist eine Besonderheit, weil die vollständigen Tarife für eine Region (Tabelle rechts) verborgen in der Regionenauskunft (Tabelle links) gespeichert werden.
Folgende Aktivitätscodes besitzen einen Einfluss:
- BPW: Anzahl von Gewichtsbereichen in den Tarifen (max. 50)
- BPY: Anzahl von Regionen pro Spedition (max. 100)
Erfassung und Speichern in der Maske BPT3:
Die einzelnen Preise werden nach Regionen in den Variablen TARPRI und TARADL (Tabelle NBTAR) erfasst und gemäß der Erfassungstabellenzeile in den Variablen PRI1 bis PRI51 und ADL51 (Tabelle NBARE) gespeichert.
Beispiel: Zeile 20 der Tariftabelle
TARPRI(19) wird in PRI20 gespeichert (verborgenes Feld der Regionentabelle NBARE)
TARADL(19) wird in ADL20 gespeichert (verborgenes Feld der Regionentabelle NBARE)
Struktur der Tabelle CARPRICE
Jeder Datensatz der Tabelle umfasst den Preis für eine Region.
Der Schlüssel setzt sich wie folgt zusammen:
Spedition (BPTNUM) + Region (BPTARE) + Rang (RANG: Zeilennummer der Erfassungstabelle)
Aus Gründen der Klarheit wird empfohlen, diese neue Feld auf dieselbe Weise zu verwalten wie die beiden Standardfelder.
Beispiel: Hinzufügen eines neuen Felds:
Das Dezimalfeld AAA soll in die Tabelle CARPRICE aufgenommen werden.
Hierfür ist in der Tabelle NBTAR das Feld TARAAA zu erstellen. In der Tabelle NBARE müssen die verborgenen Felder AAA1 bis AAA41 erstellt werden.
Hinweis: Die Anzahl von Feldreferenzen pro Maske ist auf insgesamt 500 begrenzt. Jedes neu erstellte Feld zieht in der Maske die Erstellung von 52 Referenzen nach sich. In diesem Fall muss die Anzahl von Preisen begrenzt werden (z. B. BPW = 30 --> nur AAA1 bis AAA31 werden erstellt).
Eingabepunktcode:
$ACTION
Case ACTION
When "CARPRIFLD" : Gosub CARPRIFLD
Endcase
Return
$CARPRIFLD
If PE_CARPRIFLD="LECTAR"
If evalue("dim([M:BPT3]AAA"+num$([F:CAP]RANG+")")>0
Assign "[M:BPT3]AAA"+num$([F:CAP]RANG)+"("+num$(RGARE-1)+")" With [F:CAP]AAA
Endif
Endif
If PE_CARPRIFLD="CRETAR"
[F:CAP]AAA = evalue ("[M:BPT3]AAA"+num$(J+1)+"("+num$(I)+")")
Endif
Return
Liste: Variable, Bedeutung, geöffnete Maskenklassen, änderbare Objekte. Es kann eine Tabelle des folgenden Typs geliefert werden:
Variable bzw. Maske | Definition |
BPT0 [BPT0] | Speditionen |
BPRBPT [BPRT] | Ids |
BPABPT [BPAT] | Adressen |
BPT1 [BPT1] | Verwaltung |
BPT2 [BPT2] | Regionen |
BPT3 [BPT3] | Preise |
BIDBPT [BIDT] | Bankdaten |
CNTBPT [CNTT] | Kontakte |
|
|
| Der Wert dieser Variablen darf nicht geändert werden. |
Char PE_CARPRIFLD | Ursprung Eingabepunktaufruf |
Integer RGARE | Index |
Integer I | Index |
Integer J | Index |
|
|