cancel
Showing results for 
Search instead for 
Did you mean: 

Exit Application FPM_CLOSE

Former Member
0 Kudos

Hi,

I'm using FloorPlanManager within ESS on EHP5, so I can only change the configuration using SERVER/sap/bc/webdynpro/sap/configure_component.

I added a Logoff button with FPM_CLOSE event. This works fine as far at it closes the current window. But the session is still open and a user is able to reopen the application without authentication.

I read some threads that the Logout-page is processed if FPM_CLOSE event is fired but this is not working in my scenario.

Any hints?

Regards,

Joschua

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

Hi Joschua,

I've searched everywhere for the answer to this. I too have added my own FPM_CLOSE logoff button to a standalone FPM application, as it was (quite rightly) not considered enough for the user to just close the Internet Explorer tab. As you say, the user is able to re-open the application without authentication as long as Internet Explorer was not shut down completely.

What I was trying to do was to add some Javascript (see below) to my own logoff page, but I wasn't able to replace the standard logoff page with my own.

<body on load="document. exec Command( 'Clear Authentication Cache' );">

(the syntax isn't quite correct as the forum doesn't allow the correct syntax to be posted).

I raised a message with OSS on 01/12/2011, and despite chasing it up twice I have not even had so much as an acknowledgement back from them. As far as I'm concerned this is a huge omission from the standard in not being able to log off cleanly from a FPM application.

Good luck!

Pete

Former Member
0 Kudos

Hi,

I found a work around, but its a modifkation of FPM_OVP_COMPONENT - FPM_WINDOW.

FPM_CLOSE is the right event because it processes the exit-plug of the FPM_WINDOW. But it closes the IE window immediatelly and therefore the IE has no chance to execute the logoff page that you defined in the sicf service.

The processing is done using the method CLOSE of FPM_WINDOW. For the right behavior you have to change

wd_this->fire_exit_plg( close_window = abap_true ).

to

wd_this->fire_exit_plg( close_window = abap_false ).

Regards,

Joschua

Former Member
0 Kudos

Thanks Joschua, you're a star!

I've created an enhancement implementation for FPM_OIF_COMPONENT and created an Overwrite Exit for method CLOSE of window FPM_WINDOW.

METHOD _ovr_dbx051g7hlio12xf92n6lcdty . "Exit of CLOSE (in ZHR_LOGOFF )

  wd_this->fire_exit_plg( close_window = abap_false ).

ENDMETHOD.

My own logoff page that I've defined in SICF for the FPM application is now being processed.

However the Javascript is not being executed, so the application remains logged on. Putting the same code into a standalone HTML file works fine, so something in SAP is preventing the Javascript from running.

Happy Christmas!

Regards,

Pete

Former Member
0 Kudos

Ok I give in!

My own logoff page is now being called, but the Javascript isn't being executed.

<html>
<body>
<p>You are now logged off</p>
< script language="javascript">
document. exec Command( 'Clear Authentication Cache' );
< /script>
</body>
</html>

(ignore all ~ characters as they allow the code to be posted on the forum)

When I press my Logoff button it correctly shows a page with "You are now logged off", but refreshing the IE window shows that I am still logged on to the WD application. If I paste the above HTML into a standalone file and run it manually, the next time I refresh the IE window containing the WD application it correctly takes me back to the Login screen.

This must be something simple but I just can't see it!

Any suggestions appreciated,

Pete

Former Member
0 Kudos

Hi,

Please take a look at this post:

http://wiki.sdn.sap.com/wiki/display/ERPHCM/Sessionnotendingafterlogoff

especially the notes. There you will find the valid javascript.

Regards,

Joschua.

Former Member
0 Kudos

Thanks Joschua.

I pasted the HTML / Javascript into my logoff page and the session is now being properly closed, resulting in the user having to log on again if 'Back' or 'Refresh' is pressed in Internet Explorer.

Unfortunately I can't reward you with tons of points as it was your problem to start with!

Regards,

Pete

Answers (0)