Hola e nuevo, vuelvo con mis dudas...me encuentro en el intento de copiar los datos de una tabla maestro detalle a otra maestro-detalle. En un principio intentaba copiar las tablas por separado pero no me aparece la información correcta en la detalle y no me aparecía nada en la pedidos. Ahora estoy probando de otro modo, el código que utilizo es el siguiente:
Código:
DM.TblPedidos.First;
while not DM.TblPedidos.Eof do
begin
DM.TblPedidos_seg.Insert;
DM.TblPedidos_seg.FieldByName('Id').AsString := DM.TblPedidos.fieldbyname('Id').AsString;
DM.TblPedidos_seg.FieldByName('Proveedor').AsString := DM.TblPedidos.fieldbyname('Proveedor').AsString;
DM.TblPedidos_seg.FieldByName('Cod_Pedido').AsString := DM.TblPedidos.fieldbyname('Cod_Pedido').AsString;
DM.TblPedidos_seg.FieldByName('Nom_Proveedor').AsString := DM.TblPedidos.fieldbyname('Nom_Proveedor').AsString;
DM.TblPedidos_seg.FieldByName('Fecha').AsString := DM.TblPedidos.fieldbyname('Fecha').AsString;
DM.TblPedidos_seg.FieldByName('Fecha_prevista').AsString := DM.TblPedidos.fieldbyname('Fecha_prevista').AsString;
DM.TblPedidos_seg.FieldByName('Fecha_llegada').AsString := DM.TblPedidos.fieldbyname('Fecha_llegada').AsString;
DM.TblPedidos_seg.FieldByName('Gen_Albaran').AsString := DM.TblPedidos.fieldbyname('Gen_Albaran').AsString;
while not DM.TblArticulosPedido.Eof do
begin
DM.TblArticulosPedido_seg.Insert;
DM.TblArticulosPedido_seg.FieldByName('Articulo').AsString := DM.TblArticulosPedido.fieldbyname('Articulo').AsString;
DM.TblArticulosPedido_seg.FieldByName('Id').AsString := DM.TblArticulosPedido.fieldbyname('Id').AsString;
DM.TblArticulosPedido_seg.FieldByName('Cod_Pedido').AsString := DM.TblArticulosPedido.fieldbyname('Cod_Pedido').AsString;
DM.TblArticulosPedido_seg.FieldByName('Cantidad').AsString := DM.TblArticulosPedido.fieldbyname('Cantidad').AsString;
DM.TblArticulosPedido_seg.FieldByName('Ultimo_precio').AsString := DM.TblArticulosPedido.fieldbyname('Ultimo_precio').AsString;
DM.TblArticulosPedido_seg.Post;
DM.TblArticulosPedido_seg.Next;
DM.TblArticulos.Next;
end;
DM.TblPedidos_seg.Post;
DM.TblPedidos_seg.Next;
DM.TblPedidos.Next;
end;
Pero me da el siguiente error:
"Corrupt Index. Index E:\webs\Hotels\delphi\DBHG_seg\DB\PEDIDOS.PX"
Entonces mis preguntas son:
- PQ no se pueden copiar las tablas por separado??
- Es el código lo que hace que me de el error comentado??
Espero que me podais echar una mano.
Un saludo y gracias...