Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

help needed in hr abap om reporting

Former Member
0 Kudos

hi to all experts,

1)can we declare two ldb in a single program

2) i need a sample code for om reporting ( if anyone could explain it would be great)

3) can we use macros rp* in om reporting if yes how

thanks.

1 ACCEPTED SOLUTION

Former Member
0 Kudos

Hello,

No, you can only use one LDB in reports.

To get some samples on reporting, access the transaction ABAPDOCU, you can find usefull information at The ABAP Programming Language->Processing Large Datasets->Extracts.

Look at this program to get more informations: demo_logical_database.

Regards.

5 REPLIES 5

Former Member
0 Kudos

Hello,

No, you can only use one LDB in reports.

To get some samples on reporting, access the transaction ABAPDOCU, you can find usefull information at The ABAP Programming Language->Processing Large Datasets->Extracts.

Look at this program to get more informations: demo_logical_database.

Regards.

Former Member
0 Kudos

HELP ME OUT IT IS VERY URGENT

0 Kudos

Hi,

No doubt you cannot use two LDB's in a program...

you can do one thing...

at the end of the first program you call the second program by SUBMIT AND RETURN [WITH FREE-SELECTIONS <seltab>

addition... fill the values of second program selection-screeen <seltab> and pass with as stated above extention..

Addition FREE-SELECTION <sel> of SUBMIT AND RETURN is maily used for filling up LDB's selection screen values...

Hope this would help you...

Regards

Narin Nandivada

0 Kudos

Hi Moazam,

As Narin said u cant use two logical data bases in program.

Because we have option in attributes of the program to choose the logical database.

U can check out all the macros in the Table TRMAC

Please check this come



  MOVE i_date   TO  wa_newdt.

  IF NOT i_orgeh IS INITIAL.
    SELECT SINGLE objid FROM hrp1000 INTO hrp1000-objid WHERE
                        plvar = '01'    AND
                        otype = 'O'     AND
                        objid = i_orgeh.
    IF sy-subrc NE 0.
      RAISE inivalid_orgunit.
      EXIT.
    ENDIF.
  ENDIF.

  IF NOT i_pernr IS INITIAL.
    SELECT SINGLE orgeh FROM pa0001 INTO wa_orgeh WHERE
                        pernr =  i_pernr  AND
* AM8598 - Address delimited org unit issue starts.
*                        BEGDA <= I_DATE   AND
                        begda <= wa_newdt AND
*                        ENDDA >= I_DATE.
                        endda >= wa_newdt.

 
  SELECT SINGLE * FROM hrp1000 WHERE plvar = '01'      AND
                                     otype = 'O'       AND
                                     objid = wa_orgeh  AND
                                     begda LE sy-datum AND
                                     endda GE sy-datum.
  IF sy-subrc NE 0.
    SELECT * FROM hrp1000 WHERE  plvar = '01'      AND
                                 otype = 'O'       AND
                                 objid = wa_orgeh  AND
                                 endda LT sy-datum
                  ORDER BY endda DESCENDING.
      EXIT.
    ENDSELECT.
    MOVE hrp1000-endda    TO  wa_newdt.
  ENDIF.


  DATA: v_subrc LIKE sy-subrc.                              " MMMOOR1
  IF i_flag NE 'P'.                                         " MMMOOR1
    SELECT SINGLE sobid INTO hrp1001-sobid
      FROM hrp1001
      WHERE otype = 'O'
      AND objid = wa_orgeh
      AND plvar = '01'
      AND rsign = 'B'
      AND relat = '012'
      AND istat = '1'

*   AND ENDDA >= I_DATE
      AND endda >= wa_newdt
*   AND BEGDA <= I_DATE.
      AND begda <= wa_newdt.


    IF sy-subrc = 0.



      SELECT SINGLE * FROM hrp1001
        WHERE otype = 'S'
        AND objid = hrp1001-sobid
        AND plvar = '01'
        AND rsign = 'A'
        AND relat = '008'
        AND istat = '1'

*     AND ENDDA >= I_DATE
        AND endda >= wa_newdt
*     AND BEGDA <= I_DATE.
        AND begda <= wa_newdt.

      v_subrc = sy-subrc.
      MOVE hrp1001-sobid TO e_pernr.
    ENDIF.

  ELSE.
    CLEAR wa_mgrno.

*    SELECT SINGLE YYMGRNO
*        FROM YHRCM_PLAN_MGR
*        INTO WA_MGRNO
*     WHERE YYORGID = WA_ORGEH.
    SELECT SINGLE sobid INTO hrp1001-sobid
       FROM hrp1001
       WHERE otype = 'O'
       AND objid = wa_orgeh
       AND plvar = '01'
       AND rsign = 'A'
       AND relat = 'Z18'
       AND istat = '1'
       AND endda >= wa_newdt
       AND begda <= wa_newdt.
    IF sy-subrc = 0.
      SELECT SINGLE sobid INTO l_sobid
         FROM hrp1001
         WHERE otype = 'S'
         AND objid = hrp1001-sobid
         AND plvar = '01'
         AND rsign = 'A'
         AND relat = '008'
         AND istat = '1'
         AND endda >= wa_newdt
         AND begda <= wa_newdt.

      v_subrc = sy-subrc.
      wa_mgrno = l_sobid.
      MOVE  wa_mgrno TO e_pernr.

    ENDIF.


  ENDIF.

  IF v_subrc = 0.

    SELECT SINGLE * FROM pa0002
      WHERE pernr = e_pernr
      AND endda >= sy-datum
      AND begda <= sy-datum.
    IF sy-subrc = 0.
      IF NOT pa0002-nach2 IS INITIAL.
        CONCATENATE pa0002-nachn '-' pa0002-nach2 ','
          INTO e_name.
      ELSE.
        CONCATENATE pa0002-nachn ',' INTO e_name.
      ENDIF.
      CONCATENATE e_name pa0002-vorna pa0002-inits
        INTO e_name SEPARATED BY space.
    ENDIF.


    SELECT SINGLE * FROM pa0105
      WHERE pernr  = e_pernr
        AND subty  = '0010'
        AND endda >= sy-datum
        AND begda <= sy-datum.
    IF sy-subrc = 0.
      e_email = pa0105-usrid_long.
    ENDIF.



    SELECT SINGLE yymailstop FROM pa0032
       INTO pa0032-yymailstop
      WHERE pernr  = e_pernr
        AND endda >= sy-datum
        AND begda <= sy-datum.
    IF sy-subrc = 0.
      e_mailstop = pa0032-yymailstop.
    ENDIF.

  ENDIF.

  IF e_pernr IS INITIAL AND NOT i_get_higher IS INITIAL.
    PERFORM get_higher_mgr
            USING i_pernr wa_orgeh wa_newdt
            CHANGING e_pernr e_name e_email e_mailstop.
  ENDIF.
* AN0884 - Get Higher Manager - Ends.
ENDFUNCTION.

Best regards,

raam

Former Member