abdielalej
02-04-2010, 16:30:28
Hola a todos y de antemano muchas gracias.
Tengo un Dbgrid que lo utilizo para mostrar unos datos, ahora hay una columna del dbgrid que está vacía o sea:
Nombre producto cantidad
Producto1
Producto2
Así se ve, ahora cuando lleno ese campo cantidad...esa fila completa junto con otros datos quiero insertarlo en otra tabla. Ahora el Dbgrid automáticamente intenta actualizar con la consulta que se llenó(eso creo que hace)...lo que quiero es prescindir de esa propiedad... y yo mismo crear una consulta de inserción... a medida que llene la columna cantidad de un producto se ejecute la consulta y así sucesivamente....puse el código en OnUpdateData del datasource...pero no hace lo que yo quiero. Porque lo inserta una vez...pero en vez de hacerlo una vez lo quiere hacer parece para todas las filas del Dbgrid y entonces me da error de duplicacón...
Por favor ayúdenme...
void __fastcall TDataModule2::DataSourcemostrar_tienda_prodUpdateData(
TObject *Sender)
{
//DataModule2->ADOQuerymostrar_tienda_prod->RecordCount;
DataModule2->ADOQueryInsertOper->Parameters->Items[0]->Value=Form4->PageControl1->ActivePage->Caption;
DataModule2->ADOQueryInsertOper->Parameters->Items[1]->Value=Form4->DBGrid1->Columns->Items[0]->Field->AsString;
DataModule2->ADOQueryInsertOper->Parameters->Items[2]->Value=Form4->DBGrid1->Columns->Items[3]->Field->AsString;
DataModule2->ADOQueryInsertOper->ExecSQL();
}
Tengo un Dbgrid que lo utilizo para mostrar unos datos, ahora hay una columna del dbgrid que está vacía o sea:
Nombre producto cantidad
Producto1
Producto2
Así se ve, ahora cuando lleno ese campo cantidad...esa fila completa junto con otros datos quiero insertarlo en otra tabla. Ahora el Dbgrid automáticamente intenta actualizar con la consulta que se llenó(eso creo que hace)...lo que quiero es prescindir de esa propiedad... y yo mismo crear una consulta de inserción... a medida que llene la columna cantidad de un producto se ejecute la consulta y así sucesivamente....puse el código en OnUpdateData del datasource...pero no hace lo que yo quiero. Porque lo inserta una vez...pero en vez de hacerlo una vez lo quiere hacer parece para todas las filas del Dbgrid y entonces me da error de duplicacón...
Por favor ayúdenme...
void __fastcall TDataModule2::DataSourcemostrar_tienda_prodUpdateData(
TObject *Sender)
{
//DataModule2->ADOQuerymostrar_tienda_prod->RecordCount;
DataModule2->ADOQueryInsertOper->Parameters->Items[0]->Value=Form4->PageControl1->ActivePage->Caption;
DataModule2->ADOQueryInsertOper->Parameters->Items[1]->Value=Form4->DBGrid1->Columns->Items[0]->Field->AsString;
DataModule2->ADOQueryInsertOper->Parameters->Items[2]->Value=Form4->DBGrid1->Columns->Items[3]->Field->AsString;
DataModule2->ADOQueryInsertOper->ExecSQL();
}