Dump in calling BRF+ Function

Hi,
i have implemented the BP-Rating Sample from TechEd Madrid 2011. It consists of an BRF+ application (via transaction fdt_workbench), a function with 2 Parameters and a result with an expression as a decision table.
Then I took SE80 and called:
try.
  cl_fdt_function_process=>process(
  EXPORTING iv_function_id = lv_function_id
  IMPORTING ea_result = rv_result
  CHANGING ct_name_value = lt_name_value ).
catch cx_fdt.
  MESSAGE   e041(sfdt_code_composer) RAISING cx_fdt.
endtry.
It doesnt work for me, it dumps in the area of code generation.
The BRF+ Application is created as:
local customizing-object without versioning
local master data object without versioning
local system object without versioning
My system is: IS-U, ECC6.0 with EhP4 and Netweaver 7.01
Can someone help me, telling me whats wrong here.
Thanks,
Heiko

Pls check MT_MESSAGE in CX_FDT.

Similar Messages

  • Dump when calling system function

    In an abap program the statement call 'system' ...
    occurs and the program crashes...
    event if the profile as the object S_C_Funct with value
    - 16 (execute)
    - SYSTEM
    - ZEDI_PROG
    any help is welcome

    It would help if you provided the call 'SYSTEM' stement you are executing and the error you get.
    Rob

  • 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

  • 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.

  • CNTL_ERROR while calling a function module from Java webdynpro

    I am calling a RFC function module from javawebdynpro app
    which inturn calls a function module performing BDC on CAPP transaction. When I run this from SE37 of the same system or a different system everything works fine. But when called from Java webdynpro app, it raises a CNTL_ERROR exception and creates a short dump.
    Any help on this is highly appreciated

    Good catch, BI Learner. This was exactly it: when assigning the values from SOURCEFIELDS directly to the import/export parameters, you have to make sure that the types are EXACTLY the same, otherwise it will not work (the routine stops with an error when calling the FM, but there is no dump).
    Therefore, to solve my problem, I created the declarations precisely as expected by the FM and assigned the values to these fields:
    DATA:
          SOURCEVAL TYPE  /BIC/OIINVQTY,
          SOURCEUOM TYPE  /BIC/OIUSUOM,
          USITM TYPE  /BIC/OIUSITM,
          TARGETUOM TYPE  /BIC/OIUSUOM,
          CONVERTED_COST TYPE  /BIC/OIINVQTY.
    DATA PRODUCTION_UOM TYPE /BIC/OIUSUOM.
    " get the Production UOM
        SELECT SINGLE I~/BIC/USPRDUOM
          FROM /BIC/PUSITM AS I
          INTO PRODUCTION_UOM
          WHERE I~/BIC/USITM = SOURCE_FIELDS-/BIC/USITM AND I~OBJVERS = 'A'.
        IF ( SY-SUBRC = 4 ). " no records found
          "RAISE PARTNO_NOT_FOUND.
          RAISE EXCEPTION TYPE CX_RSROUT_SKIP_RECORD.
        ENDIF.
    " load the parameters
        SOURCEVAL = SOURCE_FIELDS-/BIC/USFRZMFC.
        SOURCEUOM = SOURCE_FIELDS-BASE_UOM.
        USITM = SOURCE_FIELDS-/BIC/USITM.
    " then you can call the FM
        CALL FUNCTION 'Z_CA_CONVERT_US_COST'
          EXPORTING
            PSOURCEVAL                = SOURCEVAL
            PSOURCEUOM                = SOURCEUOM
            PUSITM                    = USITM
            PTARGETUOM                = PRODUCTION_UOM
          IMPORTING
            PTARGETVAL                = CONVERTED_COST
          EXCEPTIONS
            CONVERSION_NOT_MAINTAINED = 1
            PARTNO_NOT_FOUND          = 2
            OTHERS                    = 3.
    " ... [do the rest]
    Thanks for your help,
    Dennis

  • Calling Z function module from BSP page

    hi,
      i am calling a z function module from BSP application ROS_SELF_REG ,The z function module is inside a z function group,It does not give any sytnax error..but while running BSP application ,it is going into dump saying that Z function module is not found..Any idea why this is happening???

    Hi,
    Check whether the Z function module is spelled correctly. Also try activating the whole function group and function module in se80 transaction.
    Check whether the BSP application is calling the Z FM from the correct server/client where it is available.
    Regards,
    Harish

  • Calling a function module from within a transformation routine

    I created a routine within a transformation and experience the following weird behavior now:
    When I call a function module within that routine, the load fails with the following error message:
    Exceptions in Substep: Rules
    When I click on the button next to this text, it point me to my function module call.
    What I do not understand is, that the following two scenarios work fine:
    - Having the same function call (with fake values) in a plain ABAP program works beautilfully
    - If I copy the content of my function module directly into my transformation routine, everything works fine as well
    I am now wondering whether the routine does not "see" the function module I am calling. The module resides in a different package. Is that a problem? Do I have to include something first?
    Here is the code that calls my FM (
    CALL FUNCTION 'Z_CA_CONVERT_US_COST'
         EXPORTING
            PSOURCEVAL                      = SOURCE_FIELDS-/BIC/USFRZMFC
            PSOURCEUOM                      = SOURCE_FIELDS-BASE_UOM
            PUSITM                          = SOURCE_FIELDS-/BIC/USITM
            PTARGETUOM                      = PRODUCTION_UOM
         IMPORTING
            PTARGETVAL                = RESULT
         EXCEPTIONS
           CONVERSION_NOT_MAINTAINED = 1
           PARTNO_NOT_FOUND          = 2
           OTHERS                    = 3.
    Thanks a lot for your help. Points will be assigned.
    Dennis

    Good catch, BI Learner. This was exactly it: when assigning the values from SOURCEFIELDS directly to the import/export parameters, you have to make sure that the types are EXACTLY the same, otherwise it will not work (the routine stops with an error when calling the FM, but there is no dump).
    Therefore, to solve my problem, I created the declarations precisely as expected by the FM and assigned the values to these fields:
    DATA:
          SOURCEVAL TYPE  /BIC/OIINVQTY,
          SOURCEUOM TYPE  /BIC/OIUSUOM,
          USITM TYPE  /BIC/OIUSITM,
          TARGETUOM TYPE  /BIC/OIUSUOM,
          CONVERTED_COST TYPE  /BIC/OIINVQTY.
    DATA PRODUCTION_UOM TYPE /BIC/OIUSUOM.
    " get the Production UOM
        SELECT SINGLE I~/BIC/USPRDUOM
          FROM /BIC/PUSITM AS I
          INTO PRODUCTION_UOM
          WHERE I~/BIC/USITM = SOURCE_FIELDS-/BIC/USITM AND I~OBJVERS = 'A'.
        IF ( SY-SUBRC = 4 ). " no records found
          "RAISE PARTNO_NOT_FOUND.
          RAISE EXCEPTION TYPE CX_RSROUT_SKIP_RECORD.
        ENDIF.
    " load the parameters
        SOURCEVAL = SOURCE_FIELDS-/BIC/USFRZMFC.
        SOURCEUOM = SOURCE_FIELDS-BASE_UOM.
        USITM = SOURCE_FIELDS-/BIC/USITM.
    " then you can call the FM
        CALL FUNCTION 'Z_CA_CONVERT_US_COST'
          EXPORTING
            PSOURCEVAL                = SOURCEVAL
            PSOURCEUOM                = SOURCEUOM
            PUSITM                    = USITM
            PTARGETUOM                = PRODUCTION_UOM
          IMPORTING
            PTARGETVAL                = CONVERTED_COST
          EXCEPTIONS
            CONVERSION_NOT_MAINTAINED = 1
            PARTNO_NOT_FOUND          = 2
            OTHERS                    = 3.
    " ... [do the rest]
    Thanks for your help,
    Dennis

  • Dump in calling the BAPI_PO_GETDETAIL

    Hi
      I am getting a dump while CALLING  the BAPI_PO_GETDETAIL..
    The dump as follows:
    In the function module interface, you can specify only
    fields of a specific type and length under "PO_HEADER".
    Although the currently specified field
    "IT_HEADER" is the correct type, its length is incorrect.
    Here is my declaration.
    TYPES : BEGIN OF TY_HEADER.
    INCLUDE STRUCTURE BAPIEKKOL.
    TYPES : END OF TY_HEADER.
    CALL FUNCTION 'BAPI_PO_GETDETAIL'
      EXPORTING
        PURCHASEORDER                    = EBELN
        ITEMS                            = 'X'
      ACCOUNT_ASSIGNMENT               = ' '
      SCHEDULES                        = ' '
      HISTORY                          = ' '
      ITEM_TEXTS                       = ' '
      HEADER_TEXTS                     = ' '
      SERVICES                         = ' '
      CONFIRMATIONS                    = ' '
      SERVICE_TEXTS                    = ' '
      EXTENSIONS                       = ' '
    IMPORTING
       PO_HEADER                         = IT_HEADER
      PO_ADDRESS                       =
    TABLES
      PO_HEADER_TEXTS                  =
       PO_ITEMS                          = IT_ITEM
      PO_ITEM_ACCOUNT_ASSIGNMENT       =
      PO_ITEM_SCHEDULES                =
      PO_ITEM_CONFIRMATIONS            =
      PO_ITEM_TEXTS                    =
      PO_ITEM_HISTORY                  =
      PO_ITEM_HISTORY_TOTALS           =
      PO_ITEM_LIMITS                   =
      PO_ITEM_CONTRACT_LIMITS          =
      PO_ITEM_SERVICES                 =
      PO_ITEM_SRV_ACCASS_VALUES        =
      RETURN                           =
      PO_SERVICES_TEXTS                =
      EXTENSIONOUT                     =
      NFMETALLITMS                     =
    Its not showing any syntax error while executing it. But while runninghte program i am getting the above said dump.
    Thanks in advance
    Arun

    Hello Arun
    Once again the most important information to answer your question is missing:
    Where is the definition of IT_HEADER?
    I assume you are still using itabs with header lines (which are outdated for almost a decade).
    Why not using a clean and straightforward approach?
    DATA:
      ls_po     TYPE bapiekkol,
      lt_po      TYPE STANDARD TABLE OF bapiekkol.
    " Use LS_PO to return the PO header data.
    Regards
      Uwe

  • Calling oracle function in OMB script

    Hi
    Can anyone please tell me how can i get the returned value of an oracle function in OMB script. or how can i get the value into OMB variable and use it.
    Basically i want to set the properties of OWB mapping via OMB script.
    Following OMB code sets the max error limit of a mapping.
    OMBALTER MAPPING 'MAP_DATA' SET PROPERTIES (MAXIMUM_NUMBER_OF_ERRORS) VALUES ('100')
    i dont want to hard code the value 100 rather i want this value to be returned from a function.
    If it is not possible then plz tell me how can i set MAXIMUM_NUMBER_OF_ERRORS property of OWB mapping via sql or pl/sql.
    Any type of clue will be highly appreciated.
    Best Regards

    Here is my bare-bones OMB SQL Library to allow you to do pure SQL calls from within OMB+. All I have ever used it for is to run queries, so I don't have a library procedure for calling a function, however if your function is SQL-callable (e.g. select my_func() from dual) then it would work. Either that or you'll want to augment this library to build a procedure that will call and return the results from a java preparedStatement. It's something I've been meaning to do, but haven't got around to it yet.
    All you should need to do is save this as it's own tcl file and then source it at the top of your own script, or embed it into your script.
    EDIT: Here is a page with some sample code on using java.sql.CallableStatement to call a Pl/SQL procedure from Java which should certainly do the trick for you in conjunction with the basic session control in my library.
    http://www.exampledepot.com/egs/java.sql/CallProcedure.html
    Cheers,
    Mike
    package require java
    #file omb_sql_library.tcl
    proc oracleConnect { serverName databaseName portNumber username password } {
       # import required classes
       java::import java.sql.Connection
       java::import java.sql.DriverManager
       java::import java.sql.ResultSet
       java::import java.sql.SQLWarning
       java::import java.sql.Statement
       java::import java.sql.CallableStatement
       java::import java.sql.ResultSetMetaData
       java::import java.sql.DatabaseMetaData
       java::import java.sql.Types
       java::import oracle.jdbc.OracleDatabaseMetaData
       # load database driver .
       java::call Class forName oracle.jdbc.OracleDriver
       # set the connection url.
       append url jdbc:oracle:thin
       append url :
       append url $username
       append url /
       append url $password
       append url "@"
       append url $serverName
       append url :
       append url $portNumber
       append url :
       append url $databaseName
       set oraConnection [ java::call DriverManager getConnection $url ]
       set oraDatabaseMetaData [ $oraConnection getMetaData ]
       set oraDatabaseVersion [ $oraDatabaseMetaData getDatabaseProductVersion ]
       puts "Connected to: $url"
       puts "$oraDatabaseVersion"
       return $oraConnection
    proc oracleDisconnect { oraConnect } {
      $oraConnect close
    proc oraJDBCType { oraType } {
      #translation of JDBC types as defined in XOPEN interface
      set rv "NUMBER"
      switch $oraType {
         "0" {set rv "NULL"}
         "1" {set rv "CHAR"}
         "2" {set rv "NUMBER"}
         "3" {set rv "DECIMAL"}
         "4" {set rv "INTEGER"}
         "5" {set rv "SMALLINT"}
         "6" {set rv "FLOAT"}
         "7" {set rv "REAL"}
         "8" {set rv "DOUBLE"}
         "12" {set rv "VARCHAR"}
         "16" {set rv "BOOLEAN"}
         "91" {set rv "DATE"}
         "92" {set rv "TIME"}
         "93" {set rv "TIMESTAMP"}
         default {set rv "OBJECT"}
      return $rv
    proc oracleQuery { oraConnect oraQuery } {
       set oraStatement [ $oraConnect createStatement ]
       set oraResults [ $oraStatement executeQuery $oraQuery ]
       # The following metadata dump is not required, but will be a helpfull sort of thing
       # if ever want to really build an abstraction layer
       set oraResultsMetaData [ $oraResults getMetaData ]
       set columnCount        [ $oraResultsMetaData getColumnCount ]
       set i 1
       #puts "ResultSet Metadata:"
       while { $i <= $columnCount} {
          set fname [ $oraResultsMetaData getColumnName $i]
          set ftype [oraJDBCType [ $oraResultsMetaData getColumnType $i]]
          #puts "Output Field $i Name: $fname Type: $ftype"
          incr i
       # end of metadata dump
       return $oraResults
    # SAMPLE CODE to run a quick query and dump the results. #
    #set oraConn [ oracleConnect myserver orcl 1555 scott tiger ]
    #set oraRs [ oracleQuery $oraConn "select name, count(*) numlines from user_source group by name" ]
    #for each row in the result set
    #while {[$oraRs next]} {
      #grab the field values
    #  set procName [$oraRs getString name]
    #  set procCount [$oraRs getInt numlines]
    #  puts "Program unit $procName comprises $procCount lines"
    #$oraRs close
    #oracleDisconnect $oraConnEdited by: zeppo on Nov 25, 2008 7:19 AM

  • Recursive call of function module 'CRM_ORDER_MAINTAIN'

    Hi together,
    I have got the follwoing problem.
    We have to implement a proof on a partner function regarding the role.
    I found the BADI IF_EX_COM_PARTNER_BADI~COM_PARTNER_CHECK
    I implement the the follwoing coding:
      IF is_partner_wrk-partner_fct = 'ZADI0012'.
        SELECT SINGLE * INTO  ls_but100
                        FROM  but100
                        WHERE partner = is_partner_wrk-external_partner_number
                        AND   rltyp   = 'BUP004'.
        IF sy-subrc = 4.
          MESSAGE e003(crm_ic_partner) WITH is_partner_wrk-external_partner_number.
        ENDIF.
      ENDIF.
    when I enter a partner with a wrong role, I got the message I have implemented. Afterwards I type in a partner with the correct role I got a short dump.
    Recursive call of function module 'CRM_ORDER_MAINTAIN'
    Has anybody an idea how to solve this issue?
    Thanks and best regards,
    Sylvia

    Hi scharfen,
    We got the similar requirement what you implemented.I implemented the below code but the error message is coming 3 times.
    I have got the follwoing problem.
    We have to implement a check on a partner function regarding the role.
    I found the BADI IF_EX_COM_PARTNER_BADI~COM_PARTNER_CHECK
    I implemented the the follwoing coding:
    method IF_EX_COM_PARTNER_BADI~COM_PARTNER_CHECK .
    DATA: lw_but100 TYPE but100,
    lw_but000 TYPE but000,
    lw_msgno TYPE bal_s_idno,
    lt_msgno TYPE bal_r_idno,
    l_partner TYPE symsgv,
    lw_low TYPE balmsgidno.
    IF is_partner_wrk-PARTNER_FCT = '00000009'.
    SELECT SINGLE * INTO lw_but000
    FROM BUT000
    WHERE partner = is_partner_wrk-external_partner_number
    AND TYPE = '2'.
    IF sy-subrc EQ 0.
    SELECT SINGLE * INTO lw_but100
    FROM but100
    WHERE partner = is_partner_wrk-external_partner_number
    AND rltyp = 'BUP004'.
    IF sy-subrc = 0.
    REFRESH lt_msgno.
    lw_msgno-sign = 'I'.
    lw_msgno-option = 'EQ'.
    lw_low-msgid = '/DS1/A'.
    lw_low-msgno = '139'.
    lw_msgno-low = lw_low.
    APPEND lw_msgno TO lt_msgno.
    CALL FUNCTION 'CRM_MESSAGES_DELETE'
    EXPORTING
    IT_R_MSGIDNO = lt_msgno
    iv_ref_object = is_partner_wrk-guid.
    l_partner = is_partner_wrk-external_partner_number.
    CALL FUNCTION 'COM_PARTNER_MESSAGE_COLLECT_OW'
    EXPORTING
    is_partner_control = is_partner_control
    iv_msgno = '139'
    iv_msgid = '/DS1/A'
    iv_msgty = 'E'
    iv_msgv1 = l_partner.
    ELSE.
    REFRESH lt_msgno.
    lw_msgno-sign = 'I'.
    lw_msgno-option = 'EQ'.
    lw_low-msgid = '/DS1/A'.
    lw_low-msgno = '139'.
    lw_msgno-low = lw_low.
    APPEND lw_msgno TO lt_msgno.
    CALL FUNCTION 'CRM_MESSAGES_DELETE'
    EXPORTING
    IT_R_MSGIDNO = lt_msgno
    iv_ref_object = is_partner_wrk-guid.
    ENDIF.
    ENDIF.
    ENDIF.
    endmethod.
    when I enter a partner with a wrong role, I got the message I have implemented. But the message is appearing 3 times in the errorlog. Can anyone please let me know the reason for this and solution to resolve this.
    Regards,
    Swetha

  • How to call BRF Plus created in ECC from SAP PO 7.4 mapping

    Dear All,
    I'm working on a scenario where we are using BRF+ created in SAP ECC.
    Since the business rules change frequently,we decided to used BRF+ instead of NWBRM where user/functional consultant can maintain rules easily.
    The application is already created in ECC based on business requirement now I have to used this rules in interface to transfer data based on rules.
    How can I call BRF+ rules through message mapping?
    Can we used rfc lookup or soap lookup like we do in NWBPM in SAP PO 7.4.
    Regards
    Niraj

    No, it is not an authorization issue.
    As this interface has been generated in 4.7 using transaction BDBG, I am not able to change it in ECC 6.0.

  • Adworker fails with "Error calling FNDLOAD function" for patch 7303033

    hi,
    we have some problems applying patch 7303033 (12.1.2) for EBS:
    1. installed ebs R12 12.1.1 with 11.0.7 database;
    2. applied patch R12.AD.B.DELTA.2 Patch 8502056
    3. trying to apply patch 7303033
    after ~6 hours of runnig one of worker failed.
    worker log:
    Loading data using FNDLOAD function.
    FNDLOAD APPS/***** 0 Y UPLOAD @ONT:patch/115/import/ontpmdef.lct @ONT:patch/115/import/US/ontsys.ldt -
    Connecting to APPS......Connected successfully.
    Calling FNDLOAD function.
    Returned from FNDLOAD function.
    Log file: /global/spare/apps/dev_apps/apps/apps_st/appl/admin/DEV/log/US_ontsys_ldt.log
    Error calling FNDLOAD function.
    4. i have stopped the adpatch instalation adn ran adadmin->compile apps schema
    5. after compiling apps schema i re-run adpatch trying to continue the patch apply
    the following error occured:
    AutoPatch error:
    The following ORACLE error:
    ORA-00942: table or view does not exist
    occurred while executing the SQL statement:
    UPDATE FND_INSTALL_PROCESSES
    SET control_code = 'W'
    WHERE worker_id > 0
    AutoPatch error:
    Error running SQL and EXEC commands in parallel
    The "Error running SQL and EXEC commands in parallel" is because i have selected to many parallel workers (32) ,
    but what about the FND_INSTALL_PROCESSES? can it be recreated..using adctrl?
    Can i continue from this step or should i apply patch from the beginning?

    hi,
    the log says:
    Uploading from the data file /global/spare/apps/dev_apps/apps/apps_st/appl/ont/12.0.0/patch/115/import/US/ontsys.ldt
    Altering database NLS_LANGUAGE environment to AMERICAN
    Dumping from LCT/LDT files (/global/spare/apps/dev_apps/apps/apps_st/appl/ont/12.0.0/patch/115/import/ontpmdef.lct(120.3.12010000.1), /global/spare/apps/dev_apps/apps/apps_st/appl/ont/12.0.0/patch/115/import/US/ontsys.ldt) to staging tables
    Dumping LCT file /global/spare/apps/dev_apps/apps/apps_st/appl/ont/12.0.0/patch/115/import/ontpmdef.lct(120.3.12010000.1) into FND_SEED_STAGE_CONFIG
    Dumping LDT file /global/spare/apps/dev_apps/apps/apps_st/appl/ont/12.0.0/patch/115/import/US/ontsys.ldt into FND_SEED_STAGE_ENTITY
    Dumped the batch (OE_SYS_PARAMETER_DEF_B CUSTOMER_RELATIONSHIPS_FLAG , OE_SYS_PARAMETER_DEF_B OE_CC_CANCEL_PARAM ) into FND_SEED_STAGE_ENTITY
    Uploading from staging tables
    Error loading seed data for OE_SYS_PARAMETER_DEF_B: PARAMETER_CODE = CUSTOMER_RELATIONSHIPS_FLAG, ORA-06508: PL/SQL: could not find program unit being called
    Error loading seed data for OE_SYS_PARAMETER_DEF_B: PARAMETER_CODE = AUDIT_TRAIL_ENABLE_FLAG, ORA-06508: PL/SQL: could not find program unit being called
    Error loading seed data for OE_SYS_PARAMETER_DEF_B: PARAMETER_CODE = MASTER_ORGANIZATION_ID, ORA-06508: PL/SQL: could not find program unit being called
    Error loading seed data for OE_SYS_PARAMETER_DEF_B: PARAMETER_CODE = COMPUTE_MARGIN, ORA-06508: PL/SQL: could not find program unit being called
    Error loading seed data for OE_SYS_PARAMETER_DEF_B: PARAMETER_CODE = FREIGHT_RATING_ENABLED_FLAG, ORA-06508: PL/SQL: could not find program unit being called
    Thank you

  • Type conflict when calling a function module.CEI0_COMPARE_CONFIGURATIONS

    hi all,
    while doing post goods issuse for a delivery causing a following dump
    The call to the function module "CEI0_COMPARE_CONFIGURATIONS" is incorrect:
    The function module interface allows you to specify only fields
    of a particular type under "IV_EXCL_IND". The field "'#'" specified here
    has a different field type.
    "IV_EXCL_IND" is of type CHAR1 and default is value 2.
    in debugging fields is empty, that must be a reason for dump.
    please help me out.
    regards,
    rajyalaxmi

    Hello Rajyalaxmi,
    Always remember,as a rule of thumb that whenever you call a FM, make sure that the parameters you pass to the FM are of the same data type as they are declared inside the FM. This will avoid CONFLICT DUMPS.
    Assign points, if it helps.
    Rgds,
    Raghu.

  • Type conflict when calling a function module!

    friends,
          i have given a F4 value request help for a field in the at selection-screen on value-request for fieldname..but when i click the f4 it's showing dump..
    The function module interface allows you to specify only fields of a particular type under "RETFIELD". The field "S_SGLTX-LOW" specified here has a different field type. what could be wrong? thanks all.

    Hi,
    Actually, we are using the function module for the F4 help that returns the values selected in an internal table. Very handy when programming your very own F4 help for a field.
    Here is the sample code.
    tables kna1.
    data:
    begin of t_values occurs 2,
    value like kna1-begru,
    end of t_values,
    t_return like ddshretval occurs 0 with header line.
    select-options s_begru for kna1-begru.
    at selection-screen on value-request for s_begru-low.
    t_values = 'PAR*'.
    append t_values.
    t_values = 'UGG'.
    append t_values.
    call function 'F4IF_INT_TABLE_VALUE_REQUEST'
    exporting
    retfield = 'BEGRU'
    value_org = 'S'
    tables
    value_tab = t_values
    return_tab = t_return
    exceptions
    parameter_error = 1
    no_values_found = 2
    others = 3.
    if sy-subrc = 0.
    read table t_return index 1.
    endif.
    If your problem solved,Kindly reward points by clicking the star on the left of reply.

  • Dump in calling PYXX_READ_PAYROLL_RESULT

    Hi,
    I am trying to get the last active payroll record of transaction pc_payresult.
    I am calling the function PYXX_READ_PAYROLL_RESULT but getting a dump.
    The code is as below
    DATA: wa_result type pay99_result,
              it_rgdir type standard table of pc261,
              wa_rgdir type pc261,
              v_num type CDSEQ,
              wa_result type pay99_result,
              p_pernr type PERNR_D.
    CALL FUNCTION 'CU_READ_RGDIR'
        EXPORTING
          persnr                   = pernr-pernr
        BUFFER                   =
        NO_AUTHORITY_CHECK       = ' '
      IMPORTING
        MOLGA                    =
        tables
          in_rgdir                 = it_rgdir
       EXCEPTIONS
         NO_RECORD_FOUND          = 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.
    delete it_rgdir where srtza <> 'A' or payty <> space.
    describe table it_rgdir lines v_num.
    READ table it_rgdir into wa_rgdir index v_num.
    p_pernr = pernr-pernr.
    CALL FUNCTION 'PYXX_READ_PAYROLL_RESULT'
      EXPORTING
       CLUSTERID                          = ' '
        employeenumber                     = p_pernr
        sequencenumber                     = wa_rgdir-seqnr
      READ_ONLY_BUFFER                   = ' '
      READ_ONLY_INTERNATIONAL            = ' '
      ARC_GROUP                          = ' '
      CHECK_READ_AUTHORITY               = 'X'
      FILTER_CUMULATIONS                 = 'X'
      CLIENT                             =
    IMPORTING
      VERSION_NUMBER_PAYVN               =
      VERSION_NUMBER_PCL2                =
      changing
        payroll_result                     = wa_result
    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
    IF sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    Do I need to pass the Cluster ID? If so,then what id to pass.
    Please help in this matter.
    Thanks&Regards
    Ananya

    Hi
    Yes, you need to pass the cluster id. It is nothing but the relid. For the country grouping, get the relid from the check table of molga. I think it is t500l.
    This is the only reason for getting dump as for getting any payroll result, the key should contain pernr, seqnr and relid. As you have not passed the relid (signifying the cluster for specific country) it will go for dump.
    select relid from t500l for the country grouping you get from the FM.
    Regards
    Navneet
    Message was edited by:
            Navneet Saraogi

Maybe you are looking for