wegen CASE Funktion etc.
Ich habe in meiner Rechnungsdatenbank mehrere Auswahlmöglichkeiten was für eine Rechnung erstellt werden soll z.B. Anmietung eines Fahrzeuges oder Fahrzeugverkauf etc. Die Anzahl der Zeilen ist immer gleich. Ich steuere das ganze über die CASE-Funktion so hier:
let Art := 'Rechnungslegung wegen';
switch Art > 0 do
case Art = 1:
Auftragsmanagement.'Rückfahrtszeit-/Ankunftsort'
case Art = 2:
Auftragsmanagement.'Rückfahrtszeit-/Ankunftsort'
case Art = 3:
'Eingabe Fahrzeugtyp PkW/KOM etc.'
case Art = 4:
'Eingabe Fahrzeugtyp PkW/KOM etc.'
case Art = 5:
Dauer
end
Sobald ich aber ein Eintrag per Zahlen z.B. reine Zahl oder Zeitdauer aus einem Eintrag/Vorbelegung übernehme erfolgt wie hier bei Case 2 (Hier wurde eine Zahl aus einem Feld übernommen) folgende Fehlermeldeung "Return types of case statements do not match in Zeile 7 Spalte 4" .
let Art := 'Rechnungslegung wegen';
switch Art > 0 do
case Art = 1:
Auftragsmanagement.'Rückfahrtszeit-/Ankunftsort'
case Art = 2:
Auftragsmanagement.Pax
case Art = 3:
'Eingabe Fahrzeugtyp PkW/KOM etc.'
case Art = 4:
'Eingabe Fahrzeugtyp PkW/KOM etc.'
case Art = 5:
Dauer
end
Hat jemand eine Ahnung bzw. Lösungsvorschläge oder gar einen anderen Vosrchlag ggf. müsste ich mehrere Formulare mit nur einem Wert generieren. D A N K E
2 Antworten
-
Hallo René,
die Rückgabetypen müssen identisch sein. Ich würde alles in Text umwandeln:
---
switch number( 'Rechnungslegung wegen') do
case 1:
text(Auftragsmanagement.'Rückfahrtszeit-/Ankunftsort')
case 2:
text(Auftragsmanagement.Pax)
case 3:
text('Eingabe Fahrzeugtyp PkW/KOM etc.')
case 4:
text('Eingabe Fahrzeugtyp PkW/KOM etc.')
case 5:
text(Dauer)
end
---
habe den Kode noch ein bisschen modernisiert.
Leo
-
D A N K E L E O, es hat prima geklappt. Schöne Zeit Dir.
Content aside
- vor 4 JahrenZuletzt aktiv
- 2Antworten
- 429Ansichten