Friday, March 30, 2012

problems with URL

Hello

When you click on a name in my report you can send a email with the link of the report with the reports parameters for that person

but i have a problem with that
the report parameter consist of several words with spaces between and because of this the link isn't shown correct

anyone have a solution for this, i already tried a lot possibilities

here is the code of the jump to url expression

="mailto:"+Fields!Email.Value + "?subject=Action(s) not completed for "+Fields!ToUsersName.Value + "&body=You have unfinished task(s) %0A%0A Copy the link below into your browser to see your task(s) %0A%0A http%3A//fs-bru-etl01/ReportServer/Pages/ReportViewer.aspx%3F%252freport+1+KD%252fReport3%26rs%3ACommand%3DRender%26Users%3D"+Fields!ToUsersName.Value

So the problem is with Fields!ToUsersName.Value

http://server/ReportServer/Pages/ReportViewer.aspx?%2freport+1+KD%2fReport3&rs:Command=Render&Users=ALAINLA: alain Lannoo

like you see the link stops because of the spaces in the username

Hello Kenny,

See if this works for you.

="mailto:"+Fields!Email.Value + "?subject=Action(s) not completed for "+ Replace(Fields!ToUsersName.Value, " ", "%20") + "&body=You have unfinished task(s) %0A%0A Copy the link below into your browser to see your task(s) %0A%0A http%3A//fs-bru-etl01/ReportServer/Pages/ReportViewer.aspx%3F%252freport+1+KD%252fReport3%26rs%3ACommand%3DRender%26Users%3D"+Fields!ToUsersName.Value

Hope this helps.

Jarret

|||

Sorry, this one...

="mailto:"+Fields!Email.Value + "?subject=Action(s) not completed for "+ Fields!ToUsersName.Value + "&body=You have unfinished task(s) %0A%0A Copy the link below into your browser to see your task(s) %0A%0A http%3A//fs-bru-etl01/ReportServer/Pages/ReportViewer.aspx%3F%252freport+1+KD%252fReport3%26rs%3ACommand%3DRender%26Users%3D"+Replace(Fields!ToUsersName.Value, " ", "%20")

Hope this helps.

Jarret

|||

thanks for the reply
but it doesn't work

does anyone else have an other suggestion?

|||

It may not work if you have a sequence of spaces, I mean more than one space (continuously) in your field value. You can use this expression to achieve just 1 space:

IIf(InStr(Replace(<yourfield>, Space(2), "&"), "& ") > 0, Replace(Replace(<yourfield>, "&", ""), Space(1), "%20"), Replace(<yourfield>, Space(1), "%20"))

Hope this helps.

Shyam

|||

I just tried it with parameters with more than one space and more than one consecutive space, and it worked fine for me.

I think the issue may be with your link. Can you try this in an IE window:

http://fs-bru-etl01/ReportServer/Pages/ReportViewer.aspx?%2freport+1+KD%2fReport3&rs:Command=Render&Users=ALAINLA:%20alain%20Lannoo

Does this work? If so, try this just to get the link. This is how I have it in my successful test, the only difference is your servername, report path, and report name.

="http://fs-bru-etl01/ReportServer/Pages/ReportViewer.aspx?%2freport+1+KD%2fReport3&rs:Command=Render&Users="+Replace(Fields!ToUsersName.Value, " ", "%20")

Once you get this working, go back and add your mailto code. If this doesn't work, can you post an example of a link that is generated?

Jarret

|||

Kenny,

In Internet Explorer, go to Tools -> Internet Options -> Advanced Tab and check if "Always send URLs as UTF-8" is checked?

Shyam

No comments:

Post a Comment