Einzelnen Beitrag anzeigen

Benutzerbild von GuenterS
GuenterS

Registriert seit: 3. Mai 2004
Ort: Österreich > Bad Vöslau
760 Beiträge
 
Turbo Delphi für Win32
 
#1

Mit UIB Komponente Datensatz in FireBird Tabelle einfügen

  Alt 6. Sep 2007, 23:36
Datenbank: FireBird • Version: 1.5 • Zugriff über: UIB
Hallo,

ich versuche gerade mittels den UIB Komponenten einen Eintrag in einer Tabelle zu machen, bekomme jedoch immer Fehlermeldungen.

Delphi-Quellcode:
  with TJvUIBquery.Create(nil) do
  try
    DataBase := dmIntern.InternDB;
    Transaction := dmIntern.IBTransaction;
    SQL.Text := 'INSERT INTO kontakte (K_KONTAKTEID, ADRESSENID, ANSPRECHPARTNERID, '
      + ' K_DATUMK, K_BEREICH, K_FEHLERKLASSE, K_ABGESCHLOSSEN, K_EIN_AUS, K_PUBLIC_PRIVATE, '
      + ' K_ANLAGEN, PR_PRODUKTEID, KA_KONTAKTARTID, K_GELOESCHT, K_ZEIT, '
      + ' K_VERRECHNET, TODO_SYSID, K_DRINGLICHKEIT_STR, K_UNTERBEREICH, ST_STATUSID) '
      + ' VALUES(:K_KONTAKTEID, :ADRESSENID, :ANSPRECHPARTNERID, '
      + ' :K_DATUMK, :K_BEREICH, :K_FEHLERKLASSE, :K_ABGESCHLOSSEN, :K_EIN_AUS, :K_PUBLIC_PRIVATE, '
      + ' :K_ANLAGEN, :PR_PRODUKTEID, :KA_KONTAKTARTID, :K_GELOESCHT, :K_ZEIT, '
      + ' :K_VERRECHNET, :TODO_SYSID, :K_DRINGLICHKEIT_STR, :K_UNTERBEREICH, :ST_STATUSID)';

    Params.ByNameAsInteger['K_KONTAKTEID'] := lKID;
    Params.ByNameAsString['ADRESSENID'] := GetComboBoxID(ComboKunde, ComboKunde.ItemIndex);
    Params.ByNameAsString['ANSPRECHPARTNERID'] := GetComboBoxID(ComboAnsp, ComboAnsp.ItemIndex);
    Params.ByNameAsDateTime['K_DATUMK'] := now;
    Params.ByNameAsString['K_BEREICH'] := GetComboBoxID(ComboBereich, ComboBereich.ItemIndex);
    Params.ByNameAsString['K_FEHLERKLASSE'] := GetComboBoxID(ComboTODO, ComboTODO.ItemIndex);
    Params.ByNameAsInteger['K_ABGESCHLOSSEN'] := 0;
    Params.ByNameAsInteger['K_EIN_AUS'] := 0;
    Params.ByNameAsInteger['K_PUBLIC_PRIVATE'] := 0;
    Params.ByNameAsInteger['K_ANLAGEN'] := 0;
    Params.ByNameAsString['PR_PRODUKTEID'] := GetComboBoxID(ComboPRodukt, ComboProdukt.ItemIndex);
    Params.ByNameAsString['KA_KONTAKTARTID'] := GetComboBoxID(ComboKontaktart, ComboKontaktArt.ItemIndex);
    Params.ByNameAsInteger['K_GELOESCHT'] := 0;
    Params.ByNameAsDateTime['K_ZEIT'] := now;
    Params.ByNameAsInteger['K_VERRECHNET'] := 0;
    Params.ByNameAsString['TODO_SYSID'] := GetComboBoxID(ComboTodo, ComboTodo.ItemIndex);
    Params.ByNameAsString['K_DRINGLICHKEIT_STR'] := ComboDringlichkeit.Text;
    Params.ByNameAsString['K_UNTERBEREICH'] := Edit1.Text;
    Params.ByNameAsString['ST_STATUSID'] := GetComboBoxID(ComboStatus, ComboStatus.ItemIndex);
    ExecSQL;


  finally
    Free;
  end;
Zitat von Exception:
---------------------------
Benachrichtigung über Debugger-Exception
---------------------------
Im Projekt todoXP.exe ist eine Exception der Klasse EUIBError mit der Meldung 'arithmetic exception, numeric overflow, or string truncation
Cannot transliterate character between character sets
can't format message 13:198 -- message file F:\d7\bin\firebird.msg not found
Error Code: 1' aufgetreten.
---------------------------
Anhalten Fortsetzen Hilfe
---------------------------
Was mache ich falsch? Wenn das ganze z.B.: eine TMSQuery oder TADOQuery für den MS SQL-Server wäre würde das ja funktionieren.
Günter
Pünktlichkeit ist die Fähigkeit vorherzusagen um wieviel sich der Andere verspäten wird.
  Mit Zitat antworten Zitat