Error in Functional module calling from XI!!!
Hi All,
I'm using XI to pick data from ORACLE write it in SAP and take the response from SAP and write it back in ORACLE database. I'm using a custom functional module in SAP and calling it from XI .
The custom functional module create the CUSTOMER and ORDER .
Customer is getting created in SAP but order is not created. We are using two different functional modules for customers and orders.
The above functional modules are executing in SAP but while calling from XI only the customer is getting created in SAP.
Please post your views and suggestions on this issue.
Thanks in advance.
LN
First put the commit work after successfuly executing the order creation in the custom function module.
If you already put and doesn't know why it is not creating the orders, debug the function module by putting the same data which you are passing from XI in test tab.
Suppose, the Orders are creating in the dubug mode. Then debug the custome function module dynamically using SM50.
Regards,
Krishnaraju.
Similar Messages
-
RFC remote function module call from XI
hi
I am trying to call a remote function module directly from XI which is not a bespoke module.
And i am getting the following error:
com.sap.aii.af.ra.ms.api.DeliveryException: error while processing message to remote system:com.sap.aii.af.rfc.core.client.RfcClientException: failed to parse BAPI response due to: com.sap.aii.af.rfc.util.bapi.BapiException: Parameter with name RETURN not found.
Please help me in this.
Thanks in advance.Hi Naina,
Normally RFC are synchronous, they do have return parameter as export parameter.
If return parameter is missing then , you can create Wrapper RFC.
Wrapper RFC:
It is nothing but you just create BAPI in SE37 transaction with Return parameter as export parameter and make it remote enabled by clicking on Radio button.
Under source code, CALL BAPI which XI has to call.
Thats it!
I hope this helps.
Let me know if any help required. -
Regarding the RFC Function Module call from PI
Hi All,
I am working on one File to RFC interface, in which File adapter picks the file, this file data has to goto 2 function modules in SAP system. For this i added 2 Inbound interfaces in INTERFACE DETERMINATION and I developed 2 RECEIVER AGREEMENTS. In 2 RECEIVER AGREEMENTS i added single receiver RFC Communication Channel.
Now i want assurance that once 1 st function module will execute completely, then only my second function module should be called. Is there any setting that i can do to make this sync?????.
what is the use of Send 'Confirm Transaction' in receiver RFC Communication Channel under Adavanced Mode.
Thanks,
BaluHi,
As per you requirement I would suggest to change your scenario as File To Proxy. It will much more easier and 100% sure to process second BAPI only after first gets successful inside the proxy.
Pass the data from file adapter to inbound proxy and then inside proxy code you first call the first BAPI and use commit wrok. Once commit work is successful then you call the second BAPI otherwise rollback the changes.
Example:
Call First_BAPI
<pass the data to it's import export parameters>
Commit work.
if sy-subrc =0.
Call Second_BAPI.
<pass the data to it's import export parameters>
Commit work.
endif.
Note: If you are not very much comfortable with ABAP the discuss this with your ABAP team mate.
Regards,
Sarvesh -
Raise exception in function module call from SAP owned program
I need to raise an exception in a function module to terminate a transaction, display a error message and return to to previous selection screen so the user can fix the error before moving forward.......
How do you do this when the program using the function module is SAP owned?
Thank You!
JeffHi,
After calling the function module, you can do something like this.
IF SY-SUBRC <> 0.
RAISE EXCEPTION.
ENDIF.
Regards,
Ferry Lianto -
Remote Function Module call from ECC to CRM (how to pass parameters?)
Hi there,
I have a remote FM that I would like to call from ECC to CRM. The FM is remote-enabled, so I assume that I can call this from CRM. However, in CRM some of the table structures that is required are not available. Hence, my export/import parameters won't be match, unless I create those types in CRM, but this is going to major work!!
How do we pass/import the parameters since the data type in ECC is vastly different/not available in CRM?
CheersThe structure will need to be defined in CRM.
-
Is it possible to call custom designed RFC function module, apart from BAPI
Hi Friends,
1. Is it possible to call custom designed RFC function module, apart from BAPI.
2. Why we call it Adaptive RFC layer, Since every time the JCO layer updated with SAP, Why cant be dynamic.
Thanx for Ur time.
Cheers,
SamAlso check <a href="http://help.sap.com/saphelp_nw04/helpdata/en/41/38bc8f813719488ddc9d9b21251ec3/frameset.htm">here</a> for more information on aRFC. Here you can find why it is called adaptive.
Regards,
Christophe -
Rfc function module call error
Hi Abaper,
I'm doing upgrade from 4.7 to ecc 6.0 currently and encounter problem in one of the rfc function module that we used. I've tested the connection to destination using sm59 and the connection is successful.
As an information, in the rfc setting, the target system is not Unicode system.
When I test using se37 and put the rfc destination in my function module call, I always encountered system_error exception. There's no issue with this rfc call before in 4.7 system.
Please help me on this. Thank you.
Edited by: Abraham Bukit on Sep 3, 2008 2:36 AMHi,
I had the same issue in the past and solved it in the following way.
If the destination system is not Unicode please try to set the password for the communication user set in SM59 using only upper-case characters and taking into account that the password shouldn't be longer than 8 characters.
Hope this will help. -
Idoc - Error Status 51: Incorrect function module called up
Hi,
In the receiver system for the custom message type, I got this error.
Incorrect function module called up
Can any one pls help me to solve this one.
Regards,
Bala RajaHi Bala,
Check the inbound function module attached to process code in receiving system. Generally in every inbound function module first check is coded for checking message type or for checking funciton module like below.In the receiving system go to WE20 and then select the partner and select inbound message type. in that double click on assigned process code.then you have to double click on displayed FM. In that fm check first few lines. You will find this error message.
LOOP AT IDOC_CONTRL.
IF IDOC_CONTRL-IDOCTP(6) <> 'DESADV'.
MESSAGE ID 'E0' TYPE 'E' NUMBER '029'
WITH IDOC_CONTRL-IDOCTP ' ' 'IDOC_INPUT_DESADV'
RAISING WF_ERROR_PROCESS.
ENDIF.
ENDLOOP.
Thanks & Regards,
Kalyan. -
Runtime error in functional module
they given below program is a function module calling program.while am execute this program they could display the message like as
What happened?
Error in ABAP application program.
The current ABAP program "YSUSFUN1" had to be terminated because one of the
statements could not be executed.
This is probably due to an error in the ABAP program.
In program "SAPLYGROUP3 ", the following syntax error occurred
in the Include "LYGROUP3U01 " in line 1:
"The main program of the function "Y_INTERNAL1" does not begin with "FU"
"NCTION-POOL"."
Author and last person to change the Include are:
Author "BASIS "
Last changed by "BASIS "
Error analysis
In program "SAPLYGROUP3 ", the following syntax error occurred:
"The main program of the function "Y_INTERNAL1" does not begin with "FU"
"NCTION-POOL"."
REPORT YSUSFUN1.
TABLES YSUSTAB1.
DATA IT1 LIKE YSUSTAB1 OCCURS 2 .
SELECT * FROM YSUSTAB1 INTO TABLE IT1.
LOOP AT IT1 INTO YSUSTAB1.
WRITE: / YSUSTAB1-NAME, YSUSTAB1-ROLLNO,YSUSTAB1-PHONENO.
ENDLOOP.
CALL FUNCTION 'Y_INTERNAL1'
TABLES
IT4 = IT1 .
LOOP AT IT1 INTO YSUSTAB1.
WRITE: / YSUSTAB1-NAME, YSUSTAB1-ROLLNO, YSUSTAB1-PHONENO.
ENDLOOP.
2.)
the given below program is function module definition. while at that time of execution they could display the message as
*Syntax error in program*
*Source code LYGROUP3U01 Line 1*
*The main program of the function "Y_INTERNAL1" does not begin with*
*"FUNCTION-POOL".*
FUNCTION Y_INTERNAL1.
""Local Interface:
*" TABLES
*" IT4 STRUCTURE YSUSTAB1
LOOP AT IT4.
WRITE : IT4-name, it4-phoneno, it4-rollno.
endloop.
ENDFUNCTION.thanks
before am gone to se80 to activate the function group , am activate the function module only not activate the function group .
now am activate the function group they could not be depict the error . -
Problem with function module calling
Hi,
I have two questions here
i have a function moduel 'Z_GET_MATL_BALANCE'
in my code it called in the below said way
CALL FUNCTION 'Z_GET_MATL_BALANCE'
DESTINATION 'NONE'
STARTING NEW TASK 'A'
PERFORMING f_back ON END OF TASK
EXPORTING
ref_dte = s_datum-low
str_dte = s_datum-high
end_dte = s_datum-high
i_werks = p_werks
i_past = 'X'
i_future = 'X'
verselem = p_mrpver
plscn = p_scenar
r_outrec = r_outrec
supstk = p_supstk
days_ahead = w_days_ahead
shipnt = p_shipnt
TABLES
mat_bals = w_zmat_bals_a
i_zdatum = i_datum
mat_movmts = w_mat_movmts_a
mat_ship = i_mat_ship_a.
IF sy-subrc NE 0.
MESSAGE e005(ZMIM) WITH
text-009 text-166 text-054 sy-subrc.
ENDIF.
FORM f_back USING task.
CASE task.
WHEN 'A' .
RECEIVE RESULTS FROM FUNCTION 'Z_GET_MATL_BALANCE'
TABLES
mat_bals = w_zmat_bals_a
mat_movmts = w_mat_movmts_a
mat_ship = i_mat_ship_a
EXCEPTIONS
call_material_lesen_fail = 1
call_t450n_fail = 2
call_t399d_fail = 3
call_aufbauen_mdpsx_fail = 4
call_mdezx_aufbauen_fail = 5
call_t001w_fail = 6
call_zmrpelem_failed = 7
call_aufbauen_mdpsx_sim_fail = 8
OTHERS = 9.
IF SY-SUBRC NE 0.
RET_CODE1 = SY-SUBRC.
ENDIF.
now my first question is what is the difference between function modules calling normally and in the above said way
and the second question is
under tables parameter i have four internal tables defined where as while calling the same function module using recive results i have three internal tables. is this correct?
i am asking this because i am getting an error message while using this funciton module
please do not give generic answers, all the helpful answers will get a def rewardCall function starting new task is used to make Asynchronus RFC Call. In this case your function module will be called in a NEW SESSION and it will exceute independently from the Main program which is calling the FM. Also, the main program will continue its own processing and it will not wait for the RFC FM to complete.
Its not mandatory to have all the TABLES parameters in the RETURN Perform (..Receive results from ...) -
ALV ERROR in Function Module Fieldcatlog Merge .
Hi
I have added 2 more fileds in internral table . this is alv report there is no syntax error .
i have user function module
CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
EXPORTING
i_program_name = w_repid
i_internal_tabname = 'T_BSIK'
I_STRUCTURE_NAME =
I_CLIENT_NEVER_DISPLAY = 'X'
i_inclname = w_repid
i_bypassing_buffer = 'X'
I_BUFFER_ACTIVE =
CHANGING
ct_fieldcat = T_FIELDCAT
EXCEPTIONS
inconsistent_interface = 1
program_error = 2
OTHERS = 3
IF sy-subrc 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
LOOP AT t_fieldcat INTO wa_fieldcat.
CASE wa_fieldcat-fieldname.
WHEN 'ZFBDT'.
wa_fieldcat-key = ''.
wa_fieldcat-reptext_ddic = 'Net Due Dt.'.
wa_fieldcat-seltext_l = 'Net Due Dt.'.
wa_fieldcat-seltext_m = 'Net Due Dt.'.
wa_fieldcat-seltext_s = 'Net Due Dt.'.
WHEN 'KUNNR'.
IF p_kunnr IS INITIAL.
wa_fieldcat-no_out = 'X'.
ENDIF.
WHEN 'LIFNR'.
IF NOT p_kunnr IS INITIAL.
wa_fieldcat-no_out = 'X'.
ENDIF.
WHEN 'SHKZG'.
wa_fieldcat-no_out = 'X'.
WHEN 'ZBD1T'.
wa_fieldcat-no_out = 'X'.
WHEN 'BELNR'.
wa_fieldcat-key = 'X'.
WHEN OTHERS.
wa_fieldcat-key = ''.
ENDCASE.
MODIFY t_fieldcat FROM wa_fieldcat.
ENDLOOP.
I am getting error on that.
ERROR is :
The Internal table "\UNCTION= K_KKB_FIELDCAT_MERGE\DATA=L_ABAP_SOURCE[]" IS 72 CHARACTERS Wide
.the program line is 79 characters wide.
Thanks
ChandraHi Chandra,
For ALV reports the length should not be greater than 72. (please change the same)
You can also achive the same
Goto SE38
Open your program in edit
Utilities --> Settings --> Set "Downwards-Comp Line Length" falg to X and save. (This wil auotmatically set ur code to 72 chars)
Hope this helps,
Nag -
SYNTAX ERROR in function module CACS_BUPA_PAI_SPECIAL_CACSB1
Hi experts,
I am trying to create business partner in SAP treasury module with role - general business partner and validity period 01/01/0001 - 12/31/9999. I am gettting syntax error in Function module CACS_BUPA_PAI_SPECIAL_CACSB1, it says
The key of internal table 'LT_BUT0BK' contains components of type 'X' or 'XSTRING'.
The "Read table LT_BUTOBK" statement is not permitted for such tables in a unicode context.
Please let me know if you have any solution for this.
Thanks in advance.
Edited by: Thanvi maraka on Apr 17, 2009 3:27 AMHello Thanvi
It seems that you need to apply the OSS note 1041283:
FUNCTION cacs_bupa_pai_special_cacsb1.
*"*"Lokale Schnittstelle:
DATA: lt_but0bk TYPE TABLE OF but0bk WITH HEADER LINE.
CALL FUNCTION 'BUP_BUPA_BUT0BK_GET'
TABLES
t_but0bk = lt_but0bk.
* einmal vorhanden -> nehmen; nicht vorhanden -> Feld muss leer sein
* mehrmals vorhanden -> Mussfeld
READ TABLE lt_but0bk INDEX 2.
IF sy-subrc NE 0.
* READ TABLE lt_but0bk. "NOTE 1041283 " <<<<<<<<<
READ TABLE lt_but0bk FROM lt_but0bk. " <<<<<<<<<
IF sy-subrc = 0.
cacs_s_bupaw-bank_id = lt_but0bk-bkvid.
ENDIF.
ELSE.
Regards
Uwe -
Function module call with destination
Hi,
how can check if a function module call with destination works or not ?
How can I debug.
What can be the reason if it is not calles
regards
ertas* to chcek the rfc Destination By pass RFC destination name and Connection Type..
RFC_CHECK_DESTINATION
or
RFC_CHECK_DESTINATION_ID
or
You can use this FM RFC_VERIFY_DESTINATION if your release is greater than 4.6C.
Check this sample code from Craig Cmehil's weblog.
CALL FUNCTION 'RFC_VERIFY_DESTINATION'
EXPORTING
DESTINATION = TMP
TIMEOUT = 10
EXCEPTIONS
INTERNAL_FAILURE = 1
TIMEOUT = 2
DEST_COMMUNICATION_FAILURE = 3
DEST_SYSTEM_FAILURE = 4
UPDATE_FAILURE = 5
NO_UPDATE_AUTHORITY = 6
OTHERS = 7.
IF SY-SUBRC EQ '0'.
"* Do code here
ENDIF.
Prabhu -
Error in function module WWW_DISPATCH_REQUEST
Hi,
I am upgrading standalone ITS to integrated ITS.
In this process I refered to OSS notes number 979467. and i maintained all service files in WEBRFC service.
and when i am testing my services i am getting an error in the browser
saying:
'Error in function module WWW_DISPATCH_REQUEST'
Parameter Name Parameter value
sap-client 100
~USERAGENTTYPE M
~USERAGENTVERSION 6
~CALLED_FROM_ITS 6
~URLWGATE %_WEBRFC_HTTP_SERVICE
~SESSION SID:ANON:essap00_MIL_02:ByAZnf5VaI5DZcamNtjfwtDYdKZb5gkPV4oG3lBO-ATT
~URLIMAGEPATH C:\tmp\sapicons\
So i am not able to find an where i went wrong. Please suggest me or guide me to resolve the above error.
Thanks in advanceI am not sure this is an issue with getting the mime files for your webrfc service. If it is, please try the following:
From page 13 of the SAP document "Developing IACs with the SAP Integrated ITS"
MIME URL
MIME objects in the integrated ITS are accessed at runtime directly in the database. For this, a special ICF service mimes exists with the http request handler CL_HTTP_EXT_ITS_MIMES, which is stored in the ICF path defaulthost u2192 sap u2192 public u2192 bc u2192 its. It is used to fill parameter ~urlmime with the value /sap/public/bc/its/mimes. Also function mimeURL() returns this value as a result.
The ICF service mimes must be active if you want to execute an ITS service that accesses MIME objects.
Changes to the HTML templates are necessary only if the MIME URL in the ITS service does not contain the SAP default values.
Developing
Please also check out this OSS note 1076200 - WebReporting: Icon support for WebRFC Service
It may applies to your case.
The last parameter "~URLIMAGEPATH C:\tmp\sapicons\" may be the cause of the error.
Hope it helps.
Edited by: Danny Mak on Nov 23, 2009 8:03 PM -
Can a function module call another function module
Can a function module call another function module:-
within the same function group
(ii) within different function groupsHi,
We can call function from another function. If there is a function which is like a calculator and all the operations are from different functions then we have to call the functions from the calculator function for different functions.
If all the function are from same function group, Then the data is globally available to all the functions with in the group.
Otherwise we have to declare the data definitions for each of the functions if they are in different function groups.
Yes it is possible to call a function module from another function module:-
within the same function group
(ii) within different function groups
Reward.
Maybe you are looking for
-
How can i insert a heart shape into keynote
Hi I am new to IMAC and want to insert a heart shape into Keynote so I can colour code it and write text inside - can someone help please -I've tried the drawing tool but no success!! thanks
-
I made an executable JAR file (With the Manifest file). When I double click it, it just sits there. (Note: Im using XP and i did assosiate the file). Please help
-
Hi All, I've just installed OEL5 update 3. I have a problem understanding my disk size. If I type: fdisk -l |grep Disk I got 2 lines: Disk /dev/sda 320.0 GB Disk /dev/sdb 250.0 GB that make sense to me cause it's exactly my hard disk on the hardware,
-
I have reset Firefox, then reinstalled, removed all of the extensions and plugins, uninstalled and reinstalled Flashplayer, updated Java, etc. I have also created new profiles, which have the same problem. The problem does not appear in Safe Mode, wh
-
How to Join Primary site to CAS server
Hello All Can any one please let me know to how to join Stand-alone primary server SCCM 2012 R2 to CAS server 2012 R2