Ver Mensaje Individual
  #62  
Antiguo 18-08-2013
DOS DOS is offline
Miembro
NULL
 
Registrado: jul 2011
Posts: 173
Reputación: 13
DOS Va por buen camino
Bueno la otra materia (Visual C#) aprobe con 9, esta quedara para diciembre, asi que si quieren seguir ayudandome, les cuento como sigue esto.
con el siguiente codigo y la ayuda de ozswizzard casi funciona, osea realiza lo que quiero pero lo almacena todo de forma temporal, cuando salgo se borra todo.
Código Delphi [-]
procedure TForm14.BitBtn1Click(Sender: TObject);  // copia una factura a la otra 
begin
 with Query1 do 
begin
         Close;
         SQL.Clear;
    SQL.Add('INSERT INTO detfacturafinal');
    SQL.Add('SELECT * FROM detfactura');
    ExecSQL;
 end;
 end;
  procedure TForm14.SpeedButton3Click(Sender: TObject);//limpia la tabla detfactura
 begin
 with Query1 do
 begin
   Close;
   SQL.Clear;
   SQL.Add('DELETE FROM detfactura');
   ExecSQL;
 end;
 end;
Asi que me acosnsejo esto
Código Delphi [-]
procedure TForm14.BitBtn1Click(Sender: TObject);  // copia una factura a la otra
 begin
    Database1.StartTransaction;
    try
       with Query1 do
       begin
               Close;
               SQL.Clear;
          SQL.Add('INSERT INTO detfacturafinal');
          SQL.Add('SELECT * FROM detfactura');
          ExecSQL;
       end;
       DataBase1.Commit;
    except
                   on E:Exception do 
begin
          DataBase1.Rollback;
                   MessageDlg('Error:' + E.Message, mtError, [mbOK], 0);
       end;
    end;
 end;
  procedure TForm14.SpeedButton3Click(Sender: TObject);//limpia la tabla detfactura
 begin
    Database1.StartTransaction;
    try
       with Query1 do
       begin
          Close;
          SQL.Clear;
          SQL.Add('DELETE FROM detfactura');
          ExecSQL;
       end;
       DataBase1.Commit;
    except
             on E:Exception do
 begin          
DataBase1.Rollback;                   
MessageDlg('Error:' + E.Message, mtError, [mbOK], 0);
       end;
    end;
 end;
El asunto como le mencione nunca habia utilizado un Tdatabase, asi que buscando llegue a colocar un Tdatabase en el formulario y lo configure de la siguiente manera en el DataBase Editor:
Name: Facturacion
Alias name: ArgOs
Parameter overrides:
PATH=C:\ITM\Tablas
ENABLE BCD=FALSE
DEFAULT DRIVER=PARADOX

En las propiedades
AliasName ArgOs
connected False
DatabaseName Facturacion //el nombre inventado

El Database ArgOs lo cree con estas caracteristicas
type STANDAR
defaul driver PARADOX
enable BCD FALSE
path C:\tablas

las tablas y el Query
DatabaseName Facturacion



Ahora cuando lo hago correr me tira el siguiente error:
Database1: the transaction isolation level be dirty read local databases...
a ver si logran identificar que estoy haciendo mal o me falta hacer. gracias.

Última edición por DOS fecha: 18-08-2013 a las 03:41:31.
Responder Con Cita