Cambio deudor en factura aduanera

Buenas,

He lanzado facturas aduaneras en SP1 mediante zsdc_0057 pero el deudor (cliente) es erroneo y en la transacción VF02 no me permite modificar este dato.
¿Saben de alguna transacción que me permita modificar el cliente/deudor en la factura generada sin necesidad de anular y crear una nueva?

Gracias

Ten en cuenta que las transacciones que inician con Zeta son a medida, desarrollos personalizados para tu empresa … no podemos saber qué hace tu transacción., la respuesta que te daré no tiene en cuenta esta transacción mencionada.

En SAP ERP, una vez que una factura ha sido creada y contabilizada, no es posible modificar directamente el cliente (deudor) utilizando las transacciones estándar como VF02. La modificación de datos críticos como el cliente en una factura generalmente requiere la anulación y recreación del documento debido a la integridad de datos y las reglas de auditoría en SAP.

Opciones Disponibles:

  1. Anulación y Recreación de la Factura:
    La manera estándar y recomendada de corregir un cliente incorrecto en una factura es anular la factura incorrecta y crear una nueva con los datos correctos.

Pasos para Anular y Recrear la Factura:

  1. Anular la Factura:

    • Utiliza la transacción VF11 para anular la factura incorrecta.
    • Ingresa el número de la factura y ejecuta la anulación.
  2. Crear una Nueva Factura:

    • Utiliza la transacción VF01 para crear una nueva factura.
    • Asegúrate de seleccionar el cliente correcto y los datos correspondientes.
  3. Modificación a través de un Programa Z:
    Si anular y recrear la factura no es una opción viable debido a restricciones operativas, podrías considerar desarrollar un programa Z (personalizado) en ABAP que te permita modificar el cliente en la factura. Este enfoque debe ser utilizado con extrema cautela y generalmente no es recomendado debido a las implicaciones en la integridad de los datos y el cumplimiento normativo.

Ejemplo de un Programa Z para Modificar el Cliente:

Advertencia: Esta solución es sólo a título informativo. Utilizarla en un entorno productivo debe ser cuidadosamente considerado y probado exhaustivamente en un entorno de desarrollo y calidad.

  1. Desarrollo del Programa Z:
REPORT z_modify_invoice_customer.

PARAMETERS: p_vbeln TYPE vbrk-vbeln OBLIGATORY,  " Número de la factura
            p_kunnr TYPE vbrk-kunnr OBLIGATORY. " Nuevo deudor

DATA: lt_vbrk TYPE TABLE OF vbrk,
      ls_vbrk TYPE vbrk.

" Leer datos actuales de la factura
SELECT * INTO TABLE lt_vbrk
FROM vbrk
WHERE vbeln = p_vbeln.

IF lt_vbrk IS NOT INITIAL.
  " Actualizar el deudor en la factura
  LOOP AT lt_vbrk INTO ls_vbrk.
    ls_vbrk-kunnr = p_kunnr.
    MODIFY vbrk FROM ls_vbrk.
  ENDLOOP.

  COMMIT WORK AND WAIT.

  WRITE: / 'El deudor de la factura', p_vbeln, 'ha sido actualizado a', p_kunnr.
ELSE.
  WRITE: / 'No se encontró la factura', p_vbeln.
ENDIF.

Notas Importantes:

  1. Pruebas Exhaustivas:

    • Prueba exhaustivamente este programa en un entorno de desarrollo y calidad para asegurarte de que no afecte la integridad de los datos.
  2. Implicaciones Legales y de Auditoría:

    • Consulta con el equipo de auditoría y cumplimiento normativo antes de implementar una solución de este tipo.
  3. Validaciones Adicionales:

    • Añade validaciones adicionales en el programa para asegurarte de que sólo los usuarios autorizados puedan realizar estos cambios.

Conclusión:

La solución estándar y más segura en SAP es anular y recrear la factura con los datos correctos utilizando VF11 y VF01. Modificar directamente el cliente en una factura contabilizada mediante un programa Z debe ser considerado con extrema precaución y sólo como último recurso, siempre cumpliendo con las normativas internas y de auditoría.

Si necesitas más detalles o ayuda con el desarrollo del programa Z, no dudes en preguntar.

Este tema se cerró automáticamente 7 días después de la última publicación. No se permiten nuevas respuestas.