Ver Mensaje Individual
  #1  
Antiguo 03-10-2016
JOSEG JOSEG is offline
Registrado
NULL
 
Registrado: oct 2015
Posts: 5
Reputación: 0
JOSEG Va por buen camino
Incrementar valores de una tabla

hola .Alguien me puede dar una ayuda por favor? Lo que estoy haciendo es cargar productos en el detalle de ventas en un String Grid .Estoy utilizando mydac .cuestion que hice una función llamada" ArticuloYaExisteEnGrilla(FormularioModuloDatos.QueryProductos['idproducto'])
" para que busque el producto si ya fue cargado y luego salga ,pero ahora lo que quiero hacer es que en caso que ya fue cargado utilizar un inputbox para cargar a la cantidad y que se sume a la cantidad del mismo producto que ya fue cargada con anterioridad.Me pueden guiar o dar una mano? Desde ya muchas gracias.Aqui comienzo
Código Delphi [-]
  //Carga de Cabecera de String Grid
  col_cod_producto=0;
  col_nombre_producto=1;
  col_descripcion=2;
  col_precio=3;
  col_cantidad=4;
  col_subtotal=5;

  //fUNCION PARA VERIFICAR SI YA FUE CARGADO
  if ArticuloYaExisteEnGrilla(FormularioModuloDatos.QueryProductos['idproducto'])then
  begin
    showmessage('Articulo ya registrado');
    exit; //Salgo para que no me permita cargar otro producto que sea igual
  end
  else
    //Primero cargo string grid el encabezado:
    if (SgDetalle.RowCount=2) then
    begin
      if trim(SgDetalle.Cells[col_cod_producto,1])=''then
        SgDetalle.RowCount:=SgDetalle.RowCount+1;
      SgDetalle.Cells[col_cod_producto,SgDetalle.RowCount-1]:=FormularioModuloDatos.QueryProductos['idproducto'];
      SgDetalle.Cells[col_nombre_producto,SgDetalle.RowCount-1]:=FormularioModuloDatos.QueryProductos['nombreproducto'];
      SgDetalle.Cells[col_descripcion,SgDetalle.RowCount-1]:=FormularioModuloDatos.QueryProductos['detalle'];
      SgDetalle.Cells[col_precio,SgDetalle.RowCount-1]:=FormularioModuloDatos.QueryProductos['precio'];
      SgDetalle.Cells[col_cantidad,SgDetalle.RowCount-1]:=InputBox('Nueva Venta', 'Ingrese la cantidad del producto','1');
      SgDetalle.Cells[col_subtotal,SgDetalle.RowCount-1]:=floattostr(strtoint(SgDetalle.Cells[col_precio,SgDetalle.RowCount-1])*
        strtoint(SgDetalle.Cells[col_cantidad,SgDetalle.RowCount-1]));
    end
    else
    begin
      SgDetalle.RowCount:=SgDetalle.RowCount+1;
      SgDetalle.Cells[col_cod_producto,SgDetalle.RowCount-1]:=FormularioModuloDatos.QueryProductos['idproducto'];
      SgDetalle.Cells[col_nombre_producto,SgDetalle.RowCount-1]:=FormularioModuloDatos.QueryProductos['nombreproducto'];
      SgDetalle.Cells[col_descripcion,SgDetalle.RowCount-1]:=FormularioModuloDatos.QueryProductos['detalle'];
      SgDetalle.Cells[col_precio,SgDetalle.RowCount-1]:=FormularioModuloDatos.QueryProductos['precio'];
      SgDetalle.Cells[col_cantidad,SgDetalle.RowCount-1]:=InputBox('Nueva Venta', 'Ingrese la cantidad del producto','1');
      SgDetalle.Cells[col_subtotal,SgDetalle.RowCount-1]:=floattostr(strtoint(SgDetalle.Cells[col_precio,SgDetalle.RowCount-1])*
        strtoint(SgDetalle.Cells[col_cantidad,SgDetalle.RowCount-1]));
    end;

//AQUI ACTUALIZO UN EDIT LLAMADO EdTotalVenta PARA CADA VEZ QUE VAYA AGREGANDO O DISMINUYENDO UN PRODUCTO SE ACTUALICE EL VALOR
//TODAL DE LA VENTA
    if trim(EdTotalVenta.Text)='' then
    begin
      EdTotalVenta.Text:=floattostr(strtofloat(EdTotalVenta.Text)+
        strtofloat(SgDetalle.Cells[col_subtotal,SgDetalle.RowCount-1]))
    end
    else
    begin
      EdTotalVenta.Text:=floattostr(strtofloat(EdTotalVenta.Text)+
        strtofloat(SgDetalle.Cells[col_subtotal,SgDetalle.RowCount-1]));
    end;
  end;

//MUCHAS GRACIAS DESDE YA

Última edición por ecfisa fecha: 03-10-2016 a las 05:38:29. Razón: Agregar etiquetas [delphi] [/delphi]
Responder Con Cita