FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Mal funcionamiento en RED
Posts: 479
Joined: Fri Feb 16, 2007 10:29 AM
Mal funcionamiento en RED
Posted: Fri Oct 26, 2007 07:16 AM

Estimados compañeros:
tengo instalado en RED mi aplicación de gestión de facturas y todo va de maravillas, excepto 1 cosa: la correlación en los números de facturas!!

Si 2 o más usuarios entran a la vez en el módulo de "nueva factura", cuando la imprimen el programa asigna el mismo numero a todas las facturas impresas, ¿Como es posible? Sin embargo utilizo el mismo procedimiento en el stock y las cantidades se refrescan perfectamente si ambos usuarios entran a la vez en ese modulo.
Si cada usuario entra individualmente al modulo "nueva factura" la correlación de los numeros de facturas van de maravilla!!

¿ Alguna sugerencia ? Mil gracias
Lorenzo

Posts: 189
Joined: Sun Jul 08, 2007 01:46 AM
Mal funcionamiento en RED
Posted: Fri Oct 26, 2007 11:19 AM

Lorenzo:

Según he leido aquí en el foro, deberías asignarle
el número a la factura cuando el usuario "Acepta" esa factura y
la manda a imprimir o sea en el ultimo momento.

Es una idea.

saludos

Ruben Fernandez

Posts: 330
Joined: Fri May 25, 2007 09:06 PM
Mal funcionamiento en RED
Posted: Fri Oct 26, 2007 09:24 PM

Loren:

La solucion pasa por que el numero de factura lo obtengas cuando realices el bloqueo de la base para grabar, en ese momento el folio de la factura sera en ULTIMO GRABADO + 1, grabas, imprimes desbloqueas y muestra en pantalla en Numero de la factura grabada.

Espero te sirva, esta es la forma en que yo lo realizo.

Saludos,
Antonio

Posts: 1144
Joined: Mon Feb 05, 2007 07:15 PM
Mal funcionamiento en RED
Posted: Fri Oct 26, 2007 11:51 PM

Lorenzo

aqui se habla del tema y la sulucion

http://fivetechsoft.com/forums/viewtopi ... ht=factura

saludos..

Cesar Cortes Cruz

SysCtrl Software

Mexico



' Sin +- FWH es mejor "
Posts: 2064
Joined: Fri Jan 06, 2006 09:28 PM
Mal funcionamiento en RED
Posted: Sat Oct 27, 2007 09:39 PM

Loren,
Te recomiendo lo siguiente, imagino muchos otros lo haran asi, sino, es un buen metodo, crea una DBF donde controlas la numeracion de tus documentos; pedidos, facturas, recibos de cobro, etc; y como ya te han dicho todos, aunmentas el numero al finalizar tu documento siendo num_actual= num_actual +1, funciona super...SPERO TE AYUDE...

Dios no está muerto...



Gracias a mi Dios ante todo!
Posts: 1446
Joined: Mon Oct 10, 2005 02:38 PM
Numeraciçon facturas.
Posted: Sun Oct 28, 2007 09:48 AM

Tal como ya han comentado, yo también utilizo un DBF para las numeraciones (referencieas únicas, albaranes, facturas, etc).

Pero sobre el orden de ejecución de los pasos no estoy del todo de acuerdo.

Yo hago: cuando detecto el primer movimiento a facturar y éste se puede facturar, lo bloqueo, accedo a la DBF de numeraciones, bloqueo el registro de la DBF, obtengo el nuevo número de factura, grabo la DBF, la desbloqueo, facturo el movimiento y lo desbloqueo.
Para el siguiente movimiento si pertenece a la misma factura ya tengo su número y no tengo de volver a acceder y además la DBF ya está disponible para los demás usuarios.

Cuando quiera imprimirla no deberé hacer nada estra sino imprimir.
El tiempo que la DBF de numeraciones ha estado 'pillada' es bajísimo y si en el proceso de su bloqueo tienes un While que espera a que no esté 'pillada' por otro usuario, el usuario que quiere facturar ni se entera de que alguien más estaba facturando.

Para mi una cosa es facturar y otra imprimir facturas. Son procesos independientes y el de impresión naturalmente reutilizable en cualquier momento.

Saludos
Carlos G.

Un Saludo

Carlos G.



FiveWin 25.12 + Harbour 3.2.0dev (r2502110321), BCC 7.7 Windows 11 Home

Posts: 2064
Joined: Fri Jan 06, 2006 09:28 PM
Mal funcionamiento en RED
Posted: Sun Oct 28, 2007 07:46 PM

Fivewidi, reza un dicho..."entre gustos y colores no han escrito los pintores...", pero creo que una cosa es gusto y otra es logica, no quiero entrar en polemica sobre tu metodo, eso depende como se maneje los procesos de facturacion de algunos paises, fijate, tu bloqueas el numero, que pasaria si se va la luz o si no se finaliza la factura..?, ademas otro usuario podria terminar de facturar antes que el que bloqueastes, son solo analisis de situaciones, se dice que las mayorias no pueden estar equivocados, pero eso tambien es discutible, lo bueno es que Loren ya tiene alternativas para escojer la que mas le convenga y que sea mas seguro para su informacion, para eso estamos, pero el metodo propuesto por la mayoria, es muy viable y seguro, por no decir que es el correcto y unico.saludos.

Dios no está muerto...



Gracias a mi Dios ante todo!
Posts: 670
Joined: Wed Oct 19, 2005 06:41 PM
Mal funcionamiento en RED
Posted: Sun Oct 28, 2007 10:42 PM
Lorenzo yo lo hago asi

Function NuewNum( Num )

    select factura //esta con indice activo de str(num_Fact,6)

    while .t.
        dbgobottom()
        num := factura->num_Fact + 1
        if !dbseek( str(Num,6 ) )
            exit
        end
    end
    
   dbappend()
    
   factura->num_Fact := num
   unlock
Return Num


esto lo hago cuando ya hayas terminado la factura en este caso el que gane el numero graba primero, bueno es solo mi humilde criterio

espero te ayude

Saludos
Wilson 'W' Gamboa A
Wilson.josenet@gmail.com

Continue the discussion