How to get transaction id of a function called in background
Hi all,
does someone know how to retrieve t-id of a function called in background (tRFC) client side? I found
'ARFC_GET_RECEIVER_TID'
'ARFC_GET_TID'
but these works server side (function called knows its t-id .. caller no). Is there some similiar client side so that after calling function I can retrieve its transaction id ? I know it's not the same context, for explaining better, what I need it's something like fork() in C, where process father (the one that forks) receive as return value process id of process forked.
SEARCHING ON FORUM I see that many people answered on question about transaction id with sy-tcode misunderstanding the question. This transaction id it's not the tcode. This is the char 32 unique transaction code
thank you
regards
Gabriele
You can have a look at function TRFC_RECEIVER_INFO
[qRFC API for the Inbound Queue|http://help.sap.com/saphelp_nw04/helpdata/en/21/5c5f3ca0dd9770e10000000a114084/content.htm]
Similar Messages
-
How to get parameter information on DLL function call (CVI) in TestStand?
Hi,
I wrote a simple Instrument Driver in CVI, and it has 3 parameters Voltage, Current, Channel.
I made a DLL in order to call this function in TestStand as an action.
That works fine, the only problem I have is that it shows my function as DC_Conf (arg1, arg2, arg 3) and I only get the type information like double double int.
I do not get the parameter names Voltage, Current, Channel...
How can I get this information to be displayed in TestStand so I know which parameter arg 1-3 is Voltage,Current,Channel in case I forgot?
or
Is there a way to display the help text of the driver in TestStand?
I tried clicking on the (?) button next to the function call but it did not do anything...
My TestStand is version 4.1
Thanks...NessNess,
When TestStand populates the parameter information, it does so by looking at the dll's type library. CVI automatically creates a type library for a dll based on the function's signature, which can include the parameter names. However, if the function prototype does not contain variable names, then CVI cannot include names in the type library.
You can define your own type library to directly control the information available to TestStand from your dll. If you want to define your own type library, you can do so using a .fp file. This will allow you to use complex data types (such as structs), and to rename your parameters.
Here's a KnowlegeBase describing the process: Embedding Type Libraries in a LabWindows/CVI DLL for use in TestStand
Either solution proposed here will work, and they each have tradeoffs:
You can definte the variable names in the function prototype. This keeps the functions self-documenting, and is the easiest solution.
You can create a .fp file and define your own type library. This allows you the most control over exactly what you will see in TestStand, but requires you to create a new file, and to keep that new file up to date if you make any changes to your source code.
Message Edited by Josh W. on 12-11-2009 01:08 PM
Josh W.
Certified TestStand Architect
Formerly blue -
How to get sysnr value in a Function Module
Hi all,
I need to get the sysnr(system number) value of the R/3 system. I execute a RFC function module and need to get the value of sysnr of the system it executes in as a return parameter. Can somebody tell me how to get this value in the function module and return it.
Thanks and Regards,
PratikHello Pratik
The system number has to be defined in the RFC destination. Thus, select on your local system (where you call the RFC function module) the corresponding RFC destination from table <b>RFCDES</b>. In field RFCDES-RFCOPTIONS you will find a string like this:
H=<ip address>,S=21,R=N, ...
S=system number
Regards
Uwe -
How to get response from such a function
How to get response from such a function (in MODULE USER_COMMAND_0010 INPUT I get "ODGOVOR" 'X'
FUNCTION Z_SEENKRAT.
""Local Interface:
*" EXPORTING
*" REFERENCE(ODGOVOR) TYPE MSEG-KZEAR
DATA ok_code LIKE sy-ucomm.
DATA: test like mseg-kzear.
BREAK-POINT.
call screen 10.
test = ODGOVOR.
ENDFUNCTION.
*& Module CLEAR_OK_CODE OUTPUT
text
MODULE clear_ok_code OUTPUT.
CLEAR ok_code.
ENDMODULE. " CLEAR_OK_CODE OUTPUT
*& Module USER_COMMAND_0010 INPUT
text
MODULE USER_COMMAND_0010 INPUT.
DATA odgovor LIKE mseg-KZEAR.
CASE ok_code.
WHEN 'DA'.
ODGOVOR = 'X'.
ENDCASE.
ENDMODULE. " USER_COMMAND_0010 INPUTHi,
You need to declare the ODGOVOR variable in the TOP include, then you will get the value
Regards
Sudheer -
How to get transacted session in direct mode with jmsra adapter
Hi,
I use MQ 4.4u1 release with GF in EMBEDDED mode. I configured several connection factories with NoTransaction/LocalTransaction/XATransaction support. In my app I get a connection factory from JNDI tree, create connection/session/producer and send several messages to queue. Everything works fine when I don't use transactions. But, when I want to send messages in one transaction, the connection always provided to me non-transacted session. The session created via
Session session = connection.createSession(true, Session.SESSION_TRANSACTED);
request. I check the session transacted state and acknowledge mode right after i get it:
log.fine("Session: " + session + "; transacted: " + session.getTransacted() + "; ackMode: " + session.getAcknowledgeMode());
The log shows me that the session is not transacted and ackMode is 0 (DUPS_OK_ACKNOWLEDGE). If I try to commit the session after messages were sent I get the correct exception:
javax.jms.IllegalStateException: MQJMSRA_DS4001: commit():Illegal for a non-transacted Session:sessionId=3361979872663370240
Does anyone know how to get transactional session in direct mode?
Thanks, Denis.I mentioned LOCAL because I misread your post and thought you were suggesting that LOCAL mode behaved differently.
If you want to send messages in a transaction from within a Servlet then I think you're expected to use a UserTransaction: Here's an example that worked for me:
Connection connection = outboundConnectionFactory.createConnection();
Session session = connection.createSession(true, Session.SESSION_TRANSACTED);
userTransaction.begin();
MessageProducer producer = session.createProducer(outboundQueue);
int numberOfMessages = 10;
for (int i = 0; i<numberOfMessages; i++) {
Message message = session.createTextMessage("Hello world");
producer.send(message);
userTransaction.commit();
connection.close();I obtained the UserTransaction with this resource declaration:
@Resource(name = "java:comp/UserTransaction")
private UserTransaction userTransaction;The EJB spec explicitly states that local transactions aren't supported in EJBs; I haven't found such an explicit statement for Servlets but suspect that JMSRA is taking the same approach.
As for imq.jmsra.direct.disableCM property - this appears to disable connection pooling and from your post changes other behaviour as well. How did you find out about it (other than by examining the code)? As far as I can see this is not a documented feature and is not necessarily tested or supported. -
How java gets objet collections from DB function
This is database function. my question is how java get those values from the function.
Could you please post some sample code also?
CREATE OR REPLACE
Type T_PREO_RoleINFO is Object
ROLE_ID NUMBER(10),
ROLE_NAME VARCHAR2(20))
CREATE OR REPLACE
TYPE T_RoleInfo IS TABLE OF PREORDER.
T_PREO_RoleINFO
Function F_GetUserRole(Userid in number)
return T_RoleInfo as
V_Role T_RoleInfo;
begin
select T_PREO_RoleINFO(PREO_Role.ROLE_ID,PREO_Role.ROLE_NAME)
BULK COLLECT INTO V_Role
from preorder.PREO_Role, preorder.PREO_User_Role
where PREO_Role.Role_id = PREO_User_Role.Role_id
and PREO_User_Role.user_id = userid;
return V_Role;
end;check this out
http://www.experts-exchange.com/Programming/Programming_Languages/Java/Q_20878677.html -
How to get physical memory by using system call ?
how to get physical memory by using system call ?What system call can I use.thanks
Use sysconf(3C) with SCPHYS_PAGES
-
Use of function called "in background task"
Hi folks!
In my company there are rumors that a function called "in background task" can be used to make sure that all database changes of previous statements are already persisted. This would mean that a function called "in background task" can be used to read data from database that has been written by the same report - in any case (update dispatching over several instances,...). Usually this won't be a good idea (we know well about SAPs update concepts and read everything about it on help.sap.com). Has anybody some experiences about this or is there even a guru, able to explain why it will always work (or not)? We don't have evidence that the database has finished writing for sure when the function starts - that's why I'm worried.
Example:
REPORT test.
INSERT something to database.
CALL FUNCTION function in background task.
End of the report
Will it always work (when testing, it does)?
Any help will be appreciated!
GreetingsHi,
Logically it is correct. BACKGROUND TASK Triggers an asynchronous process. This FM is executed in multiple steps.
In first step system save the data passed to FM interface to buffer. When ever program encounters Explicit/implicit commit, the source code of the FM is processed.
Note: You can't get back the data from this FM call.
Check the F1 help on call function statement. You will get much more details.
Thanks,
Vinod. -
How to get value stored in javascript function and display in a JSP
i am doing a questionaire which is for user to input data in every question, After user input the data, a javascript function will be called to do some score calculation. Since each question will carry its final score after the calculation by the javascript function, so i use an array to store those scores and then display those scores in the same page.
However, i have to make a confirmation page to display both data and calculated score in another jsp, i only know how to display the data as it is a textfield that i can get the value by "request.getParameter("textfield1"); but i dun know how to get those scores as they are stored in an array in the javascript function, what way i can do??thank you for all your help!
I have chosen to set the score value to the hidden field when every time run the function
<script language="javascript">
function cal(index){
var thisForm = document.MC;
thisForm.score1.value=score[index];//set value to the hidden field
</script>
<input type="hidden" name="score1" value="">
<input type="hidden" name="score2" value="">
<input type="hidden" name="score3" value="">
The function will calculate only one score when every time being called. So that i can only assign one score to one hidden value at a time.
e.g, assign score[1] to thisForm.score1.value
assign score[2] to thisForm.score2.value
assign score[3] to thisForm.score3.value
how can i do this?? -
How to get type any table in function module... or something
Moderator message: Please use a more informative subject in future, and NOT IN ALL CAPITALS.
Hi experts,
how to get type any table option.
in source code.
*" CHANGING
*" REFERENCE(S_EKORG) TYPE ANY TABLE OPTIONAL
Thank you.
Edited by: Matt on Feb 17, 2009 2:27 PM - subject editedIn Function module...... Under changing tab, give the parameter name and type enter associated type any.... You would get that same in the source code and also choose Optional check box.....
You will see exact code in the FM source code -
How to get Transaction code for SAP standard report painter in FI
Hi All -
Please let me know, How to get the transaction code for Standard SAP report painter / report writer in FI module.
These report painters are created thru GR51...
Thanks,
KannanPlease refer to [Creating Transaction Code For Report Painter Reports|http://www.google.com/url?sa=t&source=web&ct=res&cd=1&ved=0CAgQFjAA&url=http%3A%2F%2Fdap-consulting.com%2Fyahoo_site_admin%2Fassets%2Fdocs%2FReport_Painter_Reports.47142031.pdf&ei=MiWYS5ilCYeOlAfn4pCGDQ&usg=AFQjCNEZ0YO6vJ97K24MbU_NI5ROTb5vJA&sig2=Ke-svnqddqrz8RMcTuEnaw].
-
How to get the set pf-status and call Transaction work together in SA
hi,
I am using Set pf-status to display the details screen and the same time using call transaction va03 leave screen 0 to display the corresponing sales order.
The issue is both of them are not workin together properly.
it could be helpfull if you give some code which deals the issue in detail...
can you please give details how to get the previous screen once the new screen is obtained thru set pf-status
thanks and regards
Edited by: san dep on Jul 10, 2008 6:25 PMHi,
Try this code ---
SET PF-STATUS 'STATUS_NAME' OF PROGRAM 'ZPROGRAM_NAME'.
Regards
Pinaki -
When call a webservice opreation, it returns an array of complex type, sure, the calling is successed, but i don't know how to get the return values,
I have tried use Pendingcall.response & Pendingcall.getOutPutValues() in Pendingcall.onResult event function...
Waiting....Flash Lite doesn't fully support webservices, so you will find it difficult to use the full api set.
I suggest that you use SWX (swxformat.org) or simply HTTP requests for transactions.
We have a tutorial on use with ColdFusion here:
http://vimeo.com/6829083
Mark -
Getting Return values from RFC function call with visual basic
Hi,
I am creating a sample app to connect to a SAP system which call its RFC functions created with ABAP. It was known that the function will return more than 1 return values.
SAP Function name ==> "ZFMTP_RFC_GET_RESULT"
Export parameters (to SAP):
- Student Name [char 10] ==> "STUNAME"
- Student ID [char 20] ==> "STUID"
Return values (From SAP):
- Results [char 10] ==> "RESULT"
- Remarks [char 200] ==> "REMARKS"
i have managed to get sample codes for connecting and call a RFC function with vb but they only get a return value. How do i retrieve multiple return values like the above function "RESULT" and "REMARKS"?
Here's my vb code to accessing the function
Dim R3 As Object
Dim FBFunc As Object
Dim returnFunc As Boolean
Dim connected As Boolean
R3 = CreateObject("SAP.Functions")
R3.Connection.Client = "000"
R3.Connection.User = "BCUSER"
R3.Connection.Password = "minisap"
R3.Connection.Language = "DE"
R3.Connection.System = "dtsystem"
R3.Connection.Applicationserver = "xxx.xxx.xxx.xxx"
connected = R3.Connection.Logon(0, True)
If connected <> True Then
MsgBox("Unable to connect to SAP")
End If
FBFunc = R3.add("ZFMTP_RFC_GET_RESULT")
FBFunc.exports("STUNAME") = "Jonny"
FBFunc.exports("STUID") = "12345"
returnFunc = FBFunc.Call() <<== How do i get the return value? or RESULT and REMARKS of the RFC Function?
thanks alot.
Edited by: Eugene Tan on Mar 4, 2008 7:17 AMHi Gregor,
Thanks for the link....i am having some doubts with the codes, hope you can clarify them for me if you know the codes..
Below is the code snippet.
Set impReturn = CHPASS_FN.Imports("RETURN") <<=== is RETURN the standard keyword to get a return object?
expPassword.Value = currpass
expNewPass.Value = newpass
expFillRet.Value = "1"
''' Call change password function
If CHPASS_FN.Call = True Then
outFile.Write (", Called Function")
Message = impReturn("MESSAGE") <<==== So if i have 3 return values..i just replace with the return value variable names?
outFile.WriteLine " : " & Message
Else
outFile.Write (", Call to function failed")
End If
thanks alot...all your help is very appreciated. -
How to get the report name from the call stack
Hi,
I have a question about how to get the caller information dynamically in a function module.
For example.
ZGET_CALLER_INFORAMTION,
get the caller name -- how ??
Thanks in advance
Best Regards,
JohnneyHi,
You can use SY_CPROG - caller in external procedures, bye using this u can get the progam name.
Regards,
kavitha.k
Maybe you are looking for
-
Where Can I Get PROPER Customer Service?
I need to ask questions about using the program and I try to use this forum but MOST people don't even get any answer. How do I contact the customer service?
-
The other night I was watching TV and heard a funny noise, then all of a sudden my power went out. The next morning I checked my TV to make sure the power was back on, and it was. Yesterday I went to turn on my Mac, but it wouldn't turn on, so I chec
-
Hi I am try to generate the datafiles usage. Could you help me on this? My report should not missout temp tablespace datafiles too. Thanks Raj
-
There is request to dump every days data from one table into text file. I need to write shell script and sql script for that There are two tables (INSPECTION_RESULTS and NJAS) under NJSHDOWN schema. The table NJAS is child table of INSPECTION_RESULT
-
[OSB] Calling a secured proxy from another secured proxy
Hi, I would like to call a secured proxy from another secured proxy. However, the call fails. I'm making a call from a Java stand alone Web Service client. The client uses policy "oracle/wss11_message_protection_client_policy". The call is made to a