Creación de entrega automatica con calendario

Quiero saber como puedo crear la entrega de forma automática para un cliente en un día y hora especifica de la semana

Para crear entregas de forma automática en SAP ERP en un día y hora específicos de la semana para un cliente, puedes utilizar la combinación de programación de entregas automáticas y jobs programados en SAP. A continuación, te describo los pasos para configurar esto:

1. Configurar la Programación de Entregas Automáticas

Primero, asegúrate de que tu sistema esté configurado para permitir la creación de entregas automáticas. Esto se hace generalmente a través de la configuración de las condiciones de entrega y la configuración del cliente.

2. Crear un Job Programado en SAP (Batch Job)

Utiliza la transacción SM36 para crear y programar un job en SAP que se ejecute en el día y la hora específicos.

Pasos Detallados:

  1. Definir el Job en SM36:

    • Ve a la transacción SM36.
    • Ingresa un nombre para el job en el campo Job Name.
    • En el campo Job Class, selecciona la clase de prioridad (por ejemplo, C para baja prioridad).
    • Haz clic en Start Condition para definir las condiciones de inicio del job.
  2. Definir la Condición de Inicio:

    • En la pantalla de Start Time, selecciona Date/Time y establece el día y la hora específicos en los que deseas que se ejecute el job cada semana.
    • Puedes utilizar la opción Periodic Values para que el job se ejecute de manera recurrente cada semana.
  3. Definir el Programa a Ejecutar:

    • En la pantalla principal de SM36, haz clic en Steps.
    • En la ventana de Steps, ingresa el nombre del programa que quieres ejecutar. Este programa puede ser una transacción estándar de SAP o un programa ABAP personalizado que hayas desarrollado para crear las entregas automáticas.

3. Desarrollar o Configurar el Programa de Entrega Automática

Usar un Programa Estándar de SAP:

SAP proporciona algunos programas estándar que pueden ser útiles para este propósito. Por ejemplo, puedes usar RVV50R10C para la creación de entregas automáticas.

  1. Programa Estándar de SAP:

    • Ve a la transacción SE38 y ejecuta el programa RVV50R10C.
    • Define los parámetros necesarios para la creación de entregas, como el tipo de entrega, el rango de fechas, etc.
    • Guarda los parámetros como una variante que se pueda utilizar en el job.
  2. Configurar el Job con el Programa Estándar:

    • Vuelve a la transacción SM36.
    • En Steps, ingresa el nombre del programa (RVV50R10C) y selecciona la variante que creaste.
    • Completa la configuración del job y guarda.

Crear un Programa ABAP Personalizado:

Si los programas estándar no cumplen con tus requisitos específicos, puedes crear un programa ABAP personalizado.

  1. Desarrollar el Programa ABAP:

    • Ve a la transacción SE38 y crea un nuevo programa.
    • Escribe el código ABAP para seleccionar los pedidos de venta pendientes y crear las entregas correspondientes.
    • Usa la función BAPI_OUTB_DELIVERY_CREATE_SLS para crear las entregas.
  2. Ejemplo de Código ABAP:

    REPORT z_create_delivery.
    
    DATA: lv_delivery   TYPE bapiobdlvhdr-delivery,
          lt_salesdocs  TYPE TABLE OF bapivbelnrange,
          lt_return     TYPE TABLE OF bapiret2,
          lv_commitwork TYPE bapiflag.
    
    * Selección de pedidos de venta para la entrega
    SELECT vbeln
      INTO CORRESPONDING FIELDS OF TABLE lt_salesdocs
      FROM vbak
      WHERE audat = sy-datum.
    
    * Crear entregas
    CALL FUNCTION 'BAPI_OUTB_DELIVERY_CREATE_SLS'
      EXPORTING
        delivery_type = 'LF'
        shipping_point = '0001'
        due_date       = sy-datum
      TABLES
        sales_documents = lt_salesdocs
        return          = lt_return.
    
    * Verificación de errores y confirmación de creación
    LOOP AT lt_return INTO DATA(ls_return).
      IF ls_return-type = 'E'.
        WRITE: / 'Error:', ls_return-message.
        EXIT.
      ENDIF.
    ENDLOOP.
    
    IF sy-subrc = 0.
      CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
        EXPORTING
          wait = 'X'.
      WRITE: / 'Delivery created successfully'.
    ELSE.
      CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'.
      WRITE: / 'Error in creating delivery'.
    ENDIF.
    
  3. Configurar el Job con el Programa Personalizado:

    • Vuelve a la transacción SM36.
    • En Steps, ingresa el nombre de tu programa ABAP personalizado.
    • Completa la configuración del job y guarda.

4. Monitorear y Mantener el Job

Utiliza la transacción SM37 para monitorear el estado del job programado y asegurarte de que se está ejecutando correctamente.

Pasos:

  1. Monitoreo del Job:
    • Ve a la transacción SM37.
    • Ingresa el nombre del job y el rango de fechas.
    • Verifica el estado del job y revisa los logs para identificar posibles errores.

Conclusión

Siguiendo estos pasos, puedes configurar la creación automática de entregas en SAP ERP para un cliente en un día y hora específicos de la semana. Asegúrate de probar el proceso en un entorno de desarrollo antes de implementarlo en producción para verificar que todo funcione correctamente. Si tienes alguna pregunta adicional o necesitas más detalles, 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.