<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: BDC program using HR ABAP in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-program-using-hr-abap/m-p/5222091#M1207503</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Dude,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Go through this link : [https://www.sdn.sap.com/irj/scn/wiki?path=/label/snippets/hr-abap]&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Better to goo for FM for upload / update the infotypes : &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1. HR_INFOTYPE_OPERATION&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 19 Feb 2009 03:21:37 GMT</pubDate>
    <dc:creator>former_member632729</dc:creator>
    <dc:date>2009-02-19T03:21:37Z</dc:date>
    <item>
      <title>BDC program using HR ABAP</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-program-using-hr-abap/m-p/5222087#M1207499</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am new to HR ABAP . Can anybody send me an end to end sample BDC program using HR ABAP. I have a requirement  to develop a program.&lt;/P&gt;&lt;P&gt;Please give the sample file which  has the sample data to upload to SAP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Rgds,&lt;/P&gt;&lt;P&gt;Sofia&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 18 Feb 2009 11:32:51 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-program-using-hr-abap/m-p/5222087#M1207499</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2009-02-18T11:32:51Z</dc:date>
    </item>
    <item>
      <title>Re: BDC program using HR ABAP</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-program-using-hr-abap/m-p/5222088#M1207500</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi....&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;to create a program of your own....&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;goto tcode 'SHDB' and there go for a new recording of the TCODE as required by you...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;after recording is complete there is a button to GENERATE a program for that&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;i am looking for a complete data tranfer example which i have done.... i ll send that to you&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;regards&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;this is a sample code for it&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;THIS IS WRITTEN BY ME,YOU CAN GENERATE PROGRAM DIRECTLY&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*" Type declarations...................................................&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;"----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Type declaration of the structure to hold material information      *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;"----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES:&lt;/P&gt;&lt;P&gt;  BEGIN OF type_s_mat,&lt;/P&gt;&lt;P&gt;    name(10)  TYPE c,                  " Material Number&lt;/P&gt;&lt;P&gt;    industry  TYPE c,                  " Industry Sector&lt;/P&gt;&lt;P&gt;    mtype(10) TYPE c,                  " Material Type&lt;/P&gt;&lt;P&gt;    descr(20) TYPE c,                  " Material Description&lt;/P&gt;&lt;P&gt;    unit(10)  TYPE c,                  " Base Unit of Measure&lt;/P&gt;&lt;P&gt;  END OF type_s_mat,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  type_s_f2(4096) TYPE c.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*" Data declarations...................................................&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;"----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Work variables                                                      *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;"----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;  fs_f1 TYPE type_s_mat,               " Field string of TYPE_S_MAT&lt;/P&gt;&lt;P&gt;  fs_workarea TYPE bdcdata,            " Field string of type BDCDATA&lt;/P&gt;&lt;P&gt;  fs_bdc TYPE bdcmsgcoll,              " Field string of type bdcmsgcoll&lt;/P&gt;&lt;P&gt;  w_msg(72) TYPE c,                    " Holds message for writing&lt;/P&gt;&lt;P&gt;  w_i TYPE i,                          " Holds value of rc&lt;/P&gt;&lt;P&gt;  w_file TYPE filetable,               " Holds name of the file&lt;/P&gt;&lt;P&gt;  w_var  TYPE file_table,              " Field string of file_table&lt;/P&gt;&lt;P&gt;  w_file1 TYPE string.                 " Holds the path of the file&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;"----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal table to hold data for the input                           *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;"----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:&lt;/P&gt;&lt;P&gt;  t_itab LIKE&lt;/P&gt;&lt;P&gt;STANDARD TABLE&lt;/P&gt;&lt;P&gt;      OF fs_workarea,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;"----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal table to hold data for the messages                        *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;"----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   t_mess LIKE&lt;/P&gt;&lt;P&gt; STANDARD TABLE&lt;/P&gt;&lt;P&gt;       OF fs_bdc,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;   t_mat LIKE&lt;/P&gt;&lt;P&gt;STANDARD TABLE&lt;/P&gt;&lt;P&gt;      OF fs_f1,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;"----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal table to hold data for the input                           *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;"----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  t_temp TYPE&lt;/P&gt;&lt;P&gt;STANDARD TABLE&lt;/P&gt;&lt;P&gt;      OF type_s_f2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*"Selection screen elements............................................&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME.&lt;/P&gt;&lt;P&gt;PARAMETERS: p_file(128) TYPE c.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK b1.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;"----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;           AT SELECTION-SCREEN ON VALUE-REQUEST EVENT               *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;"----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.&lt;/P&gt;&lt;P&gt;  CALL METHOD cl_gui_frontend_services=&amp;gt;file_open_dialog&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      window_title            = 'FILE_OPEN'&lt;/P&gt;&lt;P&gt;      default_extension       = 'XLS'&lt;/P&gt;&lt;P&gt;    CHANGING&lt;/P&gt;&lt;P&gt;      file_table              = w_file&lt;/P&gt;&lt;P&gt;      rc                      = w_i&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      file_open_dialog_failed = 1&lt;/P&gt;&lt;P&gt;      cntl_error              = 2&lt;/P&gt;&lt;P&gt;      error_no_gui            = 3&lt;/P&gt;&lt;P&gt;      not_supported_by_gui    = 4&lt;/P&gt;&lt;P&gt;      OTHERS                  = 5.&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno&lt;/P&gt;&lt;P&gt;               WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.&lt;/P&gt;&lt;P&gt;  ENDIF.                               " IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT w_file INTO w_var.&lt;/P&gt;&lt;P&gt;    p_file = w_var-filename.&lt;/P&gt;&lt;P&gt;  ENDLOOP.                             " LOOP AT W_FILE INTO W_VAR.&lt;/P&gt;&lt;P&gt;  ULINE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;"----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                      START-OF-SELECTION EVENT                      *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;"----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'TEXT_CONVERT_XLS_TO_SAP'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      i_tab_raw_data       = t_temp&lt;/P&gt;&lt;P&gt;      i_filename           = p_file&lt;/P&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      i_tab_converted_data = t_mat&lt;/P&gt;&lt;P&gt;    EXCEPTIONS&lt;/P&gt;&lt;P&gt;      conversion_failed    = 1&lt;/P&gt;&lt;P&gt;      OTHERS               = 2.&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno&lt;/P&gt;&lt;P&gt;            WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.&lt;/P&gt;&lt;P&gt;  ENDIF.                               " IF SY-SUBRC EQ 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;"----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;                      END-OF-SELECTION EVENT                        *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;"----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;END-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM sub_display.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Form  sub_screen&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; This subroutine appends the value of screen name and number        *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;PV_screenam  This holds screen name                         *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;PV_scrnum    This holds screen number                       *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM sub_screen  USING    value(pv_screenam)&lt;/P&gt;&lt;P&gt;                              value(pv_scrnum).&lt;/P&gt;&lt;P&gt;  CLEAR fs_workarea.&lt;/P&gt;&lt;P&gt;  fs_workarea-program = pv_screenam.&lt;/P&gt;&lt;P&gt;  fs_workarea-dynpro = pv_scrnum.&lt;/P&gt;&lt;P&gt;  fs_workarea-dynbegin = 'X'.&lt;/P&gt;&lt;P&gt;  APPEND fs_workarea TO  t_itab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " FORM SUB_SCREEN&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Form  SUB_FIELD_DATA                                               *&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; This subroutine apppends  field name and value of the screen.      *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;PV_FLDNAM   This holds field name                               *&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;PV_FLDVAL   This holds Field value                              *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM sub_field_data  USING    value(pv_fldnam)&lt;/P&gt;&lt;P&gt;                           value(pv_fldval).&lt;/P&gt;&lt;P&gt;  CLEAR fs_workarea.&lt;/P&gt;&lt;P&gt;  fs_workarea-fnam = pv_fldnam.&lt;/P&gt;&lt;P&gt;  fs_workarea-fval = pv_fldval.&lt;/P&gt;&lt;P&gt;  APPEND fs_workarea TO  t_itab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                               " FORM SUB_FIELD_DATA&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp; Form  sub_display                                             *&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; This subroutine fills the value on screen fields when BDC executes *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; There are no interface parameters to be passed to this subroutine. *&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM sub_display .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT t_mat INTO fs_f1.&lt;/P&gt;&lt;P&gt;    CLEAR fs_workarea.&lt;/P&gt;&lt;P&gt;    CLEAR fs_bdc.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM sub_screen     USING 'SAPLMGMM' '0060'.&lt;/P&gt;&lt;P&gt;    PERFORM sub_field_data USING 'RMMG1-MATNR' fs_f1-name.&lt;/P&gt;&lt;P&gt;    PERFORM sub_field_data USING 'RMMG1-MBRSH' fs_f1-industry.&lt;/P&gt;&lt;P&gt;    PERFORM sub_field_data USING 'RMMG1-MTART' fs_f1-mtype.&lt;/P&gt;&lt;P&gt;    PERFORM sub_field_data USING 'BDC_OKCODE' '/00'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM sub_screen     USING 'SAPLMGMM' '0070'.&lt;/P&gt;&lt;P&gt;    PERFORM sub_field_data USING 'MSICHTAUSW-KZSEL(01)' 'X'.&lt;/P&gt;&lt;P&gt;    PERFORM sub_field_data USING 'MSICHTAUSW-KZSEL(02)' 'X'.&lt;/P&gt;&lt;P&gt;    PERFORM sub_field_data USING 'BDC_OKCODE' '=ENTR'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM sub_screen     USING 'SAPLMGMM' '4004'.&lt;/P&gt;&lt;P&gt;    PERFORM sub_field_data USING 'MAKT-MAKTX' fs_f1-descr.&lt;/P&gt;&lt;P&gt;    PERFORM sub_field_data USING 'MARA-MEINS' fs_f1-unit.&lt;/P&gt;&lt;P&gt;    PERFORM sub_field_data USING 'BDC_OKCODE' '/00'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    PERFORM sub_screen     USING 'SAPLMGMM' '4004'.&lt;/P&gt;&lt;P&gt;    PERFORM sub_field_data USING 'BDC_OKCODE' '=BU'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    CALL TRANSACTION 'MM01' USING t_itab MODE 'A' MESSAGES INTO t_mess.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " SUB_DISPLAY&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Edited by: Mohit Kumar on Feb 18, 2009 12:40 PM&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 18 Feb 2009 11:39:00 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-program-using-hr-abap/m-p/5222088#M1207500</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2009-02-18T11:39:00Z</dc:date>
    </item>
    <item>
      <title>Re: BDC program using HR ABAP</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-program-using-hr-abap/m-p/5222089#M1207501</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Mohit,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks for the updates. I was looking for a program coded in HR ABAP. can you please pass that to me . It may be any kind of data upload (tcode) in HR module . &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Rgds,&lt;/P&gt;&lt;P&gt;Sofia&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 18 Feb 2009 12:11:16 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-program-using-hr-abap/m-p/5222089#M1207501</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2009-02-18T12:11:16Z</dc:date>
    </item>
    <item>
      <title>Re: BDC program using HR ABAP</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-program-using-hr-abap/m-p/5222090#M1207502</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Sofia,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Avoid if possible using BDC in new programs.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The best option is use the standard function modules like:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;HR_MAINTAIN_MASTERDATA&lt;/P&gt;&lt;P&gt;HR_INFOTYPE_OPERATION&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Check the example program RPLAPL00.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Roger&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 18 Feb 2009 12:46:12 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-program-using-hr-abap/m-p/5222090#M1207502</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2009-02-18T12:46:12Z</dc:date>
    </item>
    <item>
      <title>Re: BDC program using HR ABAP</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-program-using-hr-abap/m-p/5222091#M1207503</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Dude,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Go through this link : [https://www.sdn.sap.com/irj/scn/wiki?path=/label/snippets/hr-abap]&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Better to goo for FM for upload / update the infotypes : &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1. HR_INFOTYPE_OPERATION&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 19 Feb 2009 03:21:37 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-program-using-hr-abap/m-p/5222091#M1207503</guid>
      <dc:creator>former_member632729</dc:creator>
      <dc:date>2009-02-19T03:21:37Z</dc:date>
    </item>
    <item>
      <title>Re: BDC program using HR ABAP</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-program-using-hr-abap/m-p/5222092#M1207504</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Raghunath,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks for your reply.Could you please give  me a sample program using the FM which you suggested.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks in Advance.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Rgds,&lt;/P&gt;&lt;P&gt;Sofia&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 24 Feb 2009 14:10:52 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-program-using-hr-abap/m-p/5222092#M1207504</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2009-02-24T14:10:52Z</dc:date>
    </item>
    <item>
      <title>Re: BDC program using HR ABAP</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-program-using-hr-abap/m-p/5222093#M1207505</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Dude,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Go through the sample Code ...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;CONSTANTS: change TYPE pspar-actio VALUE 'MOD'.

      "This code is requred and locks the record ready for modification
      CALL FUNCTION 'HR_EMPLOYEE_ENQUEUE'
        EXPORTING
         number = p_pernr.


      "loop at p0071 into p_p0071.  "added to put code in context
      validitybegin = p_record-begda.
      validityend   = p_record-endda.
      p_record-endda = pn-begda - 1.

      CALL FUNCTION 'HR_INFOTYPE_OPERATION'
        EXPORTING
          infty         = '0071'
          subtype       = p_record-subty
          objectid      = P_record-objps
          number        = p_record-pernr     "employeenumber
          validityend   = validityend
          validitybegin = validitybegin
          record        = p_record
          recordnumber  = p_record-SEQNR
          operation     = change
          nocommit      = nocommit
          dialog_mode   = '0'
        IMPORTING
          return        = return_struct
          key           = personaldatakey
        EXCEPTIONS
          OTHERS        = 0.

       "endloop.

     "unlock record after modification
     CALL FUNCTION 'HR_EMPLOYEE_DEQUEUE'
       EXPORTING
        number = p_pernr.
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;Second one&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
tables: pa0001, pa0171, pa0378.

DATA  BEGIN OF i0378.
        include structure p0378.
DATA  END   OF i0378.

DATA: START_DATE LIKE SY-DATUM.

DATA  RETURN LIKE  BAPIRETURN1.

selection-screen begin of block p1.
* This select option allows for testing on limited employees
* or for splitting the update into multiple runs.
SELECT-OPTIONS pernr for pa0001-pernr.
selection-screen end of block p1.

selection-screen skip.

selection-screen begin of block b1.
* The plan year date is normally the first day of the next year
PARAMETERS: py_date LIKE SY-DATUM.
* This date is the beginning of the enrollment period for managers
PARAMETERS: MGR_DATE LIKE SY-DATUM.
* This date is the beginning of the enrollment period for hourlys
PARAMETERS: HRLY_DATE LIKE SY-DATUM.
selection-screen end of block b1.

INITIALIZATION.
  py_date = sy-datum.
  py_date(4) = py_date(4) + 1.
  py_date+4(4) = '0101'.

START-OF-SELECTION.

select * from pa0171
  where pernr in pernr
    and endda ge py_date
    and begda le py_date.

* skip ineligible employees
  if pa0171-bstat eq 'INEL'.
    continue.
  endif.

* determine start date of enrollment based on benefit group
  if pa0171-bengr eq 'MNGR'.
    start_date = mgr_date.
  elseif pa0171-bengr eq 'HRLY'.
    start_date = hrly_date.
  else.
*   ERROR HANDLING GOES HERE
    continue.
  endif.

* create IT0378 record for this person    
  clear i0378.
  i0378-pernr = PA0171-pernr.
  i0378-barea = PA0171-barea.
  i0378-event = 'OPEN'.
  i0378-begda = start_date.
  i0378-infty = '0378'.
  i0378-aedtm = sy-datum.
  i0378-uname = sy-uname.
  CALL FUNCTION 'HR_INFOTYPE_OPERATION'
       EXPORTING
            INFTY         = '0378'
            NUMBER        = i0378-pernr
            SUBTYPE       = 'OPEN'
            VALIDITYBEGIN = i0378-begda
            RECORD        = i0378
            OPERATION     = 'INS'
       IMPORTING
            RETURN        = return
       EXCEPTIONS
            OTHERS        = 1.

  if sy-subrc ne 0 or return-type ne ' '.
*   ERROR HANDLING GOES HERE
  endif.
ENDSELECT.

&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Edited by: Raghunath Shyamala on Feb 25, 2009 6:36 AM&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 25 Feb 2009 05:35:12 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/bdc-program-using-hr-abap/m-p/5222093#M1207505</guid>
      <dc:creator>former_member632729</dc:creator>
      <dc:date>2009-02-25T05:35:12Z</dc:date>
    </item>
  </channel>
</rss>

