<?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 Logical Database of SAP Example Program in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/logical-database-of-sap-example-program/m-p/3368900#M808544</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi all,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I need an example ABAP program using standard Logical Database ( LDB ) .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Help me.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Peachi.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 22 Jan 2008 13:20:07 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2008-01-22T13:20:07Z</dc:date>
    <item>
      <title>Logical Database of SAP Example Program</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/logical-database-of-sap-example-program/m-p/3368900#M808544</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi all,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I need an example ABAP program using standard Logical Database ( LDB ) .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Help me.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Peachi.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 22 Jan 2008 13:20:07 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/logical-database-of-sap-example-program/m-p/3368900#M808544</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-01-22T13:20:07Z</dc:date>
    </item>
    <item>
      <title>Re: Logical Database of SAP Example Program</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/logical-database-of-sap-example-program/m-p/3368901#M808545</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;Some links to refer..&lt;/P&gt;&lt;P&gt;/people/alvaro.tejadagalindo/blog/2006/02/19/how-to-deal-with-hr-payroll-reports&lt;/P&gt;&lt;P&gt;&lt;A href="http://sap.ittoolbox.com/groups/technical-functional/sap-r3-dev/893908#" target="test_blank"&gt;http://sap.ittoolbox.com/groups/technical-functional/sap-r3-dev/893908#&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;A sample prog with LDB PNP&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp; Report ZH_REPT_PAYMENT *&lt;/P&gt;&lt;P&gt;*&amp;amp; *&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp; *&lt;/P&gt;&lt;P&gt;*&amp;amp; *&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;report zh_rept_payment line-size 80 no standard page&lt;/P&gt;&lt;P&gt;heading.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;tables: pernr, " Standard Selections for HR Master Data Reporting&lt;/P&gt;&lt;P&gt;pcl1, " HR Cluster 1&lt;/P&gt;&lt;P&gt;pcl2, " HR Cluster 2&lt;/P&gt;&lt;P&gt;pa0009,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PA9001, &lt;/P&gt;&lt;P&gt;PA9006, &lt;/P&gt;&lt;P&gt;pa0002,&lt;/P&gt;&lt;P&gt;pc260 , " Cluster Directory for Payroll Results&lt;/P&gt;&lt;P&gt;bnka .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Infotypes &lt;/P&gt;&lt;P&gt;infotypes: 0001. " Organizational Assignment&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Declaration of Internal Tables &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data : bnka1 like bnka occurs 0 with header line .&lt;/P&gt;&lt;P&gt;*-&lt;/P&gt;&lt;P&gt;data: begin of t_int_rep occurs 100,&lt;/P&gt;&lt;P&gt;bankl like pc209-bankl, " Bank Number&lt;/P&gt;&lt;P&gt;zlsch like pc209-zlsch, " Payment method&lt;/P&gt;&lt;P&gt;pernr like pernr-pernr, " Employee Number&lt;/P&gt;&lt;P&gt;ename like pernr-ename, " Employee Name&lt;/P&gt;&lt;P&gt;bankn like pc209-bankn, " Bank Account Number&lt;/P&gt;&lt;P&gt;betrg like pc209-betrg, " Amount to be transfered&lt;/P&gt;&lt;P&gt;zweck like pa0009-zweck, " Purpose&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;end of t_int_rep.&lt;/P&gt;&lt;P&gt;***********************&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data: begin of int_rep occurs 100,&lt;/P&gt;&lt;P&gt;bankl like pc209-bankl, " Bank Number&lt;/P&gt;&lt;P&gt;zlsch like pc209-zlsch, " Payment method&lt;/P&gt;&lt;P&gt;pernr like pernr-pernr, " Employee Number&lt;/P&gt;&lt;P&gt;ename like pernr-ename, " Employee Name&lt;/P&gt;&lt;P&gt;bankn like pc209-bankn, " Bank Account Number&lt;/P&gt;&lt;P&gt;betrg like pc209-betrg, " Amount to be transfered&lt;/P&gt;&lt;P&gt;zweck like pa0009-zweck, " Purpose&lt;/P&gt;&lt;P&gt;begda like pa0009-begda, "Begin date&lt;/P&gt;&lt;P&gt;end of int_rep.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Declaration of Data Variables &lt;/P&gt;&lt;P&gt;data: ws_betrg like pc209-betrg, " BT Amount&lt;/P&gt;&lt;P&gt;w_val like spell occurs 0 with header line,&lt;/P&gt;&lt;P&gt;int_rep1(6), " TYPE I, " Employee Number&lt;/P&gt;&lt;P&gt;cnt type i value 0, " Counter&lt;/P&gt;&lt;P&gt;calcmolga like t500l-molga value '40', " Country Grouping&lt;/P&gt;&lt;P&gt;v_id(15),&lt;/P&gt;&lt;P&gt;calc_currency like t001-waers value 'INR'. " Currency&lt;/P&gt;&lt;P&gt;data : ctr type i,&lt;/P&gt;&lt;P&gt;dt_merge like pa0009-begda.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data: ws_totemp(6) type c,&lt;/P&gt;&lt;P&gt;ws_totamt(20) type c,&lt;/P&gt;&lt;P&gt;r_mth(9) type c,&lt;/P&gt;&lt;P&gt;ws_fpbeg(6) type c,&lt;/P&gt;&lt;P&gt;ws_fpend(6) type c,&lt;/P&gt;&lt;P&gt;ws_mthyr(6) type c,&lt;/P&gt;&lt;P&gt;ws_mthyr_r(14) type c,&lt;/P&gt;&lt;P&gt;r_mth_t(3) type c,&lt;/P&gt;&lt;P&gt;ws_amt(8) type c,&lt;/P&gt;&lt;P&gt;ws_bankl(14) type c,&lt;/P&gt;&lt;P&gt;ws_date(6) type c,&lt;/P&gt;&lt;P&gt;amount_word(500),&lt;/P&gt;&lt;P&gt;total_page type i,&lt;/P&gt;&lt;P&gt;pages type i,&lt;/P&gt;&lt;P&gt;remain type i.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data begin of i_spell.&lt;/P&gt;&lt;P&gt;include structure spell .&lt;/P&gt;&lt;P&gt;data end of i_spell .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;data : c_molga type t500l-molga value '40',&lt;/P&gt;&lt;P&gt;c_banks type bnka-banks value 'IN'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Standard Includes &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;include rpc2cd09. "Cluster CD data definition&lt;/P&gt;&lt;P&gt;include pc2rxin0.&lt;/P&gt;&lt;P&gt;include rpc2rx09.&lt;/P&gt;&lt;P&gt;include rpppxd00. " Data Definition buffer PCL1/PCL2&lt;/P&gt;&lt;P&gt;include rpppxd10. " Common Part buffer PCL1/PCL2&lt;/P&gt;&lt;P&gt;include rpppxm00. " Buffer Handling RoutinePCL1/PCL2&lt;/P&gt;&lt;P&gt;include zrpc2rox2. " Data Definition POCLSTERS (not J,K,U)&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Selection Screen &lt;/P&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;selection-screen begin of block b1 with frame title text-001.&lt;/P&gt;&lt;P&gt;parameter: pa_mth(2) type c default sy-datum+4(2) obligatory,&lt;/P&gt;&lt;P&gt;pa_year(4) type c default sy-datum(4) obligatory,&lt;/P&gt;&lt;P&gt;p_bankl like pc209-bankl, " Bank Number&lt;/P&gt;&lt;P&gt;p_zlsch like pc209-zlsch. " Payment method&lt;/P&gt;&lt;P&gt;selection-screen end of block b1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;************************************************************************&lt;/P&gt;&lt;P&gt;save_calc_currency = calc_currency.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;count_top = 0.&lt;/P&gt;&lt;P&gt;get_pernr_flag = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;**********************************************************************&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Top-Of-Page &lt;/P&gt;&lt;P&gt;**********************************************************************&lt;/P&gt;&lt;P&gt;top-of-page.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;perform convert_month using pa_mth(2) r_mth.&lt;/P&gt;&lt;P&gt;ws_mthyr_r = r_mth.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;concatenate ws_mthyr_r pa_year into ws_mthyr_r separated by space.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SKIP 5. &lt;/P&gt;&lt;P&gt;skip 1. &lt;/P&gt;&lt;P&gt;skip 4.&lt;/P&gt;&lt;P&gt;if int_rep-bankl eq ' '.&lt;/P&gt;&lt;P&gt;if int_rep-zlsch eq 'C' or int_rep-zlsch eq 'E' or&lt;/P&gt;&lt;P&gt;int_rep-zlsch eq ' '.&lt;/P&gt;&lt;P&gt;write: /1(85) 'CHEQUE PAYMENT STATEMENT'(047) centered.&lt;/P&gt;&lt;P&gt;elseif int_rep-zlsch eq 'L'.&lt;/P&gt;&lt;P&gt;write: /1(85) 'DEMAND DRAFT STATEMENT'(047) centered.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;else.&lt;/P&gt;&lt;P&gt;write: /1(85) 'BANK TRANSFER STATEMENT'(002) centered.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;skip.&lt;/P&gt;&lt;P&gt;write: /34 ws_mthyr_r,&lt;/P&gt;&lt;P&gt;62 'Page :'(008),69(2) sy-pagno intensified off,&lt;/P&gt;&lt;P&gt;' Of ',78(2) pages intensified off.&lt;/P&gt;&lt;P&gt;clear pages.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;read table bnka1 with key bankl = int_rep-bankl .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;if int_rep-zlsch eq 'T'.&lt;/P&gt;&lt;P&gt;write:/03(10) 'Bank Name : ', bnka1-banka.&lt;/P&gt;&lt;P&gt;write:/03(10) 'Branch : ', bnka1-brnch.&lt;/P&gt;&lt;P&gt;write:/03(10) 'Address : ', bnka1-stras.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;skip.&lt;/P&gt;&lt;P&gt;write:/1(80) sy-uline.&lt;/P&gt;&lt;P&gt;write: /1 sy-vline, 2(5) 'Sl.No'(002),&lt;/P&gt;&lt;P&gt;7 sy-vline, 8(8) 'Emp.No.'(003),&lt;/P&gt;&lt;P&gt;16 sy-vline,17(35) 'Employee Name'(004).&lt;/P&gt;&lt;P&gt;*--added for Demand Draft&lt;/P&gt;&lt;P&gt;if ( int_rep-zlsch = 'l' or int_rep-zlsch = 'L' ).&lt;/P&gt;&lt;P&gt;write : 47 sy-vline, 48(15) 'Payable at'(005).&lt;/P&gt;&lt;P&gt;else.&lt;/P&gt;&lt;P&gt;*---&lt;/P&gt;&lt;P&gt;write : 47 sy-vline,48(15) 'Account No.'(005).&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;write: 63 sy-vline,64(16) 'Amount'(006),&lt;/P&gt;&lt;P&gt;80 sy-vline.&lt;/P&gt;&lt;P&gt;write:/1(80) sy-uline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;end-of-page.&lt;/P&gt;&lt;P&gt;write:/1(80) sy-uline.&lt;/P&gt;&lt;P&gt;write:/2 'Printed on ', sy-datum.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;**********************************************************************&lt;/P&gt;&lt;P&gt;&lt;/P&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;start-of-selection.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*perform h_headr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ctr = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;set margin 5.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;call function 'RP_GET_CURRENCY'&lt;/P&gt;&lt;P&gt;exporting&lt;/P&gt;&lt;P&gt;molga = calcmolga&lt;/P&gt;&lt;P&gt;importing&lt;/P&gt;&lt;P&gt;waers = calc_currency&lt;/P&gt;&lt;P&gt;exceptions&lt;/P&gt;&lt;P&gt;others.&lt;/P&gt;&lt;P&gt;if sy-subrc ne 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;calc_currency = 'DEM'. &lt;/P&gt;&lt;P&gt;calc_currency = save_calc_currency.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;get pernr.&lt;/P&gt;&lt;P&gt;cd-key-pernr = pernr-pernr.&lt;/P&gt;&lt;P&gt;perform import_cluster.&lt;/P&gt;&lt;P&gt;get_pernr_flag = 1.&lt;/P&gt;&lt;P&gt;check : ocd-version-molga eq calcmolga.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The table 'tabpernr' is filled with the personnel numbers &lt;/P&gt;&lt;P&gt;and is used after selection is finished. &lt;/P&gt;&lt;P&gt;move-corresponding pernr to tabpernr.&lt;/P&gt;&lt;P&gt;append tabpernr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;The table 'tab_rgdir' is filled &lt;/P&gt;&lt;P&gt;loop at rgdir.&lt;/P&gt;&lt;P&gt;rx-key-pernr = pernr-pernr.&lt;/P&gt;&lt;P&gt;unpack rgdir-seqnr to rx-key-seqno.&lt;/P&gt;&lt;P&gt;perform int_tab. "fill tab_rgdir&lt;/P&gt;&lt;P&gt;perform import_bt.&lt;/P&gt;&lt;P&gt;perform validate.&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;**********************************************************************&lt;/P&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;end-of-selection.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*perform h_headr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;perform convert_date_a using pa_mth r_mth_t.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;sort int_rep by bankl zlsch pernr betrg descending.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;delete adjacent duplicates from int_rep&lt;/P&gt;&lt;P&gt;comparing bankl zlsch pernr .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;sort int_rep by bankl zlsch bankn . "PERNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;loop at int_rep.&lt;/P&gt;&lt;P&gt;at new bankl.&lt;/P&gt;&lt;P&gt;select single * into bnka1 from bnka&lt;/P&gt;&lt;P&gt;where banks = c_banks and&lt;/P&gt;&lt;P&gt;bankl = int_rep-bankl .&lt;/P&gt;&lt;P&gt;append bnka1.&lt;/P&gt;&lt;P&gt;clear bnka1.&lt;/P&gt;&lt;P&gt;endat.&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;for Demand Draft - purpose added &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;loop at int_rep.&lt;/P&gt;&lt;P&gt;concatenate pa_year(4) pa_mth(2) '01' into dt_merge.&lt;/P&gt;&lt;P&gt;select single * "zweck into int_rep-zweck&lt;/P&gt;&lt;P&gt;from pa0009 where&lt;/P&gt;&lt;P&gt;pernr = int_rep-pernr and&lt;/P&gt;&lt;P&gt;bankl = int_rep-bankl and&lt;/P&gt;&lt;P&gt;zlsch = int_rep-zlsch&lt;/P&gt;&lt;P&gt;and begda &amp;lt;= dt_merge and&lt;/P&gt;&lt;P&gt;endda &amp;gt;= dt_merge .&lt;/P&gt;&lt;P&gt;if sy-subrc = 0.&lt;/P&gt;&lt;P&gt;int_rep-zweck = pa0009-zweck.&lt;/P&gt;&lt;P&gt;modify int_rep.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-for DD and Chq sorted by PAyable at and EMPNO wise&lt;/P&gt;&lt;P&gt;if p_zlsch = 'T' .&lt;/P&gt;&lt;P&gt;sort int_rep by bankl zlsch bankn . "PERNR.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;else. "added for "payable at" for DD/Chq &lt;/P&gt;&lt;P&gt;else.&lt;/P&gt;&lt;P&gt;sort int_rep by zweck pernr . "PERNR.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*delete adjacent duplicates from int_rep.&lt;/P&gt;&lt;P&gt;t_int_rep] = int_rep[.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;loop at int_rep.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-for page of page no.&lt;/P&gt;&lt;P&gt;total_page = 0.&lt;/P&gt;&lt;P&gt;loop at t_int_rep where bankl = int_rep-bankl&lt;/P&gt;&lt;P&gt;and zlsch = int_rep-zlsch.&lt;/P&gt;&lt;P&gt;total_page = total_page + 1.&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;pages = total_page div 25.&lt;/P&gt;&lt;P&gt;remain = total_page mod 25.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;comment bcoz its adding one extra page no. &lt;/P&gt;&lt;P&gt;done as on 29/11/2004 &lt;/P&gt;&lt;P&gt;if remain &amp;gt; 0.&lt;/P&gt;&lt;P&gt;pages = pages + 1.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;**-end&lt;/P&gt;&lt;P&gt;*-&lt;/P&gt;&lt;P&gt;at new bankl.&lt;/P&gt;&lt;P&gt;ctr = 0 .&lt;/P&gt;&lt;P&gt;new-page.&lt;/P&gt;&lt;P&gt;endat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;at new zlsch.&lt;/P&gt;&lt;P&gt;ctr = 0 .&lt;/P&gt;&lt;P&gt;new-page.&lt;/P&gt;&lt;P&gt;endat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;clear v_id.&lt;/P&gt;&lt;P&gt;select single natio&lt;/P&gt;&lt;P&gt;into pa0002-natio&lt;/P&gt;&lt;P&gt;from pa0002&lt;/P&gt;&lt;P&gt;where pernr eq int_rep-pernr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-testing......for soma&lt;/P&gt;&lt;P&gt;if ctr &amp;gt; 24.&lt;/P&gt;&lt;P&gt;ctr = 0 .&lt;/P&gt;&lt;P&gt;write:/1(80) sy-uline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;new-page .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ctr = ctr + 1 .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;cnt = cnt + 1.&lt;/P&gt;&lt;P&gt;pack int_rep-pernr to int_rep1.&lt;/P&gt;&lt;P&gt;write:/1 sy-vline, 2(3) cnt intensified off,&lt;/P&gt;&lt;P&gt;7 sy-vline, 9(6) int_rep1 intensified off,&lt;/P&gt;&lt;P&gt;16 sy-vline,17(35) int_rep-ename intensified off .&lt;/P&gt;&lt;P&gt;if ( int_rep-zlsch = 'l' or int_rep-zlsch = 'L' ).&lt;/P&gt;&lt;P&gt;write : 47 sy-vline,48(15) int_rep-zweck intensified off.&lt;/P&gt;&lt;P&gt;else.&lt;/P&gt;&lt;P&gt;write:&lt;/P&gt;&lt;P&gt;47 sy-vline,48(15) int_rep-bankn intensified off .&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;write: 63 sy-vline,64(16) int_rep-betrg&lt;/P&gt;&lt;P&gt;intensified off currency 'INR',&lt;/P&gt;&lt;P&gt;80 sy-vline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ws_betrg = ws_betrg + int_rep-betrg.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-testing......for soma&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;skip. &lt;/P&gt;&lt;P&gt;write :&lt;/P&gt;&lt;P&gt;/1 sy-vline, 7 sy-vline ,16 sy-vline ,47 sy-vline,63 sy-vline,80&lt;/P&gt;&lt;P&gt;sy-vline .&lt;/P&gt;&lt;P&gt;*-end testing......for soma&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;at end of zlsch.&lt;/P&gt;&lt;P&gt;if int_rep-bankl = ' '.&lt;/P&gt;&lt;P&gt;call function 'HR_IN_CHG_INR_WRDS'&lt;/P&gt;&lt;P&gt;exporting&lt;/P&gt;&lt;P&gt;amt_in_num = ws_betrg&lt;/P&gt;&lt;P&gt;importing&lt;/P&gt;&lt;P&gt;amt_in_words = amount_word&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;EXCEPTIONS &lt;/P&gt;&lt;P&gt;DATA_TYPE_MISMATCH = 1 &lt;/P&gt;&lt;P&gt;OTHERS = 2 &lt;/P&gt;&lt;P&gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*************&lt;/P&gt;&lt;P&gt;w_val-word = amount_word.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;concatenate 'INR.' w_val-word into w_val-word&lt;/P&gt;&lt;P&gt;separated by space.&lt;/P&gt;&lt;P&gt;write:/1(80) sy-uline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;write: /1 sy-vline, 7 'Total transfer:'(009),&lt;/P&gt;&lt;P&gt;64(16) ws_betrg intensified off currency 'INR',&lt;/P&gt;&lt;P&gt;80 sy-vline.&lt;/P&gt;&lt;P&gt;write:/1(80) sy-uline.&lt;/P&gt;&lt;P&gt;write: /1 sy-vline, 3 w_val-word+0(76) intensified off,&lt;/P&gt;&lt;P&gt;80 sy-vline.&lt;/P&gt;&lt;P&gt;write :/1 sy-vline, 10 w_val-word+76(70) intensified off,&lt;/P&gt;&lt;P&gt;80 sy-vline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;write:/1(80) sy-uline.&lt;/P&gt;&lt;P&gt;clear: ws_betrg,cnt.&lt;/P&gt;&lt;P&gt;skip 2.&lt;/P&gt;&lt;P&gt;write: /2 'Prepared by :'(010), '_______________'(013),&lt;/P&gt;&lt;P&gt;45 'Checked by :'(011),'_______________'(013).&lt;/P&gt;&lt;P&gt;skip 2.&lt;/P&gt;&lt;P&gt;write: /2 'Printed On ', sy-datum,&lt;/P&gt;&lt;P&gt;45 'Approved by :'(012),'_______________'(013).&lt;/P&gt;&lt;P&gt;clear sy-pagno.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;endat.&lt;/P&gt;&lt;P&gt;at end of bankl.&lt;/P&gt;&lt;P&gt;if int_rep-bankl ' '.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;call function 'HR_IN_CHG_INR_WRDS'&lt;/P&gt;&lt;P&gt;exporting&lt;/P&gt;&lt;P&gt;amt_in_num = ws_betrg&lt;/P&gt;&lt;P&gt;importing&lt;/P&gt;&lt;P&gt;amt_in_words = amount_word&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;EXCEPTIONS &lt;/P&gt;&lt;P&gt;DATA_TYPE_MISMATCH = 1 &lt;/P&gt;&lt;P&gt;OTHERS = 2 &lt;/P&gt;&lt;P&gt;.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;w_val-word = amount_word.&lt;/P&gt;&lt;P&gt;concatenate 'INR.' w_val-word into w_val-word&lt;/P&gt;&lt;P&gt;separated by space.&lt;/P&gt;&lt;P&gt;write:/1(80) sy-uline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;write: /1 sy-vline, 7 'Total transfer:'(009),&lt;/P&gt;&lt;P&gt;64(16) ws_betrg intensified off currency 'INR',&lt;/P&gt;&lt;P&gt;80 sy-vline.&lt;/P&gt;&lt;P&gt;write:/1(80) sy-uline.&lt;/P&gt;&lt;P&gt;write: /1 sy-vline, 3 w_val-word+0(76) intensified off,&lt;/P&gt;&lt;P&gt;80 sy-vline.&lt;/P&gt;&lt;P&gt;write :/1 sy-vline, 10 w_val-word+76(70) intensified off,&lt;/P&gt;&lt;P&gt;80 sy-vline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;write:/1(80) sy-uline.&lt;/P&gt;&lt;P&gt;clear: ws_betrg,cnt.&lt;/P&gt;&lt;P&gt;skip 2.&lt;/P&gt;&lt;P&gt;write: /2 'Prepared by :'(010), '_______________'(013),&lt;/P&gt;&lt;P&gt;45 'Checked by :'(011),'_______________'(013).&lt;/P&gt;&lt;P&gt;skip 2.&lt;/P&gt;&lt;P&gt;write: /2 'Printed on ', sy-datum,&lt;/P&gt;&lt;P&gt;45 'Approved by :'(012),'_______________'(013).&lt;/P&gt;&lt;P&gt;clear sy-pagno.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;NEW-PAGE. &lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;endat.&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;**********************************************************************&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;End of Page &lt;/P&gt;&lt;P&gt;**********************************************************************&lt;/P&gt;&lt;P&gt;end-of-page.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;write: /2 'Prepared by :'(010), '_______________',&lt;/P&gt;&lt;P&gt;45 'Checked by :'(011),'_______________'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp; Form IMPORT_CLUSTER&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Importing Data from Cluster * &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="--------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;form import_cluster.&lt;/P&gt;&lt;P&gt;sy-subrc = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;rp-imp-c2-cd.&lt;/P&gt;&lt;P&gt;if sy-subrc eq 0.&lt;/P&gt;&lt;P&gt;if cd-version-number ne ocd-version-number.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;endif. " SY-SUBRC EQ 0&lt;/P&gt;&lt;P&gt;endform. " IMPORT_CLUSTER&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp; Form INT_TAB&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Filling internal table tab_rgdir &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="--------------------------------------------------------------------" /&gt;&lt;P&gt;form int_tab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*Fill internal table tab_rgdir.&lt;/P&gt;&lt;P&gt;move-corresponding rgdir to tab_rgdir.&lt;/P&gt;&lt;P&gt;tab_rgdir-pernr = pernr-pernr.&lt;/P&gt;&lt;P&gt;append tab_rgdir.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endform. " INT_TAB&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp; Form IMPORT_bt&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Import Values from Bank Transactions Table (BT) &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="--------------------------------------------------------------------" /&gt;&lt;P&gt;form import_bt.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;rp-init-buffer.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;RP-IMP-C2-RX. &lt;/P&gt;&lt;P&gt;rp-imp-c2-in.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;if rp-imp-in-subrc eq 0.&lt;/P&gt;&lt;P&gt;if in-version-number ne oin-version-number.&lt;/P&gt;&lt;P&gt;write: / 'Schlüssel des Clusters RX:'(015),&lt;/P&gt;&lt;P&gt;rx-key-pernr, rx-key-seqno.&lt;/P&gt;&lt;P&gt;write: / 'The imported version of the cluster'(016), 'RX',&lt;/P&gt;&lt;P&gt;'is not current'(017).&lt;/P&gt;&lt;P&gt;write: / 'Imported version :'(018),&lt;/P&gt;&lt;P&gt;oin-version-number.&lt;/P&gt;&lt;P&gt;write: / 'Current version of cluster :'(019),&lt;/P&gt;&lt;P&gt;in-version-number.&lt;/P&gt;&lt;P&gt;stop.&lt;/P&gt;&lt;P&gt;else.&lt;/P&gt;&lt;P&gt;sy-subrc = 0.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;else.&lt;/P&gt;&lt;P&gt;sy-subrc = 8.&lt;/P&gt;&lt;P&gt;write: /&lt;/P&gt;&lt;P&gt;'Inconsistencies between cluster directory and directory for'(020).&lt;/P&gt;&lt;P&gt;write: /&lt;/P&gt;&lt;P&gt;'No payroll results found for data in cluster directory'(021).&lt;/P&gt;&lt;P&gt;write : /&lt;/P&gt;&lt;P&gt;'Please contact hotline to solve the current problem'(022).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ws_fpbeg(2) = versc-fpbeg+4(2).&lt;/P&gt;&lt;P&gt;ws_fpbeg+2(4) = versc-fpbeg(4).&lt;/P&gt;&lt;P&gt;ws_fpend(2) = versc-fpend+4(2).&lt;/P&gt;&lt;P&gt;ws_fpend+2(4) = versc-fpend(4).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ws_mthyr(2) = pa_mth.&lt;/P&gt;&lt;P&gt;ws_mthyr+2(4) = pa_year.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;check ws_mthyr = ws_fpbeg.&lt;/P&gt;&lt;P&gt;check ws_mthyr = ws_fpend.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;loop at bt. "from pc209&lt;/P&gt;&lt;P&gt;int_rep-pernr = pernr-pernr.&lt;/P&gt;&lt;P&gt;int_rep-ename = pernr-ename.&lt;/P&gt;&lt;P&gt;int_rep-bankl = bt-bankl.&lt;/P&gt;&lt;P&gt;int_rep-bankn = bt-bankn.&lt;/P&gt;&lt;P&gt;int_rep-betrg = bt-betrg.&lt;/P&gt;&lt;P&gt;int_rep-zlsch = bt-zlsch.&lt;/P&gt;&lt;P&gt;append int_rep.&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;IF P_BANKL ' ' AND P_ZLSCH ' '. &lt;/P&gt;&lt;P&gt;DELETE INT_REP WHERE BANKL P_BANKL. &lt;/P&gt;&lt;P&gt;ELSEIF P_BANKL = ' ' AND P_ZLSCH ' '. &lt;/P&gt;&lt;P&gt;DELETE INT_REP WHERE ZLSCH P_ZLSCH. &lt;/P&gt;&lt;P&gt;ELSEIF P_BANKL ' ' AND P_ZLSCH = ' '. &lt;/P&gt;&lt;P&gt;DELETE INT_REP WHERE BANKL P_BANKL. &lt;/P&gt;&lt;P&gt;ENDIF. &lt;/P&gt;&lt;P&gt;endform. " IMPORT_BT&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp; Form CONVERT_MONTH&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Fetching Month Text &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="--------------------------------------------------------------------" /&gt;&lt;P&gt;form convert_month using mth t_mth.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;case mth.&lt;/P&gt;&lt;P&gt;when '01'.&lt;/P&gt;&lt;P&gt;t_mth = 'January'(023).&lt;/P&gt;&lt;P&gt;when '02'.&lt;/P&gt;&lt;P&gt;t_mth = 'February'(024).&lt;/P&gt;&lt;P&gt;when '03'.&lt;/P&gt;&lt;P&gt;t_mth = 'March'(025).&lt;/P&gt;&lt;P&gt;when '04'.&lt;/P&gt;&lt;P&gt;t_mth = 'April'(026).&lt;/P&gt;&lt;P&gt;when '05'.&lt;/P&gt;&lt;P&gt;t_mth = 'May'(027).&lt;/P&gt;&lt;P&gt;when '06'.&lt;/P&gt;&lt;P&gt;t_mth = 'June'(028).&lt;/P&gt;&lt;P&gt;when '07'.&lt;/P&gt;&lt;P&gt;t_mth = 'July'(029).&lt;/P&gt;&lt;P&gt;when '08'.&lt;/P&gt;&lt;P&gt;t_mth = 'August'(030).&lt;/P&gt;&lt;P&gt;when '09'.&lt;/P&gt;&lt;P&gt;t_mth = 'September'(031).&lt;/P&gt;&lt;P&gt;when '10'.&lt;/P&gt;&lt;P&gt;t_mth = 'October'(032).&lt;/P&gt;&lt;P&gt;when '11'.&lt;/P&gt;&lt;P&gt;t_mth = 'November'(033).&lt;/P&gt;&lt;P&gt;when '12'.&lt;/P&gt;&lt;P&gt;t_mth = 'December'(034).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;endcase.&lt;/P&gt;&lt;P&gt;endform. " CONVERT_MONTH&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp; Form CONVERT_DATE_A&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Fetching Month Text * &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="--------------------------------------------------------------------" /&gt;&lt;P&gt;form convert_date_a using mth_t t_mth_t.&lt;/P&gt;&lt;P&gt;case mth_t.&lt;/P&gt;&lt;P&gt;when '01'.&lt;/P&gt;&lt;P&gt;t_mth_t = 'Jan.'(035).&lt;/P&gt;&lt;P&gt;when '02'.&lt;/P&gt;&lt;P&gt;t_mth_t = 'Feb.'(036).&lt;/P&gt;&lt;P&gt;when '03'.&lt;/P&gt;&lt;P&gt;t_mth_t = 'Mar.'(037).&lt;/P&gt;&lt;P&gt;when '04'.&lt;/P&gt;&lt;P&gt;t_mth_t = 'Apr.'(038).&lt;/P&gt;&lt;P&gt;when '05'.&lt;/P&gt;&lt;P&gt;t_mth_t = 'May.'(039).&lt;/P&gt;&lt;P&gt;when '06'.&lt;/P&gt;&lt;P&gt;t_mth_t = 'Jun.'(040).&lt;/P&gt;&lt;P&gt;when '07'.&lt;/P&gt;&lt;P&gt;t_mth_t = 'Jul.'(041).&lt;/P&gt;&lt;P&gt;when '08'.&lt;/P&gt;&lt;P&gt;t_mth_t = 'Aug.'(042).&lt;/P&gt;&lt;P&gt;when '09'.&lt;/P&gt;&lt;P&gt;t_mth_t = 'Sep.'(043).&lt;/P&gt;&lt;P&gt;when '10'.&lt;/P&gt;&lt;P&gt;t_mth_t = 'Oct.'(044).&lt;/P&gt;&lt;P&gt;when '11'.&lt;/P&gt;&lt;P&gt;t_mth_t = 'Nov.'(045).&lt;/P&gt;&lt;P&gt;when '12'.&lt;/P&gt;&lt;P&gt;t_mth_t = 'Dec.'(046).&lt;/P&gt;&lt;P&gt;endcase.&lt;/P&gt;&lt;P&gt;endform. " CONVERT_DATE_A&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp; Form VALIDATE&lt;/P&gt;&lt;P&gt;&amp;amp;----&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="---------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;text &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="--------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;--&amp;gt; p1 text &lt;/P&gt;&lt;P&gt;&amp;lt;-- p2 text &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="--------------------------------------------------------------------" /&gt;&lt;P&gt;form validate .&lt;/P&gt;&lt;P&gt;if p_bankl &amp;lt;&amp;gt; ' ' and p_zlsch ' '.&lt;/P&gt;&lt;P&gt;delete int_rep where bankl p_bankl.&lt;/P&gt;&lt;P&gt;elseif p_bankl = ' ' and p_zlsch ' '.&lt;/P&gt;&lt;P&gt;delete int_rep where zlsch p_zlsch.&lt;/P&gt;&lt;P&gt;elseif p_bankl ' ' and p_zlsch = ' '.&lt;/P&gt;&lt;P&gt;delete int_rep where bankl p_bankl.&lt;/P&gt;&lt;P&gt;endif.&lt;/P&gt;&lt;P&gt;endform. " VALIDATE&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;check this weblog.....&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;/people/dj.adams/blog/2003/11/13/food-for-thought-ldbs-and-abap-objects&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Also , check the following link too.&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.datamanagementgroup.com/Resources/Articles/Article_1005_2.asp" target="test_blank"&gt;http://www.datamanagementgroup.com/Resources/Articles/Article_1005_2.asp&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Satish&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 22 Jan 2008 13:22:30 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/logical-database-of-sap-example-program/m-p/3368901#M808545</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-01-22T13:22:30Z</dc:date>
    </item>
    <item>
      <title>Re: Logical Database of SAP Example Program</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/logical-database-of-sap-example-program/m-p/3368902#M808546</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;check this code..&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;codeREPORT ZPROJPSJ MESSAGE-ID OK.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TABLES: PROJ,&lt;/P&gt;&lt;P&gt;PRPS_R,&lt;/P&gt;&lt;P&gt;AUFK,&lt;/P&gt;&lt;P&gt;ACT01,&lt;/P&gt;&lt;P&gt;DRAD,&lt;/P&gt;&lt;P&gt;DRAT,&lt;/P&gt;&lt;P&gt;ELM_PS,&lt;/P&gt;&lt;P&gt;RSTHIE,&lt;/P&gt;&lt;P&gt;CNDB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;INCLUDE MZNW2D01.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;INITIALIZATION.&lt;/P&gt;&lt;P&gt;FREE MEMORY ID 'SAPDBPSJ999 AUFRUFE'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;GET RSTHIE.&lt;/P&gt;&lt;P&gt;CLEAR ITAB_HIERARCHY.&lt;/P&gt;&lt;P&gt;MOVE-CORRESPONDING RSTHIE TO ITAB_HIERARCHY.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;GET PROJ FIELDS OBJNR PSPID POST1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;GET PRPS_R FIELDS OBJNR POSID POST1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;GET AUFK FIELDS OBJNR KTEXT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;GET ACT01 FIELDS OBJNR AUFPL APLZL VORNR UVORN LTXA1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;GET DRAD.&lt;/P&gt;&lt;P&gt;MOVE-CORRESPONDING DRAD TO ITAB_DOCUMENTS.&lt;/P&gt;&lt;P&gt;APPEND ITAB_DOCUMENTS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;GET ELM_PS.&lt;/P&gt;&lt;P&gt;ITAB_HIERARCHY-OBJNR = ELM_PS-OBJNR.&lt;/P&gt;&lt;P&gt;CASE ELM_PS-OBTYP.&lt;/P&gt;&lt;P&gt;WHEN 'PD'.&lt;/P&gt;&lt;P&gt;ITAB_HIERARCHY-PSPNR = ELM_PS-PROJ_INT.&lt;/P&gt;&lt;P&gt;WRITE ELM_PS-PROJ_EXT TO ITAB_HIERARCHY-NAME.&lt;/P&gt;&lt;P&gt;WHEN 'PR'.&lt;/P&gt;&lt;P&gt;ITAB_HIERARCHY-PSPNR = ELM_PS-PRPS_INT.&lt;/P&gt;&lt;P&gt;WRITE ELM_PS-PRPS_EXT TO ITAB_HIERARCHY-NAME.&lt;/P&gt;&lt;P&gt;WHEN 'NP'.&lt;/P&gt;&lt;P&gt;ITAB_HIERARCHY-AUFNR = ELM_PS-AUFNR.&lt;/P&gt;&lt;P&gt;WRITE ELM_PS-AUFNR TO ITAB_HIERARCHY-NAME.&lt;/P&gt;&lt;P&gt;WHEN 'NV'.&lt;/P&gt;&lt;P&gt;ITAB_HIERARCHY-VORNR = ELM_PS-VORNR.&lt;/P&gt;&lt;P&gt;WRITE ELM_PS-AUFNR TO ITAB_HIERARCHY-NAME.&lt;/P&gt;&lt;P&gt;IF ACT01-UVORN IS INITIAL.&lt;/P&gt;&lt;P&gt;CONCATENATE ITAB_HIERARCHY-NAME ACT01-VORNR&lt;/P&gt;&lt;P&gt;INTO ITAB_HIERARCHY-NAME SEPARATED BY ' / '.&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;CONCATENATE ITAB_HIERARCHY-NAME ACT01-VORNR ACT01-UVORN&lt;/P&gt;&lt;P&gt;INTO ITAB_HIERARCHY-NAME SEPARATED BY ' / '.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDCASE.&lt;/P&gt;&lt;P&gt;IF ELM_PS-KTEXT IS INITIAL.&lt;/P&gt;&lt;P&gt;ITAB_HIERARCHY-DESC = ITAB_HIERARCHY-NAME.&lt;/P&gt;&lt;P&gt;ELSE.&lt;/P&gt;&lt;P&gt;ITAB_HIERARCHY-DESC = ELM_PS-KTEXT.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ITAB_HIERARCHY-OBTYP = ELM_PS-OBTYP.&lt;/P&gt;&lt;P&gt;APPEND ITAB_HIERARCHY.&lt;/P&gt;&lt;P&gt;CLEAR ITAB_HIERARCHY.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;END-OF-SELECTION.&lt;/P&gt;&lt;P&gt;PERFORM READ_DRAT.&lt;/P&gt;&lt;P&gt;PERFORM SAVE_PROJECT_HIERARCHY.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="--------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM READ_DRAT * &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="--------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;........ * &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="--------------------------------------------------------------------" /&gt;&lt;P&gt;FORM READ_DRAT.&lt;/P&gt;&lt;P&gt;DATA: C TYPE CURSOR.&lt;/P&gt;&lt;P&gt;DATA: ITAB_DRAT LIKE DRAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CHECK NOT ITAB_DOCUMENTS[] IS INITIAL.&lt;/P&gt;&lt;P&gt;SORT ITAB_DOCUMENTS BY DOKAR DOKNR DOKVR DOKTL.&lt;/P&gt;&lt;P&gt;OPEN CURSOR C FOR&lt;/P&gt;&lt;P&gt;SELECT * FROM DRAT&lt;/P&gt;&lt;P&gt;FOR ALL ENTRIES IN ITAB_DOCUMENTS&lt;/P&gt;&lt;P&gt;WHERE DOKAR = ITAB_DOCUMENTS-DOKAR&lt;/P&gt;&lt;P&gt;AND DOKNR = ITAB_DOCUMENTS-DOKNR&lt;/P&gt;&lt;P&gt;AND DOKVR = ITAB_DOCUMENTS-DOKVR&lt;/P&gt;&lt;P&gt;AND DOKTL = ITAB_DOCUMENTS-DOKTL&lt;/P&gt;&lt;P&gt;ORDER BY PRIMARY KEY.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DO.&lt;/P&gt;&lt;P&gt;FETCH NEXT CURSOR C INTO CORRESPONDING FIELDS OF ITAB_DRAT.&lt;/P&gt;&lt;P&gt;IF NOT SY-SUBRC IS INITIAL.&lt;/P&gt;&lt;P&gt;CLOSE CURSOR C.&lt;/P&gt;&lt;P&gt;EXIT.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;READ TABLE ITAB_DOCUMENTS WITH KEY DOKAR = ITAB_DRAT-DOKAR&lt;/P&gt;&lt;P&gt;DOKNR = ITAB_DRAT-DOKNR&lt;/P&gt;&lt;P&gt;DOKVR = ITAB_DRAT-DOKVR&lt;/P&gt;&lt;P&gt;DOKTL = ITAB_DRAT-DOKTL&lt;/P&gt;&lt;P&gt;BINARY SEARCH.&lt;/P&gt;&lt;P&gt;LOOP AT ITAB_DOCUMENTS FROM SY-TABIX.&lt;/P&gt;&lt;P&gt;IF ITAB_DOCUMENTS-DOKAR ITAB_DRAT-DOKAR OR&lt;/P&gt;&lt;P&gt;ITAB_DOCUMENTS-DOKNR ITAB_DRAT-DOKNR OR&lt;/P&gt;&lt;P&gt;ITAB_DOCUMENTS-DOKVR ITAB_DRAT-DOKVR OR&lt;/P&gt;&lt;P&gt;ITAB_DOCUMENTS-DOKTL ITAB_DRAT-DOKTL.&lt;/P&gt;&lt;P&gt;EXIT.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;IF ITAB_DOCUMENTS-DKTXT IS INITIAL OR&lt;/P&gt;&lt;P&gt;ITAB_DRAT-LANGU = SY-LANGU.&lt;/P&gt;&lt;P&gt;ITAB_DOCUMENTS-DKTXT = ITAB_DRAT-DKTXT.&lt;/P&gt;&lt;P&gt;ITAB_DOCUMENTS-LANGU = ITAB_DRAT-LANGU.&lt;/P&gt;&lt;P&gt;MODIFY ITAB_DOCUMENTS.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ENDLOOP.&lt;/P&gt;&lt;P&gt;ENDDO.&lt;/P&gt;&lt;P&gt;SORT ITAB_DOCUMENTS BY OBJKY DOKAR DOKNR DOKVR DOKTL.&lt;/P&gt;&lt;P&gt;ENDFORM.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="--------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM SAVE_PROJECT_HIERARCHY * &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="--------------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;........ * &lt;/P&gt;&lt;P&gt;-&lt;/P&gt;&lt;HR originaltext="--------------------------------------------------------------------" /&gt;&lt;P&gt;FORM SAVE_PROJECT_HIERARCHY.&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'ENQUEUE_EC_CNDB'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;RELID = '00'&lt;/P&gt;&lt;P&gt;SRTFD = 'SAP DIRECTORY'&lt;/P&gt;&lt;P&gt;_WAIT = 'X'&lt;/P&gt;&lt;P&gt;EXCEPTIONS&lt;/P&gt;&lt;P&gt;FOREIGN_LOCK = 1&lt;/P&gt;&lt;P&gt;SYSTEM_FAILURE = 2&lt;/P&gt;&lt;P&gt;OTHERS = 3.&lt;/P&gt;&lt;P&gt;IF NOT SY-SUBRC IS INITIAL.&lt;/P&gt;&lt;P&gt;IF SY-SUBRC = 1.&lt;/P&gt;&lt;P&gt;MESSAGE I501 WITH SY-MSGV1 RAISING DIR_ENTRY_NOT_SAVED.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;EXIT.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;IMPORT CNDBDIR TO ITAB_CNDBDIR&lt;/P&gt;&lt;P&gt;FROM DATABASE CNDB(00) ID 'SAP DIRECTORY'.&lt;/P&gt;&lt;P&gt;READ TABLE ITAB_HIERARCHY INDEX 1.&lt;/P&gt;&lt;P&gt;CLEAR CNDBDIR_TMP.&lt;/P&gt;&lt;P&gt;CNDBDIR_TMP-RELID = 'W2'.&lt;/P&gt;&lt;P&gt;CNDBDIR_TMP-SRTFD = ITAB_HIERARCHY-OBJNR.&lt;/P&gt;&lt;P&gt;CNDBDIR_TMP-DBPROG = 'SAPDBPSJ'.&lt;/P&gt;&lt;P&gt;CNDBDIR_TMP-REPORT = SY-CPROG.&lt;/P&gt;&lt;P&gt;CNDBDIR_TMP-DATUM = SY-DATUM.&lt;/P&gt;&lt;P&gt;CNDBDIR_TMP-DATLO = SY-DATLO.&lt;/P&gt;&lt;P&gt;CNDBDIR_TMP-TIMLO = SY-TIMLO.&lt;/P&gt;&lt;P&gt;SORT ITAB_CNDBDIR BY RELID SRTFD.&lt;/P&gt;&lt;P&gt;READ TABLE ITAB_CNDBDIR WITH KEY RELID = 'W2'&lt;/P&gt;&lt;P&gt;SRTFD = ITAB_HIERARCHY-OBJNR&lt;/P&gt;&lt;P&gt;BINARY SEARCH.&lt;/P&gt;&lt;P&gt;IF SY-SUBRC IS INITIAL.&lt;/P&gt;&lt;P&gt;DELETE ITAB_CNDBDIR INDEX SY-TABIX.&lt;/P&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;ITAB_CNDBDIR = CNDBDIR_TMP.&lt;/P&gt;&lt;P&gt;INSERT ITAB_CNDBDIR INDEX SY-TABIX.&lt;/P&gt;&lt;P&gt;EXPORT CNDBDIR FROM ITAB_CNDBDIR&lt;/P&gt;&lt;P&gt;TO DATABASE CNDB(00) ID 'SAP DIRECTORY'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'DEQUEUE_EC_CNDB'&lt;/P&gt;&lt;P&gt;EXPORTING&lt;/P&gt;&lt;P&gt;RELID = '00'&lt;/P&gt;&lt;P&gt;SRTFD = 'SAP DIRECTORY'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;EXPORT ITAB_HIERARCHY TO DATABASE CNDB(W2) ID ITAB_CNDBDIR-SRTFD.&lt;/P&gt;&lt;P&gt;EXPORT ITAB_DOCUMENTS TO DATABASE CNDB(W3) ID ITAB_CNDBDIR-SRTFD.&lt;/P&gt;&lt;P&gt;ENDFORM.[/code]&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*********************************************************&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*--LDB PNP  -- give it in attributes&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;tables pernr.&lt;/P&gt;&lt;P&gt;infotypes 0002.&lt;/P&gt;&lt;P&gt;data: begin of itab occurs 0,&lt;/P&gt;&lt;P&gt;vorna like pa0002-vorna,&lt;/P&gt;&lt;P&gt;end of itab.&lt;/P&gt;&lt;P&gt;data wa like line of itab.&lt;/P&gt;&lt;P&gt;*write 'abc'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;get pernr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;provide * from p0002&lt;/P&gt;&lt;P&gt;BETWEEN PNPbegda AND PNPENDDA.&lt;/P&gt;&lt;P&gt;move p0002-vorna to itab-vorna.&lt;/P&gt;&lt;P&gt;append itab.&lt;/P&gt;&lt;P&gt;clear itab.&lt;/P&gt;&lt;P&gt;endprovide.&lt;/P&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;loop at itab.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;write:/ itab-vorna.&lt;/P&gt;&lt;P&gt;endloop.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 22 Jan 2008 14:15:21 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/logical-database-of-sap-example-program/m-p/3368902#M808546</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2008-01-22T14:15:21Z</dc:date>
    </item>
  </channel>
</rss>

