Programación General > Visual FoxPro
Detalle Factura
claudiorene:
Hola amigos, aca toy nuevamente con dudas con el grid.
Mi situación es la siguiente, tengo un grid para el detalle de la factura en el cual muestro 4 columnas, Cant. Pedida; Descripcion; Precio Unit. e Importe. Estas cuatro columnas mas la del coido del producto (que no lo muestro en el grid), pertenencen a un cursor "cursortemp", que genero en el metodo Load del fomulario donde se encuentra el grid.
El problema, es que tengo que calcular el importe, pero recien luego que el usuario haya ingresado la cant del producto (importe=cant * preciounit). El ControlSource de la columna Importe, es "cursortemp.importe" y en el metodo Valid del grid actualizo el campor importe del cursortemp, asi la columna importe toma el valor ese del cursor.
El tema es que a medida que se vayan agregando productos al detalle de la factura, debo ir sumando el importe de cada fila del grid, para asi determinar el importe de la factura. Se que se reliza mediante el comando "calculate SUM (cursortemp.importe) to vble", y luego a la caja importe total (importe factura), le asigno el valor de la vble, pero no se donde va ese codigo.
Por favor, espero una ayuda lo mas rapido posible, gracias de antemano.
sebadoes:
hola mira la solucion q te puedo dar es q en el valid de la ultima columna en el grid hagas un SCAN a la tabla y vuelvas a calcular los importes de cada fila asi tenes un Importe total actualizado, asi por lo menos lo hice y hago yo.. pero esa funcio q decis creo q es para los informes pero la verdad nose bien.. bueno espero q soluciones tu problema bye
claudiorene:
Hola sebadoes, gracias por tratar de darme una mano.
En realidad no te entiendo cuando haces referencia al valid de la columna Importe, ya que el metodo Valid pertenece al grid en gral.
Bueno eso es todo, sigo complicado....
arielb:
k tal claudio en que parte actualizas el cursor del grid con el registro del codigo nuevo que el usuario introduce?
claudiorene:
Hola Juez, mira yo desde el formulario factura invoco el formulario Productos, para asi seleccionar el producto deseado. En el evento click del boton con el que llamo a dicho formulario, actualizo el cursortemp, con los datos del producto.
Luego espero a que el usuario introduzca en el grid cant del producto seleccionado (en el formulario factura), y en el metodo Valid del grid detalle tengo el sig codigo:
a=this.kg.texto1.value*this.precio.texto1.value
UPDATE cursortemp SET importe= a WHERE id= this.codigo.texto1.Value
this.Refresh
Y el controlsource de la columna importe tengo:
cursortemp.importe
De esta manera el importe no se me actualiza, sino que toma siempre el mismo valor, independientemente del precio del articulo en cuestion. Y por supuesto nose donde poder ir sumando los importes para asignarselos a la cja de texto "Importe Total"
Espero haber sido claro.... y una mano salvadora. Gracias.
Navegación
[#] Página Siguiente
Ir a la versión completa