Dump in function module CACS_BUPA_PAI_SPECIAL_CACSB1

Hi experts,
   I am trying to create business partner in SAP treasury module with role - general business partner and validity period 01/01/0001 - 12/31/9999. I am gettting syntax error  in Function module CACS_BUPA_PAI_SPECIAL_CACSB1, it says
The key of internal table 'LT_BUT0BK' contains components of type 'X' or 'XSTRING'.
The "Read table LT_BUTOBK" statement is not permitted for such tables in a unicode context.
Please let me know if you have any solution for this.
Thanks in advance.

Please refer to thread SYNTAX ERROR in function module CACS_BUPA_PAI_SPECIAL_CACSB1
Regards
  Uwe

Similar Messages

  • SYNTAX ERROR in function module CACS_BUPA_PAI_SPECIAL_CACSB1

    Hi experts,
       I am trying to create business partner in SAP treasury module with role - general business partner and validity period 01/01/0001 - 12/31/9999. I am gettting syntax error  in Function module CACS_BUPA_PAI_SPECIAL_CACSB1, it says
    The key of internal table 'LT_BUT0BK' contains components of type 'X' or 'XSTRING'.
    The "Read table LT_BUTOBK" statement is not permitted for such tables in a unicode context.
    Please let me know if you have any solution for this.
    Thanks in advance.
    Edited by: Thanvi maraka on Apr 17, 2009 3:27 AM

    Hello Thanvi
    It seems that you need to apply the OSS note 1041283:
    FUNCTION cacs_bupa_pai_special_cacsb1.
    *"*"Lokale Schnittstelle:
      DATA: lt_but0bk TYPE TABLE OF but0bk WITH HEADER LINE.
      CALL FUNCTION 'BUP_BUPA_BUT0BK_GET'
           TABLES
                t_but0bk = lt_but0bk.
    * einmal vorhanden -> nehmen; nicht vorhanden -> Feld muss leer sein
    * mehrmals vorhanden -> Mussfeld
      READ TABLE lt_but0bk INDEX 2.
      IF sy-subrc NE 0.
    *    READ TABLE lt_but0bk.          "NOTE 1041283   " <<<<<<<<<
         READ TABLE lt_but0bk FROM lt_but0bk.            " <<<<<<<<<
        IF sy-subrc = 0.
          cacs_s_bupaw-bank_id = lt_but0bk-bkvid.
        ENDIF.
      ELSE.
    Regards
      Uwe

  • Standrad Function Module Missing

    Hi,
    When i try to post Goods receipt in MIGO It is throwing a dump saying " Function Module ANLBZW_CREATE_TRANSFER Not found ".
    Can any body help me regarding this

    hi,
    I guess you are working on a  4.7 or ECC 5 systems.
    The funciton module you have mentioned you can find it in ECC 6 system but with
    NOT RELEASED status.
    This means that this function module hasn't yet been given  released status by SAP.
    If you have ECC6 system, GOTO SE11--> RODIR --> check for this function module.
    You get a  message that no entries exist. This means that it is not yet a released object hence not preferred to use.
    For your requirement try out with MIGO_DIALOG.
    Thanks
    Sharath

  • ABAP Dump due to RFC Function module call in another thread

    Hi,
    I am facing some problem since yesterday. In one of my executable program I am calling a RFC fm as below mentioned    
    REPORT ZREPORT.
    CALL FUNCTION 'Z_XXXXXXXXX'
          STARTING NEW TASK L_NAME
          DESTINATION IN GROUP 'TASK'
          PERFORMING RETURN_INFO ON END OF TASK
          EXPORTING
            P_exp1       = l_emp
          TABLES
            R_VBELN      = r_it_vbeln
          EXCEPTIONS
            NO_DATA_TO_PROCESS = 1
            OTHERS             = 2.
    wait until v_task = 1.
    update ztable.
    Due to some data inconsistence one of the SAP function
    module which I am calling in my function module Z_XXXXXXXXX
    is generating dump with message type X. Since there is data inconsistence it is generating dump that's OK.
    But the problem i am getting is, report ZREPORT is generating dump at WAIT statement saying illegal statement even though I am calling that function module
    Z_XXXXXXXXX as a separate new task.
    Can somebody help me.
    Thanks,
    Amara.

    hi, Amara
    I agree with Rich said, and do a simulate test in my server, here is the analysis.
    Assume we have a RFC, like this:
    FUNCTION ZGZL_DUMPTEST.
    *"*"Local interface:
    *"  EXPORTING
    *"     VALUE(OUT) TYPE  I
    *"  EXCEPTIONS
    *"      CONVERT_FAIL
      data:a  type  i.
      a = 'A'.
    ENDFUNCTION.
    And call this RFC like you way:
    REPORT ZGZL_DUMPTEST .
    DATA:
      SEMAPHORE(1) VALUE SPACE,
      LC_OUT       TYPE  I.
    CALL FUNCTION 'ZGZL_DUMPTEST'
    STARTING NEW TASK 'DUMP'
    PERFORMING RETURN_INFO ON END OF TASK.
    WAIT UNTIL SEMAPHORE = 'X'.
    WRITE: 'OVER'.
    FORM RETURN_INFO USING TASKNAME.
      RECEIVE RESULTS FROM FUNCTION 'ZGZL_DUMPTEST'
              IMPORTING  OUT = LC_OUT.
      SEMAPHORE = 'X'.
    ENDFORM.                    " RETURN_INFO
    if we run the RFC in se37 directly, obviously it will occur a rumtime error CONVT_NO_NUMBER, and dump.
    But if we run the above application to call the RFC, we will get a different runtime error CALL_FUNCTION_REMOTE_ERROR.
    Error Analysis in ST22 like this:
    An error occurred when executing a REMOTE FUNCTION CALL.
    It was logged under the name "CONVT_NO_NUMBER"
    on the called page.
    I think that means the application receive the runtime error from RFC when call  <b>RECEIVE RESULTS</b>.
    In normal CALL FUNCTION, the external application will accept the rumetime error throw from FM, that's correct, because it let the caller can handle these runtime errors.
    In you case, you said RFC run in a new task, yes, that's true, so you can call the RFC like this:
    CALL FUNCTION 'ZGZL_DUMPTEST'
    STARTING NEW TASK 'DUMP'
    PERFORMING RETURN_INFO ON END OF TASK.
    WAIT UNTIL SEMAPHORE = 'X'.
    WRITE: 'OVER'.
    FORM RETURN_INFO USING TASKNAME.
      SEMAPHORE = 'X'.
    ENDFORM.                    " RETURN_INFO
    It will goes well, no dump. Why? because we don't use RECEIVE RESULT. RECEIVE RESULT will bring the result from FM, also bring the runtime error from FM.
    So if you want to call the FM and receive the result, handle the runtime error in FM inside at first.
    like this:
      CATCH SYSTEM-EXCEPTIONS CONVT_NO_NUMBER = 1.
        a = 'A'.
      ENDCATCH.
      IF SY-SUBRC = 1.
        RAISE CONVERT_FAIL.
      ENDIF.
    And then you call FM like this:
    CALL FUNCTION 'ZGZL_DUMPTEST'
    STARTING NEW TASK 'DUMP'
    PERFORMING RETURN_INFO ON END OF TASK.
    WAIT UNTIL SEMAPHORE = 'X'.
    WRITE: 'OVER'.
    FORM RETURN_INFO USING TASKNAME.
      RECEIVE RESULTS FROM FUNCTION 'ZGZL_DUMPTEST'
              IMPORTING  OUT = LC_OUT
              EXCEPTIONS CONVERT_FAIL = 1.
      SEMAPHORE = 'X'.
    ENDFORM.                    " RETURN_INFO
    That's will be ok for your scenario.
    Hope my reply is useful.
    thanks

  • Function module ISR_GET_DATA_FROM_XML  throwing dump.

    Hi All,
    Function module ISR_GET_DATA_FROM_XML  throwing dump.
    The dump says,
    The exception, which is assigned to class 'CX_SY_REF_IS_INITIAL', was not
    caught in
    procedure "ISR_GET_DATA_FROM_XML" "(FUNCTION)", nor was it propagated by a
    RAISING clause.
    Since the caller of the procedure could not have anticipated that the
    exception would occur, the current program is terminated.
    The reason for the exception is:
    You attempted to use a 'NULL' object reference (points to 'nothing')
    access a component.
    An object reference must point to an object (an instance of a class)
    before it can be used to access components.
    Either the reference was never set or it was set to 'NULL' using the
    CLEAR statement.
    Can you please help me in resolving this error.
    PERFORM set_tag_constants.
    set size of XML document
    ld_size = id_size.
    create the input stream
    lr_stream = ir_ixml_stream_factory->create_istrea
         table = it_xml
         size  = ld_size ). create XML document object
    lr_dom = ir_ixml_factory->create_document( ).
    create parser
    lr_parser = ir_ixml_factory->create_parser(
         stream_factory = ir_ixml_stream_factory
         istream        = lr_stream
         document       = lr_dom ).
    Thanks
    Rohini.

    Hi,
    SELECT MBLNR     
               MJAHR     
               FROM MSEG
               INTO TABLE I_MKPF
               WHERE MBLNR IN S_MBLNR AND
                           MJAHR IN S_MJAHR.
    IF I_MKPF  IS NOT INITIAL.
    SELECT * FROM MSEG INTO TABLE O_MSEG FOR ALL ENTRIES IN I_MKPF
          WHERE MBLNR   =    I_MKPF-MBLNR
            AND MJAHR   =    I_MKPF-MJAHR
            AND MATNR   IN   I_MATNR
            AND WERKS   IN   I_WERKS
            AND LGORT   IN   I_LGORT.
    ENDIF.
    ALSO CHECK FM u2018/BEV2/ED_REA_MSEG_MKPFu2019.
    Regards,
    Deepa Kulkarni

  • Short Dump while executing function module "IDOC_INPUT"

    Dear Friends,
    We are trying to execute the function module "IODC_INPUT" and getting a short dump.
    Basically the scnario is that we are trying to change an IDOC through transaction WE19 and then we execute the same by pressing tab "STANDARD INBOUND".
    But as soon as we press this button we get the short dump. whereas if I process the IDOC by pressing tab "Inbound Function Module" , there is no error and we are able to process the idoc successfully.
    Request you to please guide why this problem is there and what is the resolution for the same.
    Regards,
    Lalit Kabra

    Hi Nazeer,
    Thanks a lot for quick response.
    We are getting the dump with error ""Type "IDOC_DATA_CRYPTION" is unknown"". We just pressed the button STANDARD INBOUND and it gave us the error.
    Even when I execute this FM stand alone then just after pressing F8, it gives me Dump instead of the selction screen of the Function module.
    I tried running this FM on my IDES system and there I can see the selction screen and there is no dump.
    To me it seems that I need to do some settings so that this fm can be executed sucessfully.
    Request you to please help and guide me.
    Regards,
    Lalit Kabra

  • Function module going for DUMP

    Hi ALL,
    I have import request and i got sucess .My 3 function modules are import to client system.2 FM are working properly but 1 function module is going for DUMP.
    When iam Executing this FM through SE37 F8 its running but iam not able to display or change this ZFM.
    In our DEV sytem it is working properly.but Client system it is going for DUMP.
    I have gone dump analysis its saying
    An exception occurred. This exception is dealt with in more detail below
    . *The exception, which is assigned to the class 'CX_SY_IMPORT_MISMATCH_ERROR',
    was neither caught nor passed along using a RAISING clause, in the procedure
    MO_IMPORT_MODIFICATIONS" "(METHOD
    Length error occurred during the IMPORT statement
    *The system found when importing that the target object was longer or
    shorter than the object to be imported*
    Thanks in Advance,
    Madhu.
    Edited by: madhubabu rao on Apr 23, 2009 10:34 AM
    Edited by: madhubabu rao on Apr 23, 2009 10:36 AM

    Hi sekhar,
    I did not transport individually.I have transport 3 FM in a function group and it is assigned to a Package.
    First i have 2 FM in my function group after that i have copied one more FM from another Function group.
    in SE80 right click -->copy it asked me function group name only .not transport number.
    After copy the FM i have transport total package.2 FM are working properly .The FM which i have copied it is not able to display or edit.
    Madhu

  • Function Module READ_TEXT short dump

    Hi All,
    I've created a bespoke long text object so I can save some long text to it.  I created it by copying the SAP standard long text object for CATS (timesheets) in SE75.  I save to this object using the function module SAVE_TEXT and I read it back using the function module READ_TEXT.  I get a short dump during READ_TEXT which says:
    "CONNE_IMPORT_WRONG_COMP_TYPE
    Error when attempting to IMPORT object "TLINE".
    When importing the object "TLINE", the component no. 1 in the dataset has a different type from the corresponding component of the target object in the program "SAPLSTXD ".
    The data type is "I" in the dataset, but "C" in the program."
    I've looked on OSS (as it's a SAP standard program) but can't find anything.  I get no errors when trying to read the standard object CATS only when I try and read my new object, so I'm thinking that I haven't set it up correctly.  An entry in table STXH occurs for both objects so I know I have saved some long text in my object.
    Can anyone help?
    Gill

    Hi,
    have you passed the correct parameters to the FM.
    try to check the sample...
    data: it_lines like tline occurs 0 with header line.
        CALL FUNCTION 'READ_TEXT'
             EXPORTING
                  CLIENT                  = SY-MANDT
                  ID                      = 'Z056'
                  LANGUAGE                = 'E'
                  NAME                    = L_NAME
                  OBJECT                  = 'VBBP'
             TABLES
                  LINES                   = IT_LINES
            EXCEPTIONS
                 ID                      = 1
                 LANGUAGE                = 2
                 NAME                    = 3
                 NOT_FOUND               = 4
                 OBJECT                  = 5
                 REFERENCE_CHECK         = 6
                 WRONG_ACCESS_TO_ARCHIVE = 7
                 OTHERS                  = 8
    i think it is because of it_lines declaration.
    Regards
    vijay

  • Resulting in Dump with HR Function module

    Hi all,
      I am trying to update the work schedules of an employee using the function module <b>'HR_DV_WORKSCHEDULE_MODIFY'</b>. The Dump is <b>'Access Not possible using 'NULL' object interface'.</b>.
    Can anybody solve this...
    Thanks in advance.
    Suvan.

    Hi Srinivas,
    I am in 4.7 version. It is no where used in 4.7.
    Here is the dump.
    <b>Short Text:
      Access not possible using 'NULL'object Reference.
    Error Analysis:
      Attempt to access a component using 'NULL' object reference (points to nothing).
      An object reference must point to an object (an instancce of a class) before you can use it to access components (variable :"").Either the reference has not yet been set, or it has been reset to 'NULL' by a clear statement.</b>
      This says (as you both said) it is getting some reference from some where.As it doesnt contain any value, it is resulting in dump.
    Thanks,
    Suvan

  • ABAP Dump when calling Function Module Starting New Task

    Hi all. I have a tricky situation now, I am doing a POC on parallel processing.
    I am getting an ABAP dump on the following Call Function line which is in class lcl_steer_114numc (See below for full program):
    METHOD start.
        CALL FUNCTION 'Z_ZZCLS_STEER_114NUMC'
          STARTING NEW TASK me->id
          CALLING me->finish ON END OF TASK.
      ENDMETHOD.                    "start
    However I get the following ABAP dump:
    Short text
        Statement "CALL FUNCTION .. DESTINATION/STARTING NEW TASK/IN BACKGROUND TASK"
    The function module only contains a wait statement to simulate parallel processing. It is strange that it dumps here, because when I change the FM call to another call that has been triggered successfully from other classes, it still produces the same ABAP dump.
    The background of the Proof Of Concept is to see if I can get an event to trigger the next process that depends on the outcome of the previous process. Parallel processes are run in the start methods by calling RFC.
    <Garbled code removed>
    Moderator Message: Please post relevant portions of the code only.
    Edited by: Suhas Saha on Jul 17, 2011 1:17 PM

    Well, the thing is I did manage to run 3 other Function Modules asynchronously succeesfully prior to that function call, with the same exact function call syntax. Further more, I have tried editing it with your suggestion but I get the exact same dump.
    The complete function group can be downloaded here (slinkee file):
    https://docs.google.com/leaf?id=0B3sua1Bw4XK4ZmFhNzcwMTgtYzQ0Mi00NzQ4LTg5YTMtNDNlNWUxYTM2NTg3&hl=en_US
    The complete program can be downloaded here (slinkee file):
    https://docs.google.com/leaf?id=0B3sua1Bw4XK4YWJmNjU3ODYtODRmMy00Nzg2LThkNTUtZjNkNDRhZGQ3MTUw&hl=en_US
    The complete ST22 dump can be found here:
    https://docs.google.com/leaf?id=0B3sua1Bw4XK4ZDU1YmFkZDAtOTU5MS00ZTgwLWFlZTktNWZhMDUxMzJlZWNl&hl=en_US
    Basically I ST22 gives me the following:
    Runtime Errors         RPERF_ILLEGAL_STATEMENT
    Date and Time          17.07.2011 05:29:54
    |Short text                                                                                |
    |    Statement "CALL FUNCTION .. DESTINATION/STARTING NEW TASK/IN BACKGROUND TASK"                 |
    |What happened?                                                                                |
    |    Error in the ABAP Application Program                                                         |
    |                                                                                |
    |    The current ABAP program "Z_ZZB1_CLOSE_PERIOD_TEST2" had to be terminated                     |
    |     because it has                                                                               |
    |    come across a statement that unfortunately cannot be executed.                                |
    And it explains it here (but is not helpful / relevant at all) as I ran the program from SE38.
    |Error analysis                                                                                |
    |    There is probably an error in the program                                                     |
    |    "Z_ZZB1_CLOSE_PERIOD_TEST2".                                                                  |
    |    The program was probably called in a conversion exit                                          |
    |    or in a field exit. These are implemented by                                                  |
    |    function modules called CONVERSION_EXIT_xxxxx_INPUT/OUTPUT or                                 |
    |    USER_EXIT_xxxxx_INPUT.                                                                        |
    |    Conversion exits are triggered during screen field transports or                              |
    |    WRITE statements, field exits during field transports from the                                |
    |    screen to the ABAP/4 program.                                                                 |
    |    In this connection, the following ABAP/4 statements are not allowed:                          |
    |                                                                                |
    I hope you try to download the slinkee files and you will notice the call function I performed was no different than the other call function RFC calls that really are working.

  • Calling syntactically incorrect remote function module triggers short dump

    Hi,
    I have some Z Function modules in ABC system and i need to call them remotely from XYZ.
    There are some syntax errors in the FM's of ABC system so in the call of XYZ I am getting dump.
    Can I know how to capture if there is any syntax error in the remote FM of ABC system from XYZ.
    I have got FUNCTION_EXISTS to check the existence.
    Can I have like that some other function to check the syntax?
    Thanks,
    Sham Sundher.

    Hi,
    Check if this link can be of any help.
    [FM for Syntax Check of function modules]
    Regards,
    Vik

  • Dump occured in Function module: ME_CREATE_PO_HEADER

    Dears,
    When I call this FM: ME_CREATE_PO_HEADER, the ABAP Dump occured! But any ABAP check to this FM is OK. The information about the dump is below:
    What happened?
        Error in the ABAP Application Program
        The current ABAP program "SAPLBOS04" had to be terminated because it has
        come across a statement that unfortunately cannot be executed.
        Function module "ME_CREATE_PO_HEADER" was called
        with the parameter "I_ANGDT".
        This parameter is not defined.
    But actually, the parameter 'I_ANGDT' is defined.
    Anyone who can help me explain this problem?  Thanks!
    Best regards,
    Brian Liu
    Edited by: Brian Liu on Jun 4, 2009 10:02 PM

    Hi,
    Please check the variable type that you have passed to import parameter I_ANGDT.
    Hope this may help you.
    Regards,
    Prashant

  • Short dump for update function module

    Hi Folks,
       If I try to raise exception in Update Task function module which is in turn called in Custom BAPI function module. When I test the BAPI stand-alone using explicit COMMIT WORK (For testing)I can see the error in SM13 and it processes further in BAPI. Now when I am using this BAPI for ALE Inbound processing function module to SAP, when I test using testing tool WE19 it crashes when it passes the update FM inside BAPI, and encounteres BAPI_TRANSACTION_COMMIT, the update Function module is executed as encountered and gives me dump at the raised exception and does not show error in SM13. Please suggest how I could overcome this dump.
    Regards,
    Tim

    Hi there,
    Yes. I know that I can details from ST22 Analysis. And I did go through that.
    Here's the Section that explains:
    How to correct the error
        Try to find out why the number of decimal places of the field should be
        2.
        There are various possible options:
        1. The number of decimal places of the imported field has changed in the
           Data Dictionary. Make sure that the number of decimal places of the
           imported field matches the number of decimal places of the field in
           the Data Dictionary.
           If the data cannot be restored from another source, the data of the
           'old' structure must be read by the 'old' structure, converted und
           again eported with the new structure, so that future IMPORTs will
           always function with the new structure.
        2. A new program version is active, which no longer fits the dataset.
           Try to solve the error generating the program
         "ZFI_FM_GET_STD_COSTS==========FT" again. This
           works as follows: Select transaction SE38 in the SAP system. Enter
           the program name "Z_GET_COSTS==========FT". Then activate the
         function 'Generate'.
    1. I made sure that the decimal places matches.
    2. I did re-generate the program.
    But still got the same dump. Interestingly, the program where I am using this FM is working absolutely fine.
    Thanks.

  • Dump:Function module "/GRCPI/GRIA_SPM_SYNC" not found

    Hello Experts,
    When executing EAM Master Data Synch from GRC system, a short dump results with the description "/GRCPI/GRIA_SPM_SYNC" in Plugin system ( Basis 640 ).Plugin system is at latest patch level ( GRCPINW SP12 ).we found that no function module available in plugin system.Could you please suggest or recommend any fix ? your help is much appreciated.
    Regards,
    Rajan

    Rajan,
    I connected GRC 10.0 to Plugin system which is on Basis 640. But gettign similar ABAP dum as you"
    The function module "/GRCPI/GRIA_SPM_SYNC" was called, but cannot be found in the Function Library". I Already implemented following SAP notes:
    0001941542 CALL_FUNCTION_NOT_FOUND dumps on running EAM Sync job or FF
    0002062450 EAM function modules are missing in 640 and 620 releases
    How did you resolve this issue?

  • Problem when using function module PYXX_READ_PAYROLL_RESULT giving dump.

    When i am using PYXX_READ_PAYROLL_RESULT function module to get HR cluster data. I am getting following dump.
    So,can any one help me to solve this issue.I want this function data.
    An exception occurred that is explained in detail below.
    The exception, which is assigned to class 'CX_SY_DYN_CALL_ILLEGAL_TYPE', was
      not caught in
    procedure "PYXX_READ_PAYROLL_RESULT" "(FUNCTION)", nor was it propagated by a
      RAISING clause.
    Since the caller of the procedure could not have anticipated that the
    exception would occur, the current program is terminated.
    The reason for the exception is:
    Call to FORM "IMPORT_RESULT" is incorrect:
    The actual parameter no. 2 has a different data type in the
    PERFORM than requested for the FORM "IMPORT_RESULT" in program "%_T0LJ20".
    Program                                 SAPLHRPAY99_IMPEXP
    Include                                 LHRPAY99_IMPEXPU02
    Row                                     1
    Module type                             (FUNCTION)
    Module Name                             PYXX_READ_PAYROLL_RESULT
    Program                                 SAPLHRPAY99_IMPEXP
    Include                                 LHRPAY99_IMPEXPU02
    Row                                     137
    Module type                             (FUNCTION)
    Module Name                             PYXX_READ_PAYROLL_RESULT

    Find below is my code can u tell me wch type is not true .i tried but not able to find prob solution.
    Plz help me waiting for reply.
    TYPE-POOLS: SLIS.
    DATA : FIELDCATALOG TYPE SLIS_T_FIELDCAT_ALV WITH HEADER LINE,
          it_sort TYPE slis_t_sortinfo_alv WITH HEADER LINE,
          gd_tab_group TYPE slis_t_sp_group_alv,
          gd_layout TYPE slis_layout_alv,
          gd_repid LIKE sy-repid,
          gt_events TYPE slis_t_event,
          gd_prntparams TYPE slis_print_alv,
          it_eve TYPE slis_t_event,
           V_LAYOUT  TYPE SLIS_LAYOUT_ALV.
          wa_eve TYPE slis_alv_event.
    *DATA header TYPE slis_t_listheader WITH HEADER LINE.
    *DATA: ls_fcat   TYPE slis_t_fieldcat_alv,
         l_lin     TYPE i.
    *DATA: ls_event TYPE slis_alv_event.
    DATA : WA_COLNO(2) TYPE N VALUE '1'.
    DATA : REPID LIKE SY-REPID.
    TABLES: PA0001,PA0002,T001P,T528T,T527X,T503T.
    DATA:BEGIN OF IT_PA0002 OCCURS 0,
          PERNR LIKE PA0002-PERNR,
         END OF IT_PA0002.
    DATA:BEGIN OF IT_PA0001 OCCURS 0,
          PERNR LIKE PA0001-PERNR,
          ENAME LIKE PA0001-ENAME,
          PLANS LIKE PA0001-PLANS,
          WERKS LIKE PA0001-WERKS,
          BTRTL LIKE PA0001-BTRTL,
          ORGEH LIKE PA0001-ORGEH,
          PERSK LIKE PA0001-PERSK,
         END OF IT_PA0001.
    DATA: BEGIN OF IT_T528T OCCURS 0,
            PLANS LIKE T528T-PLANS,
            PLSTX LIKE T528T-PLSTX,
          END OF IT_T528T.
    DATA: BEGIN OF IT_T001P OCCURS 0,
            WERKS LIKE T001P-WERKS,
            BTRTL LIKE T001P-BTRTL,
            BTEXT LIKE T001P-BTEXT,
          END OF IT_T001P.
    DATA: BEGIN OF IT_T527X OCCURS 0,
            ORGEH LIKE T527X-ORGEH,
            ORGTX LIKE T527X-ORGTX,
          END OF IT_T527X.
    DATA: BEGIN OF IT_T503T OCCURS 0,
            PERSK LIKE T503T-PERSK,
            PTEXT LIKE T503T-PTEXT,
          END OF IT_T503T.
    DATA:BEGIN OF IT_FINAL OCCURS 0,
          PERNR LIKE PA0001-PERNR,
          ENAME LIKE PA0001-ENAME,
          PLSTX LIKE T528T-PLSTX,
          BTEXT LIKE T001P-BTEXT,
          ORGTX LIKE T527X-ORGTX,
          PTEXT LIKE T503T-PTEXT,
         END OF IT_FINAL.
    *DATA: WI_RT LIKE LINE OF PAYROLL-INTER-RT,
    *DATA: WI_RGDIR LIKE STANDARD TABLE OF PC261 WITH HEADER LINE,
    DATA: IT_EVP TYPE HRPY_TT_RGDIR,
          ls_evp LIKE LINE OF IT_EVP,
          WI_RGDIR LIKE STANDARD TABLE OF PC261 WITH HEADER LINE,
          WI_PAYRESULT TYPE PAY99_RESULT.
         WI_PAYRESULT TYPE STANDARD TABLE OF PAYUS_RESULT WITH HEADER LINE.
    DATA  WG_MOLGA LIKE T500L-MOLGA.
    SELECTION-SCREEN BEGIN OF BLOCK B1.
    SELECT-OPTIONS: S_PERNR FOR PA0001-PERNR,
                    S_BTRTL FOR PA0001-BTRTL,
                    S_ORGEH FOR PA0001-ORGEH.
    SELECTION-SCREEN END OF BLOCK B1.
    START-OF-SELECTION.
      PERFORM GET_DATA.
      PERFORM BUILD_FIELD_CATLOG.
      PERFORM DISPLAY_DATA.
    *&      Form  GET_DATA
          text
    -->  p1        text
    <--  p2        text
    FORM GET_DATA .
      SELECT PERNR
        INTO CORRESPONDING FIELDS OF TABLE IT_PA0002
        FROM PA0002
        WHERE PERNR IN S_PERNR.
      IF IT_PA0002[] IS NOT INITIAL.
        SELECT PERNR ENAME PLANS WERKS BTRTL ORGEH PERSK
           INTO CORRESPONDING FIELDS OF TABLE IT_PA0001
           FROM PA0001
           FOR ALL ENTRIES IN IT_PA0002
           WHERE PERNR  = IT_PA0002-PERNR
           AND   BTRTL IN S_BTRTL
           AND   ORGEH IN S_ORGEH.
      ENDIF.
      IF IT_PA0001[] IS NOT INITIAL.
        SELECT PLANS PLSTX
          INTO CORRESPONDING FIELDS OF TABLE IT_T528T
          FROM T528T
          FOR ALL ENTRIES IN IT_PA0001
          WHERE PLANS = IT_PA0001-PLANS
          AND   SPRSL = 'EN'.
        SELECT WERKS BTRTL BTEXT
          INTO CORRESPONDING FIELDS OF TABLE IT_T001P
          FROM T001P
          FOR ALL ENTRIES IN IT_PA0001
          WHERE WERKS = IT_PA0001-WERKS
          AND   BTRTL = IT_PA0001-BTRTL.
        SELECT ORGEH ORGTX
          INTO CORRESPONDING FIELDS OF TABLE IT_T527X
          FROM T527X
          FOR ALL ENTRIES IN IT_PA0001
          WHERE ORGEH = IT_PA0001-ORGEH
          AND   SPRSL = 'EN'.
        SELECT PERSK PTEXT
          INTO CORRESPONDING FIELDS OF TABLE IT_T503T
          FROM T503T
          FOR ALL ENTRIES IN IT_PA0001
          WHERE PERSK = IT_PA0001-PERSK
          AND   SPRSL = 'EN'.
      ENDIF.
    *DELETE ADJACENT DUPLICATES FROM IT_PA0001 COMPARING PERNR.
      LOOP AT IT_PA0001.
        MOVE IT_PA0001-ENAME TO IT_FINAL-ENAME.
        READ TABLE IT_PA0002 WITH KEY PERNR = IT_PA0001-PERNR.
        IF SY-SUBRC = 0.
          MOVE IT_PA0002-PERNR TO IT_FINAL-PERNR.
        ENDIF.
        READ TABLE IT_T528T WITH KEY PLANS = IT_PA0001-PLANS.
        IF SY-SUBRC = 0.
          MOVE IT_T528T-PLSTX TO IT_FINAL-PLSTX.
        ENDIF.
        LOOP AT IT_T001P WHERE WERKS = IT_PA0001-WERKS AND BTRTL = IT_PA0001-BTRTL.
          MOVE IT_T001P-BTEXT TO IT_FINAL-BTEXT.
        ENDLOOP.
        READ TABLE IT_T527X WITH KEY ORGEH = IT_PA0001-ORGEH.
        IF SY-SUBRC = '0'.
          MOVE IT_T527X-ORGTX TO IT_FINAL-ORGTX.
        ENDIF.
        READ TABLE IT_T503T WITH KEY PERSK = IT_PA0001-PERSK.
        IF SY-SUBRC = '0'.
          MOVE IT_T503T-PTEXT TO IT_FINAL-PTEXT.
        ENDIF.
        CALL FUNCTION 'CU_READ_RGDIR'
          EXPORTING
            PERSNR          = IT_FINAL-PERNR
          BUFFER
          NO_AUTHORITY_CHECK = ' '
          IMPORTING
            MOLGA           = WG_MOLGA
          TABLES
            IN_RGDIR        = WI_RGDIR
          EXCEPTIONS
            NO_RECORD_FOUND = 1
            OTHERS = 2 .
         CLEAR WG_SUM.
        LOOP AT WI_RGDIR INTO ls_evp.
           IF ( WI_RGDIR-FPEND BETWEEN P_STDATE AND P_ENDATE AND
           WI_RGDIR-SRTZA = 'A' ) .
             IF Wg_MOLGA = '10'.
          CALL FUNCTION 'PYXX_READ_PAYROLL_RESULT'
            EXPORTING
              CLUSTERID                    = 'IN'
              EMPLOYEENUMBER               = IT_FINAL-PERNR
              SEQUENCENUMBER               = ls_evp-SEQNR
            READ_ONLY_INTERNATIONAL      = ''
            CHANGING
              PAYROLL_RESULT               = WI_PAYRESULT
            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.
             endif.
        ENDLOOP.
        APPEND IT_FINAL.
      ENDLOOP.
      DELETE ADJACENT DUPLICATES FROM IT_FINAL COMPARING ALL FIELDS.
    ENDFORM.                    " GET_DATA
    *&      Form  BUILD_FIELD_CATLOG
          text
    -->  p1        text
    <--  p2        text
    FORM BUILD_FIELD_CATLOG .
      CLEAR FIELDCATALOG.
      FIELDCATALOG-FIELDNAME = 'PERNR'.
      FIELDCATALOG-SELTEXT_M = 'Emp Code'.
      FIELDCATALOG-COL_POS = WA_COLNO.
      FIELDCATALOG-OUTPUTLEN = 9.
      FIELDCATALOG-EMPHASIZE = 'X'.
      FIELDCATALOG-KEY       = 'X'.
      WA_COLNO = WA_COLNO + 1.
      APPEND FIELDCATALOG TO FIELDCATALOG.
      CLEAR FIELDCATALOG.
      FIELDCATALOG-FIELDNAME = 'ENAME'.
      FIELDCATALOG-SELTEXT_M = 'Emp Name'.
      FIELDCATALOG-COL_POS = WA_COLNO.
      FIELDCATALOG-OUTPUTLEN = 40.
      FIELDCATALOG-EMPHASIZE = 'X'.
      FIELDCATALOG-KEY       = 'X'.
      WA_COLNO = WA_COLNO + 1.
      APPEND FIELDCATALOG TO FIELDCATALOG.
      CLEAR FIELDCATALOG.
      FIELDCATALOG-FIELDNAME = 'PLSTX'.
      FIELDCATALOG-SELTEXT_M = 'Position'.
      FIELDCATALOG-COL_POS = WA_COLNO.
      FIELDCATALOG-OUTPUTLEN = 26.
      FIELDCATALOG-EMPHASIZE = 'X'.
      FIELDCATALOG-KEY       = 'X'.
      WA_COLNO = WA_COLNO + 1.
      APPEND FIELDCATALOG TO FIELDCATALOG.
      CLEAR FIELDCATALOG.
      FIELDCATALOG-FIELDNAME = 'BTEXT'.
      FIELDCATALOG-SELTEXT_M = 'Work Location'.
      FIELDCATALOG-COL_POS = WA_COLNO.
      FIELDCATALOG-OUTPUTLEN = 15.
      FIELDCATALOG-EMPHASIZE = 'X'.
      FIELDCATALOG-KEY       = 'X'.
      WA_COLNO = WA_COLNO + 1.
      APPEND FIELDCATALOG TO FIELDCATALOG.
      CLEAR FIELDCATALOG.
      FIELDCATALOG-FIELDNAME = 'ORGTX'.
      FIELDCATALOG-SELTEXT_M = 'Dept. Description'.
      FIELDCATALOG-COL_POS = WA_COLNO.
      FIELDCATALOG-OUTPUTLEN = 25.
      FIELDCATALOG-EMPHASIZE = 'X'.
      FIELDCATALOG-KEY       = 'X'.
      WA_COLNO = WA_COLNO + 1.
      APPEND FIELDCATALOG TO FIELDCATALOG.
      CLEAR FIELDCATALOG.
      FIELDCATALOG-FIELDNAME = 'PTEXT'.
      FIELDCATALOG-SELTEXT_M = 'Grade Set Code'.
      FIELDCATALOG-COL_POS = WA_COLNO.
      FIELDCATALOG-OUTPUTLEN = 21.
      FIELDCATALOG-EMPHASIZE = 'X'.
      FIELDCATALOG-KEY       = 'X'.
      WA_COLNO = WA_COLNO + 1.
      APPEND FIELDCATALOG TO FIELDCATALOG.
    ENDFORM.                    " BUILD_FIELD_CATLOG
    *&      Form  DISPLAY_DATA
          text
    -->  p1        text
    <--  p2        text
    FORM DISPLAY_DATA .
      REPID = SY-CPROG.
      CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
       EXPORTING
      I_INTERFACE_CHECK                 = ' '
      I_BYPASSING_BUFFER                = ' '
      I_BUFFER_ACTIVE                   = ' '
         I_CALLBACK_PROGRAM                =  REPID
      I_CALLBACK_PF_STATUS_SET          = ' '
      I_CALLBACK_USER_COMMAND           = ' '
      I_CALLBACK_TOP_OF_PAGE            =  'TOP-OF-PAGE'
      I_CALLBACK_HTML_TOP_OF_PAGE       = ' '
      I_CALLBACK_HTML_END_OF_LIST       = ' '
      I_STRUCTURE_NAME                  =
      I_BACKGROUND_ID                   = 'ALV_BACKGROUND'
      I_GRID_TITLE                      =
      I_GRID_SETTINGS                   =
      IS_LAYOUT                         = 'X'
         IT_FIELDCAT                       = FIELDCATALOG[]
      IT_EXCLUDING                      =
      IT_SPECIAL_GROUPS                 =
      IT_SORT                           =
      IT_FILTER                         =
      IS_SEL_HIDE                       =
         I_DEFAULT                         = 'X'
         I_SAVE                            = 'A'
      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
      I_HTML_HEIGHT_TOP                 = 0
      I_HTML_HEIGHT_END                 = 0
      IT_ALV_GRAPHICS                   =
      IT_HYPERLINK                      =
      IT_ADD_FIELDCAT                   =
      IT_EXCEPT_QINFO                   =
      IR_SALV_FULLSCREEN_ADAPTER        =
    IMPORTING
      E_EXIT_CAUSED_BY_CALLER           =
      ES_EXIT_CAUSED_BY_USER            =
        TABLES
          T_OUTTAB                          = IT_FINAL
       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.
    ENDFORM.                    " DISPLAY_DATA

Maybe you are looking for

  • Problem transfering pictures to video ipod.

    sorry if this topic has already been done. i tried to transfer nearly 600 pictures from my pc to ipod using itunes but when i told itunes to transfer them it only took about 75 of them. also the ones it did take where all distorted with incorrect col

  • Rating a List Item using jquery with out using User profile service

    Hi, I dont have access to Central admin and i was not not able to enable USer profile service. can i rate a list item in Sharepoint 2010 using any jquery plugin i got the link http://blogs.msdn.com/b/carloshm/archive/2009/08/24/jquery-rating-in-share

  • Retrieve tomcat information in your servlet

    I have set a startup variable in CATALINA_OPTS, however i'm not very sure that it's actually been set and that tomcat has the variable. Is there a way to display such things in a servlet? Retrieve tomcat information? Get all variables, tomcat version

  • No Tables found for a connected database in a DataSet Dialog

    For a new ASP.net page, I have opened a DataSet dialog by clicking the Bindings tab of the Application pane. After typing a DataSet name and selecting a connection, the Table box showed "No Tables found." The database connection was tested and it was

  • Error message when I try to open ebooks

    When I try to open acsm files or epub files in adobe editions I am told there is an error.  E_ACT_NOT_READY.  This applies with the new 3.0 Adobe Editions and to different books, e.g. downloaded from my public library. THanks