Saltar al contenido

Cree una configuración empresarial para el calendario de fábrica

Ahora es el momento de crear una definición de comportamiento. La definición de comportamiento de los nodos define el objeto comercial y sus propiedades. Aquí puede definir qué acciones de nodo admite el objeto comercial. De forma predeterminada, se creará, actualizará y eliminará. Además, se pueden definir objetos bloqueados, clases de implementación y verificaciones de autorización.

SUGERENCIA: Para utilizar el objeto comercial en el Mantener la aplicación de configuración empresarial, el servicio de divulgación debe ser de un tipo OData V4. Un requisito es que se debe redactar el objetivo comercial. Proyecto de bienes comerciales requiere total ETag área para asegurar una comparación optimista coherente.

Parte de la lógica empresarial es aplicar validaciones para comprobar los valores proporcionados por el cliente. En este ejemplo, se podrían definir validaciones para campos MonthOfHoliday y DayOfHoliday para verificar la validez de la fecha.

  1. Haga clic derecho en la definición de sus datos ZCAL_I_HOLIDAY_XXX, Seleccione Nueva definición de comportamiento.

  2. Asegúrese de que su tipo de implementación se gestione y se haga clic en él. Siguiente>.

    comportamiento

  3. Hacer clic Finalizar.

    comportamiento

  4. Descomentar la adición implementation in class zbp_cal_i_holiday_xxx unique; y añadir with draft; después de la managed; declaración.

    managed implementation in class zbp_cal_i_holiday_xxx unique;
    with draft;
    
  5. Descomente el alias en la línea 4 y seleccione como nombre de alias HolidayRoot.

    define behavior for ZCAL_I_HOLIDAY_XXX alias HolidayRoot
    
  6. Defina la entidad raíz como Maestro verde y campo last_changed_at como un todo ETag. Esto define el nodo raíz como el propósito de bloqueo principal para que varias personas eviten editar en el mismo objeto. Los subnodos se definirán como dependientes del bloqueo.

    lock master total etag last_changed_at
    

    Esto define el nodo raíz como el propósito de bloqueo principal para que varias personas no editen el mismo objeto.
    Los subnodos deben definirse como dependientes del bloqueo más adelante.

  7. Agregar una tabla de borrador zcal_d_holi_xxx

    managed implementation in class zbp_cal_i_holiday_xxx unique;
    with draft;
    
    define behavior for ZCAL_I_HOLIDAY_XXX alias HolidayRoot
    lock master total etag last_changed_at
    persistent table zcal_holiday_xxx
    draft table zcal_d_holi_xxx
    
  8. Enciende el cursor zcal_d_holi_xxx y usa la ayuda rápida CTRL + 1 para crear la tabla de borrador.cursor
  9. Cree una nueva tabla de base de datos:

    • Nombre: ZCAL_D_HOLI_XXX
    • Descripción: Borrador de tabla para la entidad. ZCAL_I_HOLIDAY_XXX

    Hacer clic Siguiente>.

    cursor

  10. Hacer clic Finalizar.

    cursor

  11. Guarde y active su tabla de borradores.

  12. En tu definición de comportamiento ZCAL_I_HOLIDAY_XXX agregue mapeo para los campos de la tabla y los campos de vista de CDS. Establecer campo HolidayId leer solo para actualizaciones.

    managed implementation in class zbp_cal_i_holiday_xxx unique;
    with draft;
    
    define behavior for ZCAL_I_HOLIDAY_xxx alias HolidayRoot
    lock master total etag last_changed_at
    persistent table zcal_holiday_xxx
    draft table zcal_d_holi_xxx
    {
      create;
      update;
      delete;
    
      field ( readonly : update ) HolidayId;
    
      mapping for zcal_holiday_xxx corresponding
      {
        HolidayId = holiday_id;
        MonthOfHoliday = month_of_holiday;
        DayOfHoliday = day_of_holiday;
      }
    }
    
  13. Guardar y activar.

  14. Enciende el cursor zbp_cal_i_holiday_xxx y utilice la ayuda rápida para crear la clase de implementación de comportamiento.

    cursor

  15. Hacer clic Siguiente>.

    cursor

  16. Hacer clic Finalizar.

    cursor

  17. Guardar y actuar clase ZBP_CAL_I_HOLIDAY_XXX comportamiento de definición ZCAL_I_HOLIDAY_XXX y definición de datos ZCAL_I_HOLIDAY_XXX.

Hecho

Inicie sesión para responder la pregunta