<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://sapwiki.cl/wiki/index.php?action=history&amp;feed=atom&amp;title=SAP_HCM_ABAP_FUNC</id>
	<title>SAP HCM ABAP FUNC - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://sapwiki.cl/wiki/index.php?action=history&amp;feed=atom&amp;title=SAP_HCM_ABAP_FUNC"/>
	<link rel="alternate" type="text/html" href="https://sapwiki.cl/wiki/index.php?title=SAP_HCM_ABAP_FUNC&amp;action=history"/>
	<updated>2026-10-26T12:50:07Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.34.0</generator>
	<entry>
		<id>https://sapwiki.cl/wiki/index.php?title=SAP_HCM_ABAP_FUNC&amp;diff=1571&amp;oldid=prev</id>
		<title>WikiSysop at 01:46, 12 March 2026</title>
		<link rel="alternate" type="text/html" href="https://sapwiki.cl/wiki/index.php?title=SAP_HCM_ABAP_FUNC&amp;diff=1571&amp;oldid=prev"/>
		<updated>2026-03-12T01:46:10Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 01:46, 12 March 2026&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot; &gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del class=&quot;diffchange diffchange-inline&quot;&gt; &lt;/del&gt;==ejemplo función HR (PE04)==&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;==ejemplo función HR (PE04)==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;nowiki&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;nowiki&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;form fuz_45.&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;form fuz_45.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>WikiSysop</name></author>
		
	</entry>
	<entry>
		<id>https://sapwiki.cl/wiki/index.php?title=SAP_HCM_ABAP_FUNC&amp;diff=1570&amp;oldid=prev</id>
		<title>WikiSysop at 01:45, 12 March 2026</title>
		<link rel="alternate" type="text/html" href="https://sapwiki.cl/wiki/index.php?title=SAP_HCM_ABAP_FUNC&amp;diff=1570&amp;oldid=prev"/>
		<updated>2026-03-12T01:45:48Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Revision as of 01:45, 12 March 2026&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot; &gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  ejemplo función HR (PE04)&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;==&lt;/ins&gt;ejemplo función HR (PE04)&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;==&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;nowiki&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;  &amp;lt;nowiki&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;form fuz_45.&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;form fuz_45.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>WikiSysop</name></author>
		
	</entry>
	<entry>
		<id>https://sapwiki.cl/wiki/index.php?title=SAP_HCM_ABAP_FUNC&amp;diff=1569&amp;oldid=prev</id>
		<title>WikiSysop: Created page with &quot; ejemplo función HR (PE04)  &lt;nowiki&gt; form fuz_45. constants: lc_max_no_of_read type i value 12. &quot;maximum of payroll   &quot;              &quot;results to be read for calculation of ou...&quot;</title>
		<link rel="alternate" type="text/html" href="https://sapwiki.cl/wiki/index.php?title=SAP_HCM_ABAP_FUNC&amp;diff=1569&amp;oldid=prev"/>
		<updated>2026-03-12T01:45:12Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot; ejemplo función HR (PE04)  &amp;lt;nowiki&amp;gt; form fuz_45. constants: lc_max_no_of_read type i value 12. &amp;quot;maximum of payroll   &amp;quot;              &amp;quot;results to be read for calculation of ou...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt; ejemplo función HR (PE04)&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;&lt;br /&gt;
form fuz_45.&lt;br /&gt;
constants: lc_max_no_of_read type i value 12. &amp;quot;maximum of payroll&lt;br /&gt;
  &amp;quot;              &amp;quot;results to be read for calculation of outpayments&lt;br /&gt;
&lt;br /&gt;
  data: lt_rgdir               type hrpy_tt_rgdir,          &amp;quot;GWY839032&lt;br /&gt;
        ls_rgdir               type line of hrpy_tt_rgdir,&lt;br /&gt;
        ls_result              type pay99_result,&lt;br /&gt;
        ls_v0                  like line of ls_result-inter-v0,&lt;br /&gt;
        ls_rt                  like line of ls_result-inter-rt,&lt;br /&gt;
        lv_relid               like pcl2-relid,&lt;br /&gt;
        lv_molga               like t500l-molga,&lt;br /&gt;
        ls_t500l               like t500l,&lt;br /&gt;
        lv_current_pcurrency   type waers, &amp;quot;payroll currency of last result&lt;br /&gt;
        lv_prior_paycurrency   type waers, &amp;quot;payroll currency of older results&lt;br /&gt;
        lv_begda_processed_res type fpbeg,&lt;br /&gt;
        lv_amount              like q0045-darbt,&lt;br /&gt;
        lv_paycu               like q0045-paycu,&lt;br /&gt;
        ls_paper               type  pc2paper,&lt;br /&gt;
        lf_payment_value_date  type datum,&lt;br /&gt;
        ls_loid_33             type  pclo_id,                     &amp;quot;Note 834827&lt;br /&gt;
        lv_subrc               type sysubrc,&lt;br /&gt;
        lv_numrg               type i,&lt;br /&gt;
        lv_loan_begda          type q0045-begdaf, &amp;quot;begin of loan&lt;br /&gt;
        lflag_loan_exists      type abap_bool, &amp;quot;a loan was processed in the period&lt;br /&gt;
        lv_num_processed_res   type i, &amp;quot;number of already processed results&lt;br /&gt;
        lt_outpay_wt           type standard table of t506w,&lt;br /&gt;
        ls_outpay_wt           like line of lt_outpay_wt,&lt;br /&gt;
        lt_outpay_wt_range     type range of lgart,&lt;br /&gt;
        ls_outpay_wt_range     like line of lt_outpay_wt_range.&lt;br /&gt;
&lt;br /&gt;
  data: ls_ot type pc207,&lt;br /&gt;
        ls_it type pc207.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
  refresh ot[].&lt;br /&gt;
&lt;br /&gt;
* read payroll directory and remove P, O and voided results&lt;br /&gt;
* (i.e. only keep actual results)&lt;br /&gt;
* don&amp;#039;t read archived results; archived data is not to be evaluated&lt;br /&gt;
  call function &amp;#039;CU_READ_RGDIR_NEW&amp;#039;&lt;br /&gt;
    exporting&lt;br /&gt;
      persnr               = pernr-pernr&lt;br /&gt;
      check_read_authority = space&lt;br /&gt;
    importing&lt;br /&gt;
      molga                = lv_molga&lt;br /&gt;
    tables&lt;br /&gt;
      in_rgdir             = lt_rgdir&lt;br /&gt;
    exceptions&lt;br /&gt;
      no_record_found      = 1&lt;br /&gt;
      no_read_authority    = 2&lt;br /&gt;
      others               = 4.&lt;br /&gt;
  if sy-subrc &amp;lt;&amp;gt; 0. &amp;quot;no error if there is no record or no authority&lt;br /&gt;
&lt;br /&gt;
    return. &amp;quot;from this method&lt;br /&gt;
  endif.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Necesitamos que la función lea la RT de la ultima nomina regular. Es la de indicador P, sin motivo.&lt;br /&gt;
  loop at lt_rgdir transporting no fields&lt;br /&gt;
                    where void = abap_true&lt;br /&gt;
                       or payty &amp;lt;&amp;gt; space&lt;br /&gt;
                       or srtza &amp;lt;&amp;gt; &amp;#039;P&amp;#039;.&lt;br /&gt;
    delete lt_rgdir index sy-tabix.&lt;br /&gt;
  endloop.&lt;br /&gt;
  sort lt_rgdir descending by seqnr.&lt;br /&gt;
  describe table lt_rgdir lines lv_numrg.&lt;br /&gt;
&lt;br /&gt;
*   get relid&lt;br /&gt;
  select single * from   t500l&lt;br /&gt;
                into   ls_t500l&lt;br /&gt;
                where  molga  = lv_molga.&lt;br /&gt;
  move ls_t500l-relid to lv_relid.&lt;br /&gt;
&lt;br /&gt;
  read table lt_rgdir into ls_rgdir index 1.&lt;br /&gt;
  if sy-subrc &amp;lt;&amp;gt; 0.&lt;br /&gt;
    return.&lt;br /&gt;
  endif.&lt;br /&gt;
&lt;br /&gt;
  call function &amp;#039;PYXX_READ_PAYROLL_RESULT&amp;#039;&lt;br /&gt;
    exporting&lt;br /&gt;
      clusterid               = lv_relid&lt;br /&gt;
      employeenumber          = pernr-pernr&lt;br /&gt;
      sequencenumber          = ls_rgdir-seqnr&lt;br /&gt;
      read_only_international = &amp;#039;X&amp;#039;&lt;br /&gt;
      check_read_authority    = &amp;#039; &amp;#039;&lt;br /&gt;
    changing&lt;br /&gt;
      payroll_result          = ls_result&lt;br /&gt;
    exceptions&lt;br /&gt;
      others                  = 1.&lt;br /&gt;
  if sy-subrc &amp;lt;&amp;gt; 0.&lt;br /&gt;
    return.  &amp;quot;exit this method&lt;br /&gt;
  endif.&lt;br /&gt;
&lt;br /&gt;
  lv_num_processed_res = lv_num_processed_res + 1.&lt;br /&gt;
  &amp;quot;Note 834827&lt;br /&gt;
&lt;br /&gt;
  lv_current_pcurrency = ls_result-inter-versc-waers.&lt;br /&gt;
&lt;br /&gt;
*   get loan result for current loan id&lt;br /&gt;
  loop at ls_result-inter-v0 into ls_v0 where v0typ = &amp;#039;L&amp;#039;.&lt;br /&gt;
*    if    ls_v0-vinfo+0(4) = pf_dlart&lt;br /&gt;
*      and ls_v0-vinfo+4(2) = pf_objps.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
      loop at ls_result-inter-rt into ls_rt&lt;br /&gt;
                                  where v0typ = &amp;#039;L&amp;#039;&lt;br /&gt;
                                  and   v0znr = ls_v0-v0znr&lt;br /&gt;
                                  and   ( lgart = &amp;#039;/LCI&amp;#039; or lgart = &amp;#039;/LLB&amp;#039; ).&lt;br /&gt;
&lt;br /&gt;
        if    ls_rt-betrg = 0.                   &amp;quot;this is a potential period&lt;br /&gt;
          &amp;quot;here the loan is already paid back completely&lt;br /&gt;
          lv_subrc = 1. &amp;quot;this is equal to that no /LLB exists&lt;br /&gt;
*          exit. &amp;quot;the loop and check previous period&lt;br /&gt;
        else.&lt;br /&gt;
*          pfx_opelo = ls_rt-betrg.&lt;br /&gt;
          MOVE-CORRESPONDING ls_rt to ls_ot.&lt;br /&gt;
          append ls_ot to ot.&lt;br /&gt;
&lt;br /&gt;
        endif.&lt;br /&gt;
      endloop. &amp;quot;at RT&lt;br /&gt;
*&lt;br /&gt;
*    endif. &amp;quot;for loan-id&lt;br /&gt;
  endloop. &amp;quot;at loan-&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* Fill IT from OT&lt;br /&gt;
  loop at ot into ls_it.&lt;br /&gt;
&lt;br /&gt;
    if sw_prot eq &amp;#039;X&amp;#039;.&lt;br /&gt;
      perform log_wage_type in program h39plog0&lt;br /&gt;
                                 using ls_it&lt;br /&gt;
                                       calc_currency&lt;br /&gt;
                              changing ptext[].&lt;br /&gt;
    endif.&lt;br /&gt;
&lt;br /&gt;
    collect ls_it into it..&lt;br /&gt;
  endloop.&lt;br /&gt;
&lt;br /&gt;
  refresh ot[].&lt;br /&gt;
&lt;br /&gt;
endform.&amp;lt;/nowiki&amp;gt;&lt;/div&gt;</summary>
		<author><name>WikiSysop</name></author>
		
	</entry>
</feed>