Ver Mensaje Individual
  #11  
Antiguo 21-09-2007
Avatar de enecumene
[enecumene] enecumene is offline
Miembro de Oro
 
Registrado: may 2006
Ubicación: Santo Domingo, Rep. Dom.
Posts: 3.040
Reputación: 22
enecumene Va por buen camino
disculpen la demora estaba trabajando en otros temas, bien, vuelvo con este asunto, intenté hacerlo como rudi me lo sugirio:

Código Delphi [-]
procedure TFFactura.BitBtn1Click(Sender: TObject);
begin
if MessageDlg('¿Está seguro que desea Guardar?', mtConfirmation,
       [mbYes, mbNo], 0) = mrYes then
 if CheckBox1.Checked = True then
  begin
   if (DBEdit1.Text = '') or (DBEdit20.Text = '') then
      MessageDlg('Debes ingresar un número de O/C o Casa Comercial',mtError,[mbOK],0)
      else
        if ZFactura.State in [dsedit,dsinsert] then
        begin
        if ZPedido.FieldByName('oc_no_sigef').Value=null then
        begin
        ZRegPed.SQL.Clear;
        ZRegPed.SQL.Add('UPDATE reg_pedidos SET oc_no_sigef_2='+Quotedstr('Sí')+', oc_no_sigef='+Quotedstr(DBEdit1.Text)+'');
        ZRegPed.SQL.Add(' WHERE no = '+Quotedstr(DBEdit15.Text)+' ');
        ZRegPed.ExecSQL;
        ZFactura.Post;
        ZFactura.Insert;
        MessageDlg('Los Datos se grabaron exitosamente!',mtConfirmation,[mbOK],0);
        end;

       if (ZPedido.FieldByName('oc_no_sigef').Value <> null) and (ZPedido.FieldByName('oc_no_sigef2').Value=null)then
        begin
        ZRegPed.SQL.Clear;
        ZRegPed.SQL.Add('UPDATE reg_pedidos SET oc_no_sigef1='+Quotedstr(DBEdit1.Text)+'');
        ZRegPed.SQL.Add(' WHERE no = '+Quotedstr(DBEdit15.Text)+' ');
        ZRegPed.ExecSQL;
        ZFactura.Post;
        ZFactura.Insert;
        MessageDlg('Los Datos se grabaron exitosamente!',mtConfirmation,[mbOK],0);
        end;

       if (ZPedido.FieldByName('oc_no_sigef').Value <> null) and (ZPedido.FieldByName('oc_no_sigef1').Value <> null) then
        begin
        ZRegPed.SQL.Clear;
        ZRegPed.SQL.Add('UPDATE reg_pedidos SET oc_no_sigef2='+Quotedstr(DBEdit1.Text)+'');
        ZRegPed.SQL.Add(' WHERE no = '+Quotedstr(DBEdit15.Text)+' ');
        ZRegPed.ExecSQL;
        ZFactura.Post;
        ZFactura.Insert;
        MessageDlg('Los Datos se grabaron exitosamente!',mtConfirmation,[mbOK],0);
        end;
       end;
      end else begin
       if (DBEdit20.Text = '') or
          (DBEdit21.Text = '') or
          (DBCheckBox1.Checked = False) then
          MessageDlg('Debes cotejar Compras por el fondo, ingresar Casa Comercial o No. de Recibo!',mtError,[mbOK],0)
          else
          if ZFactura.State in [dsedit,dsinsert] then
            begin
            ZFactura.Post;
            ZFactura.Insert;
            MessageDlg('Los Datos se grabaron exitosamente!',mtConfirmation,[mbOK],0);
            end;
       end;
       DBCheckBox1.Checked:=False;
       CheckBox1.Checked:=False;
end;

esta es la parte que me da problemas:

Código Delphi [-]
 if ZPedido.FieldByName('oc_no_sigef').Value=null then
        begin
        ZRegPed.SQL.Clear;
        ZRegPed.SQL.Add('UPDATE reg_pedidos SET oc_no_sigef_2='+Quotedstr('Sí')+', oc_no_sigef='+Quotedstr(DBEdit1.Text)+'');
        ZRegPed.SQL.Add(' WHERE no = '+Quotedstr(DBEdit15.Text)+' ');
        ZRegPed.ExecSQL;
        ZFactura.Post;
        ZFactura.Insert;
        MessageDlg('Los Datos se grabaron exitosamente!',mtConfirmation,[mbOK],0);
        end;

       if (ZPedido.FieldByName('oc_no_sigef').Value <> null) and (ZPedido.FieldByName('oc_no_sigef2').Value=null)then
        begin
        ZRegPed.SQL.Clear;
        ZRegPed.SQL.Add('UPDATE reg_pedidos SET oc_no_sigef1='+Quotedstr(DBEdit1.Text)+'');
        ZRegPed.SQL.Add(' WHERE no = '+Quotedstr(DBEdit15.Text)+' ');
        ZRegPed.ExecSQL;
        ZFactura.Post;
        ZFactura.Insert;
        MessageDlg('Los Datos se grabaron exitosamente!',mtConfirmation,[mbOK],0);
        end;

       if (ZPedido.FieldByName('oc_no_sigef').Value <> null) and (ZPedido.FieldByName('oc_no_sigef1').Value <> null) then
        begin
        ZRegPed.SQL.Clear;
        ZRegPed.SQL.Add('UPDATE reg_pedidos SET oc_no_sigef2='+Quotedstr(DBEdit1.Text)+'');
        ZRegPed.SQL.Add(' WHERE no = '+Quotedstr(DBEdit15.Text)+' ');
        ZRegPed.ExecSQL;
        ZFactura.Post;
        ZFactura.Insert;

el campo oc_no_sigef contiene datos que esta en el primer if, lo mas logico es que me execute el segundo if pero no lo hace aun teniendo datos me sobreescribe el campo, no se mas nada que hacer, me dan ganas de estrellarme contra el monitor!!!!

Saludos
__________________

Mi BLOG - ¡Joder, leanse la guia de estilo!
Las Palabras son enanas, los ejemplos gigantes.
Responder Con Cita