Dump at RFC Call - CALL_FUNCTION_SIGNON_INCOMPL

Hello Guru's,
after a system copy we have the following issue.
At every RFC connection in SM95 we get a dump with error CALL_FUNCTION_SIGNON_INCOMPL.
The error in dev_wXX are
N  RSEC: The entry with identifier /HMAC_INDEP/RFC_EXTERNAL_TICKET_4_TRUSTED_SYSTEM
N  was encrypted by a system
N  with different SID and cannot be decrypted here.
M  *** ERROR => LocFunc_ReadKeyFromDB(): Error in function: 'RSecDReadItem()' (errorcode=-2) [sntxxhmac.c  1298]
A  *** ERROR => RFC Signon> Failure in ab_MakeTicketSndExternal calling SntHMAC_SetHMACKey (rc: 53) [abrfcsgn.c   1019]
A  TH VERBOSE LEVEL FULL
A  ** RABAX: end RX_GET_MESSAGE
we tried to change the PSE tickets in STRUST but there the error, too.
We have checked SAP notes 171805, 684788, 901256, SDN, SAP xSearch, Bing etc. but nothing. Need help!
Have anyone a suggestion?!
regards
chris

Hi,
we have the same problem.
Systemcopy --> OK
Post works --> OK
run sgen --> OK
After sgen system dumps all the time where an ABAP RFC will be used (for example sm59-Connection Test, sgen, ...)
We tried to clear the abap loads, but problem still exists.
Checked all notes, google, sdn, sap search... nothing found.
SAP 7.01 on AS400, Kernel 111
Regards
Thomas
PS: note 1523313 does not help
Edited by: Thomas Mühl on Nov 25, 2010 11:23 PM

Similar Messages

  • Short Dump in rfc call in background

    Hi All,
    I am getting an RFC error short dump in a background program the short dump message says "RFC_ERROR_SYSTEM_FAILURE: no system found in another group for import queue", the same RFC works fine in foreground and in another background program. I looked into the target system, there is no dump generated.
    I tested it in one system it works fine but in another it generates a short dump.  I am trying to understand why this is happening any inputs are welcome.
    Thanks in advance,
    Barjinder

    It has been resolved the called FM was raising an exception and it was not captured in the calling FM.
    Thanks to all.

  • [RFC][Authorization] Prevent Dump on RFC Call

    Hi,
    I would like to have a tool to check consistencies throughout different SAP systems for a given user.
    For this, I call the Bapi called 'BAPI_USER_GET_DETAIL'. The problem is that, depending RFC user defined in SM59, it may end by a DUMP.
    Thus, is there a way to test the RFC user rights in order to prevent the Dump ?
    The problem is that calling another RFC function module may also result in a Dump, isn't it...
    Thanks for your replies!

    You may have to try for authorization before hand.  You have tried doing authority checks on one of the following authorization objects?
    S_RFC        Authorization check for RFC access                      
    S_RFCACL     Authorization Check for RFC User (e.g. Trusted System) 
    authority-check object 'S_RFC'
             id 'RFC_TYPE' field '__________'
             id 'RFC_NAME' field '__________'
             id 'ACTVT' field '__________'.
    if sy-subrc = 0.
    * Then do the BAPI
    Endif.
    authority-check object 'S_RFCACL'
             id 'RFC_SYSID' field '__________'
             id 'RFC_CLIENT' field '__________'
             id 'RFC_USER' field '__________'
             id 'RFC_EQUSER' field '__________'
             id 'RFC_TCODE' field '__________'
             id 'RFC_INFO' field '__________'
             id 'ACTVT' field '__________'.
    if sy-subrc = 0.
    * Then do the BAPI
    Endif.
    Regards,
    Rich Heilman

  • Prevent a dump after a RFC call

    Hello.
    I created a function group wich is used in a program through a RFC call.
    I'm trying to prevent a dump of the program, in case the RFC can't reach his destination for example.
    How can i do that ? Is it in the exception of the function or do you have other solutions ?
    Thanks for the help.

    Hi helder,
    1. we have to manually add the code/lines
      for exceptions, almost in all RFC calls.
    <b>(THEN IT WON'T GIVE RUN TIME ERROR)</b>
    2.
    EXCEPTIONS
    SYSTEM_FAILURE  = 1
    COMMUNICATION_FAILURE  = 2
    3 just copy paste
    report abc.
    CALL FUNCTION 'GUI_RUN' DESTINATION 'ABC'
      EXPORTING
        COMMAND          = 'XYZ'
      PARAMETER        =
      CD               =
    IMPORTING
      RETURNCODE       =
    EXCEPTIONS
    SYSTEM_FAILURE  = 1
    COMMUNICATION_FAILURE  = 2
    regards,
    amit m.

  • SAP R/3 RFC Call to XI

    Hallo,
    My scenario is as follows: when sending a RFC to XI via the RFC adapter, I get a short dump with the following error: "the error occurred in an RFC call to another system (XI).The termination occurred in the function "RfcExtendedReceive" of the SAP
    Basis System, specifically in line 392 of the module
    "//bas/640_REL/src/krn/rfc/abrfcrcv.c#2".
    The internal operation just processed is "FUNC".
    The internal session was started at 20060125163632".
    The RFC adapter has been configured as the Sender and all the parameters populated with the system details.
    Has someone seen this eror before?
    Please assist.
    Thanks,
    Catherine

    Maybe you're invoking RFC synchrounously from ABAP code and your receiving scenario is on Asynchrounous interfaces? What are you doing then in XI with data sent by the RFC?
    Message was edited by: Alessandro Guarneri

  • 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

  • Error during loading of transaction data: An RFC call-up triggered the ...

    Dear Sirs,
    during loading of master data from a 4.6C SAP system to BI 7.0 SP9 I get the following error during processing (data packet).
    <i>"An RFC call-up triggered the exception (ID: RSAR NO: 503) "</i>
    The strange thing with this error is that it emerged today, after successfully loading master data and a subset of transaction data yesterday from same source system.
    Has anyone else come across this error, and can tell us where we should look for a possible solution? (or a better error explaination).
    The RFC connections works fine when testing in SM59, and was functioning yesterday. No relevant dumps in either system.

    Hi folks,
    I am also interested in this error.
    Thanks.

  • CALL_FUNCTION_NOT_FOUND dump on RFC eventhough it exists and is active.

    Hi,
    From SRM system in a BAdi, I am calling a custom function module (RFC) which exists in remote ECC system to make certain checks.
    The problem is that when the system calls the customer function module, it gives dump in ST22 as :
    Runtime Errors : CALL_FUNCTION_NOT_FOUND
    details as below :
    What happened?
        The function module "YLN_TAXCODE_SELECTION_IN" is called,
        but cannot be found in the library.
        Error in the ABAP Application Program
        The current ABAP program "YCL_IM_LEN_TAXCODEDET_IN======CP" had to be
         terminated because it has
        come across a statement that unfortunately cannot be executed.
    What can you do?
        Note down which actions and inputs caused the error.
        To process the problem further, contact you SAP system
        administrator.
        Using Transaction ST22 for ABAP Dump Analysis, you can look
        at and manage termination messages, and you can also
        keep them for a long time.
    I have checked that the above Custom Function module exists and is active in ECC system.
    Please give inputs and suggest.
    Thanks.

    I tried around a little bit:
    1) valid function name and valid destination: works fine
    2) valid function name and destination 'NONE':
    - dumps CALL_FUNCTION_REMOTE_ERROR and CALL_FUNCTION_NOT_FOUND in calling system
    3) valid function name and invalid destination:
    - dump CALL_FUNCTION_NO_DEST in calling system
    4) invalid function name and valid destination:
    - dumps CALL_FUNCTION_REMOTE_ERROR in calling system and CALL_FUNCTION_NOT_FOUND in remote system
    5) valid function name and empty destination:
    - dump CALL_FUNCTION_NOT_FOUND in calling system
    Are you sure you don't have a typo in your function name, as in 4), and that you are calling the correct destination (not sure how many you have in your landscape)?
    Thomas

  • RFC calls keep old buffer tables PS and PSINFO

    Hello!
    I have written a BSP application for an R/3 system which is release 4.6c.  For that reason, we have a stand-alone WebAS which must make RFC's to the core R/3 system to retrieve and update HR data.
    Originally the RFC destination to connect to the core R/3 system from WebAS was not a trusted connection, but we ran into problems with structural authorizations where the RFC was not returning all of the data for the actual user.  We found that the problem was related to the fact that the RFC destination was using a hard-coded user ID to make the connection to the R/3 HR system.  That particular user ID was being used as SY-UNAME in a routine used by structural authorizations, and it wasn't finding the correct data for the User ID that was entered as the RFC user.  Therefore, we made the change on the RFC destination in WebAS so that now we have the "Current User" checkbox checked, the hard-coded user ID and password has been removed, and now the "Trusted System" radio button is selected.  Those changes resolved our issue with structural authorizations because now the routine has the actual user ID as SY-UNAME instead of the generic RFC user ID.
    I'm not sure if the RFC trusted connection is part of this issue or not, but I wanted to provide that information.
    Here is the actual issue...  Several of the RFC's update different HR infotypes, and most of these use function module HR_INFOTYPE_OPERATION to insert new HR infotype records or modify existing ones, etc.  We started receiving short dumps and getting strange results, and I was able to track it down to the fact that the PS and PSINFO buffer tables are not being refreshed.  I was expecting that these tables would be "clean" everytime I make a new RFC call.  However, this is not the case.  I watched this in debugger, and I see that the PS and PSINFO tables are still filled from the last RFC whenever I make a subsequent RFC!  When it finally gets to the point that dialog HR_MAINTAIN_MASTER_DATA is called, it still has the old data in these tables, so it tries to process the infotypes AGAIN.  This is very bad!  For one thing, the previous RFC which used HR_INFOTYPE_OPERATION might have been for an applicant number (TCLAS = 'B') and the current RFC might be for an employee number (TCLAS = 'A').  We have seen this happen, and it resulted in a short dump (it's a long story - just trust me when I say that it is causing a lot of problems!).
    I was able to resolve the issue in one of my function modules by adding a call to function module HR_PSBUFFER_INITIALIZE at the beginning of the function module.  However, I don't want to have to add this to the beginning of every function module that I write.  Also, I think that this is a problem which needs to actually be solved instead of using a band-aid like this.
    This is what I want to know - Why are these buffer tables still filled from the last RFC whenever I make the next RFC?  Is this because it is set up as a "trusted" connection?  Is this related to the fact that my BSP application is stateful instead of stateless?  Does something need to be changed on my RFC destination configuration so that each RFC starts out with "clean" buffer tables?
    Thanks in advance for whatever advice you can offer me!
    Shannon

    I don't think this has anything to do with the trusted connection. It is because your application is stateful.  If you watch in the process overview in your system you will see that with a stateful application, no only does your BSP session state remain between calls, but also you should see a thread per user for the RFC connection. 
    That means that the Session state is also still alive on your R/3 4.6C system for a period of time as well (RFC keep alive time).  We have used this to our advantage before when building BSP applications (caching of data in Global Data of a Function Group).
    However you have the opposite problem.  It sounds like you would want to call the HR_PSBUFFER_INIT at the start of each transaction.  If you writting this as a Classic Dynpro Transaction would you not do the same? 
    You might try calling RFC_CONNECTION_CLOSE as well.  This should close the connection and end the state on the R/3 side.  However you will have the performance overhead of reestablishing a new connection on the next call.  But RFC connections seem to be very efficient.  I doubt you would notice any performance difference.

  • Problem passing a table parameter in rfc call using the function control

    I try to pass a Table as parameter to a Function Module using the SAP.Functions library (part of SAP frontend controls) from a Visual Basic (VBA) program.
    The function module has been verified to work when invoked from SAP FrontEnd Function Builder.
    The SAP RFC Control is created with
    Set sapFunctions=CreateObject("SAP.Functions")
    Following code snippet shows how I attempt to set exports and add a table row before calling the function module:
    sapFunctions.Connection = sapConnection
    Set sapMaterialUpd = sapFunctions.Add("Z_SD_BAPI_SALES_DATA_UPD")
    With sapMaterialUpd
    <i>'set exports</i>
         .Exports("PA_GLPUPDLEVEL") = "S"
         .Exports("PA_VKORG") = "FI14"
    <i>'append table row</i>
         .Tables("IT_SALES_DATA_UPD").AppendRow
         .Tables("IT_SALES_DATA_UPD")(1, "VKORG") = "FI14"
         .Tables("IT_SALES_DATA_UPD")(1, "MATNR") = "W_3100"
         .Tables("IT_SALES_DATA_UPD")(1, "DATBI") = "99991231"
         .Tables("IT_SALES_DATA_UPD")(1, "DATAB") = "20041231"
         .Tables("IT_SALES_DATA_UPD")(1, "KBETR") = "2222"
         .Tables("IT_SALES_DATA_UPD")(1, "KONWA") = "EUR"
    End With
    <i>'call the function module</i>
    If sapMaterialUpd.Call() = True Then
        <i>'do something with the return tables here...</i>Else
        Debug.Print sapMaterialUpd.Exception
    End If
    The Call() returns <b>FALSE</b> and the exception is <b>"SYSTEM_FAILURE"</b>. The connection also resets.
    The local logfile that the control generates shows that an exception occurs at the point of the call:
    <i>10.02.2005  17:54:20.766 Packing Parameters for Z_SD_BAPI_SALES_DATA_UPD
    Packing Parameter PA_GLPUPDLEVEL.
    Packing Parameter PA_VKORG.
    Packing Table 0.
    Packing Table 1.
      10.02.2005  17:54:20.766 *** Calling  RFC Function 'Z_SD_BAPI_SALES_DATA_UPD'
      10.02.2005  17:54:20.986 RFC CALL status = RFC_SYS_EXCEPTION
      10.02.2005  17:54:20.986 RFC Error: RFC_IO27
      -Status:CODE=CM_DEALLOCATED_NORMAL STATUS=CM_NO_STATUS_RECEIVED DATA=CM_COMPLETE_DATA_RECEIVED ID=69415076
      -Message:connection closed
      -Internal Status:IO HANDLE=23 DRV=EXT LINE=1420 CODE=27 : GET ID=ffff LINE=861 CODE=7
      10.02.2005  17:54:20.986 Function call finished.</i>
    Seen next code snippet. If the Table object is not touched, the function call goes through without any problems:
    sapFunctions.Connection = sapConnection
    Set sapMaterialUpd = sapFunctions.Add("Z_SD_BAPI_SALES_DATA_UPD")
    With sapMaterialUpd
    'set exports
        .Exports("PA_GLPUPDLEVEL") = "S"
        .Exports("PA_VKORG") = "FI14"
        'do <b>not</b> append a table row, for testing only ;-)</b>
    End With
    <i>'call the function module</i>
    If sapMaterialUpd.Call() = True Then
    <i>    'do something with the return tables here...</i>
    Else
        Debug.Print sapMaterialUpd.Exception
    End If
    This code works perfectly when calling the function. It returns TRUE and behaves normally. The function module returns descriptive response text in a table telling that the table was empty, according to the BAPI implementation.
    So is there something special needed here <i>after</i> appending the table row and <i>before</i> making the Call to properly attach the table as a parameter for the function module?
    Can this be a bug in the SAP RFC Control? The version of the wdtfuncs.ocx is 6206.6.45.54.
    Any hints are welcome!

    hi All partner,
    who solved this problem , I meet it too and
    can't clear it.
    SAPfunc := sapfunctions1.Add('z_get_sfcs_dn_mo');    
    SAPitab := sapfunc.tables.item ('I_DNMO');
    SAPitab.appendrow;                                       SAPitab.value(1,'MANDT') := '220'; 
    SAPitab.Value(1,'VBELN') := '2150000001';
    SAPitab.Value(1,'POSNR') := '50';
    SAPitab.value(1,'MATNR') := '19-99999-00'; 
    SAPitab.value(1,'AUFNR') := '921241512001';
    SAPitab.value(1,'DEDAT') := '2005/09/09';
    SAPitab.value(1,'LFIMG') := '100';  
    IF  SAPfunc.call = true then
      begin
      end
    else
        begin
        showmessage('call fail!!') ;
        end;
    end;
    RFC source code as below
    FUNCTION z_get_sfcs_dn_mo.
    ""Local interface:
    *"  TABLES
    *"      I_DNMO STRUCTURE  ZDN_MO
      data: wa type zdn_mo.
      LOOP AT i_dnmo.
        wa-mandt = i_dnmo-mandt.
        wa-vbeln = i_dnmo-vbeln.
        wa-posnr = i_dnmo-posnr.
        wa-matnr = i_dnmo-matnr.
        wa-aufnr = i_dnmo-aufnr.
        wa-dedat = i_dnmo-dedat.
        wa-lfimg = i_dnmo-lfimg.
       modify  zdn_mo from wa.
        insert into zdn_mo values wa.  --dump at here
        commit work.
      ENDLOOP.
    T/C: ST22 error message say at
      insert into zdn_mo values wa. ---dump at here
    the sapfunc.call returns fail.
    Message was edited by: jorry wang

  • Question on service userid - for RFC call

    Hi
       In XI 3.0 SP18 , we are making a RFC call from XI mapping runtime - to XI's ABAP stack - RFC function module . In the RFC receiver communication channel , I tried using service user XIISUSER , XIAPPLUSER for this RFC call - I got short dumps on XI ABAP stack mentioning that these two service users do not have authorization to make RFC calls -
    Does anybody out there know what service user on XI has RFC call authorization that can used to make RFC calls onto XI ABAP stack from its mapping runtime ?
    Correct answers will be rewarded rightaway. Thanks for your time in advance.

    Hi,
    u have to make entry in sld...
    Hi,,
    2 Introduction
    Configuring IDoc adapter in Exchange Infrastructure 3.0 requires some configuration on the SAP
    systems, for both XI and the backend system where the IDoc message is to be sent. These steps, although
    simple, are many times missed or mis-configured, causing the delivery of messages to fail.
    Since IDoc adapter uses the ABAP stack, instead of J2EE, the configuration requirements are mainly in
    ABAP.
    Setting up IDoc adapters requires the XI integration server to be able to communicate with the backend
    SAP system, and also to make sure that the Logical System Name used when posting IDoc exists on the
    backend SAP system.
    3 The Step By Step Solution
    The basic steps for the IDoc configuration are outline below:
    1. Configure SM59 on XI to communicate to SAP backend system.
    2. Configure port on XI for IDoc communication.
    3. Create or verify the Logical System Name on the SAP backend system.
    4. Create or verify business system in XI’s System Landscape Directory.
    5. Verify the Logical System Name of the business system.
    6. Verify or add the Logical System Name for the sender business system.
    7. Create/configure the Communication Channel for the IDoc receiver adapter
    3.1 Configure SM59 on XI to communicate to SAP backend system.
    1. Using transaction SM59, create an RFC destination with Connection Type = “3”.
    In this example, the RFC destination name is “NDVCLNT510”.
    2. Enter the logon information:
    3. Test the connection by clicking on “Testing connection” and “Remote logon”.
    Both must be successful.
    3.2 Configure port on XI for IDoc communication.
    4. Go to transaction IDX1 on XI, and create a port. In this example, the Port name is “SAPNDV”.
    • &#61472;The Port name must be in the form of “SAPxxx”, where xxx is the system ID of the backend SAP
    system.
    • The Client must be the client number of the backend SAP system.
    • Select the RFC Destination which was created in the previous step.
    3.3 Create or verify the Logical System Name on the SAP backend system.
    5. Enter transaction SALE on the SAP backend system.
    6. Create or verify the Logical System Name. In our example, NDVCLNT510 is verified.
    3.4 Create or verify business system in XI’s System Landscape Directory.
    The business system name for the SAP backend system must contain a valid Logical System Name. This Logical System Name is the one verified or created in the previous step.
    7. In the System Landscape Directory, select the SAP backend business system. If one does not exist, then create the business system. Verify the Logical System Name.
    3.5 Verify the Logical System Name of the business system.
    8. In the Integration Directory, doubleclick on the business system (in our example, it is NDVCLNT510).
    Navigate the menu:
    Service • Adapter Specific Identifiers.
    If information is empty or incorrect, then it will have to be synchronized with the content of the System Landscape Directory. Follow the steps below for synchronization.
    9. (Optional) Synchronization of the business system in Integration Directory to the business system in System
    Landscape Directory.
    • &#61472;Double-click on the business system in the Integration Directory.
    • &#61472;Switch to Edit mode.
    • &#61472;Select menu: Service • Adapter-Specific Identifiers
    10. (Optional) Within the dialog box, click on the button as indicated below to resynchronize.
    11. (Optional) If the expected data from the System Landscape Directory is not updated, then the SLD cache may need to be cleared first.
    3.7 Create/configure the Communication Channel for the IDoc receiver adapter.
    15. In the Integration Directory, create an IDoc receiver communication channel.
    • &#61472;The RFC Destination is from step 3.1.
    • &#61472;The Port is from step 3.2.
    NOTE:
    There is no need to create an IDoc sender Communication Channel for XI. Instead, the backend SAP system must be configure to send the IDoc to XI.
    4 Appendix
    Transaction: IDX2
    There are a couple of situation where IDX2 can be useful on the XI system.
    1. When we want to test connection between the XI and SAP backend system.
    2. When an IDoc has changed, and the meta data stored in XI needs to be update. When an IDoc is sent from the SAP backend system to XI, XI will first check to see if the meta data for the IDoc is already in its persistent cache. If not, then XI will use the configuration in IDX1 to retrieve the IDoc meta data from the backend system. If the
    meta is already in cache, then it will NOT do so. Therefore, when an IDoc has changed, it is necessary to manually update the new meta data on XI, or delete it from the cache, so that the latest version can be retrieved. IDX2 is used for this purpose.
    Go to transaction IDX2 and click on “Create”.
    Enter the IDoc Type and the Source Port as defined in step #2. Click “Continue”.If successful, the following will show up. If error occurs, then the IDX1 configurations will need to be re-checked.
    Reward points if find useful.

  • RFC call do not return any value

    Hi All,
    I have an RFC written in one R/3 system(call center R/3) and i am calling this RFC in the ERP system.
    If i try to run the RFC locally in the call center system ,it runs correctly and returns me proper values.
    But when i try  to call it from other R/3 system(ERP) the RFC does not return value.(both cases i am passing same parameters).
    Also , RFC parameters are defined with pass by value option.
    I am not able to trace why this behaviour,can anyone pin point what could be the possible cause of error.
    Thanks in advance,
    Swati

    No ,there i snot RFC connection problem ,i have checked it from SM59.
    Neither do i get any dump or error of no authorization.In fact the sy-subrc after the RFC call is 0.
    St22 do not have any trace for the same.
    my RCC call is something like this,
    IF dest <> ' '.
    CALL FUNCTION 'Z_GET_CIC061' DESTINATION dest
                      EXPORTING
                           p_comp        = itab_cic-company
                           p_asc_code    = itab_cic-customer
                           p_wbill_no    = itab_cic-bill_no
                      IMPORTING
                           e_tr_no       = tr_no
                           e_model_code  = model_code
                           e_data_origin = data_origin
                     EXCEPTIONS
                             communication_failure = 1
                             system_failure        = 2.
    ELSE.
                MESSAGE i000 WITH 'RFC Destination is empty!'.
                EXIT.
              ENDIF.
    Can anyone please suggest whats wrong in the above code.
    Also what is transaction RFC call?is it related to what i am using in the above code of mine.
    Thanks in advance,
    Swati

  • RFC call in background error

    We are having a unique problem in upgrade BW system. We have several RFC function calls in start routine and abap programs to R/3 and APO systems. After the upgrade these calls are not working in background. When we run the program online/dialog the RFC calls are fine and we get the data back. But when run in background we get CALL_FUNCTION_REMOTE_ERROR with  "Name or password is incorrect. Please re-enter" message in the dump.
    We have checked the RFC destination password for ALEREMOTE and they are okay. We have even tried all upper case or all lower case password options but still does not work. It seems like RFC call in background from BI 70 to non-70 (APO 3.0), the system is not passing the password in right format or something related to encryption problem.
    We came across following links but not sure if it applies. Any input on this topic is appreciated.
    Note: 792850
    http://help.sap.com/saphelp_nw04s/helpdata/en/52/6717ed439b11d1896f0000e8322d00/frameset.htm
    Regards
    -Bala

    Michael,
    It is not the problem with the user. All or any user - works fine when run online and fails in the background.
    Regards
    -Bala

  • Finding caller program in a RFC call

    Hi experts,
    We are having lots of CALL_FUNCTION_NOT_FOUND short dumps in one of our systems. The errors are caused because other systems call a function that does not exist, so the dumps are created.
    What we would like to know is what program is doing these calls, since all we can see in the short dump is the caller system and the function it is trying to access, but not the exact program where the call is performed so we can fix the code.
    Thanks in advance for your support.

    Sorry if this is too much of a wall of text, I can't find an "attach file" type feature.
    ABAP runtime errors    CALL_FUNCTION_NOT_FOUND
           Occurred on     11.12.2006 at 10:04:34
    Function module "Y_EF_DETERMINE_PICTURE" not found.
    What happened?
    The function module "Y_EF_DETERMINE_PICTURE" was called, but cannot be
    found in the Function Library.
    The current ABAP/4 program "SAPMSSY1 " had to be terminated because
    one of the statements could not be executed.
    This is probably due to an error in the ABAP/4 program.
    What can you do?
    Note the actions and input that caused the error.
    Inform your SAP system administrator.
    You can print out this message by choosing "Print". Transaction ST22
    allows you to display and manage termination messages, including keeping
    them beyond their normal deletion date.
    Error analysis
    The program "SAPMSSY1 " contains a CALL FUNCTION statement. The name
    of the function module to be called is "Y_EF_DETERMINE_PICTURE".
    No function module exists with the name "Y_EF_DETERMINE_PICTURE".
    All function modules are stored in the Function Builder (SE37).
    Possible reasons:
    a) Wrong name specified. Particular attention should be paid
       to upper/lower case and underscores ("_").
    or
    b) Transport error
    c) In the case of an enqueue/dequeue module, the lock object
       may not have been activated (ABAP Dictionary).
    How to correct the error
    Check the last transports to the R/3 System.
    Is the program "SAPMSSY1 " currently being changed?
    If an enqueue/dequeue module is involved, is the activation
    of the lock object missing in the ABAP/4 Dictionary?
    If the error occurred in a non-modified SAP program, you may be
    able to find a solution in the SAP note system.
    If you have access to the note system yourself, use the following
    search criteria:
    "CALL_FUNCTION_NOT_FOUND"
    "SAPMSSY1 " or "SAPMSSY1 "
    "REMOTE_FUNCTION_CALL"
    Function modules with names similar to "Y_EF_DETERMINE_PICTURE":
    Y_EF_USEX_DETERMINE_TAX
    Y_GF1_DETERMINE_RECTYPE
    Y_GK_DETERMINE_PRCTR
    Y_EF_USEX_PICTURE_SUBMIT
    Y_EF_USEX_SHOW_PICTURE
    Y_EF_RFC_PICTURE_POST
    Y_GF1_DETERMINE_SBU
    Y_GF_DETERMINE_VERSION
    Y_GF_DETERMINE_DATE_PREVMON
    Y_GF1_DETERMINE_CURRENT_PERIOD
    If you cannot solve the problem yourself, please send the
    following documents to SAP:
    1. A hard copy print describing the problem.
       To obtain this, select the "Print" function on the current screen.
    2. A suitable hardcopy prinout of the system log.
       To obtain this, call the system log with Transaction SM21
       and select the "Print" function to print out the relevant
       part.
    3. If the programs are your own programs or modified SAP programs,
       supply the source code.
       To do this, you can either use the "PRINT" command in the editor or
       print the programs using the report RSINCL00.
    4. Details regarding the conditions under which the error occurred
       or which actions and input led to the error.
    System environment
    SAP Release.............. "46C"
    Application server....... "sapgp1s"
    Network address.......... "52.99.71.21"
    Operating system......... "AIX"
    Release.................. "5.3"
    Hardware type............ "00C4449E4C00"
    Database server.......... "sapgp1s"
    Database type............ "DB6"
    Database name............ "GP1"
    Database owner........... "SAPR3"
    Character set............ "en_US.ISO8859-1"
    SAP kernel............... "46D"
    Created on............... "Aug 26 2005 22:40:31"
    Created in............... "AIX 1 5 0056AA8A4C00"
    Database version......... "DB6_71 "
    Patch level.............. "2113"
    Patch text............... " "
    Supported environment....
    Database................. "DB6 06., DB6 07., DB6 08.*"
    SAP database version..... "46D"
    Operating system......... "AIX 1 4, AIX 2 4, AIX 3 4, AIX 1 5, AIX 2 5, AIX 3
    5, , System build information:, -
    , LCHN :
    User, transaction...
    Client.............. 000
    User................ "SAPSYS"
    Language............ "E"
    Transaction......... " "
    Program. ........... "SAPMSSY1 "
    Screen. ............ "SAPMSSY1 3004"
    Line of screen...... 2
    Information about Remote Function Call (RFC) Caller:
    System.............. "WP1 "
    Database release.... "46C "
    Kernel release. .... "46D "
    Connection type. ... "3 " (2 = R/2, 3 = R/3, E = Extern, R = Reg.
    Call type........... "S-" (S = synch., a/A = asynch., T = transactional
    Client.............. 510
    User................ "PC1706 "
    Transaction......... "/COCKPIT/1 "
    Function module..... "Y_EF_DETERMINE_PICTURE"
    Call destination.... "GP1590"
    Source server....... "wsdux44_WP1_10"
    Source IP address... "52.99.71.124"
    Additional information about RFC logon:
    Trusted relationship " "
    Logon return code... " "
    Trusted return code. " "
    Note: In Releases earlier than 4.0, some of the above information about
    RFC calls may not be available.
    Information on where termination occurred
    The termination occurred in the ABAP/4 program "SAPMSSY1 " in
    "REMOTE_FUNCTION_CALL".
    The main program was "SAPMSSY1 ".
    The termination occurred in line 67
    of the source code of program "SAPMSSY1 " (when calling the editor 670).
    Source code extract
    000370   ENDMODULE.
    000380
    000390   MODULE %_RFCDIA_CALL OUTPUT.
    000400       "Do not display screen !
    000410       CALL 'DY_INVISIBLE_SCREEN'.
    000420       PERFORM REMOTE_FUNCTION_DIACALL.
    000430   ENDMODULE.
    000440
    000450   MODULE %_CPIC_START.
    000460     IF SY-XPROG(4) = '%RFC'.
    000470       PERFORM REMOTE_FUNCTION_CALL USING RFCTYPE_EXTERNAL_CPIC.
    000480     ELSE.
    000490       CALL 'APPC_HD' ID 'HEADER' FIELD HEADER ID 'CONVID' FIELD CONVID.
    000500       PERFORM CPIC_CALL USING CONVID.
    000510     ENDIF.
    000520   ENDMODULE.
    000530
    000540
    000550   FORM CPIC_CALL USING CONVID.
    000560     COMMUNICATION SEND ID CONVID BUFFER HEADER.
    000570     IF SY-SUBRC EQ 0.
    000580       PERFORM (SY-XFORM) IN PROGRAM (SY-XPROG).
    000590     ELSE.
    000600       MESSAGE A800.
    000610     ENDIF.
    000620   ENDFORM.
    000630
    000640
    000650   FORM REMOTE_FUNCTION_CALL USING VALUE(TYPE).
    000660     DO.
          CALL 'RfcImport' ID 'Type' FIELD TYPE.
    000680       PERFORM (SY-XFORM) IN PROGRAM (SY-XPROG).
    000690       RSYN >SCONT SYSC 00011111 0.
    000700     ENDDO.
    000710   ENDFORM.
    000720
    000730   FORM REMOTE_FUNCTION_DIASTART.
    000740     DO.
    000750       CALL 'RfcImport' ID 'Type' FIELD RFCTYPE_RFCDIA.
    000760       PERFORM (SY-XFORM) IN PROGRAM (SY-XPROG).
    000770       "Parking position for next request
    000780       RSYN >SCONT SYSC 00011111 10.
    000790       "ALternativ : Free mode
    000800       "COMMIT WORK.
    000810       "SYSTEM-CALL FREE MODE 0.
    000820     ENDDO.
    000830   ENDFORM.
    000840
    000850   FORM REMOTE_FUNCTION_DIACALL.
    000860       SY-XCODE = '%_@no@'.
    Contents of system fields
    SY field contents..................... SY field contents.....................
    SY-SUBRC 0                             SY-INDEX 1
    SY-TABIX 0                             SY-DBCNT 0
    SY-FDPOS 0                             SY-LSIND 0
    SY-PAGNO 0                             SY-LINNO 1
    SY-COLNO 1
    Chosen variables
    Name.......................... Contents.1........2........3....+....4
    SY-XPROG
                                   2222222222222222222222222222222222222222
                                   0000000000000000000000000000000000000000
    SY-XFORM                       Y_EF_DETERMINE_PICTURE
                                   554454454544445544555422222222
                                   9F56F45452D9E5F093452500000000
    %_SPACE
                                   0
                                   0
    SY-MSGID
                                   22222222222222222222
                                   00000000000000000000
    EBC_TO_ASC-X05                 P&QéRêSëTèUíVîWïXìY~ZÜ[$*])^;_^
                                   525E5E5E5E5E5E5E5E575D5252525355
                                   06192A3B485D6E7F8C9EACB4CAD9EBFE
    RFCTYPE_QUEUE                  6
                                   0000
                                   0006
    %_PRINT                            000
                                   2222333222222222222222222222222222222222
                                   0000000000000000000000000000000000000000
    ... +  40
                                   2222222222222222222222222222222222222222
                                   0000000000000000000000000000000000000000
    ... +  80                                0 ########
                                   2222222222320000000022222222222222222222
                                   0000000000000000000000000000000000000000
    ... + 120
                                   22222222
                                   0000000
    SY-MSGNO                       000
                                   333
                                   000
    EBC_TO_ASC-X04                 @ A BâC{DàEáFãGåHçIñJÄK.L<M(N+O!
                                   424A4E474E4E4E4E4E4F4C4243424242
                                   0010223B405163758791A4BECCD8EBF1
    SY-MSGV1
                                   2222222222222222222222222222222222222222
                                   0000000000000000000000000000000000000000
    ... +  40
                                   2222222222
                                   0000000000
    SY-MSGV2
                                   2222222222222222222222222222222222222222
                                   0000000000000000000000000000000000000000
    ... +  40
                                   2222222222
                                   0000000000
    SY-MSGV3
                                   2222222222222222222222222222222222222222
                                   0000000000000000000000000000000000000000
    ... +  40
                                   2222222222
                                   0000000000
    SY-MSGV4
                                   2222222222222222222222222222222222222222
                                   0000000000000000000000000000000000000000
    ... +  40
                                   2222222222
                                   0000000000
    %_?NOT_ASSIGNED?
                                   2222
                                   0000
    SPACE
                                   2
                                   0
    SY-REPID                       SAPMSSY1
                                   5454555322222222222222222222222222222222
                                   310D339100000000000000000000000000000000
    TYPE                           3
                                   0000
                                   0003
    SYST                           ########################################
                                   0000000000000000000000000000000000000000
                                   0001000000000000000000000000000000000000
    ... +  40                      ########################################
                                   0000000000000000000000000000000000000000
                                   0000000000010000000100000000000000000000
    ... +  80                      ########################################
                                   0000000000000000000000000000000000000000
                                   0000000000000000000000000000000000000000
    ... + 120                      #######################################T
                                   00000000
                                   0000000
    Active calls / events
    No.... Type........ Name..........................
           Programm
           Include                                  Line
         1 FORM         REMOTE_FUNCTION_CALL
           SAPMSSY1
           SAPMSSY1                                    67
         2 MODULE (PBO) %_RFC_START
           SAPMSSY1
           SAPMSSY1                                    31
    Internal notes
    The termination occurred in the function "link_rfdir" of the SAP
    Basis System, specifically in line 165 of the module
    "//bas/46D/src/krn/runt/ablink.c#3".
    The internal operation just processed is "CALY".
    The internal session was started at 20061211100434.
    Active calls in SAP kernel
    => 64 bit R/3 Kernel
    => 64 bit AIX Kernel
    => Heap limit      = unlimited
    => Stack limit     = unlimited
    => Core limit      = 51200000
    => File size limit = unlimited
    => Heap address  = 0x118dba360
    => Stack address = 0xfffffffffff5d50
    => Stack low     =  0xfffffffffff5d50
    => Stack high    =  0xffffffffffff600
    => Stack Trace:
         AixStack() at 0x100059364
         CTrcStack2() at 0x10005945c
         rabax_CStackSave() at 0x10003959c
         ab_rabax() at 0x1000425b4
         link_rfdir() at 0x100540418
         ab_link() at 0x100540a18
         ab_rfcimport() at 0x1005f49f0
         ab_jcaly() at 0x100024560
         ab_extri() at 0x100487474
         ab_xevent() at 0x10059c804
         ab_dstep() at 0x10043bd98
         dynpmcal() at 0x100942f94
         dynppbo0() at 0x100941320
         dynprctl() at 0x100948f40
         dynpen00() at 0x1008f7818
         Thdynpen00() at 0x1001429f4
         TskhLoop() at 0x100146368
         tskhstart() at 0x1001576ac
         DpMain() at 0x100e06e38
         main() at 0x100de72f4
    List of ABAP programs affected
    Type
    Program
    Gen. date  time
    LoadSize
    Prg
    SAPMSSY1
    04.01.2000 19:06:59
    20480
    List of internal tables
    No dump information available
    Directory of application tables (contents)
    Program
      Name..........  Contents.1........2........3....+....
    Directory of data areas (administration information)
    Program
      No.. Name..........  Lgth  Ofsg Type Next Gen date   Gen time
      SYST
           L not assigned -15         0 IN
           M /%_LISTTABLE -14         1 CO 0
           T global stack -13  1      2 GL 0
      SAPMSSY1
           A global data    0         3 DA
           L constant dat   1         4 LI        .0 .0216
           L constant dat   2         5 LI SSY    .0 .018B
           L not assigned   3         6 IN
           L SYST           4         7 TA 0
           L SY             5         8 TA
           L RSJOBINFO      6         9 TA
           M /%_SYS%%       7         0 CO
           M field symbol   8         1 FS
           L TCPIC          9         2 TA
           M field symbol  10         3 FS
           L text pool     11         4 TP
    Directory of data areas (contents)
    Program
      No.. Name.......... Contents..1........2........3....+....
      SYST
           L not assigned   0
           L text pool    102 |SAPMSSY1
    ABAP control blocks CONT
    Include                                 Line source code
    Index Name F1 Co Par01 Par2. Par3. Par4. Tabl
    SAPMSSY1                                   60 MESSAGE A800.
      215 CLEA 00     84
      216 CLEA 00     85
      217 MESS 00     27
    SAPMSSY1                                   62 ENDFORM.
      218 ENDF 00
      219 -
      223 -
    SAPMSSY1                                   65 FORM REMOTE_FUNCTION_CALL USIN
      227 PERP 00     1
      228 PERP 02
    SAPMSSY1                                   66 DO.
      229 WHIL 00  2
      233 WHIL 00  3
      237 BRAN 05 Branch to  251
    SAPMSSY1                                   67 CALL 'RfcImport' ID 'Type' FIE
      238 CALY 00  3  86     70    71     71
    >>>>> CALY 02     87    P0
    SAPMSSY1                                   68 PERFORM (SY-XFORM) IN PROGRAM
      246 xper 02     12     13
      248 PERP 80
    SAPMSSY1                                   69 RSYN >SCONT SYSC 00011111 0.
      249 SYSC 1F
    SAPMSSY1                                   70 ENDDO.
      250 BRAX 00 Branch to  233
      251 WHIL 00  4
    SAPMSSY1                                   71 ENDFORM.
      255 ENDF 00
      256 -
    End of runtime analysis

  • Program making a RFC call to Function Module not working in background

    Hi All,
    I have an ABAP Program which is used to do a reconciliation check between the R/3 and BI system for Invoice Data. Please find below the details of the program flow:
    1.     Program counts the number of records in the DSO table and aggregates the Net_Value based on the date range (passed as parameters)
    2.     Program calls a Function Module (RFC Call) which counts the number of records in the R/3 table and aggregates the Net_Value for the same date range
    3.     Function Module Passes back the count values and aggregated Net_Value to the program
    4.     Program compares the count and aggregated Net_Value from EDWH and MSP systems and sends an email mentioning whether the counts match or not
    However we are facing an issue.
    Whenever, we execute the program in dialog mode, it works fine and fetches results within 5-6 minutes. However if we schedule the program to run in background (parameters through a variant), it gives no results even after running for over 3-4 hours. We tried figuring it out yesterday but could not come to any conclusion. Since there is a RFC call being to the function module, we were wondering if we need to specify some other parameter as well.
    Thanks & Regards
    Dharmendra

    RFC Call is a procedure for executing remote enables function modules. It is done via the 'Remote Enabled' radio button on the function module's attribute screen.

Maybe you are looking for

  • Changes are not reflecting in other users

    HI all it's urgent One user abcd who had made some changes is not reflecting to other users after transport, we have 2 clients 100 and 200 ,changes are reflecting in own user id ,we transported with scc1 transaction with regards vinod

  • Not able to scroll thru text longer than text field in Safari

    Though long press and drag seems to work in other apps, in Safari, I am not able to scroll within a text field (when there is more text that the field can show at a time) . E.g on google Search box (web page). Any tips?

  • Export Sounds Completely Different Than What Is Heard Before Mixdown

    Hey everyone, So I've been recording a band as of recent and been starting to understand the in's and out's of GarageBand. However, I can't seem to figure out why this is happening. I've been working on one song (all tracks except the drums are real

  • Suppressing IE Address Bar (Location Bar) - Weird event

    Hi. We use the following code to call other stand-alone web forms from a single, main application. Each application has it's own web.show_document code. In the example below a call to a form name 'dropper_em' is called. It also passes the username an

  • USB 8451: Is the timeout controllable when doing a I2CREAD I2CWRITE?

    Sorry if this isn't in the correct board. I am using the NI USB-8451 to do I2C communication to talk to multiple devices.  I would like to put some functionality into my program to build up a list of devices that are connected on the bus.  It will at