Mensaje    Asunto: Problema al ejecutar Query Responder citando

Que ondas señores, resulta que estoy utilizando el codigo que anda por ahi para la importacion de Excel a Builder, lee la informacion perfectamente pero al momento de meterla en el query para insertarla en La base de Datos me manda este error:

Cita:
Project Excel.exe raised excepcion class EDBEngineError with message 'General SQL Error Data type unknown.
Client SQL dialect1 does not support reference to 64-bit numeric datatype'.Process stopped. Use Step or Run to Continue.


No se por qué, es la primera vez que me sale, desde que comencé a trabaja con Builder, la informacion que saco de la hoja de Excel la pongo en Edit's para despues pasar esa información como parametros al Query.

El codigo del evento CLick del boton es el siguiente:

Código:
void __fastcall TForm1::BimportarExcelClick(TObject *Sender)
{
   BimportarExcel->Enabled=false;
   //
   // Empezamos con EXCEL
   //

   OpenDialog1->Title="Importar datos de";

   if (OpenDialog1->Execute())
     {
//Busco un fichero Excel y obtengo su nombre y ruta
       Variant FileName = OpenDialog1->FileName.c_str();
       EnombreFichero->Text=FileName;

       try
          {
             Pabierto->Color=clYellow;
             Pabierto->Caption=mensajeAlerta;
             //Abro la aplicación Excel y la hago visible
             aplicacionExcel=CreateOleObject("Excel.Application");
             //aplicacionExcel.Exec(PropertySet("Visible")<<true);

             // LIBROS

             // Tomar el primer objeto libro de la colección
             coleccionLibros=aplicacionExcel.Exec(PropertyGet("Workbooks"));
             // abrirlo
             coleccionLibros.Exec(Procedure("Open")<<OpenDialog1->FileName);


             // (sin usar el OpenDialog)
             // coleccionLibros.Exec(Procedure("Open") << "C:\\directorio\\fichero.xls");

          }
       catch (Exception &exception) // no llegó a abrirse
          {
             Application->MessageBox("Esta aplicación necesita Excel 97 o superior","Aviso...",MB_ICONSTOP);
             BimportarExcel->Enabled=true;
             return;
          }

       try
          {
             // LIBRO ACTIVO
             // Tomar el primer libro de la aplicacion
             libro = coleccionLibros.Exec(PropertyGet("Item") << 1);

             // HOJAS
             // Tomar la colección de hojas del libro activo
             //coleccionHojas = aplicacionExcel.OlePropertyGet("Worksheets");
             coleccionHojas = libro.Exec(PropertyGet("Worksheets"));

             // HOJA ACTIVA
             //

             // Tomar la hoja activa de la colección de hojas
             //hoja=aplicacionExcel.Exec(PropertyGet("ActiveSheet"));
             hoja = coleccionHojas.Exec(PropertyGet("Item") << 1);


             if (hoja.IsEmpty())
                 ShowMessage("No hay ninguna hoja activa");
             else
               {

                  // ver nombre a una hoja
                  EnombreHoja->Text=hoja.Exec(PropertyGet("Name"));

                  // CELDAS
                  //
                  int fila; // índice a la fila actual
                  int ultimaFila; // índice a la última fila que tiene datos (no la conozco inicialmente)
                  int columna;
                  int ultimaColumna;
                  Variant ultimaCelda; // contiene la última celda
                  String valor; // contiene valor de una celda (son de tipo String)

                  // indico la primera fila que tiene datos (se supone que lo se)
                  fila=1;
                  columna=1;

                  // Busca la última fila que tiene datos:

                  // Tomar la coleccion de celdas
                  celdas=hoja.Exec(PropertyGet("Cells"));

                  // Tomar la última celda con datos
                  ultimaCelda=celdas.Exec(Function("SpecialCells")<<11);

                  // fila de la ultima celda
                  ultimaFila=ultimaCelda.Exec(PropertyGet("Row"));
                  EnumFilas->Text=ultimaFila;

                  // Tomar la última columna ?
                  ultimaColumna=8;

                  Panel1->Color = clRed;

                  for (fila=1; fila<=ultimaFila;fila++)
                  for (columna=1; columna<=ultimaColumna;columna++)
                     {
                        Application->ProcessMessages();

                        // leo valor celda (fila =fila, columna = columna)
                        valor=hoja.Exec(PropertyGet("Cells")<<fila<<columna);

                        Efila->Text=fila;
                        Ecolumna->Text=columna;

                        // tratar como números
//*******************************************************
//*******************************************************
                        ShortDateFormat = "dd/mm/yyyy";
                        if(Ecolumna->Text == 1)
                           {
                             if(Efila->Text == "6")
                                Edit1->Text = valor;
                             if(Efila->Text == "8")
                                Edit2->Text = valor;
                             if(Efila->Text == "9")
                                Edit3->Text = valor;
                           }
                        if(StrToInt(Efila->Text) > 12)
                          {
                            if(Ecolumna->Text == "1")
                                Edit4->Text = valor;
                            if(Ecolumna->Text == "2")
                                Edit5->Text = valor;
                            if(Ecolumna->Text == "5")
                                Edit6->Text = valor;
                            if(Ecolumna->Text == "7")
                                Edit7->Text = valor;
                            if(Ecolumna->Text == "8")
                                Edit8->Text = valor;
                            if(Ecolumna->Text == "8")
                               {
                                  Query1->ParamByName("desglose")->AsString = Edit1->Text.SubString(11,6);
                                  Query1->ParamByName("f_pago")->AsDate = StrToDate(Edit2->Text.SubString(17,10));
                                  Query1->ParamByName("bank")->AsString = Edit3->Text.SubString(8,10);
                                  Query1->ParamByName("suc")->AsInteger = StrToInt(Edit4->Text);
                                  Query1->ParamByName("fol")->AsInteger = StrToInt(Edit5->Text);
//                                  Query1->ParamByName("impo_res")->AsFloat = StrToFloat(Edit6->Text);
//                                  Query1->ParamByName("num")->AsInteger = StrToInt(Edit7->Text);
//                                  Query1->ParamByName("impo_fac")->AsFloat = StrToFloat(Edit8->Text);
                                  Query1->Close();
                                  Query1->ExecSQL();
                               }
                          }
                     }
                  Panel1->Color = clGreen;
                  //
                  // CERRAR
                  //
                  cerrarExcel();
               } // fin if hoja isEmpty

          }
       catch (Exception &exception)
          {
             BimportarExcel->Enabled=true;
             cerrarExcel();
             return;
          }

     } // fin if OPENDIALOG1 ...

BimportarExcel->Enabled=true;
}


Se que esta largo y a lo mejor les de flojera leer todo ese chorizo, pero por favor ayudenme.

Alguna Idea ????????????'

_________________
Sin pena, ni gloria