Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   Incrementar valores de una tabla (https://www.clubdelphi.com/foros/showthread.php?t=90904)

JOSEG 03-10-2016 03:50:00

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

ecfisa 03-10-2016 04:57:20

Hola JOSEG.

Por favor cuando incluyas código en tus mensaje usa etiquetas para darle más legibilidad (ya las agregué al tuyo), una imágen que explica el uso:



Por otro lado, ¿ que relación tiene tu consulta con la que inició el hilo ?

Saludos y gracias por tu colaboración :)

JOSEG 04-10-2016 03:27:06

Soy nuevo en el foro y desconozco como iniciar una consulta ,pensé que alguien aquí me podía guiar con mi duda,si alguien me puede tirar una mano le agradezco,disculpen las molestias

Neftali [Germán.Estévez] 04-10-2016 08:36:24

Cita:

Empezado por JOSEG (Mensaje 509272)
Soy nuevo en el foro y desconozco como iniciar una consulta ,pensé que alguien aquí me podía guiar con mi duda,si alguien me puede tirar una mano le agradezco,disculpen las molestias

Aquí tienes cómo hacerlo:
[MANUAL] Cómo crear un nuevo mensaje

Sobre todo la parte que explica cómo hacer las preguntas. Así será más fácil que obtengas buenas respuestas.

Un saludo.

JOSEG 04-10-2016 18:21:20

muchas gracias por la guía ,mi pregunta esta mal formulada o le falta muchas cosas por aclarar?


La franja horaria es GMT +2. Ahora son las 11:56:26.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi