In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.

Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.

ayuda con algunas lineas

Lenguaje de progamación XBase en español
Responder
jorgeluisr_24
Mensajes: 8
Registrado: Jue Jul 29, 2010 10:28 pm

ayuda con algunas lineas

Mensaje por jorgeluisr_24 »

estoy empezando a programar en este entorno , me gustarí­a que me echen una manito por favor con esta duda
Tengo en mi programa un stock de productos tal como muestra la figura (1)
el detalle es que tengo varios lotes del mismo producto, para ello se creo
un "submodulo" llamado mantenimiento lotes ,como puede verse en la figura,
el cual aparece despues de poner la cantidad a despachar al cliente ,
ahi en ese modulo sale la cantidad Disgregada en lotes ,el cual es el total
del item .
"Mi problema es este en realidad":
yo tengo que escoger el lote y cantidad que supla lo que pide el cliente , por que sino
no lo desaparece si seria exacto y lo pasa a negativo, en el grafico ven varios lotes
si el cliente me pedí­a 4 en cantidad , ERA el problema por que tenia que
digitar doble vez , primero descargando un lote que cubra una parte (si no cubria el pedido
del cliente con alguno de los lotes)
Lo que deseo ahora , es que eligiendo en el mismo caso del cliente (4 items) , pues eligiendo
cualquiera , me descargue lo que corresponda a la cantidad del lote , y en caso que no lo cubra
complete con el siguiente lote , ahorrandome el tiempo de la doble digitacion , espero puedan entender
lo que deseo hacer y me puedan dar una manito
PS: el grafico creo que explicará mejor mi idea , Gracias ,
zeasoftware
Mensajes: 1831
Registrado: Mar Oct 11, 2005 9:53 am

ayuda con algunas lineas

Mensaje por zeasoftware »

Lo que tiene sque hacer es un bucle para ir descargando la cantidad deseada contra lo que te queda. asi vas descargando hasta que lo pedido sea cubierto.
Para esto tienes que filtrar los que van quedando distintos de cero.
Esto lo usaba en MSDOS para control de costos, y es parecido a lo que tu buscas, aun no lo paso a Xailer.
#ifdef _CONTROL_COSTOS_
Function DescCantCosto(cCodigo, nCantidad)
Local nVendidos
ArtiCost->( dbScope(cCodigo, cCodigo) )
While ( nCantidad > 0.0 )
ArtiCost->( dbGoBottom() )
If ArtiCost->( EoF() )
Exit
End
ArtiCost->( netRLock() )
If ArtiCost->Existencia - nCantidad < 0.0
nVendidos := ArtiCost->Existencia
Else
nVendidos := nCantidad
End
ArtiCost->(_Field->Existencia -= nVendidos )
ArtiCost->( dbUnLock() )
nCantidad -= nVendidos
End
Return ( Nil )
#endif
Saludos.
Responder