Ver Mensaje Individual
  #20  
Antiguo 22-07-2008
radge radge is offline
Miembro
 
Registrado: may 2008
Posts: 147
Reputación: 19
radge Va por buen camino
Código PHP:

procedure TfrmSupVision
.wwDBGrid1FieldChanged(SenderTObject;
  
FieldTField);
Var
   
cadenaSQL,FilaCheck,Lin_Codi,Alb_Codi,Per_Codi,accountnum,dataareaid ,
   
varDades varUnitatsRestants string;
   
Cantidad UnitatsServidesBD botoseleccionat  Integer ;
   
Marca TBookMarkStr;

begin
         Lin_Codi 
:= query_supvision.FieldbyName('LIN_Codi').AsString;
         
Alb_Codi := query_supvision.FieldbyName('ALB_Codi').AsString;
         
Per_Codi := query_supvision.FieldbyName('Per_Codi').AsString;
         
Accountnum := query_supvision.FieldbyName('accountnum').AsString;
         
Dataareaid := query_supvision.FieldbyName('dataareaid').AsString;
         
Cantidad := query_supvision.FieldbyName('Cantidad').asinteger;
         
UnitatsServidesBD := query_supvision.FieldbyName('Unitats_Servides').asinteger;


        if ((
Lin_Codi <> '') and (Dataareaid <> '') and (Alb_Codi <> '') and (Per_Codi <> '') and (Accountnum <> '') AND (inttostr(Cantidad) <> '') ) then begin
           
if (combobox1.text 'TODOS'then
               FreeAndNil
(Marca);
               
Marca := query_supvision.Bookmark;

        
FilaCheck := wwDBGrid1.GetFieldValue(7); 

        if (
FilaCheck 'S'then  begin
             
if (Cantidad 1then begin
                 cadenaSQL 
:= 'SQL XXXXXXXXXXX';
              
ModuloDatos.Ejecutar_SQL(cadenaSQL);
              
cadenaSQL := 'SQL XXXXXXXXX';
              
ModuloDatos.Ejecutar_SQL(cadenaSQL);
               try
                  
query_supvision.Close;
                  
query_supvision.Open;
               
except
                  showmessage
('Error al abrir/cerrar BD vuelve a intentar lo');
               
end;
             
end

             
else begin // Si hi ha més d'una unitat d'aquella linea de pedido ==> FORM NOU
                 
try
                   
Application.CreateForm (TfrmUnidadesPedidoVentafrmUnidadesPedidoVenta);
                 
except
                 
;
                 
end;
                   
frmUnidadesPedidoVenta.CarregaDades(Cantidad,UnitatsServidesBD);
                   if (
Cantidad 0) and (UnitatsServidesBD >=)then begin
                   frmUnidadesPedidoVenta
.ShowModal;
                   
varDades := frmUnidadesPedidoVenta.rebreDades;
                   
varUnitatsRestants := frmUnidadesPedidoVenta.rebreUnitatsRestants;
                      
cadenaSQL := 'SQL XXXXXXXXXXXXXXXXXX';
                      
ModuloDatos.Ejecutar_SQL(cadenaSQL);
                      
cadenaSQL := 'SQL XXXXXXXXXXXXXXXXXX';
                      
ModuloDatos.Ejecutar_SQL(cadenaSQL);
                      
query_supvision.Close;
                      
query_supvision.Open;
                  
end
                  
else begin
                     showmessage
('Error al recibir los datos');
                  
end;
              
end;
        
end
        
else if (FilaCheck 'N'then
             
if (Cantidad UnitatsServidesBDthen begin
                   botoseleccionat 
:= MessageDlg('Estas seguro que quieres borrar las unidades servidas ?',mtCustom,[mbYes,mbNo], 0);
                 if 
botoseleccionat mrYes then begin
                      cadenaSQL 
:= 'SQL XXXXXXXXXXXXXXXXXX';
                     
ModuloDatos.Ejecutar_SQL(cadenaSQL);
                      
cadenaSQL := 'SQL XXXXXXXXXXXXXXXXXX';
                     
ModuloDatos.Ejecutar_SQL(cadenaSQL);
                     try
                        
query_supvision.Close;
                        
query_supvision.Open;
                     
except
                        showmessage
('Error abriendo la base de datos');
                     
end
                end
                
else begin
                     query_supvision
.Cancel;  // refrescar
                
end;
                
end;
    
end
    
else begin
       showmessage
('Este cliente no tiene más albaranes por editar');
    
end;
      if (
combobox1.text 'TODOS'then
      query_supvision
.Bookmark := Marca;
  
end
Responder Con Cita