Error en Pedido Venta

Este debate contiene 2 respuestas, tiene 2 mensajes y lo actualizó  Laura Nicolàs hace 1 año, 1 mes.

Viendo 3 publicaciones - del 1 al 3 (de un total de 3)
  • Autor
    Publicaciones
  • #6542

    cbr.conchi
    Participante

    Buenas tardes,

    He comprobado que en la versión NAV 2018 CU3, al crear un pedido de venta, da un error de «Se ha intentado cambiar una versión anterior de un registro Cab. Venta…».
    La funcionalidad es estándar, y no siempre da el error, pero hay clientes que se quejan, porque tras dar el error se borran las ultimas modificaciones que hayan realizado en el pedido…

    Los pasos para conseguir reproducirlo son:
    – Page 42, Nuevo Pedido
    – Indicar cliente con más de una dirección de envío.
    – Indicar una linea de producto, por ejemplo.
    – en la pestaña de «Envío y Facturación» indicar un tipo de dirección de envío, por ejemplo, «Dirección Personalizada»
    – modificar el campo Contacto, por ejemplo, o la Dirección,
    – y pulsar Nuevo Pedido

    En este momento salta el error.. (a veces si a veces no…)
    He intentado buscarlo por internet, solucionarlo con COMMIT, Currpage.update.. pero nada..

    ¿Que se os ocurre? No veo que código es el que da problemas, he comentado el código del validate del campo «Dirección de envío» y también da el error…

    Gracias de antemano y saludos a las dos! 😉

    #6543

    Laura Nicolàs
    Jefe de claves

    Lo he probado con un CU6, que es el que tengo instalado, y no consigo reproducir el error.

    Me estoy instalando un Docker con el CU3 – ahora que tenemos Docker! y es fácil ,-)
    A ver si lo puedo reproducir y te digo el qué.

    Me huelo por donde va el error, pero te digo algo en un rato cuando lo pueda verificar.

    Salut!
    Laura Nicolàs

    ¿Quieres conocer las últimas novedades sobre Business Central? Dynamics ScaleUp 2019.

    Consulta fechas en
    DynamicsScaleUp.com

    #6553

    Laura Nicolàs
    Jefe de claves

    Pues lo he probado con un CU3 y tampoco he conseguido reproducir el error…

    En cualquier caso ¿Cuando da este error? Cuando hay 2 variables modificando el mismo registro.
    Imagina este escenario:

    • Tienes dos variables que apuntan a la misma tabla y al mismo registro
      Variable1.GET(‘101’);
      Variable2.GET(‘101’);
    • Modificas el registro con la Variable1
      Variable1.»Un campo» := ‘Un valor’;
      Variable1.modify
    • Ahora quieres modificar el registro con la Variable2
      Variable2.»Otro campo» := ‘Otro valor’;
      Variable2.modify;

    Aquí es donde salta el error. A la Variable2 se le ha hecho el get antes de las modificaciones, por lo que ahora tiene datos obsoletos. Y es cuando da el error:
    – “Se ha intentado cambiar una versión anterior de un registro Cab. Venta…”

    La forma de solucionarlo es que justo antes de modificar Variable 2, hay que hacerle un GET para tener la última versión de los datos.
    Variable2.GET(‘101’);

    Variable2.»Otro campo» := ‘Otro valor’;
    Variable2.modify;

    – En tu caso la page 42 tiene el Rec.
    – El Rec de la tabla 36 es el mismo registro, la misma variable. No tiene que dar error.
    – En la tabla 36 también tienes la variable SalesHeader. Hay que mirar cuando se le hace el GET, cuando se usa y cuando se modifica.

    Espero que por ahí puedas seguir investigando.

    Salut!
    Laura Nicolàs

    ¿Quieres conocer las últimas novedades sobre Business Central? Dynamics ScaleUp 2019.

    Consulta fechas en
    DynamicsScaleUp.com

Viendo 3 publicaciones - del 1 al 3 (de un total de 3)

Debes estar registrado para responder a este debate.

Members Currently Active: 0
No users are currently active
Keymaster | Moderator | Participant | Spectator | Blocked
Additional Forum Statistics
Threads: 1.032, Posts: 3.250, Members: 1.000
Welcome to our newest member, Maria Nieves
Most users ever online was 15 on 5 April, 2019 9:31 am