Thursday, May 16, 2013

Joins and Projections in LDB Programs

TABLES: PERNR.
INFOTYPES0002,                       "Personal Data
           0007.                       "Planned Working Time

GET PERNR.
* provide * from p0007
  PROVIDE zterf FROM P0007
          NACHN VORNA FROM P0002 BETWEEN PN-BEGDA AND PN-ENDDA.
*         * from p0002 between pn-begda and pn-endda.
    IF P0007_VALID EQ 'X'.
      WRITE: / P0002-NACHN,
               P0007-BEGDA,
               P0007-ENDDA,
               p0007-zterf.
    ENDIF.
  ENDPROVIDE.



 

 

Program using GET PAYROLL Event


TABLES: pernr, pyorgscreen, pytimescreen.

NODES: payroll TYPE pay99_result.

INFOTYPES0001.                       "Organizational Assignment

DATA: rt_line TYPE LINE OF hrpay99_rt.

GET pernr.
  rp_provide_from_last p0001 space pn-begps pn-endps.
  WRITE: / p0001-pernr, pernr-ename.

GET payroll.
  WRITE: / 'For-period:'(001),
             15 payroll-inter-versc-fpper,
         / 'In-Period:'(002),
             15 payroll-inter-versc-inper.

  SKIP 1.


  LOOP AT payroll-inter-rt INTO rt_line.
    WRITE: / rt_line-lgart,
           rt_line-betrg CURRENCY rt_line-amt_curr.
  ENDLOOP.
  SKIP.


 

 

Employee list program using macros in HR ABAP

*-- Declaration
tables: pernr.
infotypes0002.                       "Personal Data
select-options: language for p0002-sprsl.

*-- Selection screen
initialization.
  pnptimed = 'D'.

*-- Processing
get pernr.
  provide * from p0002 between pn-begda and pn-endda.
    check language.
    write: / p0002-pernr,
             sy-vline,
             pernr-ename,
             sy-vline,
             p0002-sprsl,
             sy-vline,
             p0002-gbdat.
  endprovide.