Hallo miteinander,
mittlerweile bin ich am Verzweifeln.
Ich habe ein Formular in welchem ich einfach Standardbriefe (Brief) verfasse.
Nun möchte ich aus dem Kundenformular (Debitor) bestimmte Feldwerte an
eine Procedure im Formular übergeben, welche dann einen Insert auslöst und
diese Werte mit in das table1 einträgt.
Wenn alle Feldwerte im Kundenformular einen Wert enthalten, dann klappts auch
wunderbar, wenn jedoch ein Datenfeld NULL ist, dann gibt es einen Variant-Fehler.
Code in Debitor:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9:
| brief := tbrief.create(self); try brief.schnellstart(table1['name1'],table1['name2'],table2['name'], table1['strasse'], table1['plz'], table1['ort'], table2['telefax'], 'Ihre Kunden-Nr. bei uns: ' + table1['konto']); brief.showmodal; finally brief.release; end; |
Code in Brief:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14:
| procedure tbrief.schnellstart(zname1 : string; zname2 : string; zname3 : string; zstrasse : string; zplz : string; zort : string; ztelefax : string; zbetreff1 : string); begin table1.insert; if zname1 = null then table1.FieldValues['name1'] := '' else table1.fieldvalues['name1'] := zname1; if zname2 = null then table1.FieldValues['name2'] := '' else table1.fieldvalues['name2'] := zname2; if zname3 = null then table1.FieldValues['name3'] := '' else table1.fieldvalues['name3'] := zname3; if zstrasse = null then table1.FieldValues['strasse'] := '' else table1.fieldvalues['strasse'] := zstrasse; if zplz = null then table1.FieldValues['plz'] := '' else table1.fieldvalues['plz'] := zplz; if zort = null then table1.FieldValues['ort'] := '' else table1.fieldvalues['ort'] := zort; table1.fieldvalues['betreff1'] := zbetreff1; if ztelefax = null then table1.FieldValues['telefax'] := '' else table1.FieldValues['telefax'] := ztelefax;
end; |
Ich habe auch schon versucht aus den Strings TFields zu machen - aber auch leider erfolglos - irgendwie habe ich zur Zeit ein Brett vor dem Kopf ....
wer kann schnell helfen ???
Moderiert von
raziel: Code- durch Delphi-Tags ersetzt.