Capture Browse Event in BSP application

Hi guys,
i have a BSP page which contains a browse button and a drop downlist. my requirement is to enable a button only when the value is selected from the dropdown list and the text field of the browse event is filled.
the problem is that am able to capture the selection from teh dropdown list however am not able to determine whether the browse button was clicked and hence a file name been selected.
i wanted to know if there is any kind of event which is trigger when the browse button is presse in the page.
thanking you for your aids.
fardeen.

I found a piece of code whereby the author insert an Event name(OnInputProceesing) in one of the onaction event.
I have not tried it yet, but will do it in the near future
Since i got no replies here, i'l close the thread.

Similar Messages

  • Handling events in BSP application using WML tag Extensions

    Hello Everyone  ,
                            We are developing a BSP applications for Mobile handheld using WML tag library. I am looking for some code samples to know how we can handle evevents inside the BSP using the WML tag library.
    Can any one of  you plesae help us by placing a code snippet for handling onInputprocessing() methods (BSP Using WML Tag extensions).
    I mean to ask how we can handle events inside the BSP applications that uses the WML tag library.
    I know about how to handle BSP events using HTMLB and XHTMLB tags frameworks.
    Thanks for your help in advance.
    Thanks,
    Greetson

    Is this WML tag library something that is supplied by SAP u2013 as a BSP Extension Element?  Or are you just using WML tags directly in your layout?  I can tell you in general that if you want to generate HTMLB events from regular HTML code you can generate the JavaScript calls using the htmlbEvent tag of the BSP extension library.  However your tags have to be running within an HTMLB Content tag for this to work.
    If you want to work totally without HTMLB then you need to use the simple HTTP Post but format the input name as OnInputProcessing(<function code>) like this:
    <input type="submit" name="OnInputProcessing(ok)" value="OK">
    This will cause the OnInputProcessing event handler to trigger without needing any HTMLB tags (this is how it was done in WebAS 6.10 before we BSP Extensions).

  • Access deinied error in browser while accessing bsp application in Portal

    Hi All,
    I'm integrating SRM in to Enterprise portal using SRM business package,in which i access CCM iviews which were buit using BSP  Application. EP in one host, and BSP Application resides in another host, so there are 2 different hosts. I define full hostname to both host, example, EPhost.domain.com and BSPhost.domain.com.  The iView can be displayed in Portal. However, when I click one of the button or drop down in that iview displayed on the iView's toolbar (e.g. buttons are New, Goto), it gives me "Access is denied".
    Any idea to fix this?
    Regards,
    Vinoth.M
    <b></b>

    Look at below thread, same issue discussed:
    Re: BSP Iview error message : Access denied
    Raja T

  • How to capture Browser Specific functionalities

    Hai,
      Any body please help me on  How to Capture Browser specific functinalities, for example , How to get Refresh button is pressed or not
    regards
    somu

    How would you even do this in other technologies (JSP, ASP, etc.)? As far as I know it is not possible to "capture" browser events such as refresh or when the user clicks the "Back" or "Forward" buttons.  This is not a WebDynpro-specific limitation.
    Walter

  • Capturing browser close event

    Hello everyone,
    Even though this question has been answered before, I find that none of the answers seem to work for me.
    My problem is the following: Locks are placed on records and tables at certain points in my application. But if the user simply closes the browser without closing the application properly, all the locks are still in place. So I need to catch an event that allows me to ABAP my way out of this.
    I have the following BSP page which loads my application:
    function startBSPApplication()
    function endBSPApplication()
      <frameset id="<%=guid %>_FRAMESET" rows="*,0" onload="startBSPApplication('<%=guid %>_A');" onunload="exitBSPApplication();" noresize framespacing="0" frameborder="0" border="0">
        <frame name="<%=guid %>_A" src="session_default_frame.htm">
        <noframes>This browser does not support frames.</noframes>
      </frameset>
    The start and end functions simply start and end a session, and I find myself unable to actually call an ABAP function in there. All ABAP code placed inside the javascript functions is called everytime the page is loaded, not everytime the function is called and that's not what I want.
    I also already tried the <bsp:htmlbEvent> tag, but I couldn't get that to work either. I tried it like this:
    Notice however that I wrote this on top of the frameset. Does this mean that the onunload event will be called twice and does this cause a problem?
    I tried to call the onDestroy event from within my endBSP function, but nothing happened either.
    <htmlb:content design="design2003" >
      <htmlb:page title="Capture browser close " >
        <htmlb:form>
          <bsp:htmlbEvent id      = "myid"
                          onClick = "onDestroy"
                          name    = "onDestroy"/>
          <script for="window" event="onunload"  type="text/javascript">
               alert('Starting the Server Event');
               onDestroy();
           </script>
        </htmlb:form>
      </htmlb:page>
    </htmlb:content>
    Does anybody have another suggestion, or notice me overlooking something?
    Thank you in advance,
    Niels.

    Hi Eddy,
    I can't find anything really helpful in that blog. Except maybe adding the onbeforeunload attribute to my frameset and calling a JS function to back it up.
    The problem still persists that any ABAP you put in a JS function is executed regardless of wether or not the function is actually called.
    I need to get to my DO_HANDLE_EVENT somehow when the user closes the window.

  • Run Time Error  while executing BSP application in Safari browser

    Hi Frens,
      I am new to BSP application. I have made changes for an existing BSP application which has to be executed on both IE and Safari browsers. I made changes in the View for IE browser and it is executing correctly. I have done the same changes in the Safari view also but when executed in Safari, the browser hangs up and in the backend in SAP it goes to dump. The dump message is as below:                                                                           
    " An exception occurred. This exception is dealt with in more detail below         
    . The exception, which is assinged to the class 'CX_BSP_ELEMENT_EXCEPTION', was  
    not caught,                                                                     
    which led to a runtime error.                                                    
    The reason for this exception is:                                                
    <htmlb:gridLayoutCell>: Class <htmlb:gridLayout> (CL_HTMLB_GRIDLAYOUT) was not   
    found as BSP parent element.           "
    Can anyone help me in understanding this?                                          
    Regards,
    Priya.

    Hi Priya,
    I don't think, you need to change in code for Safari. Please check the following thread.
    Re: BSP's with htmlb - Tags on Browsers for Apple Computers
    Regards,
    Sagar

  • How to invoke the BSP application without invoking url in browser

    Hi Experts,
    I have a BSP URL link
    'https://css.wdf.sap.corp/sap/bc/bsp/sap/itsm_gui/cssguinote.htm?pointer=' . I execute this link and application gets invoked in SAP GUI as required.
    But I have a problem. On Executing the link , first the browser gets invoked with the given url and then the application gets started.
    I dont want to invoke the browser but just start the application in SAP GUI.
    Is there any way I can identify the transaction from the BSP link so that I can call directly .
    Regards,
    Ajaya Rama Raju.Singa

    Hi,
    it seems like you want to run your BSP application in SAP and not in the browser. For that you have to write a small programme, since there´s no transaction assigned to the BSP.
    You have to work with classes cl_gui_custom_container (container ón your Dynpro) and cl_gui_html_viewer (HTML viewer inside the container).
    As a third step you have to call your application with class cl_bsp_runtime and its method construct_bsp_url for building the URL in SAP. The last step is to call the URL in the HTML viewer.
    There are examples of code in SDN.

  • BSP application locked when Browser closed..

    Hi ,
    How can handle the logging off my BSP application when browser is closed..
    we had some thing setting of dirty flags in SRM ,which will take care of this..
    Any clue on custom BSP application..
    Can i override window.close() function to logoff
    Regards
    Prasad
    Message was edited by: Ranganatha Prasad Kurupati
    Message was edited by: Ranganatha Prasad Kurupati

    Create yourself a page with flow logic, this will be your initial entry to your application.
    Paste this code below, make sure to set the target_page.
    <%@page language="abap" %>
    <%
       DATA: target_page TYPE STRING VALUE 'zapp.do'.
       DATA: do_not_delete_sso2_cookie TYPE XFELD  VALUE SPACE.
       CL_BSP_LOGIN_APPLICATION=>SET_LOGOFF_URL_PARAM( page = page ).
    %>
    <html>
    <script language="JavaScript">
    <%
       DATA: guid TYPE GUID_32.
       CALL FUNCTION 'GUID_CREATE' IMPORTING ev_guid_32 = guid.
    %>
    var frame_A = "<%=guid %>_A";
    var frame_B = "<%=guid %>_B";
    function startLoader(name)
        doc=window.frames[name].document;
        doc.writeln('<html><body onload="document.f.submit();">');
        doc.writeln('<form id="f" name="f" target="<%=guid %>_B" method="POST" action="<%=target_page %>">');
        <%  DATA: ffs TYPE tihttpnvp, ff  TYPE  ihttpnvp.
            request->get_form_fields( changing fields = ffs ).
            DELETE ffs WHERE name cs '~'.
            LOOP AT ffs INTO ff.
         %>
              doc.writeln('<input type="hidden" name="<%=ff-name %>" value="<%=ff-value %>">');
        <%ENDLOOP. %>
        doc.writeln('<table border="0" width="100%" height="100%"><tr><td align="CENTER" valign="MIDDLE"><span style="font-family:Arial,sans-serif;">Loading...</span></td></tr></table>');
        doc.writeln('</form></body></html>');
        doc.close();
        <%=runtime->GET_DOMAIN_RELAX_SCRIPT( )  %>}
    function exitBSPApplication(newTargetUrl)
    {<% if runtime->session_manager->is_running is initial.  %>
      <%CLASS cl_bsp_login_application DEFINITION LOAD. %>
      var url  = "<%=CL_BSP_LOGIN_APPLICATION=>GET_SESSIONEXIT_URL( page = page ) %>";
      <%IF do_not_delete_sso2_cookie IS NOT INITIAL. %>
          url += "&bsp_do_not_delete_sso2_cookie=X";
      <%ENDIF. %>
      var prop = 'height=100,width=400,top='(screen.height-100)/2',left='+(screen.width-400)/2;
      var out = window.open(url,'_blank',prop);
    <%endif. %>
      document.getElementById("<%=guid %>_FRAMESET").onunload = null;
      if(newTargetUrl) window.setTimeout('{document.location.href="'newTargetUrl'";}', 750);
    function getHiddenFrame()
        if (document.body.rows=='*,0') return "<%=guid %>_B"; else return "<%=guid %>_A";
    function getShownFrame()
        if (document.body.rows=='*,0') return "<%=guid %>_A"; else return "<%=guid %>_B";
    function swapToFrame(frame)
        if (frame == '<%=guid %>_A') document.body.rows=',0'; else document.body.rows='0,';
    var sap_basis_A_active = false;
    var sap_basis_B_active = false;
    function frameLoaded(name)
        if (name=="<%=guid %>_A" && sap_basis_A_active==false) { sap_basis_A_active = true; return; }
        if (name=="<%=guid %>_B" && sap_basis_B_active==false) { sap_basis_B_active = true; return; }
        var newShowFrame   = getHiddenFrame();
        var newHiddenFrame = getShownFrame();
        try
          doc=window.frames[newShowFrame].document;
          for (var i = 0; i < doc.forms.length; i++) {
            var frm = doc.forms<i>;
            if (frm.target=="") frm.target = newHiddenFrame;
        } catch(e) {}
        swapToFrame(newShowFrame);
        //if (window.frames[newShowFrame].window.sapOnResize)
        //    window.frames[newShowFrame].window.sapOnResize();
        if (window.frames[newShowFrame].window.sapScrollTo)
            window.frames[newShowFrame].window.sapScrollTo();
    </script>
    <frameset id="<%=guid %>_FRAMESET" rows="*,0" onUnLoad="exitBSPApplication();" resize="no" framespacing="0" frameborder="0">
        <frame name="<%=guid %>_A" src="javascript:parent.startLoader('<%=guid %>_A');"  onload="frameLoaded('<%=guid %>_A');">
        <frame name="<%=guid %>_B" src="about:blank"                                    onload="frameLoaded('<%=guid %>_B');">
        <noframes>This browser does not support frames.</noframes>
    </frameset>
    </html>

  • Capture all the Users who viewed the BSP Applications ???

    Hello All,
           I need to create a BSP Application which shows all the Users, who have executed different BSP Applications and the Number of Times each user has executed these BSP's.
    Is this Possible ?
    If yes, can anyone tell me how to go forward  ????
    Regards,
    Deepu.K
    Message was edited by:
            deepu k

    Hello Eddy,
          I have gone thru ur Blog.
    But in this I guess I need from this part -->
    C. Generating Own Stats in BSP
    C.1. Logging It
    If all of the aforementioned tools don’t cover what you’re looking for, or there are technical/other reasons not
    to choose them, then there is only one thing left to do. Write your own stuff. It really isn’t that difficult to do
    and, if you are confident enough, you can make something that suits your needs 100%. Or as a host in a
    Flemish regional TV DIY show always says: “What you do yourself is usually done better.” Let us see what
    you need to do in order to achieve this.
    First of all you need data on the browser. This can be done via JavaScript and the navigator object:
    appCodeName
    The code name of browser (i.e.: Mozilla)
    appName
    The name of the browser (i.e.: Microsoft Internet Explorer)
    appVersion
    Version information of the browser (ie: 4.75 [en] (Win98; U)
    userAgent
    String passed by browser as user-agent header. (ie: Mozilla/4.0
    (compatible; MSIE 5.5; Windows 98; Hotbar 3.0))
    Platform
    The platform of the client's computer. JavaScript 1.2 property. (ie:
    Win32)
    You probably need some extra information like IP number. This can be done via the
    request->get_header_field method.
    As such you don’t need to retrieve this info every time if you have a single entry point like a login page. Just
    put it in a server side cookie. Each new page will read this cookie and save this info together with the page
    name, user id, eventual parameters, etc. into the log. Now I talked earlier about the visitor concept. This is
    also an ideal place to implement this. If you are only interested in returning visitors with a full day time interval,
    you can for example determine whether that user has already used that application. If so, you just increment a
    counter. If not, you have to create a new line. This method will also reduce the size of your table.
    C.2 Showing It
    The only thing you need to do is to analyze and visualize stuff. The analyzing stuff is completely up to you.
    The following screen shot is an example where the total number of visitors within a given time frame is shown.
    It also shows the number of unique visitors in that same time frame compared to the potential number of
    visitors. You might find this of interest if you want to know how many (internal) users actually use your intranet
    application. You can couple the user info to the department info and then you can figure out whether
    department X or Y is actually using the application.
    But I didnot get the actual idea of implementing this in my BSP.
    Can you give an explanation for the above ?
    Regards,
    Deepu.K

  • Cannot  start BSP application from browser

    hi all
    Cannot start standard BSP application TUTORIAL_1 through web browser. When i test TUTORIAL_1 , a seprate browser window opens which asks for login credientals but no contents are displayed.
    i checked SICF service and they are active ,also i set parameter icm\server_port_0 and icm\host_name_full
    Still i m getting a ABAP DUMP "CX_BSP_HOST_NOT_QUALIFIED" and no contents displayed in browser
    Can you anyone please help me urgently?
    Regards
    Ujval

    > What do you say ?
    That a little bit of work is still required here. As you write that you don't want to restart application server, and this is only a test server, let me make a suggestion.
    Do <u><b>NOT</b></u> change anything on the WebAS server.
    <u>Step 1:</u> Find you hosts file (on my machine it is c:\winnt\system32\drivers\etc\hosts) and add the following line into this file.
    1.2.3.4     myWebAS.domain.ext myWebAS
    The name is not important, but must be a string you will remember. The 1.2.3.4 is the IP address of your WebAS. Please write in the correct value instead of my example value!
    <u>Step 2:</u> Start you BSP application as usual. When the popup comes for your password, press cancel. You will now see in the top of the browser some URL of the form: http://myWebAS:port/sap/... The :port is only there if you are not using the default port 80. Now manually change the URL by adding the domain you configured previously. It should now be: http://myWebAS.domain.ext:port/sap/... Press ENTER to load this URL.
    This way you are using a FQDN, and the browser is able to resolve this pseudo name onto the correct IP address. The WebAS/BSP will be happy with this.
    Not the most satisfactory solution, but it should get you at least on the road.
    ++bcm

  • How to use GUI_DOWNLOAD inside BSP Application event

    Hi All,
    I am facing one issue while using GUI_DOWNLOAD inside BSP Application. When the processing goes at GUI_DOWNLOAD it gives me unknown error where as the same code is working when used in report program. My requirement is to save password into excel file at my local machine. I am using FM MS_EXCEL_OLE_STANDARD_DAT to save password in excel file but this function module fail when it reach at GUI_DOWNLOAD . Can you please help me out.
    Thanks and Regards
    Pradeep Kr. Rai

    Dear Pradeep,
    Find the below link which explains a simple data download to excel from a table view.
    www.sapt echnical.com/Tutorials/BSP/Excel/Index.htm
    Try to avoid the way your using in the BSP application and it is abdicable to use the standard methods / class available like "cl_bsp_utility"
    Hope this will be helpful.
    Regards,
    Gokul.N
    Edited by: Gokul on Oct 8, 2009 9:57 AM

  • BSP application accessing error throgh browser

    Hi ,
      I am new to BSP.I need simple help.During my BSP execution.Its asking Domain name in URL path.Actually my SAP system is installed on Local installation.Can execute BSP Applications on system which is installation based on Lcal system installation procedure.
      How can i resolve this domain issue during BSP execution.If u solve thsi issue things will be easy.
    Plz suggest necessary configuration reqiured in BSP execution using Domain.
    Regards

    Hi,
    it doesn't matter if it is a local installation or not.
    You need a fully qualified domain name, as stated and explained in this weblog:
    <a href="/people/brian.mckellar/blog/2003/09/25/bsp-in-depth-fully-qualified-domain-names In-Depth: Fully Qualified Domain Names</a>
    If the machine is not part of a domain, do the following:
    choose a domain name for yourself (should not match an existing real one), use it to set the icm parameter, and add an entry to your hosts file which matches your machine's FQDN to its IP.
    If you need further help, let us know.
    Regards,
    Max

  • Eventing between team viewer and BSP application

    Hi Everyone,
    Basically, I have a standard BSP application (HCM_LEARNING) on ECC5.0. I need to make it communicate with MSS team viewer.
    HCm_learning is a big BSP application from SAP which enables self booking for course, training history data, courses attended, can view courses offered, prebooking, participation history, qualifications achieved, qualifications missing etc.  It is a master piece BSP from SAP.  It brings the data from the backend system through pernr.
    in portal, a manager should see the qualifications of an employee and book courses for him if he misses particular qualifications. hcm_learning is a self booking application; if it communicates with team viewer: that is great. manager can pick a person (name) from team viewer and from there he can take of all the activities 'hcm_learning' does for an employee.
    I have spend lot of time watching all the blogs, threads.. searching for this scenario. can not get right information.
    is this scenario possible.
    could any body tell me where i should look at for documentation. could you give me suggestions on this.
    THanks!
    Siribabu

    Hi Siribabu,
    Did you ever find an answer to this?
    Thanks
    Jane

  • How can I execute a query from a BSP application?

    How can I execute a query from a BSP application?
    I´m trying to execute a Query from intranet. I´ve been looking for examples, but the templates I´ve found doesn´t help me.
    does anybody has an example?
    Thanks.

    Hi
    Have you designed the BSP application ?
    design it first with one page
    page will have layout and Event handlers
    Design the layout with the fields
    in the event handler there are events
    in the event On Initiailization or ON inputprocessing write the select query similar to what we write in routine ABAp and fetch the data into ITAB and that has to be passed to the Layout
    see the doc
    BSP
    To learn how to create Web applications with Business Server Pages, you can work through the simple tutorials that build on each other. You should be able to run through all of the steps described here in your own system.
    If you want to develop Web applications with BSPs, your system must meet the following requirements: Prerequisites for Creating Web Applications.
    The following tutorials are available:
    · First Tutorial: First Steps with Business Server Pages…
    · Second tutorial: A Small BSP Application and A Small BSP Application with HTMLB
    · Third tutorial: Our First Online Bookshop
    · Fourth tutorial: Further Developing the Bookshop
    · A small Tutorial is also available for your first steps with the Model View Controller design pattern.
    · For a more complex MVC tutorial based on the third tutorial, see: Our Little Online Bookshop Using MVC and HTMLB
    When creating BSP applications, note the browser dependencies described in Note 598860.
    steps:
    1) start the transaction RZ10.
    2) now u u have to select Profile name, so select the INSTANCE Profile from the list of options given with the Profile parameter list.U may find multiple instance profile in the list, so select the profile in which ur server name is given.
    3) u will also find three options in the same window.
    Administrator data, Basic Maintenance, and Extended Maintenance. So select the last one from that.
    4) Now click on change button.
    5) here u will find parameter icm/host_name_full, so now set it as FQDN.
    6) Now copy ur settings with new version number.
    7) Activate that version.
    8) And now please restart ur WAS.
    So this will set ur FQDN, and also don't forget to login using Admin User.
    Now u also check for following service are active in your ICF setting or not,( just start transaction code SICF)
    /default_host/sap/bc/bsp/sap
    /default_host/sap/bc/bsp/sap/system
    /default_host/sap/bc/bsp/sap/public/bc
    /def ault_host/sap/public/bc
    /default_host/sap/public/bc/ur
    /default_host/sap/public/bsp/sap/public
    /default_host/sap/public/bsp/sap/public/bc
    /defaul t_host/sap/public/bsp/sap/system
    /default_host/sap/public/bsp/sap/htmlb
    if not then activate all.
    check this link
    Read this weblog...
    /people/brian.mckellar/blog/2003/09/25/bsp-in-depth-fully-qualified-domain-names
    http://www.thespot4sap.com/articles/SAP_WAS_Creating_BSP_Apps.asp
    it consists of screen shots also
    Check it.
    http://help.sap.com/saphelp_nw04/helpdata/en/c8/101c3a1cf1c54be10000000a114084/frameset.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/e9/bb153aab4a0c0ee10000000a114084/frameset.htm
    Regards
    Anji

  • BSP application on Blackberry

    Hello,
    I'm developing a BSP application for Blackberry. When I'm testing the application on the blackberry I'm getting an error:
    "SAP Note The Following error text was processed in the system: <htmlb:content> (*)  This browser is not supported for Design2003 the Internet Explorer as of 5.50 and the Mozilla as of 1.75 are supported "
    Thomas Jung already answered on this question (thanks btw)
    "You can't use the *htmlb libraries in a mobile BSP application. That means no htmlb:content tag. You must create your own rendering layout. "
    Can anybody explain some more in detail what is meant by this? Any help is really appreciated!
    Many Thanks!
    Siegfried

    Thanks Graham,
    In my case, I have a couple buttons "Execute" and "Clear". I need to know if the user push "Execute" in order to call a Function Module to create a Good Issue, otherwise clear the fields in the HTML screen.
    This is why I think I have to put my code to execute the Func.Module either OnInitialization or OnInputProcessing but I don't know how to catch as an event what the button the user clicked.
    Here is my HTML button.
                    <form method="post">
                    <input type="submit" name   = "onInputProcessing(eventid)"
                                        value   = "Execute" />
                    </form>
    and it is going to "OnInputProcessing" but "eventid is blank.
    I tried using different classes from IF_BSP_APPLICATION_EVENTS like CL_BSP_APP_IT00 but I'm getting a check syntax error (You can only use "class=>method" with static methods).
    response = CL_BSP_APP_IT00=>get_response( runtime->server->response ).
    It is right because the method is "Instance".
    If you have any example, please tell me how you handle the events or buttons in order to perform the right Function call or action, when the user click one of the buttons.
    Thanks in advance and Cheers,
    JC

Maybe you are looking for