cancel
Showing results for 
Search instead for 
Did you mean: 

Accessing request parameters in BLS

Former Member
0 Kudos

Hi all,

The questions:

--Can I access request parameters in BLS?

--Can I pass request parameters back to the irpt page?

Not JSPs please!

So, if you want to read further... Here is the functionality I am trying to implement.

I have a web page that retrieves data and has a value for a filter. That filter value is used in a BLS transaction.

The user can override the filter value that is in the database. The scope of the filter is the HTTP request. It should

be persistent until the user goes to another page, so needs to be maintained over refreshes. It should NOT

be effective if the user leaves and returns to the page or if they click a clear button on this page.

The page data gets built from <SERVLET>/BLS/xsl and the filter option is put into an <input> generated from the xsl.

Right now, the filter is loaded in the BLS transaction from the database. I haven't figured out how to have the user

override the value without using a session parameter.

The only way I know to pass params to the BLS transaction is to set a parameter on the <SERVLET> tag. But, I don't

know how to set a parameter in the <SERVLET> unless the parameter is a session parameter and I can use

the syntax.

Any ideas on how to accomplish this without session params?

Thanks

--Amy Smith

--Haworth

Accepted Solutions (1)

Accepted Solutions (1)

Former Member
0 Kudos

I think the autobind feature of the xacute connector might be some help.

[http://help.sap.com/saphelp_xmii120/helpdata/en/45/caaa09f5e94ebae10000000a11466f/content.htm|http://help.sap.com/saphelp_xmii120/helpdata/en/45/caaa09f5e94ebae10000000a11466f/content.htm]

If the AutoBind parameter is set to true and an Xacute query is called from a Web page, session variable values are automatically mapped to the transaction that has transaction properties with the same names as the session variables.

Former Member
0 Kudos

Thanks Christian,

I guess I should have said request variables with a scope of request. I am using the session variables.

Thanks again,

--Amy Smith

--Haworth

Former Member
0 Kudos

I figured it out... Don't know why I was confused.

--Amy

Answers (1)

Answers (1)

Former Member
0 Kudos

Amy (and all):

A little known feature of BLS is that it can return virtually any type of content, including HTML! I've used BLS many times to dynamically generate HTML, SVG, Javascript, and other content in a "data-driven" way.

The trick is to provide a single output property of type "string", and in the URL that invokes the Runner servlet, add Content-Type=text/html.

I despise XSL and have been able to successfully avoid it with some creative BLS coding. I ended up creating a bunch of "helper" transactions for outputting various types of HTML content (tables, rows, cells with and without CSS styles) and it worked well.

Just a thought...

Rick