Calling Ldb

Hi Experts
Can i call 2 logical database screens in one program.
my requirement is i have to combine to standard programs as one program ,but problem is each standard program of first 2 selection screen blocks is calling through  logical data base selection screen.
is there any solution for this .

Hii
1. A logical database is in fact
a program only.
2. This LDB provides two main things :
a) a pre-defined selection screen
which handles all user inputs and validations
b) pre defined set of data
based upon the user selection.
3. So we dont have to worry about from
which tables to fetch data.
4. Moreover, this LDB Program,
handles all user-authorisations
and is efficient in all respects
while creating type PNP
in logical database field.
REPORT z_ldb.
infotypes : 0001.
TABLES : PERNR.
GET PERNR.
WRITE :/ PERNR-PERNR.
5. The selection screen which u see
is coming from logical database PNP program.
6. Execute
7. U will get a list of pernr.
SAPDBPNP
this is the main program of LDB PNP
which does the main work.
SAPDB + ldb name.
In the attributes of your program  you must have  entered the name of the logical database
it is through there the selection screen comes
Regards
Naresh

Similar Messages

  • Calling LDB (logical Database)  into ALV output

    h1.Dear Experts,
    h3.I have called LDB AFI in my Z program.
    h3.My requirement is in program i have to call LDB and output it in ALV  display.
    h3.But in output only one entry get displayed .
    h3.Here is my code......
    REPORT  ZLDB_PROGRAM1                           .
    NODES: DIAUFK.
    GET DIAUFK.
    TYPE-POOLS: SLIS.
    *ALV data declarations
    data : begin of itab occurs 0,
    aufnr like diaufk-aufnr,
    auart like diaufk-auart,
    erdat like diaufk-erdat,
    ustxt like diaufk-ustxt,
    sttxt like diaufk-sttxt,
    tplnr like diaufk-tplnr,
    end of itab.
    data : fieldcatalog type slis_t_fieldcat_alv with header line,
          gd_layout    type slis_layout_alv,
          gd_repid     like sy-repid.
    data: gt_events type slis_t_event.
    DATA: report_id LIKE sy-repid.
    move-corresponding diaufk to itab.
    append itab.
      fieldcatalog-fieldname   = 'AUFNR'.
      fieldcatalog-seltext_m   = 'Order Number'.
      fieldcatalog-col_pos     = 0.
      fieldcatalog-outputlen   = 10.
      fieldcatalog-emphasize   = 'X'.
      append fieldcatalog to fieldcatalog.
      clear  fieldcatalog.
      fieldcatalog-fieldname   = 'AUART'.
      fieldcatalog-seltext_m   = 'Order Type'.
      fieldcatalog-col_pos     = 1.
      append fieldcatalog to fieldcatalog.
      clear  fieldcatalog.
      fieldcatalog-fieldname   = 'ERDAT'.
      fieldcatalog-seltext_m   = 'Created On'.
      fieldcatalog-col_pos     = 2.
      append fieldcatalog to fieldcatalog.
      clear  fieldcatalog.
      fieldcatalog-fieldname   = 'USTXT'.
      fieldcatalog-seltext_m   = 'User Status Line'.
      fieldcatalog-col_pos     = 3.
      append fieldcatalog to fieldcatalog.
      clear  fieldcatalog.
      fieldcatalog-fieldname   = 'STTXT'.
      fieldcatalog-seltext_m   = 'System Status Line'.
      fieldcatalog-col_pos     = 4.
      append fieldcatalog to fieldcatalog.
      clear  fieldcatalog.
    report_id = sy-repid.
    CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
    EXPORTING
      I_INTERFACE_CHECK              = ' '
      I_BYPASSING_BUFFER             =
      I_BUFFER_ACTIVE                = ' '
       I_CALLBACK_PROGRAM             = report_id
      I_CALLBACK_PF_STATUS_SET       = ' '
      I_CALLBACK_USER_COMMAND        = ' '
      I_STRUCTURE_NAME               =
      IS_LAYOUT                      =
       IT_FIELDCAT                    = fieldcatalog[]
      IT_EXCLUDING                   =
      IT_SPECIAL_GROUPS              =
      IT_SORT                        =
      IT_FILTER                      =
      IS_SEL_HIDE                    =
      I_DEFAULT                      = 'X'
      I_SAVE                         = ' '
      IS_VARIANT                     =
      IT_EVENTS                      =
      IT_EVENT_EXIT                  =
      IS_PRINT                       =
      IS_REPREP_ID                   =
      I_SCREEN_START_COLUMN          = 0
      I_SCREEN_START_LINE            = 0
      I_SCREEN_END_COLUMN            = 0
      I_SCREEN_END_LINE              = 0
    IMPORTING
      E_EXIT_CAUSED_BY_CALLER        =
      ES_EXIT_CAUSED_BY_USER         =
      TABLES
        T_OUTTAB                       = itab
    EXCEPTIONS
      PROGRAM_ERROR                  = 1
      OTHERS                         = 2
    IF SY-SUBRC <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    Please reply.

    hi,
    Populate one more field in field catalog for each entry  and try.
    fieldcatalog-fieldname = 'AUFNR'.
    fieldcatalog-tabname = 'itab'.
    fieldcatalog-seltext_m = 'Order Number'.
    fieldcatalog-col_pos = 0.
    fieldcatalog-outputlen = 10.
    fieldcatalog-emphasize = 'X'.
    append fieldcatalog to fieldcatalog.
    clear fieldcatalog.
    Regards,
    Lokeswari.

  • Multiple calling logical database ADA

    Hello,
    I need to call logical database ADA two times in my program. I use calling logical database using LDB_PROCESS function module. I need to call LDB for depreciation areas 01 and 60. If I call second time, I get exception  LDB_NOT_REENTRANT. I found, that for multiple calls of LDB, there should be LDB_PROCESS_INIT subroutine in logical database proram. In this case, program is SAPDBADA and in this program, LDB_PROCESS_INIT is missing.
    Could you pls. help me, how to call ADA logical database two times?
    Thanks&regards,
    Jirka

    The exception LDB_NOT_REENTRANT means: The logical database is not prepared to accept several successive calls within a transaction. So obviously you can't use LDB_PROCESS  for your purpose.
    Perhaps your goal is possible if you use a sequence of commands
    GET <ldb_node_1>.
    GET <ldb_node_1> LATE.
    GET <ldb_node_2>.
    GET <ldb_node_2> LATE.
    etc...
    where  ldb_node_1, ldb_node_2, etc... are some nodes included in logical database ADA. As I am not familiar with this particular LDB I can't tell which nodes are required to achieve your goal.

  • Call Logical database KDF

    Hi expert.
    now that, I'm using Logical database KDF for report module AP, but i meet issue following.
    first way i used SE38 and choose radio Attribute and Input LDB is KDF.
      In program I get only NODE BSIK but structure BSEGA Not is initial( I don't get BSEG anywhere)
    second way. I used FM LDB_PROCESS to call LDB KDF.
    I also get NODE BSIK then BSEGA Is initial.
    Please anybody to me first way structure BSEGA have data, second way it haven't data.
    Thank & best regards,
    Dungnv

    don't use fm but include KDF as in standard report RFKOPO00
    hope that helps
    Andreas

  • Use multiple LDB in  a single program

    Hi,
    I want to use multiple log Database in a single program, is there a way to acheive the same..
    Thanx.
    Arjun.G

    Hi,
    You can use function module "LDB_PROCESS" to call a second Logical Database from a program where you already assigned one Logical DB.
    There is a documentation and sample program available in every SAP system.
    1. Call transaction ABAPDOCU
    2. Expand node: Database Access > Logical Databases
    3. Double click on node: Calling LDBs using a Function Module
    There you will see an example how this can be achieved.
    <<text removed>>
    Regards,
    Ogeday
    Edited by: Matt on Feb 17, 2009 5:54 AM - please do not ask for points

  • FBL3N - ALV Function Call

    I need to add Material Desc. & Vendor Desc. in the standard report FBL3N. I am not able to find the where the ALV Function Module is called in the standard program for this report so that i can add the fields to the internal table passed to this ALV Function module.

    Hi Senthil,
    This report is call LDB(Logical Data base ) - SDF ,look at SE36 Transaction
    Look at below FM ,this FM calls ALV Display
    call function 'FI_ITEMS_DISPLAY'
           EXPORTING
                caller_repid  = c_repid_gl
                acctype       = c_koart_gl
                x_opvw        = x_gl_opvw
                x_change      = x_change
                i_u_save      = gd_alvsave
                is_u_variant  = gs_variant
                it_u_fieldcat = gt_fieldcat[]
                it_kontab     = it_accts[]
                it_slbtab     = it_comps[]
                it_t001       = it_h_t001[]
                it_skat       = it_h_skat[]
                it_skb1       = it_h_skb1[]
                x_grid        = x_grid
                x_inet        = pa_inet
           TABLES
                it_items      = it_pos.
    Thanks
    Seshu

  • What are the major components in class?

    1)     What is the purpose of ‘load-of-program’? When it will be trigger?
    2)     Write the code for displaying the three parameters in single line with the first parameter as mandatory in the selection screen?
    3)     Which event triggered whenever the user call the function BACK, EXIT, CANCEL?
    4)     What are the major components in class?
    5)     What is the functional module is used to get popup screen for ALV reports?
    6)     Which type of pool is used to get drop-down list?
    7)     What is the tcode for creating the variant truncations?
    8)     Is it possible to call LDB’s number of times in same report?
    9)     What are the conditions to use control break statements in our report program?
    10)     What is the use of range statement?
    11)     What is the difference between normal reports and alv reports? With comparing to normal report are there any disadvantages in alv reports?
    12)     What are the components used to suppress the fields in the selection-screen?
    13)     What is the standard program to transport selection screen variants?
    14)     What is the event keyword for defining event block for reporting events?
    15)     What is the specific statement use when writing a drill down report?
    16)     What are the different tools to report data in sap?
    17)     Write the menu path to create a selection text in reports?
    18)     How do we omit the leading zero s while formatting outputs in reports?
    19)     What are the report truncations?
    20)     How do we align selection input in single row?
    21)     How do we suppress the display of input fields on selection screen?

    this forum is not for answering your interview questions...if you stucked with any realtime problem then post...please try to respect forum terms and conditions.
    Thank you.

  • How to add dynamic selection in LDB_PROCESS

    Hi All,
    We are calling LDB_PROCESS from our report. and we are sending callback events and selections and we are calling LDB KDF.
    We enabled housebank (HBKID) in Dynamic Selection of the LDB. Could you please help us how we can send value of field HBKID (House Bank) from LDB_Process to narrow down the selection process.
    Thanks and best regards,
    Niteeshrai

    And the setClientAttributes() takes Set object, so i added ClientAttributeTag and then set it in HashSet. Is this the way to do it ??
    and how can i set string value in ClientAttributeTag.setValue() ??
    Please help.
    Sudeep

  • Help needed on workin with LDBs using call through Function Module LDB_PROC

    Hi All
    I am new to Logical Databases. I found on net that I can use a dynamic call to a Logical Database using Function Module
    "LDB_PROCESS".
    I tried implementing the same using the following logic.
    REPORT  zsa_test2.
    TABLES: pernr.
    SELECT-OPTIONS s_pernr FOR pernr-pernr.
    DATA: callback TYPE TABLE OF ldbcb,
               callback_wa LIKE LINE OF callback.
    callback_wa-ldbnode     = 'PERNR'.
    callback_wa-get            = 'X'.
    callback_wa-cb_prog     = sy-repid.
    callback_wa-cb_form     = 'CALLBACK_PERNR'.
    APPEND callback_wa TO callback.
    START-OF-SELECTION.
      CALL FUNCTION 'LDB_PROCESS'
           EXPORTING
                ldbname                       = 'PNP'
             VARIANT                       = ' '
             EXPRESSIONS              = TEXPR
             FIELD_SELECTION        = FSEL
           TABLES
                callback                         = callback
             SELECTIONS                 = SELTAB
        EXCEPTIONS
             LDB_NOT_REENTRANT      = 1
             LDB_INCORRECT               = 2
             LDB_ALREADY_RUNNING  = 3
             LDB_ERROR                      = 4
             LDB_SELECTIONS_ERROR = 5
             LDB_SELECTIONS_NOT_ACCEPTED = 6
             VARIANT_NOT_EXISTENT      = 7
             VARIANT_OBSOLETE            = 8
             VARIANT_ERROR                  = 9
             FREE_SELECTIONS_ERROR = 10
             CALLBACK_NO_EVENT         = 11
             CALLBACK_NODE_DUPLICATE     = 12
             OTHERS                                       = 13.
      IF sy-subrc <> 0.
       WRITE: 'Exception with SY-SUBRC', sy-subrc.
      ENDIF.
    *&      Form  CALLBACK_SPFLI
          text
         -->NAME       text
         -->WA         text
         -->EVT        text
         -->CHECK      text
    FORM callback_pernr USING name  TYPE ldbn-ldbnode
                                                wa    TYPE pernr
                                                evt   TYPE c
                                                check TYPE c.
      BREAK-POINT.
      WRITE: / wa-pernr.
      ULINE.
    ENDFORM.                    "CALLBACK_SPFLI
    But I am unable to transfer the control to the subroutine. The break-point isn't reached.
    Can someone please guide me? Am I using the wrong node or something??

    look at the below code ..
    pass  sstab  to the selection in the FM
    data cbtab type table of ldbcb.
    data wa_cbtab like line of cbtab.
    data sstab type table of rsparams.
    data wa_sstab like line of sstab.
    wa_cbtab-ldbnode  = 'SPFLI'.
    wa_cbtab-get      = 'X'.
    wa_cbtab-get_late = ' '.
    wa_cbtab-cb_prog  = sy-cprog.
    wa_cbtab-cb_form  = 'CB_SPFLI'.
    append wa_cbtab to cbtab.
    wa_cbtab-ldbnode  = 'SFLIGHT'.
    wa_cbtab-get      = 'X'.
    wa_cbtab-get_late = ' '.
    wa_cbtab-cb_prog  = sy-cprog.
    wa_cbtab-cb_form  = 'CB_SFLIGHT'.
    append wa_cbtab to cbtab.
    wa_sstab-selname  = 'AIRP_FR'.
    wa_sstab-kind     = 'S'.
    wa_sstab-sign     = 'I'.
    wa_sstab-option   = 'EQ'.
    wa_sstab-low      = 'FRA'.
    append wa_sstab to sstab.
    call function 'LDB_PROCESS'
      exporting
        ldbname     = 'F1S'
      tables
        callback    = cbtab
        selections  = sstab .
    form cb_spfli  using  nodename  type ldbn-ldbnode
                          wa_spfli  type spfli
                          mode      type c
                          selected  type c.
       write: / wa_spfli-carrid,
                wa_spfli-connid,
                wa_spfli-airpfrom,
                wa_spfli-airpto.
    endform.
    form cb_sflight  using  nodename   type ldbn-ldbnode
                            wa_sflight type sflight
                            mode       type c
                            selected   type c.
       write: /3 wa_sflight-fldate,
                 wa_sflight-seatsmax,
                 wa_sflight-seatsocc.
    endform.

  • Calling Program w/LDP from one wo/LDB

    I have a program that needs to call a program that uses the Logical Data Base PNP from one that doesn't use it and can't figure out how to populate the PNP fields in the called program. I need to set the radio button "AS OF TODAY" to on and pass it a single Personnel Number as well.

    Suresh, that was exactly what I thought but it doesn't work.  I checked in the called program and PN-BEGDA = 18000101 and PN-ENDDA = 99991231 and they both should be equal to Current Date.  The field for TODAY is PNPTIMR1.
    Here's the code.
    ranges: ra_pernr for p0001-pernr.
    INITIALIZATION
    INITIALIZATION.
    PERNR
      clear   ra_pernr.
      refresh ra_pernr.
      ra_pernr-sign = 'I'.
      ra_pernr-option = 'EQ'.
    START OF SELECTION
    START-OF-SELECTION.
      ra_pernr-low = IPERNR.
      append ra_pernr.
      clear  ra_pernr-low.
       SUBMIT ZHR_COLA_UPDATE
         WITH PNPTIMR1 = 'X'
         WITH PNPPERNR  IN ra_pernr
         WITH ZCOLA_DT EQ ICOLA_DT
         WITH P_TEST = I_TEST.

  • Logical databse call using FM LDB_PROCESS in ABAP WD

    hi
    i want to use LDB in a webdynpro application to read the data. i came to know that we can use LDB_PROCESS FM to achieve this.  we need to pass callback routines to this FM. as we can not write subroutines in ABAP OO, how do i do this. do i need a wrapper FM around LDB_PROCESS and call that in turn in the webdynpro method or is there any better way to do that.
    thanksl
    Edited by: sudhakar murthy on Oct 20, 2009 4:10 PM

    hi
    if you go through that help link you will find an example at the bottom where we need define some call back routines using FORM and ENDFORM. I can not do that in ABAP WD as WD is based on ABAP OO.
    thanks

  • Access DB (& .ldb file) does not close after crystal reports

    Post Author: mgold
    CA Forum: Crystal Reports
    Access DB (& .ldb file) does not close after crystal reports
    Hi! We have a VB application using Crystal Reports 6 that has worked successfully on hundreds of systems for over 10 years. Now, on one network, the application and access database does not close. It seems to hang on the &#91;.Close&#93; command.
    When we open the application an peruse the screens without opening up a report (using crystal reports), the application and access db closes fine. But as soon as we run a report and then close the report and try to close the application, the access db does not close. Many of the screens open the db and grab data from the access db, but it's only after running crystal reports that we have this problem. (Please see more information below.)
    Setup: Application and data (access 97 db) reside on a server in the same folder, but application shortcut is kicked off on client PC. Kicking off the shortcut on the client PC means that the image/process runs on the client PC (not on the server). In this problem case, the application shortcut is on a Windows XP Pro Version 2002 SP2 PC with the app & data on a Windows 2003 server. Users are local Admins on their PCs with "Full Control"over the directory and files on the server where the data (access 97 db) resides. This type of setup is typical and has worked without any problems for clients.
    The application is written in Visual Basic, using Crystal Reports 6 (using DAO). We close the recordset, set it to zero and then it hangs on closing the db (.Close command).
    A few key pieces of information:
    - The application closes fine if the app & data (access 97 db) are on a local PC. This includes closing fine if the application is run directly on the Windows 2003 server where the data is stored.
    - It worked on this client's network until sometime in the last few weeks.
    - One thing that changed is that the company is using VMWare on its servers. Not sure if they started using VMWare at the same time as it started failing. This may be unrelated. Possibly other things changed, but can't get any more information ... yet.
    - It works fine running the application from a Windows Vista PC with a user who is a domain admin.
    - The access db and application hang for about 10-20 minutes and then eventually closes. It appears that somehow
    Crystal Reports is keeping the db open, but I'm not sure why.The application doesn't quit and the database doesn't close even if I try to end the task with the Task Manager.
    - The Crystl32.ocx version being used is 8.0.0.4 (if that matters).
    - I copied 6 month old program files and database files to a test folder on the Windows 2003 server. It fails using these files that worked fine 6 months ago.
    Any ideas or help would be greatly appreciated! If you know of another good place to post this, please let me know.
    Thanks!
    - Mark

    Crystal doesn't support tables in HTML interpretation. 
    You can probably work your way around this by doing Replace() calls on the relevant tags.
    See:
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/oss_notes_boj/sdn_oss_boj_erq/sap(bD1lbiZjPTAwMQ==)/bc/bsp/spn/scn_bosap/notes%7B6163636573733d36393736354636443646363436353344333933393338323636393736354637333631373036453646373436353733354636453735364436323635373233443330333033303331333233313337333033383334%7D.do
    The supported HTML tags are:
    " html
    " body
    " div (causes a paragraph break)
    " tr (causes only a paragraph break; does not
    preserve column structure of a table)
    " span
    " font
    " p (causes a paragraph break)
    " br (causes a paragraph break)
    " h1 (causes a paragraph break, makes the font bold
    & twice default size)
    " h2 (causes a paragraph break, makes the font bold
    & 1.5 times default size)
    " h3 (causes a paragraph break, makes the font bold
    & 9/8 default size)
    " h4 (causes a paragraph break, makes the font bold)
    " h5 (causes a paragraph break, makes the font bold
    & 5/6 default size)
    " h6 (causes a paragraph break, makes the font bold
    & 5/8 default size)
    " center
    " big (increases font size by 2 points)
    " small (decreases font size by 2 points if it's 8
    points or larger)
    " b
    " i
    " s
    " strike
    " u
    The supported HTML attributes are:
    " align
    " face
    " size
    " color
    " style
    " font-family
    " font-size
    " font-style
    " font-weight

  • LDB IN HR-ABAP

    LIST LDB'S CONCERNED TO THE DIFFERNENT PARTS OF HR MODULE LIKE PP,PA,OM ,PLEASE

    Hi Raghunandan,
    SAP HR Transaction Codes
    Master Data 
    PA10 - Personnel file
    PA20 - Display HR Master Data
    PA30 - Maintain HR Master Data
    PA40 - Personnel Events
    PA41 - Change Hiring Data
    PA42 - Fast Data Entry for Events
    PRMD - Maintain HR Master Data
    PRMF - Travel Expenses : Feature TRVFD
    PRML - Set Country Grouping via Popup
    PRMM - Personnel Events
    PRMO - Travel Expenses : Feature TRVCO
    PRMP - Travel Expenses : Feature TRVPA
    PRMS - Display HR Master Data
    PRMT - Update Match code
    PS03 - Info type Overview
    PS04 - Individual Maintenance of Info types
    Time Management 
    PA51 - Display Time Data
    PA53 - Display Time Data
    PA61 - Maintain Time Data
    PA62 - List Entry of Additional Data
    PA63 - Maintain Time Data
    PA64 - Calendar Entry
    PA70 - Fast Data Entry
    PA71 - Fast Entry of Time Data
    PBAB - Maintain Vacancy  assignments
    PT01 - Create Work Schedule
    PT02 - Change Work Schedule
    PT03 - Display Work Schedule
    Payroll
    PC00 - Run Payroll
    PC10 - Payroll menu USA
    PE00 - Starts Transactions PE01 PE02 PE03
    PE01 - Schemas
    PE02 - Calculation Rules
    PE03 - Features
    PE04 - Create functions and Operations
    PE51 - HR form editor
    PRCA - Payroll Calendar
    PRCT - Current Settings
    PRCU - Printing checks USA
    PRD1 - Create DME
    SM31 - Maintain Table
    SM12 - Locked Secessions
    TSTC - Table Look up
    SPRO - IMG
    SE16 - Data Browser (Table Reports)
    PP03 - PD Tables
    PPOM - Change Org Unit
    PO13 - Maintain Positions
    PO03 - Maintain Jobs
    Benefits
    PA85 - Benefits - Call RPLBEN11
    PA86 - Benefits - Call RPLBEN07
    PA87 - Benefits - Call RPLBEN09
    PA89 - COBRA Administration
    PA90 - Benefits Enrollment
    PA91 - Benefits - Forms
    PA92 - Benefits Tables - Maintain
    PA93 - Benefits Tables - Display
    PA94 - Benefits - Access Reporting Tree
    PA95 - Benefits IMG - Jump to Views
    PA96 - Benefits reporting
    PA97 - Salary Administration - Matrix
    PA98 - Salary Administration
    PA99 - Compensation Admin - rel. Changes
    PACP - HR-CH : Pension fund, interface
    General Reporting
    PM00 - Menu for HR Reports
    PM01 - Dialogs in HR - Create Custom info types
    PRFO - Standard Form
    PSVT - Dynamic Tools Menu
    PAR1 - Flexible Employee Data
    PAR2 - Employee List
    Organizational Management
    PPOM - Change org Unit
    PO03 - Maintain Jobs
    P013 - Maintain Position
    PO10 - Maintain Organizational Unit
    PP01 - Maintain Plan Data (menu-guided)
    PP02 - Maintain Plan Data (Open)
    PP03 - Maintain Plan Data (Event-guided)
    PP05 - Number Ranges
    PP06 - Number Ranges Maintenance HR Data
    PP07 - Tasks/Descriptions
    PP69 - Choose Text for Organizational Unit
    PP90 - Setup Organization
    PP01 - Change Cost Center Assignment
    PP02 - Display Cost Center Assignment
    PP03 - Change Reporting Structure
    PP04 - Display Reporting Structure
    PP05 - Change Object indicators (O/S)
    PP06 - Change Object indicators OS
    PPOA - Display Menu Interface (with dyn.)
    PPOC - Create Organizational Unit
    PPOM - Maintain Organizational Plan
    PPOS - Display Organizational Plan
    PQ01 - Events for Work Center
    PQ02 - Events for Training Program
    PQ03 - Events for Job
    PQ04 - Events for Business Event Type
    PQ06 - Local Events
    PQ07 - Resource Events
    PQ08 - Events for External Person
    PQ09 - Events for Business Event Group
    PQ10 - Events for Organizational Unit
    PQ11 - Events for Qualification
    PQ12 - Resource Type Events
    PQ13 - Events for Position
    PQ14 - Events for Task
    PQ15 - Events for Company
    PSO5 - PD : Administration Tool
    PSOA - Work Center Reporting
    PSOC - Job Reporting
    PSOG - Org Mgmt General Reporting
    PSO1 - Tools Integration PA-PD
    PSOO - Organizational Unit Reporting
    PSOS - Position Reporting
    PSOT - Task Reporting
    Recruitment
    PB10 - Initial Entry of applicant master data
    PB20 - Display applicant master data
    PB30 - Maintain applicant master data
    PB40 - Applicant events
    PB50 - Display applicant actions
    PB60 - Maintain Applicant Actions
    PB80 - Evaluate Vacancies
    PBA0 - Evaluate Advertisements
    PBA1 - Applicant Index
    PBA2 - List of applications
    PBA3 - Applicant vacancy assignment list
    PBA4 - Receipt of application
    Infotype tabes :0000,0001,0002,0006,0007,4000,40001,40002 etc
    DB Tables      :PA0000,PA0001,PA0006,PA0007 etc
    ****Reward points if found useful
    Regards,
    Naresh

  • RFC call results in StORAGE_PARAM_WRONG_SET

    I'm in trouble with a RFC call, the process is as following: SAP system A calls a report. This report selects FI documents via LDB SDF. After user selects one or more documents from the list I call a RFC to read the payroll posting results from system B. The call of the RFC takes place for each FI document separatly what means user selects e.g. 10 FI documents, so I have 10 RFC calls with one result list. After each RFC call I add the result table of the RFC to the output table within the report. Before calling the RFC I of course clear all relevant tables again and additionaly I also use the 'FREE' statement within the RFC to set free all the memory, so there is no data stored in internal tables. But when the user selects a great no. of FI documents to read the payroll postings sometimes the RFC cancels in system B telling me that the storage parameters were set wrong. Calling the RFC step by step by selecting the FI document in single mode from the list I don't receive this dump. Do you have an idea what to do to avoid the dump? One problem: I don't have access to system B to test there, I only can do testing in system A and therefore I have no possibility to debugg this.
    This is the code of the RFC module:
    FUNCTION y_rfc_read_payroll_postings.
    *"*"Local interface:
    *"  IMPORTING
    *"     VALUE(I_AWKEY) TYPE  AWKEY
    *"     VALUE(I_CHECKNO) TYPE  XFELD
    *"     VALUE(I_TAX) TYPE  XFELD
    *"  EXPORTING
    *"     VALUE(E_PPDHD) TYPE  PPDHD
    *"  TABLES
    *"      T_PPDIT STRUCTURE  PPDIT
    *"      T_PPOIX STRUCTURE  PPOIX
    *"      T_PPDIX STRUCTURE  PPDIX
    *"      T_PAYR STRUCTURE  PAYR OPTIONAL
    *"      T_HRPAY STRUCTURE  PC209 OPTIONAL
    *"      T_REGUTA STRUCTURE  REGUTA OPTIONAL
    *"      T_VALUES STRUCTURE  YSHR_RFC_PAYROLL_POSTING OPTIONAL
    *"      T_CSKA STRUCTURE  CSKA
    *"      RETURN STRUCTURE  BAPIRET2
    * local data
      TYPE-POOLS: pptgs.
      TYPES: BEGIN OF type_helpval,
             pernr TYPE p_pernr,
             lgart TYPE lgart,
             rel   TYPE xfeld,
            END OF type_helpval.
      TYPES: BEGIN OF type_cluster,
             pernr TYPE p_pernr,
             seqno TYPE cdseq,
             abrj TYPE pnppabrj,
             abrp TYPE pnppabrp,
             actual TYPE srtza,
             betrg TYPE ppoix-betrg,
             waers TYPE ppoix-waers,
             END OF type_cluster.
      DATA: BEGIN OF lt_ppoix_key OCCURS 0,
             pernr    LIKE ppoix-pernr,
             seqno    LIKE ppoix-seqno,
             actsign  LIKE ppoix-actsign,
             runid    LIKE ppoix-runid,
             postnum  LIKE ppoix-postnum,
            END OF lt_ppoix_key.
      FIELD-SYMBOLS: <payroll> TYPE yshr_rfc_payroll_posting.
      DATA ht_ppoix TYPE TABLE OF ppoix.
      DATA productive_runs LIKE hrpp_pernr_runtab OCCURS 0 WITH HEADER LINE.
      DATA t_rgdir TYPE TABLE OF pc261.
      DATA wa_rgdir TYPE pc261.
      DATA t_helpval TYPE TABLE OF type_helpval.
      DATA t_cluster TYPE TABLE OF type_cluster.
      DATA wa_helpval TYPE type_helpval.
      DATA wa_cluster TYPE type_cluster.
      DATA h_molga TYPE molga.
      DATA h_ltext TYPE t5utz-ltext.
      DATA wa_t512w TYPE t512w.
      DATA wa_return TYPE bapiret2.
      DATA par1 TYPE syst-msgv1.
      DATA par2 TYPE syst-msgv2.
      DATA par3 TYPE syst-msgv3.
      DATA wa_ppoix TYPE ppoix.
      FIELD-SYMBOLS: <wa_ppdit> TYPE ppdit.
      DATA wa_ppdix TYPE ppdix.
      DATA result_tab_us TYPE payus_result.
      DATA result_tab_in TYPE payin_result.
      DATA t_bt TYPE hrpay99_bt.
      DATA t_rt TYPE hrpay99_rt.
      DATA wa_bt TYPE pc209.
      DATA wa_rt TYPE pc207.
      DATA h_time(6) TYPE c.
      DATA t_inter TYPE TABLE OF pay99_international WITH HEADER LINE.
      DATA t_tax TYPE hrpayus_tax.
      DATA wa_tax TYPE pc22t.
      DATA wa_payr TYPE payr.
      DATA wa_reguta TYPE reguta.
      DATA wa_payroll TYPE yshr_rfc_payroll_posting.
      DATA t_ppopx TYPE TABLE OF ppopx.
      DATA wa_ppopx TYPE ppopx.
      DATA wa_t001 TYPE t001.
      FREE: t_ppdit, t_ppoix, t_ppdix, t_payr, t_hrpay, t_reguta,
            t_values, t_helpval, t_cluster, t_ppopx.
    * read general information
      SELECT SINGLE * FROM ppdhd INTO e_ppdhd WHERE
                           docnum EQ i_awkey.
      CASE syst-subrc.
    * everthing ok, continue
        WHEN 0.
    * get the company code and assign US flag
          SELECT SINGLE * FROM t001 INTO wa_t001 WHERE
                                    bukrs EQ e_ppdhd-bukrs.
    * exit and set err. mess.
        WHEN OTHERS.
          CALL FUNCTION 'BALW_BAPIRETURN_GET2'
            EXPORTING
              type             = 'E'
              cl               = 'HR3PRNA'
              number           = '704'
    *         PAR1             = ' '
    *         PAR2             = ' '
    *         PAR3             = ' '
    *         PAR4             = ' '
    *         LOG_NO           = ' '
    *         LOG_MSG_NO       = ' '
    *         PARAMETER        = ' '
    *         ROW              = 0
    *         FIELD            = ' '
            IMPORTING
              return           = wa_return
          wa_return-field = 'PPDHD'.
          APPEND wa_return TO return.
          EXIT.
      ENDCASE.
    * read table PPDIT
      SELECT  * FROM  ppdit INTO TABLE t_ppdit
          FOR ALL ENTRIES IN t_cska
          WHERE  docnum  = i_awkey AND
                 hkont   = t_cska-kstar.
      CASE syst-subrc.
    * everthing ok, continue
        WHEN 0.
    * exit and set err. mess.
        WHEN OTHERS.
          par1 = 'PPDIT'.
          par2 = 'document'.
          par3 = i_awkey.
          CALL FUNCTION 'BALW_BAPIRETURN_GET2'
            EXPORTING
              type             = 'E'
              cl               = '5G'
              number           = '58'
              par1             = par1
              par2             = par2
              par3             = par3
    *         PAR4             = ' '
    *         LOG_NO           = ' '
    *         LOG_MSG_NO       = ' '
    *         PARAMETER        = ' '
    *         ROW              = 0
    *         FIELD            = ' '
            IMPORTING
              return           = wa_return
          wa_return-field = 'PPDIT'.
          APPEND wa_return TO return.
          EXIT.
      ENDCASE.
    * read table PPDIX
      SELECT * FROM ppdix INTO TABLE t_ppdix
          FOR ALL ENTRIES IN t_ppdit
          WHERE evtyp  EQ e_ppdhd-evtyp AND
                runid  EQ e_ppdhd-runid AND
                docnum EQ e_ppdhd-docnum AND
                doclin =  t_ppdit-doclin.
      CASE syst-subrc.
    * everthing ok, continue
        WHEN 0.
    * exit and set err. mess.
        WHEN OTHERS.
          par1 = 'PPDIX'.
          par2 = 'runid'.
          par3 = e_ppdhd-runid.
          CALL FUNCTION 'BALW_BAPIRETURN_GET2'
            EXPORTING
              type             = 'E'
              cl               = '5G'
              number           = '58'
              par1             = par1
              par2             = par2
              par3             = par3
    *         PAR4             = ' '
    *         LOG_NO           = ' '
    *         LOG_MSG_NO       = ' '
    *         PARAMETER        = ' '
    *         ROW              = 0
    *         FIELD            = ' '
            IMPORTING
              return           = wa_return
          wa_return-field = 'PPDIX'.
          APPEND wa_return TO return.
          EXIT.
      ENDCASE.
    * read detail values on accounting level
      SELECT * FROM ppoix INTO TABLE t_ppoix
                          FOR ALL ENTRIES IN t_ppdix WHERE
                               runid EQ t_ppdix-runid AND
                               tslin EQ t_ppdix-linum.
    * read reposted documents from ppopx
      SELECT * FROM ppopx INTO TABLE t_ppopx
                          FOR ALL ENTRIES IN t_ppdix WHERE
                               runid EQ t_ppdix-runid AND
                               tslin EQ t_ppdix-linum.
      IF syst-subrc EQ 0.
    * append corresponding lines to T_ppoix
        LOOP AT t_ppopx INTO wa_ppopx.
          MOVE-CORRESPONDING wa_ppopx TO productive_runs.
          CLEAR productive_runs-runid.
          COLLECT productive_runs.
        ENDLOOP.
    * get run table
        CALL FUNCTION 'HR_EVAL_PROD_A_RUN_GET_TABLE'
          TABLES
            result_table = productive_runs.
        LOOP AT productive_runs.
          IF productive_runs-runid IS INITIAL.
            DELETE productive_runs.
          ENDIF.
        ENDLOOP.
    * fill ppoix-keys for needed ppoix
        LOOP AT productive_runs.
          LOOP AT t_ppopx INTO wa_ppopx.
            IF wa_ppopx-pernr EQ productive_runs-pernr AND
               wa_ppopx-seqno EQ productive_runs-seqno.
    * built key
              CLEAR lt_ppoix_key.
              MOVE-CORRESPONDING productive_runs TO lt_ppoix_key.
              lt_ppoix_key-postnum = wa_ppopx-postnum.
              lt_ppoix_key-actsign = 'A'.
              COLLECT lt_ppoix_key.
            ENDIF.
          ENDLOOP.
        ENDLOOP.
    * any values to append?
        READ TABLE lt_ppoix_key INDEX 1.
        IF syst-subrc EQ 0.
          SELECT * FROM ppoix INTO TABLE ht_ppoix
                   FOR ALL ENTRIES IN lt_ppoix_key
                                   WHERE pernr = lt_ppoix_key-pernr
                                   AND   seqno = lt_ppoix_key-seqno
                                   AND actsign = 'A'
                                   AND   runid = lt_ppoix_key-runid
                                   AND   postnum = lt_ppoix_key-postnum.
          IF syst-subrc EQ 0.
            LOOP AT t_ppopx INTO wa_ppopx.
              LOOP AT ht_ppoix INTO wa_ppoix WHERE
                      pernr EQ wa_ppopx-pernr AND
                      seqno EQ wa_ppopx-seqno AND
                      postnum EQ wa_ppopx-postnum.
                MOVE-CORRESPONDING wa_ppopx TO wa_ppoix.
                IF wa_ppoix-actsign <> 'A'.
                  wa_ppoix-betrg = - wa_ppoix-betrg.
                  wa_ppoix-anzhl = - wa_ppoix-anzhl.
                ENDIF.
                APPEND wa_ppoix TO t_ppoix.
                DELETE ht_ppoix.
              ENDLOOP.
            ENDLOOP.
          ENDIF.
        ENDIF.
      ENDIF.
    * check for any entries in table T_PPOIX
      READ TABLE t_ppoix INTO wa_ppoix INDEX 1.
      CASE syst-subrc.
    * everthing ok, continue
        WHEN 0.
    * exit and set err. mess.
        WHEN OTHERS.
          par1 = 'PPOIX'.
          par2 = 'runid'.
          par3 = e_ppdhd-runid.
          CALL FUNCTION 'BALW_BAPIRETURN_GET2'
            EXPORTING
              type             = 'E'
              cl               = '5G'
              number           = '58'
              par1             = par1
              par2             = par2
              par3             = par3
    *         PAR4             = ' '
    *         LOG_NO           = ' '
    *         LOG_MSG_NO       = ' '
    *         PARAMETER        = ' '
    *         ROW              = 0
    *         FIELD            = ' '
            IMPORTING
              return           = wa_return
          wa_return-field = 'PPOIX'.
          APPEND wa_return TO return.
          EXIT.
      ENDCASE.
      CHECK i_checkno EQ 'X' OR
            i_tax     EQ 'X'.
      CLEAR t_values.
    * read payroll results, determine values
      LOOP AT t_ppdit ASSIGNING <wa_ppdit>.
        LOOP AT t_ppdix INTO wa_ppdix WHERE
                evtyp = e_ppdhd-evtyp AND
                runid = e_ppdhd-runid AND
                doclin = <wa_ppdit>-doclin.
          LOOP AT t_ppoix INTO wa_ppoix WHERE
                       runid EQ e_ppdhd-runid AND
                       tslin EQ wa_ppdix-linum.
    * append anywhere for checkno
            IF i_checkno EQ 'X'.
              wa_cluster-pernr = wa_ppoix-pernr.
              wa_cluster-seqno = wa_ppoix-seqno.
              wa_cluster-abrj = <wa_ppdit>-abper+0(4).
              wa_cluster-abrp = <wa_ppdit>-abper+4(2).
              wa_cluster-actual = wa_ppoix-actsign.
              wa_cluster-betrg = wa_ppoix-betrg.
              wa_cluster-waers = wa_ppoix-waers.
              IF <wa_ppdit>-abper IS INITIAL.
    * write BONDT into field ZUONR
                CALL FUNCTION 'CU_READ_RGDIR'
                  EXPORTING
                    persnr   = wa_ppoix-pernr
                  TABLES
                    in_rgdir = t_rgdir.
                READ TABLE t_rgdir INTO wa_rgdir WITH KEY
                                 seqnr = wa_ppoix-seqno.
                IF syst-subrc EQ 0.
                  <wa_ppdit>-zuonr+0(10) = wa_rgdir-bondt.
                ENDIF.
              ENDIF.
              APPEND wa_cluster TO t_cluster.
            ENDIF.
            IF i_tax EQ 'X'.
    * check if LGART is relevant
              READ TABLE t_helpval INTO wa_helpval WITH KEY
                                 pernr = wa_ppoix-pernr
                                 lgart = wa_ppoix-lgart.
              CASE syst-subrc.
                WHEN 0.
    * relevant or not
                  CASE wa_helpval-rel.
                    WHEN 'X'.
                      wa_cluster-pernr = wa_ppoix-pernr.
                      wa_cluster-seqno = wa_ppoix-seqno.
                      wa_cluster-abrj = <wa_ppdit>-abper+0(4).
                      wa_cluster-abrp = <wa_ppdit>-abper+4(2).
                      wa_cluster-actual = wa_ppoix-actsign.
                      wa_cluster-betrg = wa_ppoix-betrg.
                      wa_cluster-waers = wa_ppoix-waers.
                      IF <wa_ppdit>-abper IS INITIAL.
                        CALL FUNCTION 'CU_READ_RGDIR'
                          EXPORTING
                            persnr   = wa_ppoix-pernr
                          TABLES
                            in_rgdir = t_rgdir.
                        READ TABLE t_rgdir INTO wa_rgdir WITH KEY
                                         seqnr = wa_ppoix-seqno.
                        IF syst-subrc EQ 0.
                          <wa_ppdit>-zuonr+0(10) = wa_rgdir-bondt.
                        ENDIF.
                      ENDIF.
                      APPEND wa_cluster TO t_cluster.
    * save values
                      MOVE-CORRESPONDING wa_ppoix TO wa_payroll.
                      wa_payroll-betrg = ABS( wa_payroll-betrg ).
                      APPEND wa_payroll TO t_values.
                    WHEN ' '.
                      CONTINUE.
                  ENDCASE.
                WHEN OTHERS.
    * determine values
                  CALL FUNCTION 'HR_COUNTRYGROUPING_GET'
                    EXPORTING
                      pernr           = wa_ppoix-pernr
    *              TCLAS           = 'A'
                      begda           = e_ppdhd-bldat
                      endda           = e_ppdhd-bldat
    *              WERKS           =
                    IMPORTING
                      molga           = h_molga
                    EXCEPTIONS
                      not_found       = 1
                      OTHERS          = 2
                  IF sy-subrc NE 0.
                    WRITE wa_ppoix-pernr TO par1.
                    CALL FUNCTION 'BALW_BAPIRETURN_GET2'
                      EXPORTING
                        type   = 'E'
                        cl     = 'HRPAYBR94'
                        number = '278'
                        par1   = par1
                      IMPORTING
                        return = wa_return.
                    wa_return-field = wa_ppoix-pernr.
                    APPEND wa_return TO return.
                    CONTINUE.
                  ENDIF.
                  SELECT * FROM  t512w INTO wa_t512w
                         WHERE  molga  = h_molga
                         AND    lgart  = wa_ppoix-lgart
                         AND    endda  GE e_ppdhd-bldat
                         AND    begda  LE e_ppdhd-bldat.
                    EXIT.
                  ENDSELECT.
                  IF syst-subrc EQ 0.
                    IF wa_t512w-vklas+77(1) = '2'.
                      wa_helpval-pernr = wa_ppoix-pernr.
                      wa_helpval-lgart = wa_ppoix-lgart.
                      wa_helpval-rel   = 'X'.
                      APPEND wa_helpval TO t_helpval.
                      wa_cluster-pernr = wa_ppoix-pernr.
                      wa_cluster-seqno = wa_ppoix-seqno.
                      wa_cluster-abrj = <wa_ppdit>-abper+0(4).
                      wa_cluster-abrp = <wa_ppdit>-abper+4(2).
                      wa_cluster-actual = wa_ppoix-actsign.
                      wa_cluster-betrg = wa_ppoix-betrg.
                      wa_cluster-waers = wa_ppoix-waers.
                      IF <wa_ppdit>-abper IS INITIAL.
                        CALL FUNCTION 'CU_READ_RGDIR'
                          EXPORTING
                            persnr   = wa_ppoix-pernr
                          TABLES
                            in_rgdir = t_rgdir.
                        READ TABLE t_rgdir INTO wa_rgdir WITH KEY
                                         seqnr = wa_ppoix-seqno.
                        IF syst-subrc EQ 0.
                          <wa_ppdit>-zuonr+0(10) = wa_rgdir-bondt.
                        ENDIF.
                      ENDIF.
                      APPEND wa_cluster TO t_cluster.
                      MOVE-CORRESPONDING wa_ppoix TO wa_payroll.
                      wa_payroll-betrg = ABS( wa_payroll-betrg ).
                      APPEND wa_payroll TO t_values.
                    ELSE.
                      wa_helpval-pernr = wa_ppoix-pernr.
                      wa_helpval-lgart = wa_ppoix-lgart.
                      wa_helpval-rel   = ''.
                      APPEND wa_helpval TO t_helpval.
                    ENDIF.
                  ENDIF.
              ENDCASE.
            ENDIF.
          ENDLOOP.
        ENDLOOP.
      ENDLOOP.
      SORT t_cluster.
      DELETE ADJACENT DUPLICATES FROM t_cluster.
      LOOP AT t_cluster INTO wa_cluster.
        CLEAR: result_tab_us, result_tab_in.
        CASE wa_t001-land1.
          WHEN 'US'.
            CALL FUNCTION 'PYXX_READ_PAYROLL_RESULT'
              EXPORTING
    *       CLUSTERID                          = 'RU'
                employeenumber                     = wa_cluster-pernr
                sequencenumber                     = wa_cluster-seqno
    *       READ_ONLY_BUFFER                   = ' '
    *       READ_ONLY_INTERNATIONAL            = ' '
    *       ARC_GROUP                          = ' '
                check_read_authority               = ''
                filter_cumulations                 = ''
    *       CLIENT                             =
    *     IMPORTING
    *       VERSION_NUMBER_PAYVN               =
    *       VERSION_NUMBER_PCL2                =
              CHANGING
                payroll_result                     = result_tab_us
              EXCEPTIONS
                illegal_isocode_or_clusterid       = 1
                error_generating_import            = 2
                import_mismatch_error              = 3
                subpool_dir_full                   = 4
                no_read_authority                  = 5
                no_record_found                    = 6
                versions_do_not_match              = 7
                error_reading_archive              = 8
                error_reading_relid                = 9
                OTHERS                             = 10
          WHEN OTHERS.
            CALL FUNCTION 'PYXX_READ_PAYROLL_RESULT'
              EXPORTING
    *       CLUSTERID                          = 'RU'
                employeenumber                     = wa_cluster-pernr
                sequencenumber                     = wa_cluster-seqno
    *       READ_ONLY_BUFFER                   = ' '
    *       READ_ONLY_INTERNATIONAL            = ' '
    *       ARC_GROUP                          = ' '
                check_read_authority               = ''
                filter_cumulations                 = ''
    *       CLIENT                             =
    *     IMPORTING
    *       VERSION_NUMBER_PAYVN               =
    *       VERSION_NUMBER_PCL2                =
              CHANGING
                payroll_result                     = result_tab_in
              EXCEPTIONS
                illegal_isocode_or_clusterid       = 1
                error_generating_import            = 2
                import_mismatch_error              = 3
                subpool_dir_full                   = 4
                no_read_authority                  = 5
                no_record_found                    = 6
                versions_do_not_match              = 7
                error_reading_archive              = 8
                error_reading_relid                = 9
                OTHERS                             = 10
        ENDCASE.
        IF sy-subrc NE 0.
          CLEAR wa_return.
          wa_return-field = wa_ppoix-pernr.
          CASE syst-subrc.
            WHEN '1'.
              wa_return-message = 'ILLEGAL_ISOCODE_OR_CLUSTERID'.
            WHEN '2'.
              wa_return-message = 'ERROR_GENERATING_IMPORT'.
            WHEN '3'.
              wa_return-message = 'IMPORT_MISMATCH_ERROR'.
            WHEN '4'.
              wa_return-message = 'SUBPOOL_DIR_FULL'.
            WHEN '5'.
              wa_return-message = 'NO_READ_AUTHORITY'.
            WHEN '6'.
              wa_return-message = 'NO_RECORD_FOUND'.
            WHEN '7'.
              wa_return-message = 'VERSIONS_DO_NOT_MATCH'.
            WHEN '8'.
              wa_return-message = 'ERROR_READING_ARCHIVE'.
            WHEN '9'.
              wa_return-message = 'ERROR_READING_RELID'.
            WHEN OTHERS.
              wa_return-message = 'OTHERS'.
          ENDCASE.
          APPEND wa_return TO return.
          CONTINUE.
        ELSE.
          CASE wa_t001-land1.
            WHEN 'US'.
              t_inter = result_tab_us-inter.
            WHEN OTHERS.
              t_inter = result_tab_in-inter.
          ENDCASE.
          APPEND t_inter.
          t_tax = result_tab_us-nat-tax.
          LOOP AT t_inter.
            t_bt = t_inter-bt.
            t_rt = t_inter-rt.
          ENDLOOP.
          LOOP AT t_values ASSIGNING <payroll> WHERE
                                           pernr EQ wa_cluster-pernr.
            CLEAR wa_rt.
            LOOP AT t_rt INTO wa_rt WHERE
                         lgart EQ <payroll>-lgart.
              wa_rt-betrg = ABS( wa_rt-betrg ).
              IF wa_rt-betrg EQ <payroll>-betrg AND NOT
                 wa_rt-cntr1 IS INITIAL.
                IF wa_t001-land1 EQ 'US'.
                  LOOP AT t_tax INTO wa_tax WHERE
                        cntr1 EQ wa_rt-cntr1.
                    EXIT.
                  ENDLOOP.
                  IF syst-subrc EQ 0.
                    <payroll>-cntr1 = wa_tax-cntr1.
                    <payroll>-taxau = wa_tax-taxau.
    * determine long text
                    SELECT SINGLE ltext FROM  t5utz INTO h_ltext
                           WHERE  taxau  = wa_tax-taxau.
                    IF syst-subrc EQ 0.
                      <payroll>-ltext = h_ltext.
                    ENDIF.
                  ENDIF.
                ENDIF.
              ENDIF.
            ENDLOOP.
          ENDLOOP.
    * check table BT abd determine check no.
          IF i_checkno EQ 'X'.
            LOOP AT t_bt INTO wa_bt.
              APPEND wa_bt TO t_hrpay.
              CASE wa_bt-zlsch.
    * check
                WHEN  'C'.
                  SELECT * FROM payr INTO wa_payr WHERE
                                 rzawe = 'C' AND
                                 laufd = wa_bt-dtadt AND
                                 pernr = wa_cluster-pernr AND
                                 seqnr = wa_cluster-seqno AND
                                 btznr = wa_bt-btznr.
                    EXIT.
                  ENDSELECT.
                  IF syst-subrc EQ 0.
    * store period in a field to find correlation later
                    wa_payr-znme4+0(4) = wa_cluster-abrj.
                    wa_payr-znme4+4(2) = wa_cluster-abrp.
                  ELSE.
                    CLEAR wa_payr.
                    wa_payr-pernr = wa_cluster-pernr.
                    wa_payr-rwbtr = wa_cluster-betrg.
                    wa_payr-waers = wa_cluster-waers.
                    APPEND wa_payr TO t_payr.
                  ENDIF.
                  APPEND wa_payr TO t_payr.
    * bank transfer
                WHEN OTHERS.
                  h_time = wa_bt-dtati+0(5).
                  h_time+5(1) = 'P'.
                  SELECT * FROM reguta INTO wa_reguta WHERE
                                 laufd = wa_bt-dtadt AND
                                 laufi = h_time.
                    EXIT.
                  ENDSELECT.
                  IF syst-subrc EQ 0.
                    APPEND wa_reguta TO t_reguta.
                  ENDIF.
              ENDCASE.
            ENDLOOP.
          ENDIF.
        ENDIF.
      ENDLOOP.
    ENDFUNCTION.

    Hi Sudhir,
    These settings need to be done by basis people. Anyhow, you can go to the tcode RZ11 and put in these parameters mentioned in the error message. There will be documentation available for these parameters. Try to see if the defaults are not met for any of these parameters. If you find something strange, report it to the basis. The documentations in this are very helpful. Hope this helps.
    Thanks and Regards
    Subray Hegde

  • LDB(Logical Database) selection screen

    Dear Contributors,
    I am hopefull for finding solution to my problem from one of you.
    My requirement is i would like to pass all the elements of the selection screen of LDB to non-sap application so as they can replicate and show all those parameters there. Once those are filled from there then i need to take them and process the LDB.
    My question is i dont know how to get the selection screen parameters. I tried using FM 'RPY_DYNPRO_READ' and passed progname and screen number in that. It gave back all the parameters but we cant co-relate which parameter is from which table (like we say MATNR like MARA-MATNR).
    Without having Technical details of field, non-sap application could not able to process it or show the required F4 help etc
    Anyone know about it, can guide me....
    Regards
    Munish Garg

    call function 'LDB_CONVERT_LDBNAME_2_DBPROG'
           exporting  ldb_name             = headsg-logdb "#EC DOM_EQUAL
                      flag_existence_check = space
           importing  db_name              = logdbprog
           exceptions others               = 1.
      if sy-subrc eq 0.
        call function 'SELOPTS_AND_PARAMS'
             exporting  program              = logdbprog
             tables     selpars              = dbselpars
             exceptions program_non_existent = 1
                        subroutine_pool      = 2
                        load_problems        = 3
                        others               = 4.
    endif.

Maybe you are looking for

  • Date wise archive creation

    Hi Team, is there any parameter to set for automatic creation of archive date wise folder and backup date wise folder in oracle database 10g or 11g ? Thanks & Regards Ravi Kumar

  • Mac mini core solo running very slowly

    Hi folks, long time reader, first time poster (sorry, couldn't resist): I just got a nice shiny new core solo mac mini 1.5 with stock ram and it feels like it runs slower than my 450 mhz dual processor powermac. Activity monitor shows that if I try t

  • Wifi problem with iOs7.1

    I have iphone 4s. Since yesterday, after upgrade the iOs to 7.1, I cant have online using wifi ! I have try: format, reset network, ... but it is still not working. Please help me my iphone 4s wifi grey out ios 7.1 

  • HOST command does not seem to work in deployment system

    I am developing forms software for a SUSE Linux system, but the HOST command does not seem to operate correctly when used in conjunction with Application Server. All I am trying to do is launch Adobe Acrobat reader as a background job using the comma

  • The overwrite tab in the source window is not working

    I'm following a tutorial and i seem to be doing everything as indicated but my "Overwrite Tab" in my source wind is not working ... any suggestions?