FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour AlgĂșn ej. de transacciones en kardex
Posts: 418
Joined: Wed Nov 26, 2008 06:33 PM
AlgĂșn ej. de transacciones en kardex
Posted: Fri Jul 05, 2013 05:05 PM

Saludos a todos.

Me he encontrado con un asunto que no se como mejorar tanto en cĂłdigo como rĂĄpides y seguridad de datos.
Expongo:

En un sistema donde aprox. hay 40 usuarios trabajando con el sistema de refacciones para autos, se elaboran: compras, ventas, ajustes, traspasos y ordenes de servicio. Todos los procesos verifican existencias y dan salida y entradas al kardex del inventario.

El problema que tengo es como validar eficaz el bloqueo y desbloqueo de registros en los archivos involucrados en cada transaccion. Lo que hago en mi programa a grandes rasgos es:

  1. Para la afectacion de una compra o venta con mas de 200 registros o numeros de parte primero

    • verifico que exista la pieza en el catalogo de articulos
    • bloqueo cada registro en el catalogo para su afectacion posterior y reservar en salidas de inventario que no modifiquen mi existencia en kardex.
  2. si para la fase 1, actualizo existencias de todo el movimiento en el catalogo y kardex, si no pasa, no afecto nada

  3. hago al final un dbunlockall() y dbcommitall()

El problema: si un usuario desea realizar otro procesos de salida o entrada con numeros de parte que bienen en la compra mencionada, le indicara el sistema que la pieza esta bloqueada por otro usuario y no pasarĂĄ con la pieza.

Considerando el numero de usuarios y la lentitud que puede en su momento tener el sistema por las transacciones del mismo en el servidor esto representa un inconveniente para el buen desempeño del sistema.

Habra un metodo eficaz para realizar este timo de movimientos en sistema.

Noé Aburto Sånchez
Tec. Prog. de Sistemas. -Morelia, Mich. México.
fwh 20.06, Harbour 3.2.0, bcc 7.4
TsBrowse 9.0, TsButton 7.0, xEdit 6.1
naburtos@gmail.com, noeaburto67@hotmail.com
Posts: 1144
Joined: Mon Feb 05, 2007 07:15 PM
Re: AlgĂșn ej. de transacciones en kardex
Posted: Fri Jul 05, 2013 06:40 PM
Hola, a mi me funciona asi:

Trabajo con arrays con los siguientes elementos.

codigo, descrip, cantidad, prec_unit, importe, EXISTENCIA

1. al capturar las claves de la salidas, verifico que tenga existencia, y guardo en la columa del array lo que
se tiene en ese momento.

2. al guardar, la iformacion vuelvo a verificar, si aun sigo teniendo la existencia , si es el caso, guardo el registro,
de lo contrario, envio un mensaje al usuario , EXISTENCIA AGOTADA, regresa a eliminar el registro.

Es resumen, la existencia la valido 2 veces, al momento de capturar las partidas y al momento de guardarlas

espero haberte ayudado un poco.

saludos..
Cesar Cortes Cruz

SysCtrl Software

Mexico



' Sin +- FWH es mejor "
Posts: 1144
Joined: Mon Feb 05, 2007 07:15 PM
Re: AlgĂșn ej. de transacciones en kardex
Posted: Fri Jul 05, 2013 06:43 PM

Por cierto, se me olvido mensionar, no uso bloqueos de registros, salvo al reemplazar los datos,
ya que para las capturas uso arrays..

Esto es con DBF, con mysql es similar.

saludos..

Cesar Cortes Cruz

SysCtrl Software

Mexico



' Sin +- FWH es mejor "
Posts: 3358
Joined: Fri Oct 07, 2005 08:20 PM
Re: AlgĂșn ej. de transacciones en kardex
Posted: Fri Jul 05, 2013 11:07 PM

Amigos:

Creo que lo mejor es crear un archivo comĂșn que sirva para todas las terminales, en este archivo
estarĂĄn registrados todos los productos y cantidades que cada terminal este a punto de vender o
mejor dicho que ya tenga capturado en su pedido.

Al registrar un nuevo producto, cada terminal deberĂĄ "ver" cuanta existencia hay y restar las cantidades
que ya estĂĄn comprometidas en este archivo comĂșn que sean del mismo producto que esta vendiendo.

Ahora bien, cada terminal debe registrar los productos que esta comprometiendo identificĂĄndolos con
un nĂșmero de operaciĂłn, este folio debe estar en un archivo que tambiĂ©n sea comĂșn para todas las
terminales o pudiera ser que cada terminal tuviera su propio folio de control aunque se complica un
poco mĂĄs pues habrĂĄ que identificar terminal y folio.

Una vez que se realice la venta hay que descontar existencias del kardex y borrar los productos que
hay en el archivo comĂșn.

Si por alguna razĂłn la venta no se concreta, basta con borrar los productos del archivo comĂșn y la
existencia queda inalterable.

Y como decĂ­a el buen amigo TomĂĄs, Listo el pollo !

Saludos

SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
Posts: 418
Joined: Wed Nov 26, 2008 06:33 PM
Re: AlgĂșn ej. de transacciones en kardex
Posted: Fri Jul 05, 2013 11:52 PM

Saludotes.

Gracias por contestar.

Creo que se me hace mås practico el método de Armando, considerando que solo debere bloquear y desbloquear al momento de hacer los "replace" y listo, y solo con las salidas verificar las existencias, que ya lo tengo implementado, pero mejorare la rutina de afectacion.

Gracias,

Noé Aburto Sånchez
Tec. Prog. de Sistemas. -Morelia, Mich. México.
fwh 20.06, Harbour 3.2.0, bcc 7.4
TsBrowse 9.0, TsButton 7.0, xEdit 6.1
naburtos@gmail.com, noeaburto67@hotmail.com
Posts: 1078
Joined: Thu Sep 27, 2007 03:47 PM
Re: AlgĂșn ej. de transacciones en kardex
Posted: Sat Jul 06, 2013 01:56 AM

Tu problema es que bloqueas la registro, solomante bloquea el registro y desbloquea en el momento de grabar.

Ruben Dario Gonzalez
Cali-Colombia
rubendariogd@hotmail.com - rubendariogd@gmail.com

Continue the discussion