Ver Mensaje Individual
  #10  
Antiguo 18-07-2011
Avatar de Caro
*Caro* Caro is offline
Moderadora
 
Registrado: jul 2004
Ubicación: Cochabamba, Bolivia
Posts: 2.544
Reputación: 22
Caro Va por buen camino
Cita:
Empezado por donpedro Ver Mensaje
tendria que colocar una condicion para identificar que si b = 0 que vaya al siguiente registro.
Hola de nuevo, si tendrías que colocar esa condición para que no tome los que ya tienen valor 0.

Código Delphi [-]
   aqfacturad.first;
   While not aqfacturad.eof do
    begin
     b:=strtoint(aqfacturadvalor.asstring);
     if b>0 then
     begin 
      if (a > b) then
       Valor := 0
      else
        .......................
        ......................... 
      a := a-b;
      aqfacturad.edit;
      aqfacturadvalor.asstring:=Valor;
      aqfacturad.post;
     end;
     if Not flg then
      aqfacturad.next
     else
      break;
    end;

otra forma para no hacer tantas condiciones, es hacer una consulta que te traiga los registros que sumen el monto a pagar sin tomar en cuenta los que tengan valor 0, así solo recorres esos registros haces el update y tendrias solo dos condiciones.

Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar.
Responder Con Cita