Problema generando factura desde Shipment

2006-12-14
2013-05-02
  • Hola, tratando de generar varias facturas desde una orden de venta, con la ayuda de este foro lo logre haciendo varios Shipments por orden y desde cada Shipment genero la factura correspondiente. Bien, lo que ocurre es que cuando quiero generar una factura desde el Shipment se debe correr el proceso en la ventana "Generate Invoice (Manual)" donde se selecciona la orden que corresponde con el ultimo shipment ceado para ella; cuando selecciono una orden y hago click para generar la factura aparece el mensaje de error "InvoiceProcess.generate: java.lang.nullPointerException" y no crea totalmente la factura, sino que la crea pero sin el estado "Complete". Al parecer no es tan grave puesto que uno completa los detalles de la factura y se pueden ingresar los asientos contables perfectamente, pero no es así, puesto que algo ocurre despues del error y el sistema cree que la factura ya se ingreso y completo lo cual es incorrecto puesto que la factura solo se creo parcialmente, entonces cuando se completa a "mano" la factura, el sistema cree que es la segunda vez que se ingresa la misma factura y por lo tanto la orden aparece como si se hubiese entregado dos veces en forma innecesaria y la orden no se muestra como entregada totalmente.....aparece con "sobre entrega" o algo parecido. Necesito que la orden aparezca como entregada totalmente y en forma limpia. Alguién sabe porque ocurre este error tan molesto?
    Por cierto tengo instalado Compiere 253a y este error me ocurre con un cliente en particular y no con los otros, que por cierto no tiene ninguna configuracion distinta de los otros.
    Saludos y gracias por la ayuda.

     
    • Me respondo yo mismo....
      Todo esto era a causa de un bug de la version 253a. Cuando uno quiere generar una factura a partir de una entrega (Shipment), la aplicacion por defecto y de acuerdo con la fecha que maneja el servidor (esa que aparece en la ventana de login), pretende hacer la factura precisamente en esa misma fecha. Yo estaba ingresando facturas antiguas, por lo tanto, las fechas de facturación eran distintas a la fecha que aparecia en la ventana de login (que por defecto es la fecha actual). Ademas de todo esto, las facturas tenian productos en una moneda distinta a la de la contabilidad, por lo tanto tenia parametrizada una conversion entre las monedas (Currency Rate) que dependía de la fecha en que se facturaba. Entonces, el error se producia cuando la aplicacion intentaba generar la factura en la fecha actual y se encontraba con que no habia moneda de cambio para esa fecha, dado que yo estaba facturando en fechas anteriores a las de la actual y para esas fechas anteriores estaban ajustadas las conversiones. Entonces aparecia el error "java.lang.NullPointerException" y ademas la aplicacion suponia que ya habia hecho la factura correspondiente y creaba una factura sim completar que si se completaba la aplicacion la reconocia como distinta y al final uno terminaba facturando el mismo servicio 2 veces.

      La solucion si se puede llamar asi, ya que solo intente soslayar el problema y no solucionarlo de fondo, es que si se quiere proceder como lo hago para generar facturas, es decir, usando entregas (Shipments) como medio para facturar y en fechas anteriores, entonces lo que se debe hacer es simplemente, al momento de logearse en la aplicacion, es seleccionar como fecha (en la ventana de login) la fecha en que se va a facturar lo que corresponde, cuando se termine con la facturacion en la fecha seleccionada en el login y si se quiere facturar nuevamente en otra fecha, se debe salir de la aplicacion y entrar seleccionando la fecha correspondiente y asi sucesivamente. Bastante molesto, pero cuando se tiene Compiere en produccion no hay otra salida.

      Eso es, espero le sirva a algúien...
      Saludos.