Thursday, April 27, 2017

Export / Download SAP ABAP Internal Table to XML

Hello, in this tutorial I will share on of way to export or download your internal table into XML file by the help of XML Transformations. There are 3 stages in the procedure which are:

  1. Create Table Type:
    1. Go to SE11.
    2. Create a structure of your internal table
    3. Create a table type based on the structure
    4.  Make Sure to save and activate them
  2. Create Transformation:
    1. Go to tcode STRANS or XSLT_TOOL
    2. Create an S Simple Transformation
    3. Click the sparkling magic wand button a.k.a Edit Simple Transformation Graphically (Ctrl+Shift+F11)
    4. Insert New Root in Data Roots
    5. Fill in any root name of the xml for Root-Name and <Table_Type> created in first stage for Type-Name
    6. Then drag the data root into Simple Transformation
    7. You might want to change the Field name in the XML by double click the element
    8. You can make the field into an attribute.
    9. Save Activate the transformation
  3. Complete your Program:
    1. Make sure you already have the particular internal table filled with data
    2. Prepare the output location
    3. Insert, modify and perform the following FORM.
FORM f_xml_export.
  DATA: lo_xml_doc TYPE ref TO CL_XML_DOCUMENT,
        lv_string TYPE string,
        lv_file TYPE string.

  CHECK <YOUR_INTERNAL_TABLE>[] IS NOT INITIAL.

*File path
  lv_file = '<YOUR_FILE_PATH>'.

*Transform internal table to XML DOM
  CALL TRANSFORMATION <YOUR_TRANSFORMATION_NAME>
  SOURCE <YOUR_ROOT_NAME> = <YOUR_INTERNAL_TABLE[]
  RESULT XML lv_string.

CREATE OBJECT lo_xml_doc.
lo_xml_doc->parse_string( lv_string ).
* Render To XML Table
data it_xml TYPE DCXMLLINES.
CALL FUNCTION 'SDIXML_DOM_TO_XML'
  EXPORTING
    document            = lo_xml_doc->m_document
   PRETTY_PRINT        = 'X'
* IMPORTING
*   XML_AS_STRING       =
*   SIZE                =
 TABLES
   XML_AS_TABLE        = it_xml
* EXCEPTIONS
*   NO_DOCUMENT         = 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.


  CALL FUNCTION 'GUI_DOWNLOAD'
    EXPORTING
      filename     = lv_file
      filetype     = 'BIN'
    TABLES
      data_tab     = it_xml
    EXCEPTIONS
      OTHERS       = 1.
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.                    " F_XML_EXPORT

Sunday, April 16, 2017

Auto Login SAP

Sometimes, we need to access some frequent tcodes immediately. Therefore, you might want to create a shortcut in SAP GUI. However, keep in mind that your password will be saved in plain without any encryption in your Application Data.

If you do not even care about login SAP again since you might think that you already have secured and private computer in use, you can start make the shortcut by following these steps:

First of all, you need to setting change a bit of your SAP Register by adding
HKEY_CURRENT_USER  > Software > SAP > SAPShrotcut > Security > Create new string value EnablePassword and the value shoud be 1. (Create the key if there isn't any)


After that you can create a shortcut to your desktop

Or create a shortcut in your SAPLOGON
After that, fill in the SYSTEM, the client number, and your credential to auto-login, then click Finish.
















Finally, you can test your shortcut to open your favorite transaction instantly.