Professional Documents
Culture Documents
INTRODUCCIN
Se me ha solicitado una variacin en el ejemplo Gestin
Almacn-Adenda2.
Dicha
modificacin
consiste
en
introducir un producto bajo el cual cuelgan una serie de
referencias. Es decir, que el producto es, genricamente
uno, pero en concreto son las referencias de este producto
las que entran en nuestro almacn.
Grficamente, el producto X sera, en realidad:
Producto X Referencia 1
Producto X Referencia 2
Producto X Referencia 3
Etc.
En este ejemplo intentaremos que sea posible dar entrada (y salida) tanto producto como
referencias de una manera gil.
Debemos tener presente que esta explicacin presupone que tenemos completamente
desarrollado el ejemplo que se muestra en Gestin Almacn-Adenda 2 (que a su vez depende
del ejemplo Gestin Almacn, y que todo lo que se indicar en este documento parte de la
estructura de Gestin Almacn-Adenda 2).
As pues, si el querido lector an no ha visto cmo se construye dicha aplicacin no tendr
ms remedio que, antes, echar un vistazo a ese ejemplo (Gestin Almacn-Adenda2, que
puede consultar aqu). Si no con dificultad entender lo que se explicar a continuacin.
Aqu debo hacer una advertencia: el sistema es un sistema simplificado. Con ello quiero decir
que establecer un control de salida de referencias que no han entrado, o que ya no hay en
stock, complicara muchsimo el ejemplo. Por ello debis ser conscientes de que transfiero
ese control a vuestra supervisin manual, puesto que slo os controlar las cantidades
globales de producto, no referencia por referencia.
Dicho lo anterior pongmonos manos a la obra.
Vistame en http://neckkito.siliconproject.com.ar
La referencia en s.
Si os fijis he hecho pequeitos los campos [IdRef], [IdAux] e [IdProd] y los he situado en
un rincn del formulario. Vamos a seleccionar esos tres campos y vamos a sacar sus
propiedades. Nos vamos a Pestaa Formato Visible, y situamos esa propiedad en NO.
MODIFICANDO FENTRADAS
Situamos nuestro formulario FEntradas en vista diseo. A continuacin insertamos un
subformulario y cuando nos salga el asistente lo configuramos as:
Seleccionamos nuestro campo [CantE], nos vamos a sus propiedades y en la pestaa Datos
situamos la propiedad [Bloqueado] en S.
A continuacin aadimos, en la seccin Detalle, un botn de comando, que guardaremos con el
Vistame en http://neckkito.siliconproject.com.ar
Creo que no hace falta comentar mucho el cdigo... Slo hacer notar que hemos utilizado DAO,
lo que implica que debemos tener registrada la referencia Microsoft DAO 3.6 Object Library o
mdulo equivalente4.
El formulario lleva un botn, que es cmdCerrar, en su encabezado. Vamos a modificar
ligeramente su cdigo para que nos sirva de control para evitar patinazos.
El nuevo cdigo sera el siguiente:
2
3
4
Para asignar un nombre a un control lo que debemos hacer es sacar las propiedades de ese control e irnos a la Pestaa Otras
Nombre. Ah escribimos el nombre que queramos.
Para generar cdigo debemos sacar las propiedades del control Pestaa Eventos, y nos situamos en la parte blanca a la derecha
del evento que queremos programar. Veremos un pequeo botn de puntos suspensivos. Si hacemos click sobre l nos aparecer
una ventana que nos pedir qu operacin deseamos realizar. Le indicamos que queremos generar cdigo.
Para registrar una referencia debemos irnos, en el editor de VB, a Men Herramientas Referencias... Se nos abrir una ventana
mostrndonos todas las referencias disponibles. Buscamos la que nos interese, marcamos su check y aceptamos.
Vistame en http://neckkito.siliconproject.com.ar
Una vez finalizada la entrada de referencias hacemos click sobre el botn que nos
cuenta las referencias y, ahora s, el nmero de unidades de entrada se escribe en el
campo correspondiente.
Si nos olvidamos y le damos al botn para cerrar el
formulario la aplicacin nos avisa del fallo y nos permite
volver atrs para subsanarlo.
Este proceso ser idntico para lo que es la salida de
artculos, que veremos a continuacin.
MODIFICANDO FSALIDAS
El proceso a realizar en FSalidas es casi exactamente el mismo que hemos hecho para
FEntradas. Lo voy a repetir aqu en plan telegrfico para que tengis una gua de pasos. A
continuacin remarcar las cosas que deben modificarse sobre el formulario original.
Vistame en http://neckkito.siliconproject.com.ar
De nuevo os marco en negrita las diferencias con el cdigo del mismo botn de FEntradas.
A continuacin nos creamos la consulta CRefSalidas, con una estructura idntica pero sobre la
tabla TSalidas. As:
Vistame en http://neckkito.siliconproject.com.ar
Finalmente ya podemos crearnos la consulta definitiva, que estar basada en las dos consultas
anteriores. A esta consulta definitiva la llamaremos CRefExistentes, y ser as:
Vistame en http://neckkito.siliconproject.com.ar
A continuacin, tras cerrar este informe, vamos a copiarlo y pegarlo con el nombre de
RRefSalidas.
Situamos RRefSalidas en vista diseo y sacamos sus propiedades. Nos vamos a la pestaa
Datos Origen del registro, y seleccionamos del desplegable la consulta CRefSalidas.
Realizamos los cambios de diseo oportunos.
Finalmente vamos a crearnos el informe para ver las referencias existentes en el almacn. Para
ello creamos un nuevo informe a travs del asistente para informes y lo configuramos as:
Seleccionamos
la
consulta
CRefExistentes
[CrefEntradas.Referencia]
Aadimos un nivel de agrupamiento por [IdProd]
Aadimos una ordenacin si nos interesa
Elegimos la distribucin
Elegimos el estilo
Como ttulo indicamos RRefExistentes
7
los
Vistame en http://neckkito.siliconproject.com.ar
campos
[IdProd]
PROGRAMANDO FMENU
Slo nos queda programar los botones en FMenu para poder
abrir esos informes.
As pues, aadimos tres botones de comando, que llamaremos, respectivamente:
cmdAbreRRefEntradas
cmdAbreRRefSalidas
cmdAbreRRefExistentes
A cmdAbreRRefSalidas:
El tercer botn va a depender del valor seleccionado en el cuadro combinado que ya tenemos
en FMenu. Si seleccionamos un productos el informe nos saldr filtrado por ese producto. Si
dejamos el valor del combo en blanco nos saldr el informe completo.
Su cdigo sera el siguiente:
Desgraciadamente filtrar por fechas requerira complicar el ejemplo en demasa, por lo que no
8
Vistame en http://neckkito.siliconproject.com.ar
Vistame en http://neckkito.siliconproject.com.ar