Facturacion de Albaranes


([N1] sostaco) #1

Estoy intentando hacer un proceso para conseguir hacer la facturacion automatica de unos albaranes, estoy viendo los ejemplos de vFacturacion, pero en mi caso es distinto, en la tabla Albaranes ( en mi caso se llama Ordenes ) no tengo la subcarpeta “Lineas de Albaran”. He intentado usar tubos de ficha, y tubos de lista, pero de momento me esta siendo imposible.

Estoy viendo varios ejemplos de facturacion, como los que aparecen en vFacturacion o en vGestion, y sinceramente no termino de tenerlo todo claro. Alguinas dudas, a ver si alguien puede ayudarme.

En vGestion, al facturar, utiliza “Multipartir Lista”, y multiparte por cliente, periodo, almacen, regimen fiscal, serie, y forma de pago…¿¿ Es igual multipartir una lista, que ordenarla ??

Os pego el proceso completo ( no el mio, el de vGestion ) para que veais que es lo que hace.

[attachment=25597,1994]




([N1] Synetic) #2

Sin ver tu estructura de tablas y sin detallar exactamente cual es tu problema voy a aventurarme a darte alguna idea sobre el proceso que publicas.
El comando multipartir lista lo que hace es crear sublistas en las que todos sus registros tienen un valor común por el campo que le has indicado en el comando.
En el caso del proceso que publicas de vGestión (no lo conozco pero se interpreta):

  • obtiene la lista de albaranes (ordenes en tu caso) entiendo que pendientes de facturar.
  • Multiparte por cliente. Es decir: Crea tantas listas de albaranes como clientes existan.
  • Multiparte por Periodo. De la lista de albaranes de cada cliente, crea sublista por periodos distintos.
  • Multiparte por …

Es decir: al final lo que tienes es una lista de albaranes que tienen en común el cliente, periodo, almacén, regimen fiscal, serie, y la forma de pago. Crea una factura y “añade” esos albaranes.

Espero haberte dado alguna pista. Si detallas más cual es tu problema tal vez podamos ayudarte mejor
saludos


([N1] sostaco) #3

Si, al final eso lo he entendido, intente hacer un proceso similar a este pero adaptado a mi caso, pero me resultaba imposible, os enseño mi esquema de como tengo conectadas las tablas. Faltan varias, pero no afectan al proceso.

Intente hacerlo mediante tubo de ficha y de lista, pero hay algo que estoy haciendo mal, en el ejemplo que mire, usaba albaranes y linea de albaranes, en mi caso como no tenia linea de albaranes, intente hacer ambos tubos con la tabla Ordenes ( los de ficha con Facturas y los de lista con Lineas de Factura )

[attachment=25603,1996]




([N1] sostaco) #4

No consigo modificar el mensaje de antes, lo escribo a continuacion.

Estoy intentando hacerlo mediante tubos de ficha y de lista, y ejecutandolos mediante un manejador de eventos. El problema viene en que consigo cargar perfectamente el tubo de ficha, para crear la entrada de la factura, pero no consigo cargar el tubo de lista, para añadir las entradas de linea de facturas.

El tubo de lista en cuestion, tiene “Ordenes” como tabla asociada y “Lineas de Factura” como tabla destino. El campo enlazado es Facturas. Adjunto una imagen del evento hasta el punto del error, y otra del tubo de lista, para que podais ver donde es donde esta el error.

[attachment=25607,1997]




([N4] mperez) #5

Hola Sostaco.

Creo que llevas un pequeño lío.En principio es todo muchisimo mas sencillo de lo que planteas.

Pero sinceramente yo no intentaría seguir por donde vas, ya que observo que no tienes claros los conceptos fundamentales

Multipartir Lista no tiene nada que ver con Ordenar una lista, que es lo que creo que necesitas.

Si lo que quieres es procesar una lista de registros u ordenes, simplemente tienes que recorrer esa lista, por ejemplo con la instruccion recorrer lista lectura escritura.

Si lo que quieres es tratarla de forma agrupada, o la ordenas o mejor te creas un indice con ese orden cliente, periodo, etc y es el que utilizas en el recorrer lista. No tiene más

Por otro lado las acciones a realizar en la facturación por cada Orden, como puede ser modificar stocks, poner la orden como facturada, etc, es decir modificaciones a realizar en otros registros, lo normal es hacerlas por actualizaciones en la base de datos.

Date cuenta que condicionandolas, puedes hacer que se ejecuten solas tan solo cambiando el estado de la orden a Facturado en el recorrer lista.

Creo que estas progrmando en Velneo " A lo Visual Basic" y aqui todo es mucho mas sencillo.

Te aconsejo que o bien compres el libro Cambiar el Chip con Velneo

o adquieras Nivel 2, en Nivel 2 tienes unos videos de Formación creo que excepcionales, en ellos se realiza una aplicación completa desde el inicio al final y no es muy diferente de lo que estas planteando, así como un tutorial sobre la base de datos, la potencia de las actualizaciones y otros temas que necesitas conocer y dominar.

Además esa formación esta tutorizada y puedes preguntar cualquier duda que tengas.

Por otro lado con Nivel 2, tienes GRATIS a vErp en donde dispones de una gestion de compras y ventas simple y que puedes modirficar, estudiar, adaptar a tu gusto

En cuanto al tema que comentas en el último post, se debe a que en Velneo los objetos tienen siempre un origen (Ficha , Lista o ninguno) y una salida, así como en su caso deben estar asociados a una tabla, este concepto es fundamental para entender Velneo.

Si lo que deseas son tutoriales gratuitos, también los hay aunque no de la calidad de los anteriores, por ejemplo en mi Blog encontrarás algunos y referencias a otros http://mpoliver.wordpress.com/category/primeros-pasos/

Yo para aprender y formarme, no dudaría en optar por el Nivel 2 y los servicios de Formacion y Soporte que incluye.


([N1] sostaco) #6

mperez, gracias por la respuesta. Desde luego, no dudo que haya conceptos que no tenga claros, pero es que estoy completamente perdido con el tema de la facturacion.

He de decir que gracias a los videos de tu blog ( que vi hace mucho tiempo ) consegui resolver muchas dudas que me fueron surgiendo, pero es que con esto de facturar estoy completamente perdido. Es posible que, como dices, todos estos procesos que he ido colgando puedan ser poco apropiados, pero como he dicho, son solo los ejemplos que he ido viendo de facturacion automatica.

Si todo esto no es necesario usarlo ¿¿ como deberia hacerse ?? a mi entender creo que bastaria con esto:

  • Recorrer la Lista Clientes
  • Si este tiene Ords. pendientes de facturar, crear una ficha de factura
  • Agrupar todas las ordenes del cliente en la misma factura, mediante lineas de factura.

En los ultimos dos pasos es donde tengo mas problemas, en el apartado de las ordenes de cliente, supongo que se debe hacer cargando plurales. Y luego estoy completamente perdido sobre como agregar las ordenes a las lineas de factura.


([N1] Synetic) #7

sostaco, las líneas de factura y las líneas de ordenes (Albaranes) en el ejemplo del proceso que pones, al igual que en el esquema son la misma tabla. Es decir, la tabla lineas es común para las dos tablas de cabecera.

Por ello en el proceso de facturación recorre las líneas rellenando el campo VTA_FAC (factura de venta) para enlazar las líneas con la factura creada.
Los tubos sirven para pasar datos de una tabla a otra. En este caso los tubos no te sirven para las líneas.


([N1] comercial) #8

Hola, una pregunta ¿Las lineas de órdenes en que tabla las tienes ?. De momento se supone que en la tabla Lineas de Factura, pero me gustaría me lo confirmaras. Dicho de otro modo la tabla Lineas de Factura, Solo contiene lineas de factura después de facturar o también las lineas de detalle de las órdenes ?¿.

Saludos.
Miguel.


([N1] sostaco) #9

fernando.bricotec en mi solucion no tengo una tabla Linea de Albaranes, esos primeros ejemplos que he posteado no son mios, son ejemplos que he encontrado y he intentado adaptar al mio, sin exito, obviamente.

Comercial.arhes2000. Para la solucion tengo, entre otras tablas estas.

Tabla Clientes
Tabla Ordenes
Tabla Factura
Tabla Lineas de Fctra ( Submaestra de Factura )

Yo creo las Ordenes, y hasta que no facture, no aparecen en Lineas de Facturas ( o al menos ese es mi deseo ), y no tengo ninguna tabla llamada “lineas de ordenes”. Luego, mediante un proceso tengo una rejilla que me muestra las ordenes de clientes que estan sin facturar, que obviamente de momento son todas.


([N1] comercial) #10

Hola, te mando un .vin para que veas el proceso, instala con el vadmin, ya te adelanto que no es muy elaborado, lo primero que se me ocurrio, en velneo hay muchas maneras de conseguir lo mismo, supongo que la experiencia nos dirá cual es la mejor, en fin espero ayudarte.

Edito: pues no lo manda, este foro cada vez está peor, vale solo admite ciertos formatos, lo pongo como .txt
pero no olvides renombrarlo como .vin antes de instalar.

Saludos.
Miguel. [attachment=25625,1998]

PFacturar.txt (10.8 KB)

PFacturar.txt (10.8 KB)


([N1] sostaco) #11

Gracias Comercial.arhes2000, me ha sido de mucha ayuda, aunque tengo una duda mas.

El campo Entidad, que aparece tanto en Ordenes como en CFacturas, ¿¿debe ser un enlace a #Clientes.Id, o un campo como ese, con el contenido inicial #Clientes.id??

Gracias por todo.


([N1] comercial) #12

Hola, por lógica (como te puse en el comentario dentro de las propiedades del campo) debe ser un puntero a maestro entidades.

Saludos.
Miguel. (no arhes2000etcetcetcetcetc, a ver si algún dia podemos poner Alias a la cuenta en este foro :-))