El valor de mi almacén

Voy a intentar explicar como calcular el valor del stock en el almacén de una empresa, y aun que existen varias formas y ninguna es perfecta al 100%, la que voy a exponer se aproxima bastante a la realidad.

En primer lugar hay que tener en cuenta que solo las compras (o entradas a precio distinto del precio medio) van a modificar el precio medio de los articulos. Una vez aclarado esto vamos a distinguir los distintos tipos de movimientos en un almacén básico.

ENTRADAS
Compras: Al precio del articulo en el momento de la compra.
Regularizaciones: Siempre a precio medio.
Inventarios: Siempre a precio medio

SALIDAS
Ventas: Siempre a precio medio.
Regularizaciones: Siempre a precio medio.
Inventarios: Siempre a precio medio.

Podemos observar que solo las compras van a modificar el precio medio ya que los demás movimientos se hacen a ese precio. Es decir, si tenemos un articulo con un precio medio de 100€ y lo vendemos a 150€, metemos 150€ en la caja, pero el valor del almacén solo se reduce en 100€.

Para calcular el valor de las existencias necesitamos saber el stock despues de cada movimiento y el valor del movimiento al precio medio anterior (excepto las compras). Es decir, si tenemos un articulo que en un momento dado tiene un precio medio de 100€ y las existencias son de 20 unidades, vamos a ver lo que pasa despues de una compra.

MOVIMIENTO ANTERIOR 20 Und. a 100€ (Valor stock = 2000€)
Compramos 10 unidades a 110 €
Stock= 20 + 10=30 Und.
Valor movimiento= 10 Und. x 110€=1100€
Valor stock= 2000€+1100€=3100€
Nuevo PME= 3100/30=103,3333€

Ahora veamos lo que pasa despues de una venta partiendo de los mismos datos iniciales.

MOVIMIENTO ANTERIOR 20 Und. a 100€ (Valor stock = 2000€)
Vendemos 10 unidades a 150 € (PME = 100€)
Stock= 20 - 10=10 Und.
Valor movimiento= 10 Und. x 100€=1000€
Valor stock= 2000€-1000€=1000€
Nuevo PME= 1000/10=100€

Aquí está claro que las ventas no modifican el precio medio de los artículos, pero ahora vamos a ver como el orden de los movimientos altera el precio medio y el valor del inventario.

Teniendo en cuenta los calculos anteriores, si realizamos el recalculo primero de la venta y despues de la compra tendremos.

MOVIMIENTO ANTERIOR 20 Und. a 100€ (Valor stock = 2000€)
Venta 10 Und. / PME=100€ / Valor stock=1000€ / Nuevo PME=100€
Compra 10 Und. / Precio=110€ / valor stock=2100€ / Nuevo PME=105€

Si invertimos el orden del recalculo pasa lo siguiente.

MOVIMIENTO ANTERIOR 20 Und. a 100€ (Valor stock = 2000€)
Compra 10 Und. / Precio=110€ / valor stock=3100€ / Nuevo PME=103,33€
Venta 10 Und. / PME=103,33€ / Valor stock=2066,67€ / Nuevo PME=103,33€

La diferencia es evidente, haciendo mal el cálculo hemos incrementado el precio medio del articulo en 1,67€, si esto lo multiplicamos por el numero de articulos y seguimos haciendo mal los cálculos, nunca sabremos cuanto vale nuestro almacén y posiblemente perdamos dinero ya que el precio de coste no será real.

Para que este sistema se aproxime lo máximo posible a la realidad deberemos ordenar los movimientos a recalcular por fecha, y dentro de cada día calcular primero las compras y después las ventas.

Hay que tener en cuenta que todo esto puede ser mucho mas complejo si intervienen movimientos de fabricación o si se usan varios almacenes.

Todo esto está hecho de memoria y con prisa, así que si alguien encuentra errores que avise y lo corrijo.



El valor de mi almacén

Voy a intentar explicar como calcular el valor del stock en el almacén de una empresa, y aun que existen varias formas y ninguna es perfecta al 100%, la que voy a exponer se aproxima bastante a la realidad.

En primer lugar hay que tener en cuenta que solo las compras (o entradas a precio distinto del precio medio) van a modificar el precio medio de los articulos. Una vez aclarado esto vamos a distinguir los distintos tipos de movimientos en un almacén básico.

ENTRADAS
Compras: Al precio del articulo en el momento de la compra.
Regularizaciones: Siempre a precio medio.
Inventarios: Siempre a precio medio

SALIDAS
Ventas: Siempre a precio medio.
Regularizaciones: Siempre a precio medio.
Inventarios: Siempre a precio medio.

Podemos observar que solo las compras van a modificar el precio medio ya que los demás movimientos se hacen a ese precio. Es decir, si tenemos un articulo con un precio medio de 100€ y lo vendemos a 150€, metemos 150€ en la caja, pero el valor del almacén solo se reduce en 100€.

Para calcular el valor de las existencias necesitamos saber el stock despues de cada movimiento y el valor del movimiento al precio medio anterior (excepto las compras). Es decir, si tenemos un articulo que en un momento dado tiene un precio medio de 100€ y las existencias son de 20 unidades, vamos a ver lo que pasa despues de una compra.

MOVIMIENTO ANTERIOR 20 Und. a 100€ (Valor stock = 2000€)
Compramos 10 unidades a 110 €
Stock= 20 + 10=30 Und.
Valor movimiento= 10 Und. x 110€=1100€
Valor stock= 2000€+1100€=3100€
Nuevo PME= 3100/30=103,3333€

Ahora veamos lo que pasa despues de una venta partiendo de los mismos datos iniciales.

MOVIMIENTO ANTERIOR 20 Und. a 100€ (Valor stock = 2000€)
Vendemos 10 unidades a 150 € (PME = 100€)
Stock= 20 - 10=10 Und.
Valor movimiento= 10 Und. x 100€=1000€
Valor stock= 2000€-1000€=1000€
Nuevo PME= 1000/10=100€

Aquí está claro que las ventas no modifican el precio medio de los artículos, pero ahora vamos a ver como el orden de los movimientos altera el precio medio y el valor del inventario.

Teniendo en cuenta los calculos anteriores, si realizamos el recalculo primero de la venta y despues de la compra tendremos.

MOVIMIENTO ANTERIOR 20 Und. a 100€ (Valor stock = 2000€)
Venta 10 Und. / PME=100€ / Valor stock=1000€ / Nuevo PME=100€
Compra 10 Und. / Precio=110€ / valor stock=2100€ / Nuevo PME=105€

Si invertimos el orden del recalculo pasa lo siguiente.

MOVIMIENTO ANTERIOR 20 Und. a 100€ (Valor stock = 2000€)
Compra 10 Und. / Precio=110€ / valor stock=3100€ / Nuevo PME=103,33€
Venta 10 Und. / PME=103,33€ / Valor stock=2066,67€ / Nuevo PME=103,33€

La diferencia es evidente, haciendo mal el cálculo hemos incrementado el precio medio del articulo en 1,67€, si esto lo multiplicamos por el numero de articulos y seguimos haciendo mal los cálculos, nunca sabremos cuanto vale nuestro almacén y posiblemente perdamos dinero ya que el precio de coste no será real.

Para que este sistema se aproxime lo máximo posible a la realidad deberemos ordenar los movimientos a recalcular por fecha, y dentro de cada día calcular primero las compras y después las ventas.

Hay que tener en cuenta que todo esto puede ser mucho mas complejo si intervienen movimientos de fabricación o si se usan varios almacenes.

Todo esto está hecho de memoria y con prisa, así que si alguien encuentra errores que avise y lo corrijo.



Desconfiado por naturaleza

Desde que tenia unos 20 años quise ser programador, por lo tanto empecé a hacer mis pinitos con Access, SQL, visual Basic, Delhi etc... empezaba con mucha ilusión con cada uno de ellos pero la verdad es que me duraba bastante poco, no entendía que hacer una pequeña aplicación fuese tan complejo y eso me hacia desconfiar y hacerme preguntas.

1-Como voy a mantener mis aplicaciones?
2-Que pasa si me cambian de versión?
3-Si necesito cambiar el nombre de un campo, ¿Donde se usa?
4-Si aparece un error después de una actualización de windows...?

Estas y muchas otras cosas acababan por hacerme abandonar la idea, al final no era rentable programar.

Cuando ya tenia 30 años alguien me hablo de Velazquez Visual (ahora Velneo) y me dije a mi mismo, voy a echarle un vistazo pero seguro que es como los demás. Craso error, a los pocos días había hecho un despertador programable que me llamaba al móvil a determinadas horas y nunca fallaba, en los meses siguientes hice una pequeña aplicación de gestión de almacén, un catalogo de fotos, una base de datos para la policía etc.. pero seguía con la desconfianza de la potencia de la base de datos y esta vez la pregunta era, que pasará cuando un cliente tenga millones de registros en su base de datos?

Primera prueba, una tabla con todas las combinaciones de la lotería primitiva, unos 14 millones de registros aproximadamente, buscar un registro era instantáneo, impresionante me dije.

Segunda prueba, una tabla de documentos con dos históricas, en una objetos binarios y en la otra objetos dibujo, di de alta mas de 100.000 registros de forma automática, a cada uno le metía en los históricos un documento pdf y una imagen, en total mas de 20 Gb de datos y otra vez buscar un registro era instantáneo.

Fue entonces cuando desapareció mi desconfianza y comprendí que programar si que podía ser rentable, ya no me preocupaba el mantenimiento de mis aplicaciones, ni los cambios de versión ni por supuesto el cambiarle el nombre a un campo o una variable, ya que el sistema lo cambiaba automáticamente en todos los sitios necesarios. Ya no necesitaba dedicarle mas tiempo a documentar la aplicación que a programarla, por que ahora tenia los inspectores.

Ahora soy una persona menos desconfiada y mi tiempo es mas rentable, que mas le puedo pedir a Velneo?

Desconfiado por naturaleza

Desde que tenia unos 20 años quise ser programador, por lo tanto empecé a hacer mis pinitos con Access, SQL, visual Basic, Delhi etc... empezaba con mucha ilusión con cada uno de ellos pero la verdad es que me duraba bastante poco, no entendía que hacer una pequeña aplicación fuese tan complejo y eso me hacia desconfiar y hacerme preguntas.

1-Como voy a mantener mis aplicaciones?
2-Que pasa si me cambian de versión?
3-Si necesito cambiar el nombre de un campo, ¿Donde se usa?
4-Si aparece un error después de una actualización de windows...?

Estas y muchas otras cosas acababan por hacerme abandonar la idea, al final no era rentable programar.

Cuando ya tenia 30 años alguien me hablo de Velazquez Visual (ahora Velneo) y me dije a mi mismo, voy a echarle un vistazo pero seguro que es como los demás. Craso error, a los pocos días había hecho un despertador programable que me llamaba al móvil a determinadas horas y nunca fallaba, en los meses siguientes hice una pequeña aplicación de gestión de almacén, un catalogo de fotos, una base de datos para la policía etc.. pero seguía con la desconfianza de la potencia de la base de datos y esta vez la pregunta era, que pasará cuando un cliente tenga millones de registros en su base de datos?

Primera prueba, una tabla con todas las combinaciones de la lotería primitiva, unos 14 millones de registros aproximadamente, buscar un registro era instantáneo, impresionante me dije.

Segunda prueba, una tabla de documentos con dos históricas, en una objetos binarios y en la otra objetos dibujo, di de alta mas de 100.000 registros de forma automática, a cada uno le metía en los históricos un documento pdf y una imagen, en total mas de 20 Gb de datos y otra vez buscar un registro era instantáneo.

Fue entonces cuando desapareció mi desconfianza y comprendí que programar si que podía ser rentable, ya no me preocupaba el mantenimiento de mis aplicaciones, ni los cambios de versión ni por supuesto el cambiarle el nombre a un campo o una variable, ya que el sistema lo cambiaba automáticamente en todos los sitios necesarios. Ya no necesitaba dedicarle mas tiempo a documentar la aplicación que a programarla, por que ahora tenia los inspectores.

Ahora soy una persona menos desconfiada y mi tiempo es mas rentable, que mas le puedo pedir a Velneo?

Trabajo en equipo con Velneo

O como sacarle partido a unas cañas....

De todos son conocidos los problemas para programar en equipo con las herramientas actuales, ( hasta la salida de V7 ), por lo que siempre se recure a los viejos trucos de los colores de los objetos, los nombres de las tablas etc.. pero ahora vamos a ir un paso mas allá gracias a los sabios consejos que me dió el gran Fran Abad tomando unas cañas.

La idea consiste en una pequeña aplicación que lleve un control de versiones y tareas realizadas en cada versión, y para ello vamos a usar solo cinco tablas.


  • APLICACIONES
  • VERSIONES
  • USUARIOS
  • ASIGNACIONES
  • TAREAS


La tabla APLICACIONES lleva un campo código, nombre de la aplicación, nombre del mapa, última versión y fecha de la misma, además de un campo para localizar el mapa que dependerá de si usamos SDV acceso web etc.

La tabla VERSIONES es historica de aplicaciones y en ella se guardan el nombre y fecha de cada versión.


La tabla USUARIOS solo lleva un campo codigo y el nombre del usuario.

La tabla ASIGNACIONES es historica de aplicaciones y usuarios y solo tiene dos campos enlazados a sus maestras corespondientes. Esta tabla se usa para permitir el acceso de los usuarios a las aplicaciones.
Y por último la tabla TAREAS guardará todo el historial de cambios en nuestras aplicaciones.

Este seria el esquema básico de las tablas. Este esquema nos permite sacar listados de cambios por aplicación, por versión, por usuario, por fechas etc..


La siguiente captura muestra el formulario de aplicaciones, en el observamos tres pestañas en las que podremos ver las tareas realizadas en la aplicación, los usuarios asignados para modificaciones y el historial de versiones. En la ficha de cada versión también podemos consultar los cambios realizados en esa versión.


Y esta última muestra el formulario de tareas. Aquí se observan los campos de prioridad de la tarea, fecha de inicio, fecha limite y fecha de finalización, usuario que la realiza, nombre de la aplicación y descripción de la tarea. Vemos además los objetos texto para desarrollar las explicaciones del cambio propuesto y los pasos realizados para su desarrollo.


Ahora solo quedaria crear algunos procesos para definir la seguridad de acceso a los mapas y elegir la mejor manera de subir y bajar nuestras aplicaciones, esto se puede hacer a través de SDV, a través de WEB o usando los recursos compartidos de windows. La decisión final dependerá de las necesidades y recursos de cada caso concreto.

Espero que este artículo os sirva tanto como a mi.

Trabajo en equipo con Velneo

O como sacarle partido a unas cañas....

De todos son conocidos los problemas para programar en equipo con las herramientas actuales, ( hasta la salida de V7 ), por lo que siempre se recure a los viejos trucos de los colores de los objetos, los nombres de las tablas etc.. pero ahora vamos a ir un paso mas allá gracias a los sabios consejos que me dió el gran Fran Abad tomando unas cañas.

La idea consiste en una pequeña aplicación que lleve un control de versiones y tareas realizadas en cada versión, y para ello vamos a usar solo cinco tablas.


  • APLICACIONES
  • VERSIONES
  • USUARIOS
  • ASIGNACIONES
  • TAREAS


La tabla APLICACIONES lleva un campo código, nombre de la aplicación, nombre del mapa, última versión y fecha de la misma, además de un campo para localizar el mapa que dependerá de si usamos SDV acceso web etc.

La tabla VERSIONES es historica de aplicaciones y en ella se guardan el nombre y fecha de cada versión.


La tabla USUARIOS solo lleva un campo codigo y el nombre del usuario.

La tabla ASIGNACIONES es historica de aplicaciones y usuarios y solo tiene dos campos enlazados a sus maestras corespondientes. Esta tabla se usa para permitir el acceso de los usuarios a las aplicaciones.
Y por último la tabla TAREAS guardará todo el historial de cambios en nuestras aplicaciones.

Este seria el esquema básico de las tablas. Este esquema nos permite sacar listados de cambios por aplicación, por versión, por usuario, por fechas etc..


La siguiente captura muestra el formulario de aplicaciones, en el observamos tres pestañas en las que podremos ver las tareas realizadas en la aplicación, los usuarios asignados para modificaciones y el historial de versiones. En la ficha de cada versión también podemos consultar los cambios realizados en esa versión.


Y esta última muestra el formulario de tareas. Aquí se observan los campos de prioridad de la tarea, fecha de inicio, fecha limite y fecha de finalización, usuario que la realiza, nombre de la aplicación y descripción de la tarea. Vemos además los objetos texto para desarrollar las explicaciones del cambio propuesto y los pasos realizados para su desarrollo.


Ahora solo quedaria crear algunos procesos para definir la seguridad de acceso a los mapas y elegir la mejor manera de subir y bajar nuestras aplicaciones, esto se puede hacer a través de SDV, a través de WEB o usando los recursos compartidos de windows. La decisión final dependerá de las necesidades y recursos de cada caso concreto.

Espero que este artículo os sirva tanto como a mi.

Inauguración del blog

Hacia ya mucho tiempo que tenia ganas de tener mi propio blog, pero por falta de tiempo y a veces algo de pereza , lo fui dejando hasta hoy, que en un rato muerto me decidí a ponerlo en marcha.

Como os indica el titulo, todo en este blog girará en torno al mundo de Velneo. Espero poder aportar algo desde aquí a la gran comunidad de usuarios de esta, nuestra herramienta.

Inauguración del blog

Hacia ya mucho tiempo que tenia ganas de tener mi propio blog, pero por falta de tiempo y a veces algo de pereza , lo fui dejando hasta hoy, que en un rato muerto me decidí a ponerlo en marcha.

Como os indica el titulo, todo en este blog girará en torno al mundo de Velneo. Espero poder aportar algo desde aquí a la gran comunidad de usuarios de esta, nuestra herramienta.