HTTPRequestHandler GetPageName returns UIFlow Name

HTTPRequestHandler GetPageName returns UIFlow Name

  

Hello.

We have a WebBlock that is included in several pages, the pages are organised into several UIFlows.

The Weblock should show the Page title which is (basically) the page (ie screen) name. 

To achieve this we are trying to use HTTPRequestHandler.GetPageName() in the preparation of the WebBlock.

However, this returns the UIFlow name, not the screen name.

Can you please point us in the right direction? 

Thanks,

Andy

Hello Andy,

What "name" are you looking for? If it is the title in the browser tab, you can find it with a small JavaScript.

If is the Text you put in the title area of the screen, you can also use JavaScript to find it (but now it will be more specific to the template you are using, and the most probable is that you will have to pass it through input parameter).

The name of the page itself IS the name in the flow, as far as I know.

So, what is the name you want?

Cheers

Eduardo Jauch

EDIT

Forgot to mention that GetPageName returns the flow page name, but if there is name clash, this name can be different from what you see in Service Studio.

Hi Eduardo,


thanks for your reply.

The webblock is included in this page:


 And I would like to get the Name "Personal"  at runtime (from the Preparation of the webblock) to use.

However, this Webscreen is included in a UIFlow called "Forms" and the HTTPRequestHandler.GetPageName() action returns "Forms" not "Personal"


I hope this is clearer and thanks again,

Andy

Hi Andy,

Can you show the piece of code you are using to retrieve the page name, that includes the GetPageName function?

Cheers,

Eduardo Jauch

EDIT

Also, could you confirm how the page address appears in the browser address bar?

Would be something like Form.Personal.aspx?

It seems to me that the name of the page is being suffixed with the name of the flow, and the function is stopping in the first dot...

You can see if the function works in a page in MainFlow, or, eventually, if you have other page named Personal in another flow, if it works in a page that the name is unique in the module...

Hi Edwardo,


Yes the prefix "Forms" appears you are right. it looks like this in the browser:



The code is very simple:



With the preparation:


And then the block in is included in the Web screen:


Thanks,

Andy

Sorry Eduardo, I got your name wrong.


Andy Cody wrote:

Sorry Eduardo, I got your name wrong.


No problem Andy :)

As I thought, it seems the GetPageName has a quirk. If the flow name is included in the url, it ends up recovering the flow name instead of the page name, as it stops at the first dot (.).

I don't know any other function that is able to get the page name, so any workaround will involve you parsing the url yourself. This should not be difficult, anyway.

Cheers

Eduardo Jauch