• Este debate tiene 2 respuestas, 3 mensajes y ha sido actualizado por última vez el hace 1 año, 3 meses por AvatarCristina Nicolàs.
Viendo 3 entradas - de la 1 a la 3 (de un total de 3)

Respuestas del foro


  • Avatar
    Jaime Capilla
    Participante
    Jaime Capilla

    Hola.

    Un cliente nos esta pidiendo poder bloquear un albarán para que este no se facture. Al crear un campo en «Sales Shipment Header», este no es editable entiendo que por tratarse de una tabla de históricos.

    ¿Como podría conseguir bloquear un albarán para que no se facturara o al menos que pudieran marcarlo cómo bloqueado?

    #12859
    nbGroup Soluciones de Negocio SL nbGroup Soluciones de Negocio SL

    Buenas tardes Jaime, nosotros acabamos personalizando un campo de Albarán bloqueado para los albaranes en depósito que no deben ser facturados.

    Si alguien conoce alguna manera estandard de hacerlo sería muy interesante conocerlo.

    Por lo demás si necesitas saber como lo personalizamos ponte en contacto por el foro.

    Un saludo

    #12861
    Avatar
    Cristina Nicolàs
    Superadministrador
    Cristina Nicolàs

    Hola Jaime,

    Lo que es No editable no es la tabla, sino más bien la página que muestra la información de esta página.
    Y además hay algo de código por detrás para determinar qué es lo que se puede modificar y qué es lo que no se puede modificar.

    En el caso de la página 130 Posted Sales Shipment, fíjate que la página en si no está marcada como No Editable. Pero si lo están todos los campos de forma individual.
    Los únicos campos que he encontrado que si son editables son «Shipping Agent Code», «Shipping Agent Service Code» y «Package Tracking No.».
    De todos modos, cuando el usuario modifica el contenido de estos campos (o de cualquier otro que puedas poner Editable en esta página), el sistema no guarda la modificación directamente en la base de datos.
    Lo que han hecho es que en el trigger OnModify de la página, se llama a una codeunit llamada «Shipment Header – Edit». Esta codeunit recoge las modificaciones del usuario, pero lee de nuevo el registro de la base de datos y escribe sólo los cambios de los 3 campos que quiere que puedan ser editados.

    Así, su tu quisieras que un campo fuera editable tienes que:
    1. Mostrarlo en la página y ponerlo editable
    2. Suscribirte al evento OnBeforeSalesShptHeaderModify de la codeunit 391 Shipment Header – Edit, y escribir tu código para que el campo que tu quieres también se guarde en base de datos.

    Un saludo,
    Cristina Nicolàs

    #12862
Viendo 3 entradas - de la 1 a la 3 (de un total de 3)

Debe iniciar sesión para responder a este tema.