RFC function to retrieve application log
Hi,
does anybody know a standard SAP RFC function module to read an application log? So far I haven't been able to find one...
Please note that I'm not looking for any custom RFC wrappers around standard SAP functions or any solutions to read the data directly from the database tables.
Thanks for your help, harald
Hi Sidarth and Elini,
thanks for the answers. Sidarth my goal is to find a standard SAP function module. Writing a wrapper is trivial, but is not helpful as a general solution (e.g. when working on multiple systems including some, where you don't have development access).
Elini, I looked at the function module C1CA_READ_APPLICATION_LOG, but it's not what I'm looking for (should've been more specific): It doesn't exist in SAP4.6c (support package level 48) and it's only a wrapper to present a dialog. I need an RFC function module to return an application log, dialog processing is not desired.
Thanks for the feedback. Does anybody have any other suggestions?
Best wishes, harald
Similar Messages
-
Function Module for Application Log(SLG1)
HI SapAll.
may i know what is the Function Module to read the data for Applicaiton Log (tcode-SLG1).
waiitng for your response.
regards.
VarmaHi Danish.
running the program 'SBAL_DISPLAY' is similar to running the FM'APPL_LOG_DISPLAY' .However when i run any one of these i have to manually press the 'Execute button' to display the log(there is no option to save the log into spool or to get into some Internal table)
i have tried running the program 'SBAL_DISPLAY' by putting the Break point at the line ( CALL FUNCTION 'BAL_DSP_LOG_DISPLAY'
EXPORTING
i_t_log_handle = l_t_log_handle)
,while debugging the values are as below:
L_T_LOG_HANDLE : Sorted Table[1x1(44)]
1 ZoDNJw4vg3BX0000h1GOdm.
could you please help me in getting the log into spool wihtout having to press the execute button and without having to look at the Log.
regards.
Varma -
Application Log in Function Module
Hi Experts,
I have come across application log as input in several function modules. What is the significance of the application log and how do I generate it so that I can use the function module. Following is the interface of my function module
*"*"Local Interface:
*" IMPORTING
*" REFERENCE(IV_UPDATE_TYPE) TYPE UPDATE_TYPE DEFAULT 'U'
*" REFERENCE(IV_PRODUCT_GUID) TYPE COMT_PRODUCT_GUID
*" REFERENCE(IS_SET_MAINTAIN) TYPE ZSORGIB_MAINTAIN
*" REFERENCE(IV_APPLICATION_LOG) TYPE BALLOGHNDL
Regards,
Abdullah Ismail.Hi,
You can use the Application Log to display error messages, warnings, and other information generated by KM applications and services.
Use FM Application 'BAL_LOG_CREATE' for creating an handle and then call FM 'BAL_LOG_MSG_ADD' to add new messages under this handle. When you call the function module with the handle generated by you. The messages inside the fm will be logged with that handle which later on you can get using BAL_LOG_MSG_READ.
Thanks and warm regards,
Smita. -
Calling a RFC function in non-SAP application
Hi,
I can call a RFC function in a .NET application. Here there is no problem.
But if an ABAP program submitted in this RFC then I can not call this RFC?
Can I call an RFC ( it submits another abap program) non-SAP application.
Thanks.Hi Astron,
Could you please close the thread as answered.
Regards,
Anand Mandalika. -
Using RFC Function Module to send data to NON SAP Application
Hi friends,
Please guide me how can I send data from SAP -> Dotnet Applcation using Dotnet Connector through RFC function module from SAP side. In my scenerio, I Run Z transaction to executte RFC function module which create some data to pass to dotnet connector.
Regards,
Rajesh KumarHi,
You can make use of Dotnet connector to read the content of SAP RFC .. (eaiest of all)
The RFC can be executed using connector , and can read the data simultaneously.. u need to code in dotnet for this..
else create a webservice and read it from dot net ..
Regards
Renu Gusain
Edited by: Renu Gusain on Jan 25, 2010 12:55 PM -
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 -
Warning message into Application log of Service request
Hi Experts,
I have a requirement where I am using Event handlers(CRMV_EVENT) to redetermine partners of a service request whenever certain values are changed in the transaction CRMD_ORDER.
Partners will be retrieved from a custom table.
In any circumstances, if the partners cannot be determined then we need to push a WARNING message stating that "Partners can not be determined, pls maintain the values in the custom table'.
For this purpose I am using the function module CRM_MESSAGE_COLLECT with the following parameters, but still I am not able to see the same into the Application log of the Service request that is going to be created.
CALL FUNCTION 'CRM_MESSAGE_COLLECT'
EXPORTING
iv_caller_name = 'ORDERADM_H'
IV_REF_OBJECT = iv_header_guid
IV_REF_KIND = 'A'
IV_LOGICAL_KEY = '0001'
IV_MSGNO = '001'
IV_MSGID = 'ZSP'
IV_MSGTY = 'W'
IV_MSGV1 = SY-MSGV1
IV_MSGV2 = SY-MSGV2
IV_MSGV3 = SY-MSGV3
IV_MSGV4 = SY-MSGV4
IV_MSGLEVEL = '1'
IV_FIELDNAME =
IV_ACTION =
IV_LOG_HANDLE = lv_log_handle
IV_CUMULATE = 'X'
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 missed in passing of any additional parameters?
Can any one of you have encountered the same problem and solved this, pls through some light on me too(if possible with block of code).
Thanks in advance.Hi,
Here is the block of code that I used to push a message in to Application log.
Push your message into a variable called dummy and then call the below mentioned function module.
DATA: lv_dummy(254) TYPE c, "#EC NEEDED
MESSAGE w052(sppf_media) WITH text-001
text-002
INTO lv_dummy.
CALL FUNCTION 'CRM_MESSAGE_COLLECT'
EXPORTING
iv_caller_name = 'ORDERADM_H'
iv_ref_object = iv_header_guid
iv_ref_kind = lc_ref_kind_a
iv_msgno = sy-msgno
iv_msgid = sy-msgid
iv_msgty = sy-msgty
iv_cumulate = lc_x
IMPORTING
ev_msgty = lv_msgtyp
es_msg_handle = gv_msghandle
EXCEPTIONS
not_found = 1
appl_log_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.
ENDIF.
Hope this helps to resolve your issue.
Regards,
Usha. -
Synchronous RFC functions from XI
Please confirm my observations.
I wanted to call a synchronously RFC Function i.e. Importing some data and Exporting some reply.
The XI message monitor shows that the RFC adapter handles this call asynchronously i.e. QOS of EO and not BE as I would have expected.
Is this behaviour I observe correct and does this then imply that there is no way of calling RFC enabled Functions on SAP expecting anything back
Thanks
AndreHi Vijaya,
Here is the message seq from the monitor for a call to a synchronous Function module :
Status Successful
Repeatable No
Cancelable No
Error Category
Error Code
Start 29.03.2006 11:51:47
End 29.03.2006 11:51:47
Sender Party
Sender Service DXI_Client_400
Receiver Party
Receiver Service DR3_Client_100
Interface
XML_Interface_With_RFC
<b>Quality of Service Exactly Once</b>
Message a2f1d6e0-bf09-11da-8b8a-000d6098578c
Reference
Conversation ID
Direction INBOUND
Message Type Recv
Profile XI
Connection AFW
Transport HTTP
End Point http://ntcdxi01:50100/MessagingSystem/receive/AFW/XI
Authorization
Sequential Number 0
Number of Retries 3
Failed 0
Retries 300000
Valid to
Persist Until 28.04.2006 11:51:47
Schedule Time 29.03.2006 11:51:47
The Audit log also shows that the call was handled asynchronously -
2006-03-29 11:51:47 Success SOAP: request message entering the adapter
2006-03-29 11:51:47 Success SOAP: completed the processing
2006-03-29 11:51:47 Success The message was successfully received by the messaging system. Profile: XI URL: http://ntcdxi01:50100/MessagingSystem/receive/AFW/XI
2006-03-29 11:51:47 Success Using connection AFW. Trying to put the message into the receive queue.
2006-03-29 11:51:47 Success Message successfully put into the queue.
2006-03-29 11:51:47 Success The message was successfully retrieved from the receive queue.
2006-03-29 11:51:47 Success The message status set to DLNG.
2006-03-29 11:51:47 Success Delivering to channel: RFC_MethodCaller
<b>2006-03-29 11:51:47 Success RFC adapter received an asynchronous message. Attempting to send tRFC for Z_THE_METHOD with TID XIel7MuBy94TgBYW0DO9XNZ0</b>
2006-03-29 11:51:47 Success The message status set to DLVD.
Any iead what I'm missing ? -
How to create RFC function module and how to call this function module
Hi,
i want to know step for creating RFC function module and then How to use this function module from some other sap system.
Thnaks,
jigarJigar,
To implement a remote function module in ABAP, perform the following steps:
Register the module as remotely callable in the RFC server system.
In the function module Administration screen (transaction code SE37), set the field Can be called via REMOTE CALL. Registering a module as remote causes an RFC stub to be generated for it.
Write the code for the function module.
Create the destinations.....................
Displaying, Maintaining and Testing Destinations
To display, create or modify destinations, choose Tools ® Administration ® Administration ® Network ® RFC destinations or enter transaction code SM59.
Remote Destinations are stored in table RFCDES. The RFCDES table describes logical destinations for remote function calls.
It is not possible to maintain the RFCDES table directly.
You can also access logical destinations via the Implementation Guide (IMG) by choosing Tools ® AcceleratedSAP ® Customizing ® Execute Project ® SAP Reference IMG.
In the Implementation Guide, expand the following hierarchy structure:
Basis
Application Link Enabling (ALE)
Sending and Receiving Systems
Systems in Network
Define Target Systems for RFC Calls
Displaying Destinations
The initial screen for this transaction displays a tree:
Different connection types (i.e. partner systems or programs) are possible. For further information, see Types of Destinations.
To display all information for a given destination, double-click it, or place the cursor on it and press F2 .
To search for a destination, press the Find button and specify your selection. You get a list of all entries matching your selection. Place the cursor on the one you want, and press F2 or simply double-click the destination. All information for the given entry appears.
Creating Destinations
On the destinations overview screen (transaction code SM59), the connection types and all existing destinations are displayed in a tree structure.
All available connection types are explained in Types of Destinations.
To create a new RFC destination, press the Create button. A new screen is displayed with empty fields for you to fill in.
If you want to create a new destination
As you create a remote destination, you can specify a particular application server or a group of servers for a balanced distribution of system load.
For details of the destination parameters, see Entering Destination Parameters.
Changing Existing Destinations
On the destinations overview screen (transaction code SM59), the connection types and all existing destinations are displayed in a tree structure.
You can display all information for a given destination by double-clicking it or pressing F2 on it.
To change an existing destination, double-click it, or place the cursor on it and press the Change button.
For details of the destination parameters, see Entering Destination Parameters.
Testing Destinations
To test a destination, choose the appropriate function from the Test menu.
Connection (also available via the Test connection pushbutton)
Authorization (checks logon data)
Local network (provides a list of application servers)
You can use the CALL FUNCTION statement to call remote functions, just as you would call local function modules. However, you must include an additional DESTINATION clause to define where the function should run:
CALL FUNCTION RemoteFunction
DESTINATION Dest
EXPORTING
f1 =...
f2 =...
IMPORTING
f3 =...
TABLES
t1 =...
EXCEPTIONS......
The field Dest can be either a literal or a variable: its value is a logical destination (for example, "hw1071_53") known to the local SAP System. Logical destinations are defined in the RFCDES table (or the TRFCD table in R/2 Systems) via transaction sm59 or the following menu path: Tools ® Administration, Administration ® Network ® RFC destinations. You can also access logical destinations via the Implementation Guide (IMG) by choosing Tools ® Customizing ® Enterprise IMG. In the Implementation Guide, you can then choose Cross-application components ® ALE ® Communication ® Define RFC destination.
The remote function call concept, for example, allows you to access a function module in an R/2 System from an ABAP program in an R/3 System. If you want to read a customer record from your R/2 Systems database, create a remotely callable function module in the R/2 environment which retrieves customer records. Call this function from your R/3 System using a remote function call and listing the destination for the target R/2 System:
Pls. reward if useful -
Who uses Application Logs?
Hey there, I just wanted to understand more about the usage of application logs. Do any of you use it for debugging/analysis purposes of your applications? For those that use it, would you mind explain how you use it etc.
Sorry, I'm pretty much an ABAP newbie.I used Application Logs to get errors or other messages for RFC Calls etc in most of my Custom BAPIs.
See this\
http://help.sap.com/saphelp_nw04/helpdata/en/3a/c8263712c79958e10000009b38f936/content.htm
It doesnt help you much but definetly gives you some idea.
There are a bunch of function modules to help in getting Application Logs. Theoritically an Application Log is similar to System Log. But System Log is for the whole SAP system where are an Application log is specific to the Custom Object (and sometimes even sub-object) that you create and assign to.
Pros: If improves performance by reducing number of database hits and writing the logs locally.
Cons: A lot of effort is needed for initial setup.
If this helps, award points suitably. -
SUP use own RFC Function module
Hello there,
I wanted to create my own RFC Function Module to get a list of purchase orders. So I could use my FM to create a MBO in Sybase WorkSpace. But I've got a problem, whenever I want to add a new MBO and start searching for my own FM, it can't find my Function Module....
How can I use my FM in SUP workspace ?
greetings,
AmintahHello,
I have basically the same Problem.
I developed a function module to retrieve maintenance orders from the SAP System.
Therefore I created a package and assigned it to the PM (Plant Maintenance) application component.
Now when I connect to the SAP Server in the SUP WorkPlace, there is only one folder called "Application Components". In its subfolder "Plant Maintenance" I can't find my own function modules.
Do I have to search somewhere else or is there anything else I have to do first?
Thank you for your help in advance!
Regards,
Daniel -
Custom error message in SAP application log
Is there a way to add a custom error message to the SAP application log without passing the message variables MSGV1, MSGV2, MSGV3, MSGV4 and the Message class and number.
We want to pass a custom message from the BAPIRET2-MESSAGE without giving it a Message class and number. The reason for this is that we are using class based exceptions instead of the traditional message class with errors. When we catch the class based exception, we take the error text of the exception and put in in the BAPIRET2-message and set the BAPIRET2-TYPE as 'E'. Now we want to add this to the SAP application log.
The call to 'BAL_LOG_MSG_ADD' takes a structure BAL_S_MSG which is just like BAPIRET2. However this function builds the entry to the application log use the message variables MSGV1, MSGV2, MSGV3, MSGV4. There is no provision to pass in the BAPIRET2 message.
Add message to application log
CALL FUNCTION 'BAL_LOG_MSG_ADD'
EXPORTING
i_log_handle = app_log_handle
i_s_msg = log_message
Thanks,
JayHi Jay,
Did you see <b>BAL_LOG_EXCEPTION_ADD</b>?
This FM is represented by the structure <b>BAL_S_EXC</b>. This can have various versions as described below:
<b>Data of BAL_S_EXC Structure / Use</b>
<b>EXCEPTION</b> / Exception class from which an exception text
is added to the log. This field must be filled.
<b>MSGTY</b> / Message type (MSGTY) of a T100 message.
This field must also be filled for exceptions.
<b>PROBCLASS,
DETLEVEL,
ALSORT, TIME_STMP</b> / Message or exception attributes, such as
problem class (PROBCLASS, for
example, "very important"), level of detail
(DETLEVEL, from 1 to 9), sort criterion
(ALSORT, unrestricted) and timestamp
(TIME_STMP). These fields can be displayed
in the log (except TIME_STMP).
<b>MSG_COUNT</b> / This attribute is not used for exceptions.
Follow the link below for more details:
<a href="http://help.sap.com/saphelp_nw04/helpdata/en/d6/5d7f38f52f923ae10000009b38f8cf/frameset.htm">SAP Help DOc</a>
Hope this helps.
Thanks
Sanjeev -
Any guidelines using RSAL_LOG_WRITE to post message in the application log
Hi SDN!
I've programmed a rather complex extractor. As most you will know, the real test is when the extractor goes live in productions;-) So in order to be able to check if everything works as designed - I've customized the extractor in order to post more or less entries in the application logs - This setting can be alterered in the uses system directly.
I've tested the functionality using RSA3 and the application log is filled as expected. The Application log object is RSFH and everything shows up fine. When tring to use it from BW - The application log gets no entries under object RSAP (Where they normally will end up).
I'm using the function module RSAL_LOG_WRITE to add entries to the same log as the macroes LOG_WRITE uses.
Does anybody have any experiance adding entries to the standard application log in the source system when extracting data into BW?
Best Regards
Søren HansenSorry Arkesh,
I to don't know that how to install the jar files, actually thats the role of BASIS guys.
Watch the below threads for which jar files we need to deploy and how to deploy the jar files
Re: Required jar files for using jdbc adapter
Re: Error in JDBC adapter -
Doubt in creating program to display application logs
Hi,
I have doubt in creating a program to display application logs.
The standard transaction code SLG1 has been used to display Application logs till now by the user.
They came up with the new requirement on this.
<u>The requirements were:</u>
1)New custom program shoud be created like SLG1 with limited selection fields( data from, date to, Program name and User)
2) Detail list should be displyed immediately when this program is executed because SLG1 gives Basic list,Detailed list which is getting displayed when 'Detail view' is selected in the first list.
I have created one program with limited selection fields as per the requirement using the below function modules .
BAL_FILTER_CREATE
BAL_DB_SEARCH
BAL_DB_LOAD
and BAL_DSP_LOG_DISPLAY
<u>Issue :</u> still I am getting the firt list.
both Basic and Detailled lists are getting triggered at the FM BAL_DSP_LOG_DISPLAY.
Is it only the way to copy and modify this FM.
Could you please suggest me?
Thans in advace,
babu.
Message was edited by:
babu v
Message was edited by:
babu vHello All,
Thanks for your valuable suggitions.
I have seen most of the demo programs.
I found one fm'BAL_DSP_PROFILE_NO_TREE_GET' which avoids the tree list which is getting listed above the profile list.
I have been searching alot to omit the Profile list. I searched alot to find any function modules realted to that.
The requirement was only the Detail list should only be listed.
Could you please suggest me to avopid that profile list also?
Thanks in advance,
babu
Message was edited by:
babu v -
How to write to application log at BBP_CREATE_BE_PO_NEW
Dear all,
I am running in a strange problem. I want to log to application log (SLG1) in BADI BBP_CREATE_BE_PO_NEW. As soon as I call a function from there I get an error at the shopping cart position. Changing values in the given data does work without any problems. In EBP 3.5 we used the BADI BBP_CREATE_PO_BACK and this worked with logging without any problems.
Thanks for support.
Regards
RomanHello , there is an example of application logging usage in report SBAL_DEMO_01.
You need an application log instance to be created before you can add messages that will be displayed using tx SLG1. Maybe its because you dont have a logging object instance in your badi.
Hope it helps.
Regards, Luciano.
Maybe you are looking for
-
How do I get all the music on my IMAC in one ITUNES folder? We have one IMAC, with 3 sign ons for me and my 2 teens. When you add a song under one of the sign ons it doesn't add it to all 3 libraries. Before I updated to LION, We had one main librar
-
Can't power on Wireless Radio Access Connections ver. 5.83 build 83C753WW
I had the wireless working just fine. I did a System Update and now I can't get the Wireless Radio to power on for the life of me. I've tried many things. I read many many other problems that sound the same but they are working with older version o
-
Stuck remote icons, no local icon drag, easy fix
Folks: 10.7.1 on Quad-Core iMac I connected to a Win box on my LAN, opened an HD and a subfolder, then copied two files from my Mac there. Then closed the subfolder. Problem: Those two items remained on the (2nd display) window, untouchable. Switch
-
I am having problems using javascript:confirmDelete
I have two pages created by the wizard, a report with a form. As you all know you view a list of records on the report then click the "Edit" button and it calls the form to edit the individual row. I have made a change to the action of these two page
-
JSR / WSRP Standards Compliance
Dear All, We are currently operating on NW2004S. We need to deploy the portlets, with JSR (Java Specification Request) 186 / JSR 286 Compliance, from Other Portals on SAP Ent Portal 7.0. Some available sap documentation suggests that with NW CE7.1, S