Permisi mau nanya :)

Saya ada problem dgn Delphi 5.0 dg database oracle 8.1.5 kenapa yah, error message-nya 
begini :

Project Faxcoversheet.exe raised exception class EDBEngineError with message 'General 
SQL error.
[Oracle][ODBC][Ora]ORA-01722: invalid number'. Process Stopped. Use Step or Run to 
continue.

Strukturnya :
 Name                                                  Null?    Type
 ----------------------------------------------------- -------- --------------
 FCDATE                                                         VARCHAR2(40)
 FCTO                                                           VARCHAR2(40)
 FCFAX                                                          VARCHAR2(40)
 FCSECURITY                                                     VARCHAR2(40)
 FCCC                                                           VARCHAR2(30)
 FCCUMDATE                                                      VARCHAR2(30)
 FCEXDATE                                                       VARCHAR2(30)
 FCBOOK                                                         VARCHAR2(30)
 FCPAYDATE                                                      VARCHAR2(30)
 FCCASHRATE                                                     NUMBER(8,3)
 FCHOLDING                                                      NUMBER(12,2)
 FCDIVIDEND                                                     NUMBER(12,2)
 FCTAX                                                          VARCHAR2(3)
 FCNETCASH                                                      NUMBER(12,2)
 FCVALUE                                                        NUMBER(12,2)
 TAXVALUE                                                       NUMBER(12,2)
 FCCOMPANY                                                      VARCHAR2(40)
 FCCURRENCY                                                     VARCHAR2(4)

Program Script-nya :
        TblFacsimile.Close;
        TblFacsimile.SQl.Clear;
        TblFacsimile.Sql.Add('Insert into evin.facsimile values (');
        TblFacsimile.Sql.Add(' :TglForm ,');    // 0 //
        TblFacsimile.Sql.Add(':Kepada ,');     // 1 //
        TblFacsimile.Sql.Add(':NoFax ,');      // 2 //
        TblFacsimile.Sql.Add(':Saham ,');      // 3 //
        TblFacsimile.Sql.Add(':Carboncopy ,'); // 4 //
        TblFacsimile.Sql.Add(':Cum ,');        // 5 //
        TblFacsimile.Sql.Add(':Exdate ,');     // 6 //
        TblFacsimile.Sql.Add(':Book ,');       // 7 //
        TblFacsimile.Sql.Add(':Pay ,');        // 8 //
        TblFacsimile.Sql.Add(':CashRate ,');   // 9 //
        TblFacsimile.Sql.Add(':Holding ,');    // 10 //
        TblFacsimile.Sql.Add(':Dividend ,');   // 11 //
        TblFacsimile.Sql.Add(':Tax ,');        // 12 //
        TblFacsimile.Sql.Add(':NetCash ,');    // 13 //
        TblFacsimile.Sql.Add(':TglValue ,');   // 14 //
        TblFacsimile.Sql.Add(':NilaiTax ,');    // 15 //
        TblFacsimile.Sql.Add(':Company ,');     // 16 //
        TblFacsimile.Sql.Add(':Matauang )');   // 17 //
        TblFacsimile.Params[0].AsString := FormatDateTime('dddd, mmmm d, 
yyyy',DateTimePicker1.Date);
        TblFacsimile.Params[1].AsString := ComboBox1.Text;
        TblFacsimile.Params[2].AsString := TblCust.FieldByName('Fax1').AsString;
        TblFacsimile.Params[3].AsString := ComboBox2.Text;
        TblFacsimile.Params[4].AsString := 
TblSales.FieldByName('SalesPersonName').AsString;
        TblFacsimile.Params[5].AsString := FormatDateTime('mmmm d, 
yyyy',DateTimePicker2.Date);
        TblFacsimile.Params[6].AsString := FormatDateTime('mmmm d, 
yyyy',DateTimePicker3.Date);
        TblFacsimile.Params[7].AsString := FormatDateTime('mmmm d, 
yyyy',DateTimePicker4.Date);
        TblFacsimile.Params[8].AsString := FormatDateTime('mmmm d, 
yyyy',DateTimePicker5.Date);
        TblFacsimile.Params[9].AsFloat :=  {210;} StrToFloat(Edit1.Text);
        TblFacsimile.Params[10].AsFloat := StrToFloat(Edit2.Text);
        TblFacsimile.Params[11].AsFloat := StrToFloat(Edit1.Text) * 
StrToFloat(Edit2.Text);
        TblFacsimile.Params[12].AsString := ComboBox3.Text;
     If ComboBox3.Text <> '0' Then
        TblFacsimile.Params[13].AsFloat := {26879422.5} (StrToFloat(Edit1.Text) * 
StrToFloat(Edit2.Text)) - (StrToFloat(Edit1.Text) * StrToFloat(Edit2.Text)) * 
(StrToInt(ComboBox3.Text) / 100)
     Else
        TblFacsimile.Params[13].AsFloat := {26879422.5;} StrToFloat(Edit1.Text) * 
StrToFloat(Edit2.Text);
        TblFacsimile.Params[14].AsString := FormatDateTime('mmmm d, 
yyyy',DateTimePicker6.Date);
     If ComboBox3.Text <> '0' Then
          TblFacsimile.Params[15].AsFloat :=  {4743427.5} (StrToFloat(Edit1.Text) * 
StrToFloat(Edit2.Text)) * (StrToInt(ComboBox3.Text) / 100)
        Else
          TblFacsimile.Params[15].AsFloat := 0;
        TblFacsimile.Params[16].AsString := Edit6.Text;
        TblFacsimile.Params[17].AsString := Trim(ComboBox4.Text);
        TblFacsimile.ExecSQL;


Thanks.

Kirim email ke