• Este debate está vacío.
Viendo 9 entradas - de la 1 a la 9 (de un total de 9)
  • Autor
    Entradas
  • #32846
    Daniel Delgado
    Participante

    Saludos!!

    Quisiera saber de que manera puedo pedir ciertos parámetros al usuario en el momento de COMPLETAR algún documento

    Por ejemplo:

    Quisiera que al darle COMPLETAR a un remito de proveedor le pida al usuario los siguientes parámetros antes de continuar con la lógica del documento

    (Casillita de Check – Si, No) Desea generar factura de proveedor?
    (Casillita de Check – Si, No) Desea imprimir documento?
    OK

    y al darle OK que continue con la acción del documento
    donde también tomaré estos valores que le pedí al usuario

    NOTA: Esto es solamente un ejemplo hipotético de lo que necesito

    De antemano muchas gracias por su ayuda!!

    #38791
    Carranza Carlos
    Participante

    hipotéticamente. si el campo generar factura proveedor e imprimir documento (que no sea el que estás viendo, porque para eso ya está el botón de la barra de herramientas), no existen en la tabla, los debes agregar (primero con pgAdmin o comando psql, luego importarlo al diccionario de datos de la tabla y de la pantalla. Por último modificar la clase aftersave para que llame a las clases que generarán la factura como copia del remito y que imprima la misma. Esto aplica para todo en gral.

    #38792
    Federico Cristina
    Superadministrador

    Buenas,

    Ampliando un poco lo que comenta ccarranza, en terminos generales las operaciones de gestión de documentos (completar, anular, etc.) tienen una ventana genérica, la cual en caso de querer incorporarle parámetros requeriría un desarrollo ad-hoc que en realidad no se justificaría, principalmente porque los parámetros podrían variar de documento en documento, y también según el estado del mismo. Además deberías implementar los cambios tanto para el cliente Swing como para el Web.

    Es por esto que te sugirieron una alternativa bastante viable, que es la de tener un conjunto de checks en la tabla misma, los cuales podrás leer y utilizar al comento de aplicar la lógica de documentos correspondiente (ejemplo: completeIt(), voidIt(), etc.).

    De esta manera no se requieren cambios a nivel GUI, únicamente estructurales y en el modelo; solución reutilizable tanto para Swing como para Web.

    Saludos,
    Federico

    #38793
    Daniel Delgado
    Participante

    Muchas gracias por sus respuestas!!

    Efectivamente necesito un par de checks únicamenete para la acción de completar documento de una sola tabla específica

    Lo que tenía pensado era aumentar los parámetros que necesito en el proceso asociado al campo docaction de mi tabla y talvez crearme una clase org.openXpertya.process.ClaseNueva y definirla en el dicho proceso para que primero realice el algorítmo que necesito y después continúe con la lógica del documento, solo que no estoy seguro de que tan efectivo me resulte esto

    Y bueno si esto no funciona como lo necesito creo que me inclinaré por añadir estos campos en mi tabla como me lo recomienda fcristina y listo

    Muchas Gracias!!

    #38794

    DanielDelgado lograste hacer lo que deseabas yo me encuentro en una situación similar me podrias indicar mi correo es kristiambarahona@gmail.com gracias

    #38827
    Daniel Delgado
    Participante

    Hola krispish.

    Pues déjame decirte que no me funcionó lo que quería. Le aumenté un par de parámetros a mi proceso de DocAction de mi tabla y también le agregé una clase extendida a SvrProcess para que se ejecute el código que necesitaba.

    Primero: al ejecutar la acción del documento nunca pasó por mi clase asociada al proceso.
    Segundo: los parámetros que aumenté los necesitaba específicamente al completar el documento y pues aunque puedes meterle lógica de despliegue a estos parámetros siempre te lanzará la ventanita donde te pide los parámetros así no se despliegue ninguno.

    La solución que le dí fue lanzar un JOptionPane específicamente:
    int aux = JOptionPane.showConfirmDialog(null, “Generar prefacturas de clientes?”);

    y pues el otro parámetro que necesitaba a la final no lo utilicé
    Por lo que esta solución me sirvió a la perfección

    Saludos!!

    #38828
    Saulo Gil
    Miembro

    El único problema con un workaround de ese tipo es que, tal como comentaba Federico, ese cartel probablemente no aparecería utilizando otras interfaces del sistema, entre ellas la interface web y tampoco desde los web services (al querer cambiar el estado de un documento).

    #38795

    Hola

    Que tendría que hacer entonces si lo que deseo es que al ingresar la factura de compras y oprimir el botón completar de una vez me ingrese esa mercadería al almacén. Y no pasar por el proceso del remito.

    Alguna idea como hacerlo donde escribo las lineas de código para dicha operación y que lineas.

    Gracias

    #38842
    Saulo Gil
    Miembro

    Tendrías que familiarizarte con los diferentes métodos que se ejecutan al modificar el estado de un documento. Un punto de partida puede ser extender la funcionalidad de org.openXpertya.model.MInvoice.completeIt().

    Seguramente puedas usar el código del TPV como referencia para ver como generar un remito en base a una factura.

Viendo 9 entradas - de la 1 a la 9 (de un total de 9)
  • Debes estar registrado para responder a este debate.