Call SAPGUI transaction from BSP and vice versa
Hi all
There was some discussion about this topics before. Maybe someone can just point me to the thread answering this issue:
1. I need to call a SAPGUI transaction from a BSP application: I want to use SAPGUI, not ITS/webgui, I need single sign on, the SAPGUI transaction could possible run in another SAP system then the BSP.
As far as I understand I need to create a *.sap file with the correct parameters for sapshortcut. But how does single sign on work? Can I create a logon ticket in my BSP and forward it to sapshortcut?
2. I need to call a BSP application from a SAPGUI transaction or report, with single sign on but in a MS IE window, not inside a SAPGUI HTML control
Can I create a logon ticket in my coding an append it to the start url for the BSP?
any hints?
thanks
Michael
hi Michael,
For your second issue,to call a BSP application from a SAP GUI in MS IE explorer,
you can use the Function Module CALL_BROWSER in your report,like
data url(200) type c.
url = 'http://<server>.<domain><port>:'.
concatenate url '/sap/bc/bsp/sap/' into url.
concatenate url 'znw_poc2_1_prtl/dts.htm' into url.
concatenate url '?sap-user=<userid>' into url.
concatenate url '&sap-password=<passowrd>' into url.
CALL FUNCTION 'CALL_BROWSER'
EXPORTING
URL = url
* WINDOW_NAME = ' '
* NEW_WINDOW = ' '
* BROWSER_TYPE =
* CONTEXTSTRING =
* EXCEPTIONS
* FRONTEND_NOT_SUPPORTED = 1
* FRONTEND_ERROR = 2
* PROG_NOT_FOUND = 3
* NO_BATCH = 4
* UNSPECIFIED_ERROR = 5
* OTHERS = 6
IF SY-SUBRC <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
For this to work you have to enable SSO on your server.
you can check if it is enabled or not by runnning the BSP application "SYSTEM" ,page "SSO2TEST.htm" .
Follow the instructions on the page for testing.
This may not be a great way as your userid password are passed via URL,still it works .
Hope this helps,
Regards,
Siddhartha
Similar Messages
-
Calling HTML file from servlet and vice versa...
i have got few questions..
1- if a site is made in HTML then what should be used to put user login functionality in it, servlets or jsp or other option(specify)?
2- im trying to do with servlets, so when im calling doPost method from HTML page and sending data, everything working fine but because of this the page refreshes and the HTML coding get lost, so how can i stop that from happening if possible, like showing the same page with messege = "Logged in".
3- how can i call an HTML page from servlet?
4- how can i send data from servlet to HTML page?that i m aware of, but when a servlet is called then the page will refresh n it will display the things that you have mentioned in the servlet file n not the things that u have mentioned in HTML file, n the page will be blank if u have not mentioned any HTML coding in servlet file.
so i need to knw how to call back that prev HTML file so that the things i want to display can be displayed, i knw the same can be done by adding the HTML code in servlet file but i would like to know if there is any way to call back the HTML file. -
Calling SAP Transaction from BSP
I wonder whether it is possible to call SAP transaction from BSP application and pass to it some data; e.g., PO# when calling VA02?
The called transaction could appear in a separate MS IE Window (like in some Portal applications) or in SAP GUI.
Any help will be appreciated.
Thank you in advanceI have launched the Java SAPGui from BSP pages before. I used SNC so that the users were logged on via Single Sign On. I store the Java Gui in the Mime directory. You can force the startup transaction. Theorectically you could also Gui Scripting to try and control the Gui and force in the default value for your PO field. I have not tried that however. You will probably want to check the Service Marketplace for documents on the Gui Scripting. The following is the code from my BSP page to launch the Java Gui in the Browser as an applet:
<%@page language="abap"%>
<%@extension name="htmlb" prefix="htmlb"%>
<HTML>
<HEAD>
<TITLE>SAPGUI for the Java Environment</TITLE>
<STYLE type="text/css">
body { margin-left:0px; margin-right:0px; margin-top:0px; margin-bottom:0px; }
</STYLE>
</HEAD>
<BODY scroll="no">
<SCRIPT language="JavaScript">
// user configurable part starts here
var pluginurl = '';
var scriptable = 'true';
var codebase = '.';
var jnlp = 'platin.jnlp';
var keepalive = 'true';
var frog = 'true';
var trace = '';
var tracefile = '';
var connectionData = 'conn=/M/nts163/S/3620/G/SPACE/&tran=SE80&clnt=088&fast=true&sncon=true&sncname=p:[email protected]&sncqop=9';
// user configurable part ends here
// verify if Java Plugin as control in Internet Explorer or Java Plugin for Netscape or native JRE of browser must be used
var jre = 'control';
if(navigator.platform.indexOf("Mac") > -1)
jre = 'native';
else if (navigator.appName.indexOf("Netscape") != -1)
jre = 'plugin';
document.open();
switch (jre)
case 'control':
document.writeln('<OBJECT CLASSID = "clsid:8AD9C840-044E-11D1-B3E9-00805F499D93" ');
document.writeln(' ID = "PlatinGUI" ');
document.writeln(' CODEBASE = "j2re-1_3_1_02-win-i.exe#Version=1,3,1,0" ');
document.writeln(' WIDTH = "100%" ');
document.writeln(' HEIGHT = "100%" ');
document.writeln(' BORDER = 0> ');
document.writeln('<PARAM NAME = "TYPE" VALUE = "application/x-java-applet;jpi-version=1.3.1"> ');
document.writeln('<PARAM NAME = "SCRIPTABLE" VALUE = "', scriptable,'"> ');
document.writeln('<PARAM NAME = "code" VALUE = "com.sap.platin.GuiApplet2"> ');
document.writeln('<PARAM NAME = "codebase" VALUE = "', codebase,'"> ');
document.writeln('<PARAM NAME = "jnlp" VALUE = "', jnlp,'"> ');
document.writeln('<PARAM NAME = "archive" VALUE = "GuiStartS.jar"> ');
document.writeln('<PARAM NAME = "keepalive" VALUE = "', keepalive,'"> ');
document.writeln('<PARAM NAME = "frog" VALUE = "', frog,'"> ');
document.writeln('<PARAM NAME = "trace" VALUE = "', trace,'"> ');
document.writeln('<PARAM NAME = "tracefile" VALUE = "', tracefile,'"> ');
document.writeln('<PARAM NAME = "connectionData" VALUE = "', connectionData,'"> ');
document.writeln(' ');
document.writeln('This page requires a Sun Java Plugin 1.3 and a SAPGUI for Java to view. ');
document.writeln(' ');
document.writeln('</OBJECT> ');
break;
case 'plugin':
document.writeln('<EMBED TYPE = "application/x-java-applet;version=1.3" ');
document.writeln(' PLUGINURL = "', pluginurl,'" ');
document.writeln(' WIDTH = "100%" ');
document.writeln(' HEIGHT = "100%" ');
document.writeln(' ALIGN = "BASELINE" ');
document.writeln(' code = "com.sap.platin.GuiApplet2" ');
document.writeln(' codebase = "', codebase,'" ');
document.writeln(' jnlp = "', jnlp,'" ');
document.writeln(' archive = "GuiStartS.jar" ');
document.writeln(' keepalive = "', keepalive,'" ');
document.writeln(' frog = "', frog,'" ');
document.writeln(' trace = "', trace,'" ');
document.writeln(' tracefile = "', tracefile,'" ');
document.writeln(' connectionData = "', connectionData,'" ');
document.writeln(' <NOEMBED> ');
document.writeln(' </NOEMBED> ');
document.writeln(' </EMBED> ');
break;
case 'native':
document.writeln('<APPLET CODEBASE = "', codebase,'" ');
document.writeln(' ARCHIVE = "GuiStartS.jar" ');
document.writeln(' CODE = "com.sap.platin.GuiApplet2" ');
document.writeln(' WIDTH = "100%" ');
document.writeln(' HEIGHT = "100%"> ');
document.writeln('<PARAM NAME = "SCRIPTABLE" VALUE = "', scriptable, '"> ');
document.writeln('<PARAM NAME = "jnlp" VALUE = "', jnlp, '"> ');
document.writeln('<PARAM NAME = "keepalive" VALUE = "', keepalive, '"> ');
document.writeln('<PARAM NAME = "frog" VALUE = "', frog, '"> ');
document.writeln('<PARAM NAME = "trace" VALUE = "', trace, '"> ');
document.writeln('<PARAM NAME = "tracefile" VALUE = "', tracefile, '"> ');
document.writeln('<PARAM NAME = "connectionData" VALUE = "', connectionData, '"> ');
document.writeln('</APPLET> ');
break;
document.close();
</SCRIPT>
</BODY>
</HTML> -
Can we invoke a asynchronous BPEL process from synchronous and vice versa
Hi,
Can we invoke a BPEL asynchronous process from synchronous and vice versa. If so how to perform that.
thanks,
VijayYes you can
sync -- calling --> Asyncc
Async -- calling --> syncc
Perfomance is no issue, depending on your requirements. Not the Syncprocesses are short-running processes, these will time-out after 30 seconds, if no answer is coming from the async process.
Marc
http://orasoa.blogspot.com -
Invoking Forms from JSP and Vice versa
Hi,
I am in to a requirement like invoking a screen developed using Oracle Forms 6i from JSP and vice versa.
1. Could you please anybody help to get the documents to be refered to get more idea on this?
2. Is it possible only by Oracle ADF?
Please help me on this.
Thanks & Regards
M ThiyagarajanHi All,
Thanks a lot for the clarifications.
Actually, integration should happen between forms and JSP. Parameters need to be passed to and forth. I will go through the specified link.
Also could you please clarify me where exactly, ADF comes into picture? or what are all the advantages when we go for ADF?
Thanks & Regards
M Thiyagarajan -
Hi,
I am new to BSP. I have to call SAP Screen on button click event on BSP and also need to pass data at runtime.
I searched this forum but didn't find the right solution. I tried to call SAP screen from BAPI and through URL but no success.
Anyone knows how it can be done?
Regards,
Usman MalikThanks for your reply,
Actually I am very new to BSP. I don't understand where to put this code?
[System]
Name=DEV
Description=DEV [Development]
Client=123
[User]
Name=RAJA
Language=EN
[Function]
Title=
Command=*SU01 USR02-BNAME=raja;
Type=Transaction
[Configuration]
WorkDir=d:xxxxxxSapWorkDir
[Options]
Reuse=1
Second thing is about shortcut. Do I have to place this shortcut on server?
Thanks,
Usman Malik -
Can we call standard transaction from bsp
Hi,
Can anyone tell me how to call a standard transaction(va01) from bsp.
Points will be awarded,
Ugandhar.Hello,
check out this coding in a new bsp page and give it a try in your system landscape. It creates an sap short cut file with the .sap extension writes dynamically to the server cache and get the url back.
Regards, Bernd
Layout:
<%@page language="abap" %>
<%@extension name="htmlb" prefix="htmlb" %>
<htmlb:content design="design2003" >
<htmlb:page title="Start SAP GUI Transaction via BSP" >
<htmlb:form>
<htmlb:textView text = "Start SAP GUI Transaction via BSP"
design = "header1" />
<htmlb:textView layout = "paragraph"
text = "Fill in fields and press the button to create the link." />
<table width=200>
<tr>
<td>
<htmlb:label for = "client"
text = "Client" />
</td>
<td>
<htmlb:inputField id = "client"
value = "<%= client %>" />
</td>
</tr>
<tr>
<td>
<htmlb:label for = "sysid"
text = "SystemID" />
</td>
<td>
<htmlb:inputField id = "sysid"
value = "<%= sysid %>" />
</td>
</tr>
<tr>
<td>
<htmlb:label for = "userid"
text = "UserID" />
</td>
<td>
<htmlb:inputField id = "userid"
value = "<%= userid %>" />
</td>
</tr>
<tr>
<td>
<htmlb:label for = "transactioncode"
text = "Transaction Code" />
</td>
<td>
<htmlb:inputField id = "transactioncode"
value = "<%= transactioncode %>" />
</td>
</tr>
<tr>
<td colspan="2">
<htmlb:button id = "myButton"
text = "Create Link to start SAP Transaction"
onClick = "create_mime" />
</td>
</tr>
</table>
<%
if display_url is not initial.
%>
<htmlb:textView layout = "paragraph"
text = "Click the link to start SAP GUI Transaction." />
<htmlb:link id = "mylink"
reference = "<%= display_url %>"
text = "Link to Start SAP Transaction" />
<%
endif.
%>
</htmlb:form>
</htmlb:page>
</htmlb:content>
Page Atributes:
file_content TYPE STRING
guid TYPE GUID_32
host TYPE STRING
isolangu TYPE T002-LAISO
page_name TYPE STRING
parameters TYPE TIHTTPNVP
port TYPE STRING
sapworkdir TYPE SDOK_CHTRD
sysid TYPE SYSYSID
transactioncode TYPE TCODE
userid TYPE XUBNAME
OnInputProcessing:
* event handler for checking and processing user input and
* for defining navigation
* event handler for data retrieval
event = cl_htmlb_manager=>get_event( runtime->server->request ).
IF event->name = 'button' AND event->event_type = 'click'.
button_event ?= event.
IF button_event->server_event NE 'create_mime'.
RETURN.
ENDIF.
* get users workdir
CALL FUNCTION 'IW_C_GET_SAPWORKDIR'
IMPORTING
sapworkdir = sapworkdir.
* get iso language
CALL FUNCTION 'LANGUAGE_CODE_SAP_TO_ISO'
EXPORTING
sap_code = sy-langu
IMPORTING
iso_code = isolangu.
CONCATENATE
'[System]'
cl_abap_char_utilities=>cr_lf
'Name='
sysid
cl_abap_char_utilities=>cr_lf
'Description='
cl_abap_char_utilities=>cr_lf
'Client='
client
cl_abap_char_utilities=>cr_lf
'[User]'
cl_abap_char_utilities=>cr_lf
'Name='
userid
cl_abap_char_utilities=>cr_lf
'Language='
isolangu
cl_abap_char_utilities=>cr_lf
'Password='
cl_abap_char_utilities=>cr_lf
'[Function]'
cl_abap_char_utilities=>cr_lf
'Title='
cl_abap_char_utilities=>cr_lf
'Command='
transactioncode
cl_abap_char_utilities=>cr_lf
'[Configuration]'
cl_abap_char_utilities=>cr_lf
'WorkDir='
sapworkdir
cl_abap_char_utilities=>cr_lf
'[Options]'
cl_abap_char_utilities=>cr_lf
'Reuse=1'
INTO file_content.
CREATE OBJECT cached_response TYPE cl_http_response EXPORTING add_c_msg = 1.
cached_response->set_cdata( file_content ).
cached_response->set_header_field( name = if_http_header_fields=>content_type
value = 'application/octet-stream ' ).
cached_response->set_status( code = 200 reason = 'OK' ).
cached_response->server_cache_expire_rel( expires_rel = 180 ).
CALL FUNCTION 'GUID_CREATE'
IMPORTING
ev_guid_32 = guid.
CONCATENATE guid
'.sap'
INTO page_name.
* get server information
CALL METHOD cl_http_ext_webapp=>create_url_for_bsp_application
EXPORTING
bsp_application = runtime->application_url
bsp_start_page = page_name
bsp_start_parameters = parameters
IMPORTING
abs_url = display_url.
cl_http_server=>server_cache_upload( url = display_url
response = cached_response ).
ENDIF. -
Import from CSV and vice versa
Please help me to find how a CSV file can be imported to Oracle 10g DB using ODP.NET provide in VB.NET.I saw an option in OLEDB that the Datasource is given as textfile to be read and OLEDBDataadaptor is reading data from textfile and updating to the DataSet.Is there any such option in ODP.NET??Please help me.
Thanks in Advance
SarithaI would suggest:
1) Using the StreamReader to consume each line of the csv
2) Then use the the "Split()" string method on each line returned as a string to parse the values into an array
3) Load each array value appropriately into a stored procedure/function and execute through a OracleCommand object
4) Loop through each line returned in the StreamReader to do the same (until EOF)
5) Wrap the whole thing in a OracleTransaction object and perform Rollback()/Commit() as appropriate considering the return values of the executed Procedures/Functions (break loop and Rollback() on error thrown).
It's not one stop shopping but I don't think that you can just cram a text file into the ODP and expect it to try and make an import (I could be wrong). -
Can't access Subscriber services from Publisher and Vice Versa
Hi ,
I am using CUCM 8.5.1(10000-26)
when connected to Publisher and go to Serviceability then service activation , Feature services or Network services of the subscriber , an error appears telling can't connect to remote node .
same from Subscriber side .
Database Replication is in "good" state
onconfig.ccm reports an error "The onconfig.ccm file on x.x.x.x does not match the publisher."
Any Advise ?Dear
please cli command to check the relication , you must check that each node should have a replication status of two (2).
use this command (Utils dpreplication runtimestate) and please check the output.I do not see this eror before , but if you did not get a solution , ithink t open a TAC with Cisco. I think the onconfig.ccm file on x.x.x.x does not match the publisher (it is a problemm in linux) , i think the /opt/informix/etc directory.
Thank you
please rate if this help -
Access linux file system from windows and vice versa
Friends
Do anyone of you have any idea about how to access linux file system from windows using java. Thanx in advance.
Regards
Rakesh"Accessing" is vague. Do you want to read? write? Both?
Here are two ways I'll mention.
1. Write an ftp client for the "cleint" computer. I beleive java has some framework functions for doing this.
2. Write java RMI client and server to open, read or write, and close a file. Pass a byte array parameter containing each block of data. -
Hello all,
I dont have much idea of BSP ans would like to have some inputs from you all.
I would like to know that can I call ABAP transaction from BSP page ?
I have got a set of column entries just as an ALV column on my BSP page and I would like to provide hotspot or double click functionality so that for each of the entries in the table , the BSP page navigates to ABAP tcode and back to BSP page.Is this functionality possible?
any help would highly be appreciated.
Regards
AmrutaHi Amruta ,
You can't call an R/3 transaction directly from BSP.
But you can achieve all the functionalities it does .
for ex ..if an r/3 transaction is a report , u hav to code in BSP editor .u can call function modules from BSP .
But one thing u hav to concern is ,,in BSP Apllication logic is seperatd from Business logic .
U hav to move all your results into an itab / params and display that inside HTML tables .
Start ur journey from here .......
http://help.sap.com/saphelp_erp2004/helpdata/en/e6/e23fd8c47e11d4ad320000e83539c3/frameset.htm
All the best .
Regards,
J -
my family and I share the same account of apple. I'm getting phone calls and messages from my mothers and my number and vice versa. is there anything we can do
The short solution is to go to Settings > FaceTime > iPhone Cellular Calls OFF.
However, as Csound points out, you should not really be sharing an Apple ID with anyone. See: How to Stop Sharing an Apple ID.
(Note that I am affiliated with that site, and some pages contain ads). -
How to call a Applet from a servlet and vice versa...?
Hi all
Can anyone help me how to call a applet from a servlet and vice versa. When the applet is called it should contact the database (oracle8i) and get the data. When i submit the applet form the data in the applet should be saved in the database.
Thanks in advance
KamalakannanSweep is correct about requestDispatcher being another approach for inter-servlet delegation; the only issue that i recall with this approach is that it defaults the method of the destination servlet to the one it was called from...for example, calling servlet2 from within servlet1.post() resulted in the dispatcher attempting to utilize servlet2.post() - i believe that i searched for a parameterize solution to no avail :( (ended up handling the request by placing a "fake" doPost() in servlet2 that simply called servlet2.doGet())
however, if your application is functioning correctly on your pc/webserver then the problem may be external to servlet communication (e.g. client webserver's ports not configured or blocked, missing runtime classes, etc.)
my suggestion would be to set aside the programmatic concerns for the moment - what is the response if you open a browser on a client's machine and access the URL in question (i.e. http://clientserver:port/stefanoServlet)? If it will not respond to access in this manner then it certainly won't when your application calls for it.
It's possible that there is a coding error but, given the info supplied, i'd start examining the environment, first. Let us know if you have any luck with the test i recommended or not (please provide abundant detail). Or, if you've found the solution then you may want to post back with a quick blub so the next person knows how to escape the trap.
D -
receives my call on her iPhone( and vice versa). How can I call iPad to iPad?
Charlie,
You must have a separate and individual id for each of your devices. For her iphone it's the telephone number. For each ipad, you must have a separate and individual id also. The ipad id's must be an e-mail address. You cannot use the same e-mail address for both i pads, and you can not use the email address that you use for Face time log in. The folks I know, create multiple e-mail accounts on Yahoo to facilitate this requirement. These individual phone numbers and e-mail addresses should be put into your calling lists for your Facetime accounts.
So if you want to call your wife's i-pad you need to have the mail address associated with it on your ipad account and visa-versa. I guess you guys will need to make sure you know who's carrying which device...This modern electronic world can be a circus at times, even though it has its rewards. -
Navigate from WebDynpro Application to BPS Layout and vice versa
Hi,
Please see the following Problem Statement:
We have WebDynpro applications and BPS applications in our project. All the applications are published via SAP Portal. Both areas (WebDynpro and BPS) have same selection screen (Selection fields are common). Is it possible to call
WebDynpro application from BPS layout (on click of button)and also passing the selection parameters to the WebDynpro application and vice-versa.
- Sujal ShahHi,
You can you free tool from Oracle called OMWB (Oracle Migration Workbench) for SQL Server to Oracle.
For more details, visit http://www.oracle.com/technology//tech/migration/workbench/index.html
From Oracle to SQL Server, there are third party tools available.
Cheers,
Harshw
Message was edited by:
[email protected]
Maybe you are looking for
-
Run report cause "The page cannot be displayed" OR The connection with the
Hello, 1. Database oracle 10g R2 on windows 2003 server enterprise edition with SP2 2. Application Server Oracle 10g R2 on Windows 2003 Server with SP2. Problem explanation one of our branch which is connected via leased line is unable to run some of
-
ITunes sync issues with Windows 7 64k Bit
I am beyond frustrated! I have attempted for the past 3 days straight to figure out why iTunes keeps having syncing issues with all my devices- Nano 8GB, Touch 8GB, iPhone 3G 8GB. When I first connected the devices for the first time iTunes froze up
-
End of file reached unexpectedly
When I try to save PDF files created from an online journal, I receive the message: End of File was Reached Unexpectedly. I have tried saving the files to different locations, but get the same message. This happens with several files and I have be
-
How do I highlight a pdf document?
I have downloaded a pdf file from the internet to my files. I want to share it with a friend; but I want to highlight parts of the text first. I have read the acrobat article which says highlighting can be done with adobe reader. Also, highlightin
-
The File names are as follows:- 1) 1JHpcp5W.part 2) uBFhyXWd.part 3) vz59w+uc.part They were downloaded from a website as 3 parts of a single video and now I can't find a way to combine or open them. Can you help me?