Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi ParamByName geht und geht mal nicht (https://www.delphipraxis.net/184859-parambyname-geht-und-geht-mal-nicht.html)

Walter Landwehr 25. Apr 2015 13:58

Datenbank: Firbird • Version: 2.5.4 • Zugriff über: IBO

ParamByName geht und geht mal nicht
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo,

ich mache folgende Zuweisung.

Delphi-Quellcode:
Query_Ziel.ParamByName('PATIENTNR').Value := qryBildAlt.FieldByName('PATIENTNR').AsInteger;
Einige Male funktioniert die Zuweisung, dann kommt aber plötzlich ohne das was geändert wurde diese Meldung: ...Exception der Klasse EVariantInvalidArgError mit der Meldung 'Ungültiges Argument' aufgetreten.

siehe auch den Anhang. Ich weiß nicht wieso diese Meldung kommt Kennt jemand das Problem und wie kann ich das beheben.

Habe schon mit AsInteger probiert aber gleiche Meldung.

Danke für Eure Hilfe.

himitsu 25. Apr 2015 14:20

AW: ParamByName geht und geht mal nicht
 
Zitat:

Zitat von Walter Landwehr (Beitrag 1299259)
Habe schon mit AsInteger probiert aber gleiche Meldung.

Und warum nur halb?

Delphi-Quellcode:
Query_Ziel.ParamByName('PATIENTNR').AsInteger := qryBildAlt.FieldByName('PATIENTNR').AsInteger;


EVariantInvalidArgError > Bei Google suchenVAR_INVALIDARG
Dieser Fehler taucht gern bei Variant-Arrays auf, aber eigentlich sollte das hier nicht vorkommen.

Tritt der Fehler wirklich in dieser Zeile auf, oder zeigt nur Delphi diese Zeile nach dem Fehler an?
Achte bei sowas auch immer auf den Befehl davor, denn im Stacktrace stehen nur Rücksprungadressen und nicht die Sprungadressen. Der Debugger hat da gern mal Probleme den vorherrigen fehlerhaften Befehl zu bestimmen und zeigt dann den Nachfolgenden an.

Eventuell ist das auch nur ein Folgefehler und die eigentliche Ursache liegt wo anders.
z.B. igendwo ein Bufferoverflow, welcher etwas überschreibt und das sich erst an dieser Stelle auswirkt.

PS: Fehlerdialoge wissen was Strg+C ist und im Formum kann man das dann als Text via Strg+V einfügen.

Walter Landwehr 25. Apr 2015 14:38

AW: ParamByName geht und geht mal nicht
 
OK, hier mal die ganze Anweisung:

Delphi-Quellcode:
qryBildAlt.Close;
    qryBildAlt.SQL.Clear;
    qryBildAlt.SQL.Add('select P.patientnr from tbl_patient P order by P.patientnr');
     qryBildAlt.Open;

    if qryBildAlt.RecordCount > 0 then
    begin
      qryBildAlt.First;

      Query_Quelle.Close;
      Query_Quelle.SQL.Clear;
      Query_Quelle.SQL.Add('select * from TBL_PATIENT where PATIENTNR = :PATIENTNR');

      Query_Ziel.Close;
      Query_Ziel.SQL.Clear;
      Query_Ziel.SQL.Add('insert into TBL_PATIENT (PATIENTNR, PATIENTENNUMMER, SUCHWORT, ANREDE, TITEL, VORNAME, NAME, STRASSE, ' +
        'LKZ, PLZ, ORT, BRIEFANREDE, TELEFON, GESCHAEFTSTELEFON, TELEFAX, TELEFAX2, ' +
        'MOBILFUNK, EMAIL, GEBURTSDATUM, GEBURTSTAG, GEBURTSMONAT, GEBURTSMONAT_ZAHL, ' +
        'GEBURTSJAHR, GESCHLECHT, FAMILIENSTAND, KINDER, BERUF, HAUSARZT, GEBUEHSATZ, ' +
        'KASSENNAME, KASSENNUMMER, VERSICHERTENNUMMER, VERISCHERTENSTATUS, GUELTIGBIS, ' +
        'BLUTGRUPPE, AUFNAHMEDATUM, LETZTESBEHANDLUNGSDATUM, NAECHSTERTERMIN, UHRZEIT,' +
        'TERMINGRUND, KOMPRIMIERTERDRUCK, LABORAUFTRAGSNUMMER, BUCHEN, KONTONUMMER,' +
        'ANAMNESE, BEMERKUNG, BILD, DRUCKANZAHL, KRITERIUM1, KRITERIUM2, KRITERIUM3, ' +
        'BANKNAME, BLZ, BANKKONTONUMMER, BANKABBUCHUNG, ANLAGE, ANLAGEBENUTZER, AENDERUNG, ' +
        'AENDERUNGBENUTZER, BEHANDLUNGSZEITVON, BEHANDLUNGSZEITBIS, BEHANDLUNGSTAG, ' +
        'BEHANDLUNGSZEITNEU, BEFUND, FACHARZT, UNTERSUCHUNG, ERLOESKONTO, RECHNUNGSFORMULAR, ' +
        'FAMILIENANAMNESE, KRANKHEITEN, THERAPIEPLAN, SPONTANBERICHT, GELENKTERBERICHT, ' +
        'DAUERDIAGNOSE, RISIKO, RISIKO_BEMERKUNG, GEWICHT, GROESSE, BILDEXT, ZAHLUNGSZIEL, ' +
        'ID, MEDIKATION, VERWANDT, VERSICHERUNGSART, GEBURTSTAGSBRIEF, NEUJAHRSBRIEF, ' +
        'WEIHNACHTSBRIEF, PATDIAGNOSE, PATLEISTUNGEN, KOPFTEXT, FUSSTEXT, PATABSCHLUSS, PRIVATVERSICHERERNR, ' +
        'NAMENSZUSATZ, ZAHLUNGSBEDINGUNGBAR, ZAHLUNGSBEDINGUNGUNBAR, TEXTVORRECHNUNGSPOSITION, MAHNUNG1KOPF, ' +
        'MAHNUNG1FUSS, MAHNUNG2KOPF, MAHNUNG2FUSS, MAHNUNG3KOPF, MAHNUNG3FUSS, RECHNUNGPERMAIL, REZEPTFORMULAR, ' +
        'MAILBODY, GEBURTSZEIT, VERSICHERERAUSNP7, MAILRECHNUNGSFORMULAR, RECHNUNGENOHNEDRUCK, RECHNUNGALSPDF, ' +
        'VERSTORBEN, STERBEDATUM, SERIENBRIEFTEILNAHME, BIC, BIRTHDAYOFTHEYEAR, ZAHLUNGSART, MANDANTENBANK, ' +
        'IBAN, RECHNUNGALSPDFUNDDRUCK, BEHANDLER, BUDGET, GEHOERTZU, A_TEXTVORANGEBOTSPOSITION, A_TEXTNACHANGEBOTSPOSITION, ' +
        'A_BELEGFORMULAR, A_MAILTEXT, A_WERBETEXT, A_DRUCKANZAHL, A_ALS_AMAIL, A_ALS_PDF, A_ALS_PDF_UND_DRUCK, A_OHNE_DRUCK, ' +
        'KV_TEXTVORPOSITION, KV_TEXTNACHPOSITION, KV_BELEGFORMULAR, KV_MAILTEXT, KV_WERBETEXT, KV_DRUCKANZAHL, ' +
        'KV_ALS_MAIL, KV_ALS_PDF, KV_ALS_PDF_UND_DRUCK, KV_OHNE_DRUCK, AU_TEXTVORPOSITION, AU_TEXTNACHPOSITION, ' +
        'AU_BELEGFORMULAR, AU_MAILTEXT, AU_WERBETEXT, AU_DRUCKANZAHL, AU_ALS_PDF, AU_ALS_MAIL, AU_ALS_PDF_UND_DRUCK, ' +
        'AU_OHNE_DRUCK, LI_TEXTVORPOSITION, LI_TEXTNACHPOSITION, LI_BELEGFORMULAR, LI_MAILTEXT, LI_WERBETEXT, ' +
        'LI_DRUCKANZAHL, LI_ALS_MAIL, LI_ALS_PDF, LI_ALS_PDF_UND_DRUCK, LI_OHNE_DRUCK, GU_TEXTVORPOSITION, ' +
        'GU_TEXTNACHPOSITION, GU_BELEGFORMULAR, GU_MAILTEXT, GU_WERBETEXT, GU_DRUCKANZAHL, GU_ALS_MAIL, ' +
        'GU_ALS_PDF, GU_ALS_PDF_UND_DRUCK, GU_OHNE_DRUCK, MA_BELEGFORMULAR, MA_DRUCKANZAHL, MA_ALS_MAIL, ' +
        'MA_MAILTEXT, MA_ALS_PDF, MA_ALS_PDF_UND_DRUCK, MA_OHNE_DRUCK, RE_TEXT_NACH_POSITION, RE_WERBETEXT, ' +
        'FOLGETERMIN, FOLGETERMIN_ERINNERN, SAMMELADRESSE, GEBURTSORT)' +
        'VALUES (:PATIENTNR, :PATIENTENNUMMER, :SUCHWORT, :ANREDE, :TITEL, :VORNAME, :NAME, :STRASSE, ' +
        ':LKZ, :PLZ, :ORT, :BRIEFANREDE, :TELEFON, :GESCHAEFTSTELEFON, :TELEFAX, :TELEFAX2, ' +
        ':MOBILFUNK, :EMAIL, :GEBURTSDATUM, :GEBURTSTAG, :GEBURTSMONAT, :GEBURTSMONAT_ZAHL, ' +
        ':GEBURTSJAHR, :GESCHLECHT, :FAMILIENSTAND, :KINDER, :BERUF, :HAUSARZT, :GEBUEHSATZ, ' +
        ':KASSENNAME, :KASSENNUMMER, :VERSICHERTENNUMMER, :VERISCHERTENSTATUS, :GUELTIGBIS, ' +
        ':BLUTGRUPPE, :AUFNAHMEDATUM, :LETZTESBEHANDLUNGSDATUM, :NAECHSTERTERMIN, :UHRZEIT, ' +
        ':TERMINGRUND, :KOMPRIMIERTERDRUCK, :LABORAUFTRAGSNUMMER, :BUCHEN, :KONTONUMMER,' +
        ':ANAMNESE, :BEMERKUNG, :BILD, :DRUCKANZAHL, :KRITERIUM1, :KRITERIUM2, :KRITERIUM3, ' +
        ':BANKNAME, :BLZ, :BANKKONTONUMMER, :BANKABBUCHUNG, :ANLAGE, :ANLAGEBENUTZER, :AENDERUNG, ' +
        ':AENDERUNGBENUTZER, :BEHANDLUNGSZEITVON, :BEHANDLUNGSZEITBIS, :BEHANDLUNGSTAG, ' +
        ':BEHANDLUNGSZEITNEU, :BEFUND, :FACHARZT, :UNTERSUCHUNG, :ERLOESKONTO, :RECHNUNGSFORMULAR, ' +
        ':FAMILIENANAMNESE, :KRANKHEITEN, :THERAPIEPLAN, :SPONTANBERICHT, :GELENKTERBERICHT, ' +
        ':DAUERDIAGNOSE, :RISIKO, :RISIKO_BEMERKUNG, :GEWICHT, :GROESSE, :BILDEXT, :ZAHLUNGSZIEL, ' +
        ':ID, :MEDIKATION, :VERWANDT, :VERSICHERUNGSART, :GEBURTSTAGSBRIEF, :NEUJAHRSBRIEF, ' +
        ':WEIHNACHTSBRIEF, :PATDIAGNOSE, :PATLEISTUNGEN, :KOPFTEXT, :FUSSTEXT, :PATABSCHLUSS, :PRIVATVERSICHERERNR, ' +
        ':NAMENSZUSATZ, :ZAHLUNGSBEDINGUNGBAR, :ZAHLUNGSBEDINGUNGUNBAR, :TEXTVORRECHNUNGSPOSITION, :MAHNUNG1KOPF, ' +
        ':MAHNUNG1FUSS, :MAHNUNG2KOPF, :MAHNUNG2FUSS, :MAHNUNG3KOPF, :MAHNUNG3FUSS, :RECHNUNGPERMAIL, :REZEPTFORMULAR, ' +
        ':MAILBODY, :GEBURTSZEIT, :VERSICHERERAUSNP7, :MAILRECHNUNGSFORMULAR, :RECHNUNGENOHNEDRUCK, :RECHNUNGALSPDF, ' +
        ':VERSTORBEN, :STERBEDATUM, :SERIENBRIEFTEILNAHME, :BIC, :BIRTHDAYOFTHEYEAR, :ZAHLUNGSART, :MANDANTENBANK, ' +
        ':IBAN, :RECHNUNGALSPDFUNDDRUCK, :BEHANDLER, :BUDGET, :GEHOERTZU, :A_TEXTVORANGEBOTSPOSITION, :A_TEXTNACHANGEBOTSPOSITION, ' +
        ':A_BELEGFORMULAR, :A_MAILTEXT, :A_WERBETEXT, :A_DRUCKANZAHL, :A_ALS_AMAIL, :A_ALS_PDF, :A_ALS_PDF_UND_DRUCK, :A_OHNE_DRUCK, ' +
        ':KV_TEXTVORPOSITION, :KV_TEXTNACHPOSITION, :KV_BELEGFORMULAR, :KV_MAILTEXT, :KV_WERBETEXT, :KV_DRUCKANZAHL, ' +
        ':KV_ALS_MAIL, :KV_ALS_PDF, :KV_ALS_PDF_UND_DRUCK, :KV_OHNE_DRUCK, :AU_TEXTVORPOSITION, :AU_TEXTNACHPOSITION, ' +
        ':AU_BELEGFORMULAR, :AU_MAILTEXT, :AU_WERBETEXT, :AU_DRUCKANZAHL, :AU_ALS_PDF, :AU_ALS_MAIL, :AU_ALS_PDF_UND_DRUCK, ' +
        ':AU_OHNE_DRUCK, :LI_TEXTVORPOSITION, :LI_TEXTNACHPOSITION, :LI_BELEGFORMULAR, :LI_MAILTEXT, :LI_WERBETEXT, ' +
        ':LI_DRUCKANZAHL, :LI_ALS_MAIL, :LI_ALS_PDF, :LI_ALS_PDF_UND_DRUCK, :LI_OHNE_DRUCK, :GU_TEXTVORPOSITION, ' +
        ':GU_TEXTNACHPOSITION, :GU_BELEGFORMULAR, :GU_MAILTEXT, :GU_WERBETEXT, :GU_DRUCKANZAHL, :GU_ALS_MAIL, ' +
        ':GU_ALS_PDF, :GU_ALS_PDF_UND_DRUCK, :GU_OHNE_DRUCK, :MA_BELEGFORMULAR, :MA_DRUCKANZAHL, :MA_ALS_MAIL, ' +
        ':MA_MAILTEXT, :MA_ALS_PDF, :MA_ALS_PDF_UND_DRUCK, :MA_OHNE_DRUCK, :RE_TEXT_NACH_POSITION, :RE_WERBETEXT, ' +
        ':FOLGETERMIN, :FOLGETERMIN_ERINNERN, :SAMMELADRESSE, :GEBURTSORT)');


      while not qryBildAlt.eof do
      begin
        Query_Quelle.close;
        Query_Quelle.ParamByName('PATIENTNR').Value := qryBildAlt.FieldByName('PATIENTNR').AsInteger;
        Query_Quelle.Open;

        Query_Ziel.ParamByName('PATIENTNR').Value := qryBildAlt.FieldByName('PATIENTNR').AsInteger;
        Query_Ziel.ParamByName('PATIENTENNUMMER').AsInteger := Query_Quelle.FieldByName('PATIENTENNUMMER').AsInteger;
        Query_Ziel.ParamByName('SUCHWORT').AsString := Query_Quelle.FieldByName('SUCHWORT').AsString;
        Query_Ziel.ParamByName('ANREDE').AsString := Query_Quelle.FieldByName('ANREDE').AsString;
        Query_Ziel.ParamByName('TITEL').AsString := Query_Quelle.FieldByName('TITEL').AsString;
        Query_Ziel.ParamByName('VORNAME').AsString := Query_Quelle.FieldByName('VORNAME').AsString;
        Query_Ziel.ParamByName('NAME').AsString := Query_Quelle.FieldByName('NAME').AsString;
        Query_Ziel.ParamByName('STRASSE').AsString := Query_Quelle.FieldByName('STRASSE').AsString;
        Query_Ziel.ParamByName('LKZ').AsString := Query_Quelle.FieldByName('LKZ').AsString;
        Query_Ziel.ParamByName('PLZ').AsString := Query_Quelle.FieldByName('PLZ').AsString;
        Query_Ziel.ParamByName('ORT').AsString := Query_Quelle.FieldByName('ORT').AsString;
        Query_Ziel.ParamByName('BRIEFANREDE').AsString := Query_Quelle.FieldByName('BRIEFANREDE').AsString;
        Query_Ziel.ParamByName('TELEFON').AsString := Query_Quelle.FieldByName('TELEFON').AsString;
        Query_Ziel.ParamByName('GESCHAEFTSTELEFON').AsString := Query_Quelle.FieldByName('GESCHAEFTSTELEFON').AsString;
        Query_Ziel.ParamByName('TELEFAX').AsString := Query_Quelle.FieldByName('TELEFAX').AsString;
        Query_Ziel.ParamByName('TELEFAX2').AsString := Query_Quelle.FieldByName('TELEFAX2').AsString;
        Query_Ziel.ParamByName('MOBILFUNK').AsString := Query_Quelle.FieldByName('MOBILFUNK').AsString;
        Query_Ziel.ParamByName('EMAIL').AsString := Query_Quelle.FieldByName('EMAIL').AsString;
        Query_Ziel.ParamByName('GEBURTSDATUM').AsDateTime := Query_Quelle.FieldByName('GEBURTSDATUM').AsDateTime;
            if Query_Quelle.FieldByName('GEBURTSTAG').AsInteger = Null then
           Query_Quelle.FieldByName('GEBURTSTAG').AsInteger := 0
        else
           Query_Ziel.ParamByName('GEBURTSTAG').AsInteger := Query_Quelle.FieldByName('GEBURTSTAG').AsInteger;
        Query_Ziel.ParamByName('GEBURTSMONAT').AsString := Query_Quelle.FieldByName('GEBURTSMONAT').AsString;
        if Query_Quelle.FieldByName('GEBURTSMONAT_ZAHL').AsInteger = Null then
           Query_Quelle.FieldByName('GEBURTSMONAT_ZAHL').AsInteger := 0
        else
           Query_Ziel.ParamByName('GEBURTSMONAT_ZAHL').AsInteger := Query_Quelle.FieldByName('GEBURTSMONAT_ZAHL').AsInteger;
            if Query_Quelle.FieldByName('GEBURTSJAHR').AsInteger = Null then
           Query_Quelle.FieldByName('GEBURTSJAHR').AsInteger := 0
        else
           Query_Ziel.ParamByName('GEBURTSJAHR').AsInteger := Query_Quelle.FieldByName('GEBURTSJAHR').AsInteger;
        Query_Ziel.ParamByName('GESCHLECHT').AsString := Query_Quelle.FieldByName('GESCHLECHT').AsString;
        Query_Ziel.ParamByName('FAMILIENSTAND').AsString := Query_Quelle.FieldByName('FAMILIENSTAND').AsString;
        Query_Ziel.ParamByName('KINDER').AsInteger := Query_Quelle.FieldByName('KINDER').AsInteger;
        Query_Ziel.ParamByName('BERUF').AsString := Query_Quelle.FieldByName('BERUF').AsString;
        Query_Ziel.ParamByName('HAUSARZT').AsString := Query_Quelle.FieldByName('HAUSARZT').AsString;
        Query_Ziel.ParamByName('GEBUEHSATZ').AsString := Query_Quelle.FieldByName('GEBUEHSATZ').AsString;
        Query_Ziel.ParamByName('KASSENNAME').AsString := Query_Quelle.FieldByName('KASSENNAME').AsString;
        Query_Ziel.ParamByName('KASSENNUMMER').AsString := Query_Quelle.FieldByName('KASSENNUMMER').AsString;
        Query_Ziel.ParamByName('VERSICHERTENNUMMER').AsString := Query_Quelle.FieldByName('VERSICHERTENNUMMER').AsString;
        Query_Ziel.ParamByName('VERISCHERTENSTATUS').AsString := Query_Quelle.FieldByName('VERISCHERTENSTATUS').AsString;
        Query_Ziel.ParamByName('GUELTIGBIS').AsDateTime := Query_Quelle.FieldByName('GUELTIGBIS').AsDateTime;
        Query_Ziel.ParamByName('BLUTGRUPPE').AsString := Query_Quelle.FieldByName('BLUTGRUPPE').AsString;
        Query_Ziel.ParamByName('AUFNAHMEDATUM').AsDateTime := Query_Quelle.FieldByName('AUFNAHMEDATUM').AsDateTime;
        Query_Ziel.ParamByName('LETZTESBEHANDLUNGSDATUM').AsDateTime := Query_Quelle.FieldByName('LETZTESBEHANDLUNGSDATUM').AsDateTime;
        Query_Ziel.ParamByName('NAECHSTERTERMIN').AsDateTime := Query_Quelle.FieldByName('NAECHSTERTERMIN').AsDateTime;
        Query_Ziel.ParamByName('UHRZEIT').AsDateTime := Query_Quelle.FieldByName('UHRZEIT').AsDateTime;
        Query_Ziel.ParamByName('TERMINGRUND').AsString := Query_Quelle.FieldByName('TERMINGRUND').AsString;
        Query_Ziel.ParamByName('KOMPRIMIERTERDRUCK').AsString := Query_Quelle.FieldByName('KOMPRIMIERTERDRUCK').AsString;
        Query_Ziel.ParamByName('LABORAUFTRAGSNUMMER').AsString := Query_Quelle.FieldByName('LABORAUFTRAGSNUMMER').AsString;
        Query_Ziel.ParamByName('BUCHEN').AsString := Query_Quelle.FieldByName('BUCHEN').AsString;
        if Query_Quelle.FieldByName('KONTONUMMER').AsInteger = Null then
           Query_Quelle.FieldByName('KONTONUMMER').AsInteger := 1200
        else
           Query_Ziel.ParamByName('KONTONUMMER').AsInteger := Query_Quelle.FieldByName('KONTONUMMER').AsInteger;
        Query_Ziel.ParamByName('ANAMNESE').AsString := Query_Quelle.FieldByName('ANAMNESE').AsString;
        Query_Ziel.ParamByName('BEMERKUNG').AsString := Query_Quelle.FieldByName('BEMERKUNG').AsString;
        Query_Ziel.ParamByName('BILD').AsString := Query_Quelle.FieldByName('BILD').AsString;
        if Query_Quelle.FieldByName('DRUCKANZAHL').AsInteger = Null then
           Query_Quelle.FieldByName('DRUCKANZAHL').AsInteger := 1
        else
           Query_Ziel.ParamByName('DRUCKANZAHL').AsInteger := Query_Quelle.FieldByName('DRUCKANZAHL').AsInteger;
        Query_Ziel.ParamByName('KRITERIUM1').AsString := Query_Quelle.FieldByName('KRITERIUM1').AsString;
        Query_Ziel.ParamByName('KRITERIUM2').AsString := Query_Quelle.FieldByName('KRITERIUM2').AsString;
        Query_Ziel.ParamByName('KRITERIUM3').AsString := Query_Quelle.FieldByName('KRITERIUM3').AsString;
        Query_Ziel.ParamByName('BANKNAME').AsString := Query_Quelle.FieldByName('BANKNAME').AsString;
        Query_Ziel.ParamByName('BLZ').AsString := Query_Quelle.FieldByName('BLZ').AsString;
        Query_Ziel.ParamByName('BANKKONTONUMMER').AsString := Query_Quelle.FieldByName('BANKKONTONUMMER').AsString;
        Query_Ziel.ParamByName('BANKABBUCHUNG').AsString := Query_Quelle.FieldByName('BANKABBUCHUNG').AsString;
        Query_Ziel.ParamByName('ANLAGE').AsDateTime := Query_Quelle.FieldByName('ANLAGE').AsDateTime;
        Query_Ziel.ParamByName('ANLAGEBENUTZER').AsString := Query_Quelle.FieldByName('ANLAGEBENUTZER').AsString;
        Query_Ziel.ParamByName('AENDERUNG').AsDateTime := Query_Quelle.FieldByName('AENDERUNG').AsDateTime;
        Query_Ziel.ParamByName('AENDERUNGBENUTZER').AsString := Query_Quelle.FieldByName('AENDERUNGBENUTZER').AsString;
        Query_Ziel.ParamByName('BEHANDLUNGSZEITVON').AsDateTime := Query_Quelle.FieldByName('BEHANDLUNGSZEITVON').AsDateTime;
        Query_Ziel.ParamByName('BEHANDLUNGSZEITBIS').AsDateTime := Query_Quelle.FieldByName('BEHANDLUNGSZEITBIS').AsDateTime;
        Query_Ziel.ParamByName('BEHANDLUNGSTAG').AsDateTime := Query_Quelle.FieldByName('BEHANDLUNGSTAG').AsDateTime;
        Query_Ziel.ParamByName('BEHANDLUNGSZEITNEU').AsDateTime := Query_Quelle.FieldByName('BEHANDLUNGSZEITNEU').AsDateTime;
        Query_Ziel.ParamByName('BEFUND').AsString := Query_Quelle.FieldByName('BEFUND').AsString;
        Query_Ziel.ParamByName('FACHARZT').AsString := Query_Quelle.FieldByName('FACHARZT').AsString;
        Query_Ziel.ParamByName('UNTERSUCHUNG').AsString := Query_Quelle.FieldByName('UNTERSUCHUNG').AsString;
        if Query_Quelle.FieldByName('ERLOESKONTO').AsInteger = Null then
           Query_Quelle.FieldByName('ERLOESKONTO').AsInteger := 0
        else
           Query_Ziel.ParamByName('ERLOESKONTO').AsInteger := Query_Quelle.FieldByName('ERLOESKONTO').AsInteger;
        Query_Ziel.ParamByName('RECHNUNGSFORMULAR').AsString := Query_Quelle.FieldByName('RECHNUNGSFORMULAR').AsString;
        Query_Ziel.ParamByName('FAMILIENANAMNESE').AsString := Query_Quelle.FieldByName('FAMILIENANAMNESE').AsString;
        Query_Ziel.ParamByName('KRANKHEITEN').AsString := Query_Quelle.FieldByName('KRANKHEITEN').AsString;
        Query_Ziel.ParamByName('THERAPIEPLAN').AsString := Query_Quelle.FieldByName('THERAPIEPLAN').AsString;
        Query_Ziel.ParamByName('SPONTANBERICHT').AsString := Query_Quelle.FieldByName('SPONTANBERICHT').AsString;
        Query_Ziel.ParamByName('GELENKTERBERICHT').AsString := Query_Quelle.FieldByName('GELENKTERBERICHT').AsString;
        Query_Ziel.ParamByName('DAUERDIAGNOSE').AsString := Query_Quelle.FieldByName('DAUERDIAGNOSE').AsString;
        Query_Ziel.ParamByName('RISIKO').AsString := Query_Quelle.FieldByName('RISIKO').AsString;
        Query_Ziel.ParamByName('RISIKO_BEMERKUNG').Value := Query_Quelle.FieldByName('RISIKO_BEMERKUNG').AsString;
        if Query_Quelle.FieldByName('GEWICHT').AsFloat = Null then
           Query_Quelle.FieldByName('GEWICHT').AsFloat := 0
        else
           Query_Ziel.ParamByName('GEWICHT').AsFloat := Query_Quelle.FieldByName('GEWICHT').AsFloat;
        if Query_Quelle.FieldByName('GROESSE').AsInteger = Null then
           Query_Quelle.FieldByName('GROESSE').AsInteger := 0
        else
           Query_Ziel.ParamByName('GROESSE').AsInteger := Query_Quelle.FieldByName('GROESSE').AsInteger;
        Query_Ziel.ParamByName('BILDEXT').AsString := Query_Quelle.FieldByName('BILDEXT').AsString;
        if Query_Quelle.FieldByName('ZAHLUNGSZIEL').AsInteger = Null then
           Query_Quelle.FieldByName('ZAHLUNGSZIEL').AsInteger := 0
        else
           Query_Ziel.ParamByName('ZAHLUNGSZIEL').AsInteger := Query_Quelle.FieldByName('ZAHLUNGSZIEL').AsInteger;
        if Query_Quelle.FieldByName('ID').AsInteger = Null then
           Query_Quelle.FieldByName('ID').AsInteger := 0
        else
           Query_Ziel.ParamByName('ID').AsInteger := Query_Quelle.FieldByName('ID').AsInteger;
        Query_Ziel.ParamByName('MEDIKATION').AsString := Query_Quelle.FieldByName('MEDIKATION').AsString;
        Query_Ziel.ParamByName('VERWANDT').AsString := Query_Quelle.FieldByName('VERWANDT').AsString;
        Query_Ziel.ParamByName('VERSICHERUNGSART').AsString := Query_Quelle.FieldByName('VERSICHERUNGSART').AsString;
        Query_Ziel.ParamByName('GEBURTSTAGSBRIEF').AsString := Query_Quelle.FieldByName('GEBURTSTAGSBRIEF').AsString;
        Query_Ziel.ParamByName('NEUJAHRSBRIEF').AsString := Query_Quelle.FieldByName('NEUJAHRSBRIEF').AsString;
        Query_Ziel.ParamByName('WEIHNACHTSBRIEF').AsString := Query_Quelle.FieldByName('WEIHNACHTSBRIEF').AsString;
        Query_Ziel.ParamByName('PATDIAGNOSE').AsString := Query_Quelle.FieldByName('PATDIAGNOSE').AsString;
        Query_Ziel.ParamByName('PATLEISTUNGEN').AsString := Query_Quelle.FieldByName('PATLEISTUNGEN').AsString;
        Query_Ziel.ParamByName('KOPFTEXT').AsString := Query_Quelle.FieldByName('KOPFTEXT').AsString;
        Query_Ziel.ParamByName('FUSSTEXT').AsString := Query_Quelle.FieldByName('FUSSTEXT').AsString;
        Query_Ziel.ParamByName('PATABSCHLUSS').AsString := Query_Quelle.FieldByName('PATABSCHLUSS').AsString;
        if Query_Quelle.FieldByName('PRIVATVERSICHERERNR').AsInteger = Null then
           Query_Quelle.FieldByName('PRIVATVERSICHERERNR').AsInteger := 0
        else
           Query_Ziel.ParamByName('PRIVATVERSICHERERNR').AsInteger := Query_Quelle.FieldByName('PRIVATVERSICHERERNR').AsInteger;
        Query_Ziel.ParamByName('NAMENSZUSATZ').AsString := Query_Quelle.FieldByName('NAMENSZUSATZ').AsString;
        if Query_Quelle.FieldByName('ZAHLUNGSBEDINGUNGBAR').AsInteger = Null then
           Query_Quelle.FieldByName('ZAHLUNGSBEDINGUNGBAR').AsInteger := 0
        else
           Query_Ziel.ParamByName('ZAHLUNGSBEDINGUNGBAR').AsInteger := Query_Quelle.FieldByName('ZAHLUNGSBEDINGUNGBAR').AsInteger;
        if Query_Quelle.FieldByName('ZAHLUNGSBEDINGUNGUNBAR').AsInteger = Null then
           Query_Quelle.FieldByName('ZAHLUNGSBEDINGUNGUNBAR').AsInteger := 0
        else
           Query_Ziel.ParamByName('ZAHLUNGSBEDINGUNGUNBAR').AsInteger := Query_Quelle.FieldByName('ZAHLUNGSBEDINGUNGUNBAR').AsInteger;
        if Query_Quelle.FieldByName('TEXTVORRECHNUNGSPOSITION').AsInteger = Null then
           Query_Quelle.FieldByName('TEXTVORRECHNUNGSPOSITION').AsInteger := 0
        else
           Query_Ziel.ParamByName('TEXTVORRECHNUNGSPOSITION').AsInteger := Query_Quelle.FieldByName('TEXTVORRECHNUNGSPOSITION').AsInteger;
        if Query_Quelle.FieldByName('MAHNUNG1KOPF').AsInteger = Null then
           Query_Quelle.FieldByName('MAHNUNG1KOPF').AsInteger := 0
        else
           Query_Ziel.ParamByName('MAHNUNG1KOPF').AsInteger := Query_Quelle.FieldByName('MAHNUNG1KOPF').AsInteger;
        if Query_Quelle.FieldByName('MAHNUNG1FUSS').AsInteger = Null then
           Query_Quelle.FieldByName('MAHNUNG1FUSS').AsInteger := 0
        else
           Query_Ziel.ParamByName('MAHNUNG1FUSS').AsInteger := Query_Quelle.FieldByName('MAHNUNG1FUSS').AsInteger;
        if Query_Quelle.FieldByName('MAHNUNG2KOPF').AsInteger = Null then
           Query_Quelle.FieldByName('MAHNUNG2KOPF').AsInteger := 0
        else
           Query_Ziel.ParamByName('MAHNUNG2KOPF').AsInteger := Query_Quelle.FieldByName('MAHNUNG2KOPF').AsInteger;
        if Query_Quelle.FieldByName('MAHNUNG2FUSS').AsInteger = Null then
           Query_Quelle.FieldByName('MAHNUNG2FUSS').AsInteger := 0
        else
           Query_Ziel.ParamByName('MAHNUNG2FUSS').AsInteger := Query_Quelle.FieldByName('MAHNUNG2FUSS').AsInteger;
        if Query_Quelle.FieldByName('MAHNUNG3KOPF').AsInteger = Null then
           Query_Quelle.FieldByName('MAHNUNG3KOPF').AsInteger := 0
        else
           Query_Ziel.ParamByName('MAHNUNG3KOPF').AsInteger := Query_Quelle.FieldByName('MAHNUNG3KOPF').AsInteger;
        if Query_Quelle.FieldByName('MAHNUNG3FUSS').AsInteger = Null then
           Query_Quelle.FieldByName('MAHNUNG3FUSS').AsInteger := 0
        else
           Query_Ziel.ParamByName('MAHNUNG3FUSS').AsInteger := Query_Quelle.FieldByName('MAHNUNG3FUSS').AsInteger;
        Query_Ziel.ParamByName('RECHNUNGPERMAIL').AsString := Query_Quelle.FieldByName('RECHNUNGPERMAIL').AsString;
        Query_Ziel.ParamByName('REZEPTFORMULAR').AsString := Query_Quelle.FieldByName('REZEPTFORMULAR').AsString;
        if Query_Quelle.FieldByName('MAILBODY').AsInteger = Null then
           Query_Quelle.FieldByName('MAILBODY').AsInteger := 0
        else
           Query_Ziel.ParamByName('MAILBODY').AsInteger := Query_Quelle.FieldByName('MAILBODY').AsInteger;
        Query_Ziel.ParamByName('GEBURTSZEIT').AsDate := Query_Quelle.FieldByName('GEBURTSZEIT').AsDateTime;
        Query_Ziel.ParamByName('VERSICHERERAUSNP7').AsString := Query_Quelle.FieldByName('VERSICHERERAUSNP7').AsString;
        Query_Ziel.ParamByName('MAILRECHNUNGSFORMULAR').AsString := Query_Quelle.FieldByName('MAILRECHNUNGSFORMULAR').AsString;
        Query_Ziel.ParamByName('RECHNUNGENOHNEDRUCK').Value := Query_Quelle.FieldByName('RECHNUNGENOHNEDRUCK').AsString;
        Query_Ziel.ParamByName('RECHNUNGALSPDF').AsString := Query_Quelle.FieldByName('RECHNUNGALSPDF').AsString;
        Query_Ziel.ParamByName('VERSTORBEN').AsString := Query_Quelle.FieldByName('VERSTORBEN').AsString;
        Query_Ziel.ParamByName('STERBEDATUM').AsDateTime := Query_Quelle.FieldByName('STERBEDATUM').AsDateTime;
        Query_Ziel.ParamByName('SERIENBRIEFTEILNAHME').Value := Query_Quelle.FieldByName('SERIENBRIEFTEILNAHME').AsString;
        Query_Ziel.ParamByName('BIC').AsString := Query_Quelle.FieldByName('BIC').AsString;
        if Query_Quelle.FieldByName('BIRTHDAYOFTHEYEAR').AsInteger = Null then
           Query_Quelle.FieldByName('BIRTHDAYOFTHEYEAR').AsInteger := 0
        else
           Query_Ziel.ParamByName('BIRTHDAYOFTHEYEAR').AsInteger := Query_Quelle.FieldByName('BIRTHDAYOFTHEYEAR').AsInteger;
        Query_Ziel.ParamByName('ZAHLUNGSART').AsString := Query_Quelle.FieldByName('ZAHLUNGSART').AsString;
        Query_Ziel.ParamByName('MANDANTENBANK').AsString := Query_Quelle.FieldByName('MANDANTENBANK').AsString;
        Query_Ziel.ParamByName('IBAN').AsString := Query_Quelle.FieldByName('IBAN').AsString;
        Query_Ziel.ParamByName('RECHNUNGALSPDFUNDDRUCK').AsString := Query_Quelle.FieldByName('RECHNUNGALSPDFUNDDRUCK').AsString;
        Query_Ziel.ParamByName('BEHANDLER').AsString := Query_Quelle.FieldByName('BEHANDLER').AsString;
        if Query_Quelle.FieldByName('BUDGET').AsFloat = Null then
           Query_Ziel.ParamByName('BUDGET').AsFloat := 0
        else
           Query_Ziel.ParamByName('BUDGET').AsFloat := Query_Quelle.FieldByName('BUDGET').AsFloat;

        Query_Ziel.ExecSQL;

        qryBildAlt.next;
      end;
  end;
Beim Debuggern tritt der Fehler genau in der Zeile auf.

Strg + c und Strg + v funktioniert bei mir nicht.

himitsu 25. Apr 2015 15:10

AW: ParamByName geht und geht mal nicht
 
Eigentlich müsste da sowas bei rauskommen. :gruebel:
Zitat:

---------------------------
Benachrichtigung über Debugger-Exception
---------------------------
Im Projekt Project3.exe ist eine Exception der Klasse Exception mit der Meldung 'Fehlermeldung' aufgetreten.
---------------------------
Anhalten Fortsetzen Hilfe
---------------------------
Zitat:

Delphi-Quellcode:
if Query_Quelle.FieldByName('xxxxx').AsInteger = Null then
   Query_Quelle.FieldByName('xxxxx').AsInteger := 0
else
   Query_Ziel.ParamByName('xxxxx').AsInteger := Query_Quelle.FieldByName('xxxxx').AsInteger;

Sicher, daß es so stimmt?

Delphi-Quellcode:
AsInteger = Null
wird niemals True liefern, denn 0 <> NULL.
AsInteger gibt eine 0 zurück, wenn der Wert des Feldes NULL ist.

"Query_Quelle.FieldByName('xxxxx').AsInteger := 0" ist garantiert das falsche DataSet.

Du meinst bestimmt
Delphi-Quellcode:
if Query_Quelle.FieldByName('xxxxx').IsNull then
   Query_Ziel.FieldByName('xxxxx').AsInteger := 0
else
   Query_Ziel.ParamByName('xxxxx').AsInteger := Query_Quelle.FieldByName('xxxxx').AsInteger;
Aber da AsInteger sowieso 0 liefert, wenn NULL, kann man das alles weglassen.
Delphi-Quellcode:
Query_Ziel.ParamByName('xxxxx').AsInteger := Query_Quelle.FieldByName('xxxxx').AsInteger;
reicht aus, genauso wie doch auch AsString ein NULL in '' umwandelt, bzw. AsFloat in 0.


Was genau soll eigentlich der Code machen?
NULL in 0, bzw. '' umwandeln?

Walter Landwehr 25. Apr 2015 15:54

AW: ParamByName geht und geht mal nicht
 
So habe es wieder abgeändert, bringt aber nichts. Fehler kommt mal, mal nicht.

Delphi-Quellcode:
while not qryBildAlt.eof do
      begin
        Query_Quelle.close;
        Query_Quelle.ParamByName('PATIENTNR').AsInteger:= qryBildAlt.FieldByName('PATIENTNR').AsInteger;
        Query_Quelle.Open;

        Query_Ziel.ParamByName('PATIENTNR').Value := qryBildAlt.FieldByName('PATIENTNR').AsInteger;
        Query_Ziel.ParamByName('PATIENTENNUMMER').AsInteger := Query_Quelle.FieldByName('PATIENTENNUMMER').AsInteger;
        Query_Ziel.ParamByName('SUCHWORT').AsString := Query_Quelle.FieldByName('SUCHWORT').AsString;
        Query_Ziel.ParamByName('ANREDE').AsString := Query_Quelle.FieldByName('ANREDE').AsString;
        Query_Ziel.ParamByName('TITEL').AsString := Query_Quelle.FieldByName('TITEL').AsString;
        Query_Ziel.ParamByName('VORNAME').AsString := Query_Quelle.FieldByName('VORNAME').AsString;
        Query_Ziel.ParamByName('NAME').AsString := Query_Quelle.FieldByName('NAME').AsString;
        Query_Ziel.ParamByName('STRASSE').AsString := Query_Quelle.FieldByName('STRASSE').AsString;
        Query_Ziel.ParamByName('LKZ').AsString := Query_Quelle.FieldByName('LKZ').AsString;
        Query_Ziel.ParamByName('PLZ').AsString := Query_Quelle.FieldByName('PLZ').AsString;
        Query_Ziel.ParamByName('ORT').AsString := Query_Quelle.FieldByName('ORT').AsString;
        Query_Ziel.ParamByName('BRIEFANREDE').AsString := Query_Quelle.FieldByName('BRIEFANREDE').AsString;
        Query_Ziel.ParamByName('TELEFON').AsString := Query_Quelle.FieldByName('TELEFON').AsString;
        Query_Ziel.ParamByName('GESCHAEFTSTELEFON').AsString := Query_Quelle.FieldByName('GESCHAEFTSTELEFON').AsString;
        Query_Ziel.ParamByName('TELEFAX').AsString := Query_Quelle.FieldByName('TELEFAX').AsString;
        Query_Ziel.ParamByName('TELEFAX2').AsString := Query_Quelle.FieldByName('TELEFAX2').AsString;
        Query_Ziel.ParamByName('MOBILFUNK').AsString := Query_Quelle.FieldByName('MOBILFUNK').AsString;
        Query_Ziel.ParamByName('EMAIL').AsString := Query_Quelle.FieldByName('EMAIL').AsString;
        Query_Ziel.ParamByName('GEBURTSDATUM').AsDateTime := Query_Quelle.FieldByName('GEBURTSDATUM').AsDateTime;
          Query_Ziel.ParamByName('GEBURTSTAG').AsInteger := Query_Quelle.FieldByName('GEBURTSTAG').AsInteger;
        Query_Ziel.ParamByName('GEBURTSMONAT').AsString := Query_Quelle.FieldByName('GEBURTSMONAT').AsString;
          Query_Ziel.ParamByName('GEBURTSMONAT_ZAHL').AsInteger := Query_Quelle.FieldByName('GEBURTSMONAT_ZAHL').AsInteger;
          Query_Ziel.ParamByName('GEBURTSJAHR').AsInteger := Query_Quelle.FieldByName('GEBURTSJAHR').AsInteger;
        Query_Ziel.ParamByName('GESCHLECHT').AsString := Query_Quelle.FieldByName('GESCHLECHT').AsString;
        Query_Ziel.ParamByName('FAMILIENSTAND').AsString := Query_Quelle.FieldByName('FAMILIENSTAND').AsString;
        Query_Ziel.ParamByName('KINDER').AsInteger := Query_Quelle.FieldByName('KINDER').AsInteger;
        Query_Ziel.ParamByName('BERUF').AsString := Query_Quelle.FieldByName('BERUF').AsString;
        Query_Ziel.ParamByName('HAUSARZT').AsString := Query_Quelle.FieldByName('HAUSARZT').AsString;
        Query_Ziel.ParamByName('GEBUEHSATZ').AsString := Query_Quelle.FieldByName('GEBUEHSATZ').AsString;
        Query_Ziel.ParamByName('KASSENNAME').AsString := Query_Quelle.FieldByName('KASSENNAME').AsString;
        Query_Ziel.ParamByName('KASSENNUMMER').AsString := Query_Quelle.FieldByName('KASSENNUMMER').AsString;
        Query_Ziel.ParamByName('VERSICHERTENNUMMER').AsString := Query_Quelle.FieldByName('VERSICHERTENNUMMER').AsString;
        Query_Ziel.ParamByName('VERISCHERTENSTATUS').AsString := Query_Quelle.FieldByName('VERISCHERTENSTATUS').AsString;
        Query_Ziel.ParamByName('GUELTIGBIS').AsDateTime := Query_Quelle.FieldByName('GUELTIGBIS').AsDateTime;
        Query_Ziel.ParamByName('BLUTGRUPPE').AsString := Query_Quelle.FieldByName('BLUTGRUPPE').AsString;
        Query_Ziel.ParamByName('AUFNAHMEDATUM').AsDateTime := Query_Quelle.FieldByName('AUFNAHMEDATUM').AsDateTime;
        Query_Ziel.ParamByName('LETZTESBEHANDLUNGSDATUM').AsDateTime := Query_Quelle.FieldByName('LETZTESBEHANDLUNGSDATUM').AsDateTime;
        Query_Ziel.ParamByName('NAECHSTERTERMIN').AsDateTime := Query_Quelle.FieldByName('NAECHSTERTERMIN').AsDateTime;
        Query_Ziel.ParamByName('UHRZEIT').AsDateTime := Query_Quelle.FieldByName('UHRZEIT').AsDateTime;
        Query_Ziel.ParamByName('TERMINGRUND').AsString := Query_Quelle.FieldByName('TERMINGRUND').AsString;
        Query_Ziel.ParamByName('KOMPRIMIERTERDRUCK').AsString := Query_Quelle.FieldByName('KOMPRIMIERTERDRUCK').AsString;
        Query_Ziel.ParamByName('LABORAUFTRAGSNUMMER').AsString := Query_Quelle.FieldByName('LABORAUFTRAGSNUMMER').AsString;
        Query_Ziel.ParamByName('BUCHEN').AsString := Query_Quelle.FieldByName('BUCHEN').AsString;
          Query_Ziel.ParamByName('KONTONUMMER').AsInteger := Query_Quelle.FieldByName('KONTONUMMER').AsInteger;
        Query_Ziel.ParamByName('ANAMNESE').AsString := Query_Quelle.FieldByName('ANAMNESE').AsString;
        Query_Ziel.ParamByName('BEMERKUNG').AsString := Query_Quelle.FieldByName('BEMERKUNG').AsString;
        Query_Ziel.ParamByName('BILD').AsString := Query_Quelle.FieldByName('BILD').AsString;
          Query_Ziel.ParamByName('DRUCKANZAHL').AsInteger := Query_Quelle.FieldByName('DRUCKANZAHL').AsInteger;
        Query_Ziel.ParamByName('KRITERIUM1').AsString := Query_Quelle.FieldByName('KRITERIUM1').AsString;
        Query_Ziel.ParamByName('KRITERIUM2').AsString := Query_Quelle.FieldByName('KRITERIUM2').AsString;
        Query_Ziel.ParamByName('KRITERIUM3').AsString := Query_Quelle.FieldByName('KRITERIUM3').AsString;
        Query_Ziel.ParamByName('BANKNAME').AsString := Query_Quelle.FieldByName('BANKNAME').AsString;
        Query_Ziel.ParamByName('BLZ').AsString := Query_Quelle.FieldByName('BLZ').AsString;
        Query_Ziel.ParamByName('BANKKONTONUMMER').AsString := Query_Quelle.FieldByName('BANKKONTONUMMER').AsString;
        Query_Ziel.ParamByName('BANKABBUCHUNG').AsString := Query_Quelle.FieldByName('BANKABBUCHUNG').AsString;
        Query_Ziel.ParamByName('ANLAGE').AsDateTime := Query_Quelle.FieldByName('ANLAGE').AsDateTime;
        Query_Ziel.ParamByName('ANLAGEBENUTZER').AsString := Query_Quelle.FieldByName('ANLAGEBENUTZER').AsString;
        Query_Ziel.ParamByName('AENDERUNG').AsDateTime := Query_Quelle.FieldByName('AENDERUNG').AsDateTime;
        Query_Ziel.ParamByName('AENDERUNGBENUTZER').AsString := Query_Quelle.FieldByName('AENDERUNGBENUTZER').AsString;
        Query_Ziel.ParamByName('BEHANDLUNGSZEITVON').AsDateTime := Query_Quelle.FieldByName('BEHANDLUNGSZEITVON').AsDateTime;
        Query_Ziel.ParamByName('BEHANDLUNGSZEITBIS').AsDateTime := Query_Quelle.FieldByName('BEHANDLUNGSZEITBIS').AsDateTime;
        Query_Ziel.ParamByName('BEHANDLUNGSTAG').AsDateTime := Query_Quelle.FieldByName('BEHANDLUNGSTAG').AsDateTime;
        Query_Ziel.ParamByName('BEHANDLUNGSZEITNEU').AsDateTime := Query_Quelle.FieldByName('BEHANDLUNGSZEITNEU').AsDateTime;
        Query_Ziel.ParamByName('BEFUND').AsString := Query_Quelle.FieldByName('BEFUND').AsString;
        Query_Ziel.ParamByName('FACHARZT').AsString := Query_Quelle.FieldByName('FACHARZT').AsString;
        Query_Ziel.ParamByName('UNTERSUCHUNG').AsString := Query_Quelle.FieldByName('UNTERSUCHUNG').AsString;
          Query_Ziel.ParamByName('ERLOESKONTO').AsInteger := Query_Quelle.FieldByName('ERLOESKONTO').AsInteger;
        Query_Ziel.ParamByName('RECHNUNGSFORMULAR').AsString := Query_Quelle.FieldByName('RECHNUNGSFORMULAR').AsString;
        Query_Ziel.ParamByName('FAMILIENANAMNESE').AsString := Query_Quelle.FieldByName('FAMILIENANAMNESE').AsString;
        Query_Ziel.ParamByName('KRANKHEITEN').AsString := Query_Quelle.FieldByName('KRANKHEITEN').AsString;
        Query_Ziel.ParamByName('THERAPIEPLAN').AsString := Query_Quelle.FieldByName('THERAPIEPLAN').AsString;
        Query_Ziel.ParamByName('SPONTANBERICHT').AsString := Query_Quelle.FieldByName('SPONTANBERICHT').AsString;
        Query_Ziel.ParamByName('GELENKTERBERICHT').AsString := Query_Quelle.FieldByName('GELENKTERBERICHT').AsString;
        Query_Ziel.ParamByName('DAUERDIAGNOSE').AsString := Query_Quelle.FieldByName('DAUERDIAGNOSE').AsString;
        Query_Ziel.ParamByName('RISIKO').AsString := Query_Quelle.FieldByName('RISIKO').AsString;
        Query_Ziel.ParamByName('RISIKO_BEMERKUNG').Value := Query_Quelle.FieldByName('RISIKO_BEMERKUNG').AsString;
          Query_Ziel.ParamByName('GEWICHT').AsFloat := Query_Quelle.FieldByName('GEWICHT').AsFloat;
          Query_Ziel.ParamByName('GROESSE').AsInteger := Query_Quelle.FieldByName('GROESSE').AsInteger;
        Query_Ziel.ParamByName('BILDEXT').AsString := Query_Quelle.FieldByName('BILDEXT').AsString;
          Query_Ziel.ParamByName('ZAHLUNGSZIEL').AsInteger := Query_Quelle.FieldByName('ZAHLUNGSZIEL').AsInteger;
          Query_Ziel.ParamByName('ID').AsInteger := Query_Quelle.FieldByName('ID').AsInteger;
        Query_Ziel.ParamByName('MEDIKATION').AsString := Query_Quelle.FieldByName('MEDIKATION').AsString;
        Query_Ziel.ParamByName('VERWANDT').AsString := Query_Quelle.FieldByName('VERWANDT').AsString;
        Query_Ziel.ParamByName('VERSICHERUNGSART').AsString := Query_Quelle.FieldByName('VERSICHERUNGSART').AsString;
        Query_Ziel.ParamByName('GEBURTSTAGSBRIEF').AsString := Query_Quelle.FieldByName('GEBURTSTAGSBRIEF').AsString;
        Query_Ziel.ParamByName('NEUJAHRSBRIEF').AsString := Query_Quelle.FieldByName('NEUJAHRSBRIEF').AsString;
        Query_Ziel.ParamByName('WEIHNACHTSBRIEF').AsString := Query_Quelle.FieldByName('WEIHNACHTSBRIEF').AsString;
        Query_Ziel.ParamByName('PATDIAGNOSE').AsString := Query_Quelle.FieldByName('PATDIAGNOSE').AsString;
        Query_Ziel.ParamByName('PATLEISTUNGEN').AsString := Query_Quelle.FieldByName('PATLEISTUNGEN').AsString;
        Query_Ziel.ParamByName('KOPFTEXT').AsString := Query_Quelle.FieldByName('KOPFTEXT').AsString;
        Query_Ziel.ParamByName('FUSSTEXT').AsString := Query_Quelle.FieldByName('FUSSTEXT').AsString;
        Query_Ziel.ParamByName('PATABSCHLUSS').AsString := Query_Quelle.FieldByName('PATABSCHLUSS').AsString;
          Query_Ziel.ParamByName('PRIVATVERSICHERERNR').AsInteger := Query_Quelle.FieldByName('PRIVATVERSICHERERNR').AsInteger;
        Query_Ziel.ParamByName('NAMENSZUSATZ').AsString := Query_Quelle.FieldByName('NAMENSZUSATZ').AsString;
         Query_Ziel.ParamByName('ZAHLUNGSBEDINGUNGBAR').AsInteger := Query_Quelle.FieldByName('ZAHLUNGSBEDINGUNGBAR').AsInteger;
          Query_Ziel.ParamByName('ZAHLUNGSBEDINGUNGUNBAR').AsInteger := Query_Quelle.FieldByName('ZAHLUNGSBEDINGUNGUNBAR').AsInteger;
          Query_Ziel.ParamByName('TEXTVORRECHNUNGSPOSITION').AsInteger := Query_Quelle.FieldByName('TEXTVORRECHNUNGSPOSITION').AsInteger;
          Query_Ziel.ParamByName('MAHNUNG1KOPF').AsInteger := Query_Quelle.FieldByName('MAHNUNG1KOPF').AsInteger;
          Query_Ziel.ParamByName('MAHNUNG1FUSS').AsInteger := Query_Quelle.FieldByName('MAHNUNG1FUSS').AsInteger;
          Query_Ziel.ParamByName('MAHNUNG2KOPF').AsInteger := Query_Quelle.FieldByName('MAHNUNG2KOPF').AsInteger;
          Query_Ziel.ParamByName('MAHNUNG2FUSS').AsInteger := Query_Quelle.FieldByName('MAHNUNG2FUSS').AsInteger;
          Query_Ziel.ParamByName('MAHNUNG3KOPF').AsInteger := Query_Quelle.FieldByName('MAHNUNG3KOPF').AsInteger;
          Query_Ziel.ParamByName('MAHNUNG3FUSS').AsInteger := Query_Quelle.FieldByName('MAHNUNG3FUSS').AsInteger;
        Query_Ziel.ParamByName('RECHNUNGPERMAIL').AsString := Query_Quelle.FieldByName('RECHNUNGPERMAIL').AsString;
        Query_Ziel.ParamByName('REZEPTFORMULAR').AsString := Query_Quelle.FieldByName('REZEPTFORMULAR').AsString;
         Query_Ziel.ParamByName('MAILBODY').AsInteger := Query_Quelle.FieldByName('MAILBODY').AsInteger;
        Query_Ziel.ParamByName('GEBURTSZEIT').AsDate := Query_Quelle.FieldByName('GEBURTSZEIT').AsDateTime;
        Query_Ziel.ParamByName('VERSICHERERAUSNP7').AsString := Query_Quelle.FieldByName('VERSICHERERAUSNP7').AsString;
        Query_Ziel.ParamByName('MAILRECHNUNGSFORMULAR').AsString := Query_Quelle.FieldByName('MAILRECHNUNGSFORMULAR').AsString;
        Query_Ziel.ParamByName('RECHNUNGENOHNEDRUCK').Value := Query_Quelle.FieldByName('RECHNUNGENOHNEDRUCK').AsString;
        Query_Ziel.ParamByName('RECHNUNGALSPDF').AsString := Query_Quelle.FieldByName('RECHNUNGALSPDF').AsString;
        Query_Ziel.ParamByName('VERSTORBEN').AsString := Query_Quelle.FieldByName('VERSTORBEN').AsString;
        Query_Ziel.ParamByName('STERBEDATUM').AsDateTime := Query_Quelle.FieldByName('STERBEDATUM').AsDateTime;
        Query_Ziel.ParamByName('SERIENBRIEFTEILNAHME').Value := Query_Quelle.FieldByName('SERIENBRIEFTEILNAHME').AsString;
        Query_Ziel.ParamByName('BIC').AsString := Query_Quelle.FieldByName('BIC').AsString;
         Query_Ziel.ParamByName('BIRTHDAYOFTHEYEAR').AsInteger := Query_Quelle.FieldByName('BIRTHDAYOFTHEYEAR').AsInteger;
        Query_Ziel.ParamByName('ZAHLUNGSART').AsString := Query_Quelle.FieldByName('ZAHLUNGSART').AsString;
        Query_Ziel.ParamByName('MANDANTENBANK').AsString := Query_Quelle.FieldByName('MANDANTENBANK').AsString;
        Query_Ziel.ParamByName('IBAN').AsString := Query_Quelle.FieldByName('IBAN').AsString;
        Query_Ziel.ParamByName('RECHNUNGALSPDFUNDDRUCK').AsString := Query_Quelle.FieldByName('RECHNUNGALSPDFUNDDRUCK').AsString;
        Query_Ziel.ParamByName('BEHANDLER').AsString := Query_Quelle.FieldByName('BEHANDLER').AsString;
         Query_Ziel.ParamByName('BUDGET').AsFloat := Query_Quelle.FieldByName('BUDGET').AsFloat;
        Query_Ziel.ExecSQL;

        qryBildAlt.next;
      end;
  end;
Kann doch nicht sein das Delphi mal so reagiert und mal anders, wobei am Code nichts verändert wird.

BadenPower 25. Apr 2015 16:12

AW: ParamByName geht und geht mal nicht
 
Wenn Du Dir sicher bist, dass der Fehler hier auftritt
Delphi-Quellcode:
Query_Ziel.ParamByName('PATIENTNR').AsInteger := qryBildAlt.FieldByName('PATIENTNR').AsInteger;
dann würde ich einmal schauen, bei welcher Umwandlung der Fehler entsteht.

Also die Anweisung splitten
Delphi-Quellcode:
lTempInteger := qryBildAlt.FieldByName('PATIENTNR').AsInteger;
Query_Ziel.ParamByName('PATIENTNR').AsInteger := lTempInteger;
Wenn der Fehler erst in der zweiten Zeile kommt, dann kannst Du Dir ja den Wert von lTempInteger im Fehlerfall in einen Try-Except-Block anzeigen lassen.

DeddyH 25. Apr 2015 16:34

AW: ParamByName geht und geht mal nicht
 
Bei dermaßen vielen Feldern in einer Tabelle würde ich mich zunächst einmal fragen, ob ich das auch wirklich ordentlich durchnormalisiert habe. Und wenn die Daten nirgends angezeigt werden (sieht auf den ersten Blick danach aus) würde ich mich als Nächstes fragen, ob ich das tatsächlich clientseitig abarbeiten möchte, oder ob eine SP nicht sinnvoller wäre. Erst wenn ich beide Fragen guten Gewissens bejahen kann, mache ich das über 2 Queries, und da würde ich nur Value von Quelle auch Value von Ziel zuweisen, ohne Typumwandlungen.

Walter Landwehr 25. Apr 2015 17:20

AW: ParamByName geht und geht mal nicht
 
Danke DeddyH, ich habe es mal ohne Typenwandlung probiert. Zur Zeit läuft die Übernahme. Kann mir jemand eine Lektüre (Buch, Anleitung) zu Erstellung von SP nennen.

Danke an alle.

mkinzler 25. Apr 2015 17:33

AW: ParamByName geht und geht mal nicht
 
Eine Normalisierung würde mehr bringen. Wie oft wird diese Funktion ausgeführt?

In diesem Fall wäre die SP im Großen Und Ganzen eine 1:! Umsetzung des Codes

So auf den 1. Blick fallen einem da schon einige Tabellen auf, in welche man diese "Monstertabelle" aufspalten könnte:

PATIENT
ADRESSE
KOMMADRESSE ( Telefon, Fax, Email, Pager, ... 1 DS pro Eintrag)
KRANKENKASSE,
ARZT
usw.

DeddyH 25. Apr 2015 17:34

AW: ParamByName geht und geht mal nicht
 
http://www.firebirdsql.org/refdocs/l...procedure.html
http://ibexpert.net/ibe/index.php?n=...resAndTriggers
http://www.destructor.de/firebird/storedproc.htm


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:35 Uhr.
Seite 1 von 3  1 23      

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz