Friday, April 14, 2017

Program to check transport request status across different systems

*&---------------------------------------------------------------------*
*& Report  ZWF_TRANSPORT
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT  zwf_transport NO STANDARD PAGE HEADING LINE-COUNT 30.

TABLES: tmsbufreq, tstrfcofil, e070.
TYPE-POOLS: ctslg, slis, icon.

SELECTION-SCREEN BEGIN OF BLOCK b1 .
SELECT-OPTIONS:
request FOR e070-trkorr,
date FOR e070-as4date,
user FOR e070-as4user NO INTERVALS NO-EXTENSION,
sys1 FOR tstrfcofil-tarsystem NO INTERVALS DEFAULT 'TST',
sys2 FOR tstrfcofil-tarsystem NO INTERVALS DEFAULT 'PRD'.
SELECTION-SCREEN END OF BLOCK b1.

TYPES: BEGIN OF info,
icon TYPE icon-id,
indicator TYPE c, " Indicator
indicator2 TYPE c,
systemid TYPE tarsystem, " target system
clientid TYPE mandt," target client
rc TYPE i, " return code
date TYPE as4date,
time TYPE as4time,
trkorr TYPE trkorr,
trfunction TYPE e070-trfunction,
as4user TYPE tr_as4user,
emailid TYPE string,
as4text TYPE e07t-as4text,
cdate TYPE as4date,
 uname TYPE ad_namtext,
END OF info.

DATA: itab TYPE TABLE OF info,
data TYPE info,
jtab TYPE TABLE OF info,
data1 TYPE info,
ktab TYPE TABLE OF info,
data2 TYPE info.

TYPES:BEGIN OF ty_request,
trkorr TYPE e070-trkorr,
as4date TYPE e070-as4date,
as4user TYPE e070-as4user,
trfunction TYPE e070-trfunction,
END OF ty_request.

DATA: it_request TYPE TABLE OF ty_request,
      wa_request TYPE ty_request.

TYPES: BEGIN OF prod,
 trkorr TYPE trkorr,
as4user TYPE as4user,
END OF prod.

TYPES:BEGIN OF ty_e07t,
  trkorr TYPE e07t-trkorr,
  as4text TYPE e07t-as4text,
      END OF ty_e07t.

DATA: it_text TYPE TABLE OF ty_e07t,
      wa_text LIKE LINE OF it_text.

DATA: es_cofile TYPE ctslg_cofile,
system TYPE ctslg_system,
step TYPE ctslg_step,
action TYPE ctslg_action.

DATA: text(20) TYPE c VALUE 'Transport Details'.
DATA: catalog TYPE slis_fieldcat_alv, "FIELDCAT
tcatalog TYPE slis_t_fieldcat_alv, "IT FIELDCAT
event TYPE slis_alv_event, "EVENT
tevent TYPE slis_t_event, "IT EVENT
layout TYPE slis_layout_alv, "LAYOUT
pg_top TYPE slis_formname VALUE 'TOP_OF_PAGE',
pg_head TYPE slis_t_listheader,
exit1 TYPE slis_exit_by_user,
sortf TYPE slis_sortinfo_alv,
tsort TYPE slis_t_sortinfo_alv,
var1 TYPE disvariant,
var2 TYPE disvariant,
v_uname TYPE ad_namtext.

INITIALIZATION.

  LOOP AT SCREEN.
  IF  screen-name = 'SYS1-LOW' OR screen-name = 'SYS2-LOW'.
    screen-input = 0.
    MODIFY SCREEN.
  ENDIF.
  ENDLOOP.

AT SELECTION-SCREEN .

  IF request IS INITIAL AND date IS INITIAL AND user IS INITIAL.
    MESSAGE 'Enter atleast 1 value' TYPE 'E'.
  ENDIF.

AT SELECTION-SCREEN OUTPUT.

   LOOP AT SCREEN.
  IF  screen-name = 'SYS1-LOW' OR screen-name = 'SYS2-LOW'.
    screen-input = 0.
    MODIFY SCREEN.
  ENDIF.
  ENDLOOP.

START-OF-SELECTION.

  PERFORM data_retrieval.
  PERFORM build_fieldcatalog.
  PERFORM build_events USING tevent.
  PERFORM text USING pg_head.
  PERFORM display_alv_report.

**********************************************************************
* FORM : DATA_RETRIEVAL
**********************************************************************
FORM data_retrieval .

  SELECT trkorr as4date as4user trfunction INTO CORRESPONDING FIELDS OF TABLE
   it_request FROM e070
   WHERE trkorr IN request
   AND ( trfunction = 'K' OR trfunction = 'W' )
   AND as4date IN date
   AND as4user IN user.

  SORT it_request BY trkorr.

  LOOP AT it_request INTO wa_request.

    CALL FUNCTION 'TR_READ_GLOBAL_INFO_OF_REQUEST'
      EXPORTING
        iv_trkorr = wa_request-trkorr
      IMPORTING
        es_cofile = es_cofile.

    IF es_cofile-exists = 'X'.

      LOOP AT es_cofile-systems INTO system WHERE systemid IN sys1 OR systemid IN sys2. " target system

        LOOP AT system-steps INTO step WHERE clientid = ' '. " step of transport
          CLEAR data.
          data-systemid = system-systemid.
*        data-clientid = step-clientid.
          data-rc = step-rc.

          LOOP AT step-actions INTO action. " action
            data-date = action-date.
            data-time = action-time.
          ENDLOOP.

          data-trkorr = wa_request-trkorr.
          data-as4user = wa_request-as4user.
          data-cdate = wa_request-as4date.
          data-trfunction = wa_request-trfunction.
          COLLECT data INTO itab.
        ENDLOOP.
      ENDLOOP.

    ELSE.

      CLEAR data.
      data-trkorr = wa_request-trkorr.
      data-as4user = wa_request-as4user.
      data-cdate = wa_request-as4date.
      data-trfunction = wa_request-trfunction.
      APPEND data TO itab.

    ENDIF.

    DELETE ADJACENT DUPLICATES FROM itab COMPARING trkorr systemid .

  ENDLOOP.


ENDFORM. "DATA_RETRIEVAL

**********************************************************************
* FORM : build_fieldcatalog.
**********************************************************************

FORM build_fieldcatalog.

  DATA: pos TYPE i.
  DATA : name(25) TYPE c.", spac VALUE ' '.
  DATA: name2(25) TYPE c.

  CONCATENATE 'TR in ' sys2-low INTO name SEPARATED BY space.

  CONCATENATE 'TR in ' sys1-low INTO name2 SEPARATED BY space.

  pos = pos + 1.
  CLEAR: catalog.
  catalog-col_pos = pos.
  catalog-fieldname = 'ICON'.
  catalog-tabname = 'ITAB'.
  catalog-seltext_l = 'Status'.
  catalog-no_zero = 'X'.
  catalog-fix_column = 'X'.
  APPEND catalog TO tcatalog.

  pos = pos + 1.
  CLEAR: catalog.
  catalog-col_pos = pos.
  catalog-fieldname = 'TRKORR'.
  catalog-tabname = 'ITAB'.
  catalog-seltext_l = 'Request no'.
  catalog-no_zero = 'X'.
  catalog-fix_column = 'X'.
  APPEND catalog TO tcatalog.

  pos = pos + 1.
  CLEAR: catalog.
  catalog-col_pos = pos.
  catalog-fieldname = 'TRFUNCTION'.
  catalog-tabname = 'ITAB'.
  catalog-seltext_m = 'Request type'.
*  catalog-no_zero = 'X'.
*  catalog-fix_column = 'X'.
  APPEND catalog TO tcatalog.

  pos = pos + 1.
  CLEAR: catalog.
  catalog-col_pos = pos.
  catalog-fieldname = 'AS4USER'.
  catalog-tabname = 'ITAB'.
  catalog-seltext_m = 'Request owner'.
  catalog-no_zero = 'X'.
  catalog-fix_column = 'X'.
  APPEND catalog TO tcatalog.

  pos = pos + 1.
  CLEAR: catalog.
  catalog-col_pos = pos.
  catalog-fieldname = 'UNAME'.
  catalog-tabname = 'ITAB'.
  catalog-seltext_l = 'User name'.
  catalog-no_zero = 'X'.
  catalog-fix_column = 'X'.
  APPEND catalog TO tcatalog.

  pos = pos + 1.
  CLEAR: catalog.
  catalog-col_pos = pos.
  catalog-fieldname = 'INDICATOR2'.
  catalog-tabname = 'ITAB'.
  catalog-seltext_m = name2.
  catalog-no_zero = 'X'.
  catalog-fix_column = 'X'.
  APPEND catalog TO tcatalog.

  pos = pos + 1.
  CLEAR: catalog.
  catalog-col_pos = pos.
  catalog-fieldname = 'INDICATOR'.
  catalog-tabname = 'ITAB'.
  catalog-seltext_m = name.
  catalog-no_zero = 'X'.
  catalog-fix_column = 'X'.
  APPEND catalog TO tcatalog.

  pos = pos + 1.
  CLEAR: catalog.
  catalog-col_pos = pos.
  catalog-fieldname = 'CDATE'.
  catalog-tabname = 'ITAB'.
  catalog-seltext_m = 'TR release date'.
  catalog-no_zero = 'X'.
  catalog-fix_column = 'X'.
  APPEND catalog TO tcatalog.

  pos = pos + 1.
  CLEAR: catalog.
  catalog-col_pos = pos.
  catalog-fieldname = 'DATE'.
  catalog-tabname = 'ITAB'.
  catalog-seltext_m = 'TR transport date'.
  catalog-no_zero = 'X'.
  catalog-fix_column = 'X'.
  APPEND catalog TO tcatalog.

  pos = pos + 1.
  CLEAR: catalog.
  catalog-col_pos = pos.
  catalog-fieldname = 'AS4TEXT'.
  catalog-tabname = 'ITAB'.
  catalog-seltext_l = 'Request Description'.
  catalog-no_zero = 'X'.
  catalog-fix_column = 'X'.
  APPEND catalog TO tcatalog.

ENDFORM. " build_fieldcatalog.

**********************************************************************
* FORM : build_events.
**********************************************************************

FORM build_events USING p_tevent.

  CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
    EXPORTING
      i_list_type = 1
    IMPORTING
      et_events   = tevent.

  READ TABLE tevent WITH KEY name = slis_ev_top_of_page INTO event.

  IF sy-subrc = 0.
    MOVE pg_top TO event-form.
    APPEND event TO tevent.
  ENDIF.
ENDFORM. "build_events.

*&---------------------------------------------------------------------*
*&      Form  TOP_OF_PAGE
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
FORM top_of_page .
  CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
    EXPORTING
      i_logo             = ' '
      it_list_commentary = pg_head.
* I_END_OF_LIST_GRID =
* I_ALV_FORM = .
ENDFORM. "TOP-OF-PAGE

**********************************************************************
* FORM : TEXT
**********************************************************************
FORM text USING v_head TYPE slis_t_listheader.

  DATA: line TYPE slis_listheader.
  CLEAR line.
  line-typ = 'H'.
  line-info = 'Transport request log'.
  APPEND line TO pg_head..
  CLEAR line.
ENDFORM. "TEXT

**********************************************************************
* FORM : display_alv_report.
**********************************************************************
FORM display_alv_report.
  layout-colwidth_optimize = 'X'.
  layout-box_tabname = 'IT'.
  layout-info_fieldname = 'LINE_COLOR'.
  layout-zebra = 'X'.
  layout-cell_merge = 'X'.

  jtab = itab .

  LOOP AT itab INTO data.
    CLEAR data1.
    LOOP AT jtab INTO data1 WHERE trkorr = data-trkorr AND systemid = sys2-low.
    ENDLOOP.
    IF sy-subrc = 0.
      data-indicator = 'X'.
      MODIFY itab FROM data INDEX sy-tabix.
    ENDIF.
  ENDLOOP.

  ktab = itab .

  LOOP AT itab INTO data.
    CLEAR data2.
    LOOP AT ktab INTO data2 WHERE trkorr = data-trkorr AND systemid = sys1-low.
    ENDLOOP.
    IF sy-subrc = 0.
      data-indicator2 = 'X'.
      MODIFY itab FROM data INDEX sy-tabix.
    ENDIF.
  ENDLOOP.

  SORT itab BY trkorr date DESCENDING.
  DELETE ADJACENT DUPLICATES FROM itab COMPARING trkorr.

  SELECT * FROM e07t INTO CORRESPONDING FIELDS OF TABLE it_text
    FOR ALL ENTRIES IN itab
    WHERE trkorr = itab-trkorr.

  LOOP AT itab INTO data.

    CLEAR wa_text.
    READ TABLE it_text INTO wa_text WITH KEY trkorr = data-trkorr.

    IF sy-subrc = 0.
      data-as4text = wa_text-as4text.
      MODIFY itab FROM data INDEX sy-tabix.
    ENDIF.

  ENDLOOP.

  LOOP AT itab INTO data.

    IF data-indicator2 EQ 'X' AND data-indicator EQ 'X'.
      data-icon = icon_green_light.
      MODIFY itab FROM data INDEX sy-tabix.
    ELSEIF data-indicator2 EQ 'X' AND data-indicator NE 'X'.
      data-icon = icon_yellow_light.
      MODIFY itab FROM data INDEX sy-tabix.
    ELSE.
      data-icon = icon_red_light.
      MODIFY itab FROM data INDEX sy-tabix.
    ENDIF.

  ENDLOOP.

  LOOP AT itab INTO data.

   CLEAR v_uname.
    SELECT SINGLE name_text FROM user_addrp INTO v_uname
    WHERE bname = data-as4user.

   IF sy-subrc = 0.
   data-uname = v_uname.
   MODIFY itab FROM data INDEX sy-tabix.
   ENDIF.

  ENDLOOP.

 SORT itab BY trkorr.

  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
  EXPORTING
  i_callback_program = sy-repid
  is_layout = layout
  it_fieldcat = tcatalog
*  it_events = tevent[]
  TABLES
  t_outtab = itab
   EXCEPTIONS
   program_error = 1
   OTHERS = 2 .

*IF SY-SUBRC = 0.
** MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
** WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
*ENDIF.

ENDFORM. "display_alv_report.

Saturday, June 11, 2016

Logically delete a single workflow instance

To logically delete a single workflow: • Open the workflow log using SWIA transaction • select first line (top level workflow) • choose the menu item Goto > Technical Workitem Display • choose the menu item Edit > Change • click the 'Logically Delete' button

Friday, February 5, 2016

Display logo in selection screen of report


REPORT  zgm_test  NO STANDARD PAGE HEADING LINE-SIZE 255.


DATAok_ode TYPE sy-ucomm,
      r_dock_container  TYPE REF TO cl_gui_docking_container,
      r_dock_container1 TYPE REF TO cl_gui_docking_container,
      htmlviewer TYPE REF TO cl_gui_html_viewer,
      r_grid TYPE REF TO cl_gui_alv_grid,
      picture_control_1 TYPE REF TO cl_gui_picture,
      picture TYPE REF TO cl_gui_picture,
      url(256TYPE c,
      repid TYPE sy-repid,
      file_name TYPE sapb-sapfiles,
      file_type TYPE bdn_con-mimetype.


  PARAMETERSUser TYPE sy-uname.

AT SELECTION-SCREEN OUTPUT.

  CHECK r_dock_container IS INITIAL.

  CREATE OBJECT r_dock_container
    EXPORTING
*          PARENT                      =
      repid                       repid
      dynnr                       sy-dynnr
      side                        cl_gui_docking_container=>dock_at_right
      extension                   800
    EXCEPTIONS
      cntl_error                  1
      cntl_system_error           2
      create_error                3
      lifetime_error              4
      lifetime_dynpro_dynpro_link 5
      OTHERS                      6
      .

  repid sy-repid.

  IF htmlviewer IS INITIAL.
    CREATE OBJECT picture_control_1
      EXPORTING
        parent r_dock_container.
  ENDIF.

  CHECK sy-subrc 0.

  CALL METHOD picture_control_1->set_3d_border
    EXPORTING
      border 0.

* ZLOGO2 needs to be maintained in SMW0 transaction

  CALL FUNCTION 'DP_PUBLISH_WWW_URL'
    EXPORTING
      objid                 'ZLOGO2'
      lifetime              'T'
    IMPORTING
      url                   url
    EXCEPTIONS
      dp_invalid_parameters 1
      no_object             2
      dp_error_publish      3
      OTHERS                4.
  IF sy-subrc 0.
    CALL METHOD picture_control_1->load_picture_from_url_async
      EXPORTING
        url url.
  ENDIF.

Saturday, May 9, 2015

Update workitem id in z table using program exit


* WI_CONTEXT Instance Attribute Private Type Ref To IF_WAPI_WORKITEM_CONTEXT
* PROCESS_STATUS Instance Attribute Private Type STRING

  DATA: l_s_wihead TYPE swr_wihdr,
        l_wa_itab TYPE zwffi_mon,
        l_swfdname TYPE swfdname VALUE 'V_FIPP'.


  DATA: l_bukrs TYPE bkpf-bukrs,
        l_belnr TYPE bkpf-belnr,
        l_gjahr TYPE bkpf-gjahr.

  DATA: l_tmp TYPE REF TO if_swf_ifs_parameter_container.

  DATA: l_zwf_cl_fi TYPE swotobjid.



  DATA: l_process_id TYPE swwwihead,
        l_wi_id TYPE sww_wiid.


  CALL METHOD wi_context->get_wf_container "ok
    RECEIVING
      re_container = l_tmp.


  CALL METHOD l_tmp->get
    EXPORTING
      name  = l_swfdname
    IMPORTING
      value = l_zwf_cl_fi.

  l_bukrs = l_zwf_cl_fi-objkey+0(4).
  l_belnr = l_zwf_cl_fi-objkey+4(10).
  l_gjahr = l_zwf_cl_fi-objkey+14(4).

**Get work item ID
  CALL METHOD wi_context->get_workitem_id
    RECEIVING
      re_workitem = l_wi_id.

  IF sy-subrc = 0.
    UPDATE zwffi_mon SET zzwf_id = l_wi_id
    WHERE bukrs = l_bukrs
    AND   belnr = l_belnr
    AND   gjahr = l_gjahr.
  ENDIF.

Friday, January 23, 2015

Utility to download all programs in a package

&--------------------------------------------------------------------*
*& Program To Download All The Programs Present In A Package (Dev. Class) To Desktop
*&--------------------------------------------------------------------*
REPORT  z_downloadall_to_desktop.
***********************************************************************
*                           Table declaration                         *
***********************************************************************
TABLES: tadir.
***********************************************************************
*                           Data declaration                          *
***********************************************************************
TYPES: abapline(255) TYPE c.
TYPES: BEGIN OF ty_reposit,
         pgmid    TYPE tadir-pgmid,
         object   TYPE tadir-object,
         obj_name TYPE tadir-obj_name,
         devclass TYPE tadir-devclass,
      END OF ty_reposit.
DATA: it_reposit TYPE STANDARD TABLE OF ty_reposit,
      wa_reposit TYPE ty_reposit.
DATA: it_repsrc TYPE STANDARD TABLE OF abapline,
      wa_repsrc TYPE abapline.
DATA: prog(60)    TYPE c,
      mc_filename TYPE rlgrap-filename,
      filename    TYPE string.
***********************************************************************
*                           Selection Screen                          *
***********************************************************************
PARAMETERS: p_dev TYPE tadir-devclass.                    "Package Name
*****Program Logic
SELECT pgmid
       object
       obj_name
       devclass
  FROM tadir
  INTO TABLE it_reposit
  WHERE pgmid    = 'R3TR' AND
        object   = 'PROG' AND
        devclass = p_dev.

IF sy-subrc NE 0.
  MESSAGE s001(00) WITH 'No programs available in the given package'.
  EXIT.
ENDIF.
LOOP AT it_reposit INTO wa_reposit.
  prog = wa_reposit-obj_name.
  READ REPORT prog INTO it_repsrc.
  CONCATENATE 'C:\Documents and Settings\Administrator\Desktop\My ABAP Programs\Report'
              prog
              '.txt'
         INTO mc_filename.
  filename = mc_filename.
*****Function module for download files into local system
  CALL FUNCTION 'GUI_DOWNLOAD'
    EXPORTING
      filename                = filename
    TABLES
      data_tab                = it_repsrc
    EXCEPTIONS
      file_write_error        = 1
      no_batch                = 2
      gui_refuse_filetransfer = 3
      invalid_type            = 4
      no_authority            = 5
      unknown_error           = 6
      header_not_allowed      = 7
      separator_not_allowed   = 8
      filesize_not_allowed    = 9
      header_too_long         = 10
      dp_error_create         = 11
      dp_error_send           = 12
      dp_error_write          = 13
      unknown_dp_error        = 14
      access_denied           = 15
      dp_out_of_memory        = 16
      disk_full               = 17
      dp_timeout              = 18
      file_not_found          = 19
      dataprovider_exception  = 20
      control_flush_error     = 21
      OTHERS                  = 22.
  IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
  ENDIF.
  CLEAR prog.
  CLEAR wa_repsrc.
ENDLOOP.
*****After download all the programs to intimate user.
MESSAGE S001(00) WITH 'Check your folder for the Programs downloaded'.

Saturday, September 13, 2014

How to Debug a Smart form ?

One way to debug smart form is to debug the Function Module of those smart forms. If you want to debug particular smart form node then the solution would be, insert a "Program Line" just above the node you want to debug and this program line write a normal ABAP breakpoint. So whenever you call the smart forms, it will stop at this breakpoint and you can debug onwards.

Friday, February 14, 2014

standard HR forms


Standard HR forms ( PE51 transaction )



BRF1 Remuneration statement
BRRE Remuneration statement
CF01 Remuneration statement for Switzerland
FF01 Example wage/salary form
FFS1 Payment of garnishment claim
GB01 Alternative sample pay slip
GF01 Alternative sample pay slip
IN01 Standard remuneration form (India)
IN02 Standard remuneration form (India)
IR01 Sample pay slip
JF01 Payroll Pay Slip
BK01 Payroll account
CK01 Payroll account for Switzerland
CNK1 Standard SAP payroll account

Monday, August 26, 2013

Program to find status of transport request in different servers

*&---------------------------------------------------------------------* *& Report ZTRANSPORT *& *&---------------------------------------------------------------------* *& *& *&---------------------------------------------------------------------* REPORT ZTRANSPORT NO STANDARD PAGE HEADING LINE-COUNT 30. TABLES: tmsbufreq, tstrfcofil, e070. TYPE-POOLS: ctslg, slis. SELECTION-SCREEN BEGIN OF BLOCK b1 . SELECT-OPTIONS: request FOR e070-trkorr, date FOR e070-as4date, user FOR e070-as4user NO INTERVALS NO-EXTENSION, sys1 FOR tstrfcofil-tarsystem NO INTERVALS DEFAULT 'DEV', sys2 FOR tstrfcofil-tarsystem NO INTERVALS DEFAULT 'TST'. SELECTION-SCREEN END OF BLOCK b1. TYPES: BEGIN OF info, indicator TYPE c, " Indicator indicator2 TYPE c, systemid TYPE tarsystem, " target system clientid TYPE mandt," target client rc TYPE i, " return code date TYPE as4date, time TYPE as4time, trkorr TYPE trkorr, as4user TYPE tr_as4user, emailid TYPE string, as4text TYPE e07t-as4text, cdate TYPE as4date, END OF info. DATA: itab TYPE TABLE OF info, data TYPE info, jtab TYPE TABLE OF info, data1 TYPE info, ktab TYPE TABLE OF info, data2 TYPE info. TYPES:BEGIN OF ty_request, trkorr TYPE e070-trkorr, as4date TYPE e070-as4date, as4user TYPE e070-as4user, END OF ty_request. DATA: it_request TYPE TABLE OF ty_request, wa_request TYPE ty_request. TYPES: BEGIN OF prod, trkorr TYPE trkorr, as4user TYPE as4user, END OF prod. TYPES:BEGIN OF ty_e07t, trkorr TYPE e07t-trkorr, as4text TYPE e07t-as4text, END OF ty_e07t. DATA: it_text TYPE TABLE OF ty_e07t, wa_text LIKE LINE OF it_text. DATA: es_cofile TYPE ctslg_cofile, system TYPE ctslg_system, step TYPE ctslg_step, action TYPE ctslg_action. DATA: text(20) TYPE c VALUE 'Transport Details'. DATA: catalog TYPE slis_fieldcat_alv, "FIELDCAT tcatalog TYPE slis_t_fieldcat_alv, "IT FIELDCAT event TYPE slis_alv_event, "EVENT tevent TYPE slis_t_event, "IT EVENT layout TYPE slis_layout_alv, "LAYOUT pg_top TYPE slis_formname VALUE 'TOP_OF_PAGE', pg_head TYPE slis_t_listheader, exit1 TYPE slis_exit_by_user, sortf TYPE slis_sortinfo_alv, tsort TYPE slis_t_sortinfo_alv, var1 TYPE disvariant, var2 TYPE disvariant. START-OF-SELECTION. PERFORM data_retrieval. PERFORM build_fieldcatalog. PERFORM build_events USING tevent. PERFORM text USING pg_head. PERFORM display_alv_report. ********************************************************************** * FORM : DATA_RETRIEVAL ********************************************************************** FORM data_retrieval . SELECT trkorr as4date as4user INTO CORRESPONDING FIELDS OF TABLE it_request FROM e070 WHERE trkorr IN request AND trfunction = 'K' AND as4date IN date AND as4user IN user. SORT it_request BY trkorr. LOOP AT it_request INTO wa_request. CALL FUNCTION 'TR_READ_GLOBAL_INFO_OF_REQUEST' EXPORTING iv_trkorr = wa_request-trkorr IMPORTING es_cofile = es_cofile. IF es_cofile-exists = 'X'. LOOP AT es_cofile-systems INTO system WHERE systemid IN sys1 OR systemid IN sys2. " target system LOOP AT system-steps INTO step WHERE clientid = ' '. " step of transport CLEAR data. data-systemid = system-systemid. * data-clientid = step-clientid. data-rc = step-rc. LOOP AT step-actions INTO action. " action data-date = action-date. data-time = action-time. ENDLOOP. data-trkorr = wa_request-trkorr. data-as4user = wa_request-as4user. data-cdate = wa_request-as4date. COLLECT data INTO itab. ENDLOOP. ENDLOOP. ELSE. CLEAR data. data-trkorr = wa_request-trkorr. data-as4user = wa_request-as4user. data-cdate = wa_request-as4date. APPEND data TO itab. ENDIF. DELETE ADJACENT DUPLICATES FROM itab COMPARING trkorr systemid . ENDLOOP. ENDFORM. "DATA_RETRIEVAL ********************************************************************** * FORM : build_fieldcatalog. ********************************************************************** FORM build_fieldcatalog. DATA: pos TYPE i. DATA : name(25) TYPE c.", spac VALUE ' '. DATA: name2(25) TYPE c. CONCATENATE 'REQUEST IN ' sys2-low INTO name SEPARATED BY space. CONCATENATE 'REQUEST IN ' sys1-low INTO name2 SEPARATED BY space. pos = pos + 1. CLEAR: catalog. catalog-col_pos = pos. catalog-fieldname = 'CDATE'. catalog-tabname = 'ITAB'. catalog-seltext_l = 'REQUEST CREATION DATE'. catalog-no_zero = 'X'. catalog-fix_column = 'X'. APPEND catalog TO tcatalog. pos = pos + 1. CLEAR: catalog. catalog-col_pos = pos. catalog-fieldname = 'TRKORR'. catalog-tabname = 'ITAB'. catalog-seltext_l = 'REQUEST NO'. catalog-no_zero = 'X'. catalog-fix_column = 'X'. APPEND catalog TO tcatalog. pos = pos + 1. CLEAR: catalog. catalog-col_pos = pos. catalog-fieldname = 'INDICATOR2'. catalog-tabname = 'ITAB'. catalog-seltext_l = name2. catalog-no_zero = 'X'. catalog-fix_column = 'X'. APPEND catalog TO tcatalog. pos = pos + 1. CLEAR: catalog. catalog-col_pos = pos. catalog-fieldname = 'INDICATOR'. catalog-tabname = 'ITAB'. catalog-seltext_l = name. catalog-no_zero = 'X'. catalog-fix_column = 'X'. APPEND catalog TO tcatalog. pos = pos + 1. CLEAR: catalog. catalog-col_pos = pos. catalog-fieldname = 'DATE'. catalog-tabname = 'ITAB'. catalog-seltext_l = 'REQUEST TRANSPORT DATE'. catalog-no_zero = 'X'. catalog-fix_column = 'X'. APPEND catalog TO tcatalog. pos = pos + 1. CLEAR: catalog. catalog-col_pos = pos. catalog-fieldname = 'AS4USER'. catalog-tabname = 'ITAB'. catalog-seltext_l = 'REQUEST OWNER'. catalog-no_zero = 'X'. catalog-fix_column = 'X'. APPEND catalog TO tcatalog. pos = pos + 1. CLEAR: catalog. catalog-col_pos = pos. catalog-fieldname = 'AS4TEXT'. catalog-tabname = 'ITAB'. catalog-seltext_l = 'DESCRIPTION'. catalog-no_zero = 'X'. catalog-fix_column = 'X'. APPEND catalog TO tcatalog. ENDFORM. " build_fieldcatalog. ********************************************************************** * FORM : build_events. ********************************************************************** FORM build_events USING p_tevent. CALL FUNCTION 'REUSE_ALV_EVENTS_GET' EXPORTING i_list_type = 1 IMPORTING et_events = tevent. READ TABLE tevent WITH KEY name = slis_ev_top_of_page INTO event. IF sy-subrc = 0. MOVE pg_top TO event-form. APPEND event TO tevent. ENDIF. ENDFORM. "build_events. *&---------------------------------------------------------------------* *& Form TOP_OF_PAGE *&---------------------------------------------------------------------* * text *----------------------------------------------------------------------* FORM top_of_page . CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE' EXPORTING i_logo = ' ' it_list_commentary = pg_head. * I_END_OF_LIST_GRID = * I_ALV_FORM = . ENDFORM. "TOP-OF-PAGE ********************************************************************** * FORM : TEXT ********************************************************************** FORM text USING v_head TYPE slis_t_listheader. DATA: line TYPE slis_listheader. CLEAR line. line-typ = 'H'. line-info = 'Transport request log'. APPEND line TO pg_head.. CLEAR line. ENDFORM. "TEXT ********************************************************************** * FORM : display_alv_report. ********************************************************************** FORM display_alv_report. layout-colwidth_optimize = 'X'. layout-box_tabname = 'IT'. layout-info_fieldname = 'LINE_COLOR'. layout-zebra = 'X'. layout-cell_merge = 'X'. jtab = itab . LOOP AT itab INTO data. clear data1. LOOP AT jtab INTO data1 WHERE trkorr = data-trkorr AND systemid = sys2-low. ENDLOOP. IF sy-subrc = 0. data-indicator = 'X'. MODIFY itab FROM data INDEX sy-tabix. ENDIF. ENDLOOP. ktab = itab . LOOP AT itab INTO data. clear data2. LOOP AT ktab INTO data2 WHERE trkorr = data-trkorr AND systemid = sys1-low. ENDLOOP. IF sy-subrc = 0. data-indicator2 = 'X'. MODIFY itab FROM data INDEX sy-tabix. ENDIF. ENDLOOP. SORT itab BY trkorr date DESCENDING. DELETE ADJACENT DUPLICATES FROM itab COMPARING trkorr. SELECT * FROM e07t INTO CORRESPONDING FIELDS OF TABLE it_text FOR ALL ENTRIES IN itab WHERE trkorr = itab-trkorr. LOOP AT itab INTO data. CLEAR wa_text. READ TABLE it_text INTO wa_text WITH KEY trkorr = data-trkorr. IF sy-subrc = 0. data-as4text = wa_text-as4text. MODIFY itab FROM data INDEX sy-tabix. ENDIF. ENDLOOP. CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY' EXPORTING i_callback_program = sy-repid is_layout = layout it_fieldcat = tcatalog * IT_EXCLUDING = * IT_SPECIAL_GROUPS = * IT_SORT = * IT_FILTER = * IS_SEL_HIDE = * I_DEFAULT = 'X' * I_SAVE = ' ' * IS_VARIANT = it_events = tevent[] * IT_EVENT_EXIT = * IS_PRINT = * IS_REPREP_ID = * I_SCREEN_START_COLUMN = 0 * I_SCREEN_START_LINE = 0 * I_SCREEN_END_COLUMN = 0 * I_SCREEN_END_LINE = 0 * IT_ALV_GRAPHICS = * IT_HYPERLINK = * IT_ADD_FIELDCAT = * IT_EXCEPT_QINFO = * I_HTML_HEIGHT_TOP = * I_HTML_HEIGHT_END = * IMPORTING * E_EXIT_CAUSED_BY_CALLER = * ES_EXIT_CAUSED_BY_USER = TABLES t_outtab = itab EXCEPTIONS program_error = 1 OTHERS = 2 . *IF SY-SUBRC = 0. ** MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO ** WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4. *ENDIF. ENDFORM. "display_alv_report.

Tuesday, July 23, 2013

How to remove execute button from report selection screen


TABLES: smp_dyntxt, sscrfields,mara.

DATA: gt_exclude TYPE TABLE OF rsexfcode,
      gtt_exclude TYPE rsexfcode.

SELECTION-SCREEN BEGIN OF BLOCK block1 WITH FRAME TITLE text-001.

SELECT-OPTIONS: s_matnr FOR mara-matnr.

SELECTION-SCREEN SKIP.

SELECTION-SCREEN FUNCTION KEY 1.  "Will have a function code of 'FC01'
SELECTION-SCREEN FUNCTION KEY 2.  "Will have a function code of 'FC02'
SELECTION-SCREEN FUNCTION KEY 3.
SELECTION-SCREEN FUNCTION KEY 4.
SELECTION-SCREEN FUNCTION KEY 5.

SELECTION-SCREEN END OF BLOCK block1.

INITIALIZATION.

* Add displayed text string to buttons

  MOVE 'VF04' TO sscrfields-functxt_01.
  MOVE 'Excecute report' TO sscrfields-functxt_02.
  MOVE 'Test' TO sscrfields-functxt_03.

  gtt_exclude-fcode = 'ONLI'.

  APPEND gtt_exclude TO gt_exclude.


AT SELECTION-SCREEN.

  IF sscrfields-ucomm = 'FC01'.

    CALL TRANSACTION 'VF04'.

  ELSEIF sscrfields-ucomm = 'FC02'.

  ELSEIF sscrfields-ucomm = 'FC03'.

  ENDIF.


AT SELECTION-SCREEN OUTPUT.

  CALL FUNCTION 'RS_SET_SELSCREEN_STATUS'
    EXPORTING
      p_status  = '%_00'
      p_program = 'RSSYSTDB'
    TABLES
      p_exclude = gt_exclude.

Friday, November 30, 2012

Some important transactions in ABAP





SE80 ABAP/4 Development Workbench                                                                   
SE03 Groups together most of the tools that you need for doing transports.                        
SE09 Workbench Organizer
SE11 ABAP/4 Dictionary Maintenance                                                                        
SE12 ABAP/4 Dictionary Display                                                                                  
SE16N Table Browser (the N stands for New, it replaces SE16).
SE17 General Table Display                                                                                                             SE24 Class Builder
SE30 ABAP/4 Run time Analysis
SE36 ABAP/4: Logical Databases
SE37 ABAP/4 Function Modules
SE38 ABAP Editor
SE39 Split screen Editor: Program Compare
SE41 Menu Painter
SE43 Maintain Area Menu
SE51 Screen Painter: Initial Screen.
SE54 Generate View Maintenance Module
SE61 R/3 Documentation
SE63 Translation
SE71 SAP script Layouts Create/Change
SE72 SAP script styles
SE73 SAP script font maintenance (revised)
SE75 SAP script Settings
SE83 Reuse Library.
SE91 Maintain Messages
SE93 Maintain Transaction.

Tuesday, August 14, 2012

Download IDOC data to excel format

Go to transaction IDOC

Select the radio button “Analyse IDoc field values” and click on Execute.
Enter an IDoc number and select the check box “Also output empty fields”. Click on “Output in Internal Form”. Click on Execute.

Now in menu click on List -> Save/Send -> File.
Now select the required format and hit Enter. The IDoc is now stored on your system in the required format.

Tuesday, September 6, 2011

How to create a workflow for a transaction

1. Find a standard business object - which relates to the desired master data.
Transaction SWLD - Business ObjectàDefinition Tools Builder
Click on the Business Object Builder button.
Either search for an object by name in short description or use the IMG structure, which is accessed via the Business Object Repository button.
2:Create a subtypeq of this business object.
Once the relevant business object is selected press the Create Subtype button - this will automatically create an object, which inherits all characteristics from the basic business object. Give the subtype a name prefixed with Z_.
Enter the following fields with values:
Object type: Z_TESTXX
Object name: Object_Name_for_XX
Name: Object Name: XX
Description: Object Description: XX
Program: Z_TESTXX
Application: *
3:Create an event.q
When you change your subtype the first step is to create a new event, this is done by selecting the Event node and clicking the create button. Give the event a name and a description. Next set the status of this object type component to implemented.
Event: Z_EVENT_XX
Name: Event name: XX
Description: Event Description: XX
Click on the new event and… Object Typeà Change Release Status àEdit Implemented àComponent
4:Create a method.q
Next a method must be created without using any function module template. When creating the method ensure that the method call is synchronous - this means that the method doesn't require a terminating event. Next set the status of this object type component to implemented.
Method: Z_METHODXX
Name: Method name: XX
Description: Method Description: XX
Implementedà Object Type Component à Change Release Status àEdit q
5. Create Key fields.Create key fields with ABAP dictionary field proposal. Enter ‘BKPF’ in table name field and select all the key fields. Press Continue button. Next set the status of these key fields to implemented.à Object Type Component à Change Release Status àEdit Implemented
6:Implement business object.qThe whole business object needs to be implemented so click on the business object title and…àEdit Implementedà Object Type àChange Release Status
7:Link a changeq document to the business object & an event.Now the event you created in the new business object subtype needs to be linked to the relevant change document type. This will enable the event to be triggered on creation of the relevant change document.
Transaction SWLD… EventàDefinition Tools Linkageà Change Documents àCreation Click the New Entries buttonEnter the relevant Change Document Type, your Business Object Subtype & the related Event from the Business object subtype.This new entry is assigned to a particular type of change document (Create, Change or Delete) so for each type of change document we need to create a respective event in the business object subtype & link these here.
Note 1. The starting point of a workflow is the object/event trigger. Without this the possibility of building a workflow is ruled out. The triggering of events is achieved through a number of mechanisms some of them are listed below:• Triggered using Change document objects.• Triggered using Status control.• Triggered through Message long text.• FI Validation Trigger• And a few others, which are closely, intertwined with config. e.g. Workflow events for Purchase orders using output determination.• Publish events through User exits. This requires custom coding.For this demo example, you will create an event by writing a custom code.
8:Create workflow task.qNow we need to create a workflow task, this will be triggered by the event and will call the desired method in your business object subtype.Transaction SWLD Createà Tasks/Task Group àDefinition Tools This task will be of type TS (Standard Task) after this is entered click the create icon.This will bring up the main task window. Under the Basic Data tab enter the Abbreviated Name, Name and Work Item Text. Enter your business object subtype name as the Object Type and enter the Method you created within the subtype. If you tick Background Processing as the execution mode, the work item is executed without need for manual intervention.Next move to the Triggering Events tab. Insert a new entry in the table here - referencing the business object subtype and the relevant event.
9:Set up containers.qThere are a number of data containers, which are used in this process to transport relevant data between events, tasks and methods, we need to make a few small modifications to these.Click on the Containers button. Create three fields in the container with reference to the database table. Now go back to the Triggering Event tab, highlight the newly created record in the table and click the Binding Definition button. This shows us how data is transferred from the Event container into the Task container. There should be four records. Now click on the Event Parameter Container button, this shows us what data is present in the event for transfer to the task. If there is matching data in the Event Parameter Container, copy the element name from the screen and insert it in to the associated slot in the binding definition (Enclosed in &'s).The last step of all is to activate the event linkage, by pressing the small button to the left-hand side of the event record. This creates the link between the event and the task - which will call the method, which in turn calls the required transaction or reports or function module.

Saturday, July 23, 2011

SAP release dates

SAP R/3 Enterprise Release 4.0B
Release Date June 1998

SAP R/3 Enterprise Release 4.5B
Release Date March 1999

SAP R/3 Enterprise Release 4.6C
December 1999

SAP R/3 Enterprise Release 4.6C
April 2001

SAP R/3 and R/3 Enterprise 4.70 SR1
Release Date March - December 2003

ERP Central Component
Release 5.0 SR1
Release Date August 2005

ERP Central Component
Online Update April 2007
Release 6.0 SR1 SP08
Release Date June 2006

SAP enhancement package 1 for SAP ERP 6.0
Release Date December 2006

ERP Central Component
Release SAP enhancement package 2 for SAP ERP 6.0
Release Date July 2007

SAP NetWeaver 2004 (SPS 20)
File Type HTML (PlainHTML)
Release Date May 2007

Knowledge Center for SAP NetWeaver 7.0 (2004s)Support Package Stack 13, September 2007

SAP NetWeaver Mobile 7.1 SPS 02
Release Date July 2007

Monday, April 11, 2011

Restrict number of logins per user

Limits the number of login sessions per user with User Exits


* Transaction CMOD -> Utiliteis -> SAP Enhancements

* Exit Name SUSR0001

* Double click EXIT_SAPLSUSF_001

* Double click ZXUSRU01

* Insert -> include zsesschk.
* zsesschk limits the number of login sessions per user

* in a certain client

* It runs from user exit SUSR0001 after the SAP Login

* n-1 is the number of concurrent sessions allowed

TABLES: UINFO.

DATA: N TYPE I VALUE 2. "Upper limit of login sessions

DATA: OPCODE TYPE X VALUE 2, I TYPE I, A(60).

DATA: BEGIN OF BDC_TAB1 OCCURS 5.

INCLUDE STRUCTURE BDCDATA.

DATA: END OF BDC_TAB1.

DATA: BEGIN OF USR_TABL OCCURS 10.

INCLUDE STRUCTURE UINFO.

DATA: END OF USR_TABL.

* Exclude Limit login by Users

IF SY-UNAME <> 'XXX'

AND SY-UNAME <> 'XXX'.

CALL 'ThUsrInfo' ID 'OPCODE' FIELD OPCODE

ID 'TAB' FIELD USR_TABL-*SYS*.

LOOP AT USR_TABL.

IF SY-UNAME = USR_TABL-BNAME AND SY-MANDT = USR_TABL-MANDT.

I = I + 1.

ENDIF.

ENDLOOP.

IF I >= N.

A = 'You have already '.

A+17(2) = I - 1.

A+19(25) = 'login sessions in client '.

A+44(4) = SY-MANDT.

CALL FUNCTION 'POPUP_TO_INFORM'

EXPORTING

TITEL = 'UNSUCCESSFUL LOGIN'

TXT1 = A

TXT2 = 'You are not allowed to log in'.

MOVE: 'SAPMSSY0' TO BDC_TAB1-PROGRAM,

'120' TO BDC_TAB1-DYNPRO,

'X' TO BDC_TAB1-DYNBEGIN.

APPEND BDC_TAB1.CLEAR BDC_TAB1.

MOVE: 'BDC_OKCODE' TO BDC_TAB1-FNAM,

'/nex' TO BDC_TAB1-FVAL.

APPEND BDC_TAB1.CLEAR BDC_TAB1.

CALL TRANSACTION 'SM04' USING BDC_TAB1 MODE 'N'.

ENDIF.

ENDIF.



Friday, December 24, 2010

Steps to create field exit

Step 1: Execute program ‘RSMODPRF’, entering the data element of the field
Step 2: Create function module when prompted, and add you code to the source section using the parameter
‘INPUT’ as the field value you are checking.
Step 3: Save and activate Function and execute transaction ‘CMOD’.
Step 4: Choose option: Goto-> Text Enhancements->Data elements->New DE cust docu.
Step 5: Enter data element
Step 6: Save and activate
Step 7: Execute program ‘RSMODPRF’ again but this time leave data element field blank.
Step 8: Select the checkbox for the data element you have just created and choose option: Field exit->Activate

This will now be active for all instances of this data element, but you can assign specific program and screen
combinations by pressing the ‘Assign prog./screen’ button. You can also change the code you entered in the field
exit function module by pressing the ‘Edit FM’ button.

Saturday, March 20, 2010

Important transactions in workflow

TCode
Transaction text
SBWP
SAP Business Workplace
SWDA
Alphanumeric Workflow Builder
SWDB
Create workflow
SWDC_DEFINITION
Workflow Builder Administration
SWDC_RUNTIME
Maintain Administrator for Runtime
SWDD
Workflow Builder
SWDM
Business Workflow Explorer
SWDS
Workflow Builder (Selection)
SWI11
Where-Used List for Tasks
SWI13
Task Profile
SWI2_FREQ
Work Items per Task
SWI5
Workload Analysis
SWI6
Workflows for Object
SWIA
WI Administration Report
SWIE
Unlock Work Item
SWPA
Runtime System Customizing
SWPC
WFM: Continue Workflow
SWPR
WFM: Restart Workflow
SWU2
Workflow RFC Monitor
SWU3
Automatic Workflow Customizing
SWU7
Consistency Test for Workflow Templ.
SWU9
Display Workflow Trace
SWUI
Start Workflow
SWUI_DEMO
Start Demo Workflows
SWUI_VERIFY
Start Test Workflows
SWUS
Test Workflow
SWUY
Workflow-Message Linkage
SWXF
DEMO: Create Notification of Absence
SWXML
XML Document Selection

Saturday, February 20, 2010

Creating your own SAP Customized Main Menu

• Goto Transaction SE43 - Area Menu
• Click the copy button. Copy from S000 to ZXXX
• After copying, click Change (area menu ZXXX)
• Double click on Logistics and add in your transaction code in the Area Menu.
• Remembers to Activate it.
• Next Goto Transaction SU01 - Maintain users
• Type in the user name and click the Defaults button
• Type in the area menu (ZXXX) in the Start Menu field.
• Click Save
• The user will be able to see the additional transaction on the next logon.

Wednesday, July 29, 2009

Important function modules related to dates

HR_99S_INTERVAL_BETWEEN_DATES : Difference between two dates in days, weeks, months

WEEK_GET_FIRST_DAY : Get the first day of the week

FIMA_DAYS_AND_MONTHS_AND_YEARS : Find the difference between two dates in years, months and days.

DATE_TO_DAY : Returns the Day for the entered date.

Color single row in ALV

REPORT z_alv_color.

TYPE-POOLS: slis.

DATA: BEGIN OF it_flight OCCURS 0,
carrid LIKE sflight-carrid,
connid LIKE sflight-connid,
fldate LIKE sflight-fldate,
seatsmax LIKE sflight-seatsmax,
seatsocc LIKE sflight-seatsocc,
color(4),
END OF it_flight.
DATA: it_fieldcat TYPE slis_t_fieldcat_alv,
layout TYPE slis_layout_alv.

CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
EXPORTING
i_program_name = sy-repid
i_internal_tabname = 'IT_FLIGHT'
i_inclname = sy-repid
CHANGING
ct_fieldcat = it_fieldcat
EXCEPTIONS
inconsistent_interface = 1
program_error = 2.

SELECT carrid
connid
fldate
seatsmax
seatsocc
FROM sflight
INTO CORRESPONDING FIELDS OF TABLE it_flight
UP TO 20 ROWS.
*-conditionally populate the color
LOOP AT it_flight.

IF it_flight-seatsocc eq 0.
it_flight-color = 'C600'.
ENDIF.
MODIFY it_flight.
ENDLOOP.
*-Pass the color field information to layout
layout-info_fieldname = 'COLOR'.

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_callback_program = sy-repid
is_layout = layout
it_fieldcat = it_fieldcat
TABLES
t_outtab = it_flight
EXCEPTIONS
program_error = 1.

Sunday, June 7, 2009

Important tables in FI

Financial Accounting tables

BKPF Accounting Document Header
BSEG Accounting Document Segment
BSID Accounting: Secondary Index for Customers
BSAD Accounting: Secondary Index for Customers (Cleared Items)
BSIK Accounting: Secondary Index for Vendors
BSAK Accounting: Secondary Index for Vendors (Cleared Items)
BSIP Index for Vendor Validation
BVOR Inter Company Posting Procedure
FRUN Run Date of a Program
KNB4 Customer Payment History
KNB5 Customer Master Dunning Data
KNBK Customer Master Bank Details
KNC1 Customer Master Transaction Figures
KNC3 Customer Master Special GL Transactions Figures
LFB5 Vendor Master Dunning Data
LFBK Vendor Master Bank Details
LFC1 Vendor Master Transaction Figures
LFC3 Vendor Master Special GL Transactions
KNB1 Customer Master (Company Code)
LFA1 Vendor Master (General Section)
LFB1 Vendor Master (company Code Section)
SKA1 G/L Account Master (Chart of Accounts)
SKAT G/L Account Master (Chart of Accounts Description)