Ver Mensaje Individual
  #1  
Antiguo 28-09-2010
Avatar de microbiano
microbiano microbiano is offline
Miembro
 
Registrado: sep 2008
Ubicación: Mexico D.F
Posts: 349
Reputación: 16
microbiano Va por buen camino
Talking seleccionar columna de un TstringGrid

bueno resulta que hasta hoy no habia tenido necesidad de hacer sistemas de factuacion ;-), sin embargo el dia de hoy estoy iniciando uno para facturacion, gracias al ejemplo del amigo Caral ha sido algo facil jejeje, bueno pues resulta que cargo los datos en el StringGrid y hasta ahi no hay ningun problema el problema surge cuando quiero hacerle cambios a un producto que ya esta en el detalle de facturion explico los pasos que me gustanrian:

1.- haciendo doble click sobre un registro del TstringGrid me muestre otro form con los datos p/e:

cantidad=1
descuento=1.15%


2.- hacer mas modificaciones que necesito p/e.

cantidad=500
descuento=20%

3.- una vez hechas esas modificaciones, reflejarlas en el registro que se selecciono del TstringGRid.

pongo el codigo con el que agrego las filas al TstringGrid

Código Delphi [-]
procedure TFfactura.txtcodigoExit(Sender: TObject);
var wcodigobarras: string;
    wprecio_totalouble;
    wcantidad_venta:Integer;
begin
 wcodigobarras:=Trim(Ffactura.txtcodigo.Text);
 if wcodigobarras<>EmptyStr then
  begin
   If Cuenta > 1 then SGFact.RowCount := SGFact.RowCount + 1;
    with fmodulo.Qry_Temp2 do
     begin
       Close;
       sql.clear;
       SQL.Add('select * from articulo');
       SQL.Add('where codigobarras=:Pcodigobarras');
       Parameters.ParamByName('pcodigobarras').Value:=Trim(wcodigobarras);
       try
        Open;
        if not Fmodulo.Qry_Temp2.IsEmpty then
         begin
           while not Fmodulo.Qry_Temp2.Eof do
           begin
             wprecioventa:=StrToFloat(FieldByname('precioventa').AsVariant);
             Ffactura.SGFact.Cells[0,cuenta] := Ffactura.txtcodigo.Text;
             Ffactura.SGFact.Cells[1,Cuenta]:=(FieldByname('nombre').AsString);
             Ffactura.SGFact.Cells[2,Cuenta]:='1';
             Ffactura.SGFact.Cells[3,Cuenta]:=(FieldByname('precioventa').AsVariant);
             wcantidad_venta:=StrToInt(SGFact.Cells[2,cuenta]);
             wprecio_total:=wcantidad_venta*wprecioventa;
             SGFact.Cells[4,Cuenta]:='0.00';
             SGFact.Cells[5,Cuenta]:=FloatToStr(wprecio_total);//Format('%n',[wprecio_total]);
             Cuenta:=cuenta+1;
             calcula_totales;
             Next;
             Ffactura.txtcodigo.Text:='';
           end;
         end
        else
         begin
           MessageDlg('Registro'+chr(13)+'No localizado', mtError, [MBOK], 0);
           Ffactura.txtcodigo.Text:='';
           Ffactura.txtcodigo.SetFocus;
           Exit;
         end;
       except
         on E:EOleException do
         begin
          MessageDlg(Format('Error: %s    Codigo: %d', [E.Message, E.ErrorCode]), mtError, [mbOK], 0);
         end;
       end;
     end;
  end;
end;


espero me hay explicado, de antemano muchas gracias por el apoyo recibido

Última edición por microbiano fecha: 28-09-2010 a las 20:02:34. Razón: error
Responder Con Cita