Debuggear Workflow ABAP y procesos de fondo

Es muy sencillo. Dejar un bucle infinito en el llamado de uno de los metodos o funciones que pasen por el WorkFlow por ejemplo:

WHILE EQ 0.

ENDWHILE.

Luego ejecutamos el Workflow y ese proceso estará "colgado". Para verlo, vamos a la transacción  SM50 y tocamos el proceso que está en ejecución y en el menú Gestión - Programa - Debugging:


Índice de un radio Webdynpro ABAP

DATA lo_nd_radio TYPE REF TO if_wd_context_node.
DATA index TYPE i.

lo_nd_radio wd_context->get_child_nodename wd_this->wdctx_radio ).
index lo_nd_radio->get_lead_selection_index).

CASE index.
  WHEN 1.
  WHEN 2.
ENDCASE.

Llamar a un action cómo método en WebDynpro ABAP

DATA lo_event       TYPE REF TO cl_wd_custom_event.
DATA lt_parameters  TYPE wdr_event_parameter_list.
DATA ls_parameters  LIKE LINE OF lt_parameters.

CREATE OBJECT lo_event
  EXPORTING
    name       'ON_ACTION'
    parameters lt_parameters.

CALL METHOD wd_this->onactionNOMBRE_DEL_ACTION
  EXPORTING
    wdevent lo_event.

Leer textos de un dominio ABAP

 TYPESty_dd07v   TYPE STANDARD TABLE OF dd07v.

  DATA:  it_valores TYPE ty_dd07v,
         wa_valores TYPE LINE OF ty_dd07v.

  REFRESHit_valores.

*  Valores del Dominio
  CALL FUNCTION 'DD_DOMVALUES_GET'
    EXPORTING
      domname        'STTRG'
      text           'X'
      langu          sy-langu
    TABLES
      dd07v_tab      it_valores
    EXCEPTIONS
      wrong_textflag 1
      OTHERS         2.



Ejecutar transancciones SAP sin autorización (sólo con debug)

En el programa LSEUKF01 buscar el llamado a la función CALL FUNCTION 'AUTH_CHECK_TCODE'  colocar un break-point y ejecutar la transacción a la que no tenemos acceso:     




Cambiar el sy-subrc por 0 y listo.

Variables a memoria SAP ABAP

DATAlv_nivel(5TYPE c,
            p_nivel(5)  TYPE c.

lv_nivel 'SUP'.

* Enviar a memoria variable nivel
EXPORT nivel FROM lv_nivel TO MEMORY ID 'nivel'

* Importar datos de memoria
IMPORT nivel TO p_nivel FROM MEMORY ID 'nivel'.
FREE MEMORY ID 'nivel'.

2 maneras de leer Infotipo 41 - Datos de Fecha


Opción 1: 

Con la función HR_ECM_GET_DATETYP_FROM_IT0041.


Opción 2:

LOOP AT gen_p0041 WHERE begda LE dhf_date
                    AND endda GE dhf_date.

  DO 12 TIMES

    VARYING i0041-type FROM gen_p0041-dar01 NEXT gen_p0041-dar02
    VARYING i0041-date FROM gen_p0041-dat01 NEXT gen_p0041-dat02.
   
    CHECK i0041-type   EQ hdate.
   
    dhf_hire i0041-date.

    EXIT.

  ENDDO.
ENDLOOP.

Debuggear Workflow ABAP y procesos de fondo

Es muy sencillo. Dejar un bucle infinito en el llamado de uno de los metodos o funciones que pasen por el WorkFlow por ejemplo: WHILE  0 ...