cancel
Showing results for 
Search instead for 
Did you mean: 

Transportable URL's pointing to WAS applications in VC

Former Member
0 Kudos

Hi all,

in VC we have defined hardcoded url's such as "http://isoappXXX.elia.t:8000/sap/bw/BEx?..." They point to Web Applications built with e.g. the WAD.

When the VC model containing this url is now transported to Production System the prefix of course is not pointing to the correct WAS server which is "isoappYYY..."

It should be possible to replace the fixed prefix by a "symbol" which is resolved at runtime by the WAS server, so it contains always the correct value, whether in dev or in prod.

For the older SAP-IS I know there were such symbols, and I once used them but I lost all trace of this...

Now I have been looking for these symbols for the new WAS and for the new VC context but could not find any doc on this.

How should it be done, or where to find doc on this.

Kind regards.

Hugo

Accepted Solutions (0)

Answers (2)

Answers (2)

Former Member
0 Kudos

I wonder why "userdata" is not, or will not be, available in v7.1 anymore

Lisi
Advisor
Advisor
0 Kudos

Hi Hugo,

Are you working with VC 7.0 or Vc 7.1?

Regards,

Lisi

Former Member
0 Kudos

Hi Lisi,

VC7.0...but why are you asking...

I hope you're not going to tell us that this feature exists exist on VC7.1 but not on VC7.0 !

regards

Hugo

Lisi
Advisor
Advisor
0 Kudos

Hi Hugo,

The reason I asked is because I have an idea how to do that in 7.0 but not in 7.1.

What you need to do is to create a user data connector in the VC model with a new field under the personalization properties section.

This field will hold the server name.

The fileds you create in the user data personalization are exposed as iView parameters in the portal.

You can enter a default value for this new field. (in this case the default value will be the server name. lets say "isoappXXX")

On the hyperlink action instead of defining a hard coded url, your url should include the field you have created.

(example: "http://"&@serverName&".elia.t:8000/sap/bw/BEx?...". where @serverName is the field you have created in the user data)

Deploy and run the iView. It should work with the default value of the server name.

If the server in the url changes, you don't have to open the VC model to change it. You can open the iView's properties in the portal and you'll see the field name with the default value. you can change this value to the new server name.

I hope this can solve your problem.

Best Regards,

Lisi

Former Member
0 Kudos

Hi Lisi,

thanks for your reply. It's a good idea, we tried it and of course it works. It set us thinking and my colleague Thibaut and I came up with a fully automatic solution, fetching the required server name and service port from BAPI's that we call in VC.

First in the portal we made an alias to the BW DEV system itself. We named it BI_BAPI, the type of system is set to SAP/R/3 (it will then return BAPI's rather than queries...).

In VC, from this alias, select the BAPI named ICM_GET_INFO. This returns a number of lines in an output parameter table named SERVLIST. The line with PROTOCOL=1 contains the values we need for filling the datastore (below I explain why it's 1 on our system).

From this BAPI service, drag the SERVLIST output port into a filter element and filter on PROTOCOL=1. The output of the filter goes into the VC Datastore variable WAS_SERVER.

It's filled with a formula @HOSTNAME & ":" & @SERVICE, where the field SERVICE of this record contains the http port to be used (such as 8000), and the field HOSTNAME contains the BW DEV server name.

In the url itself we then used (as you did)

"http://" & STORE@WAS_SERVER & "/sap/bw/BEx..."

On our system we choose line with protocol=1 because we know it corresponds to http. But it could be anything really on yours or any other system.

So one should first determine the protocol number of the http protocol as setup for the ICM (Internet connection manager, or WAS). said in a few words...there is a BAPI giving that setup info. it's called ICM_PARAM_INFO. One of the lines (server parameters) like "icm/server_port_x" (where x is a number like 0, 1, ...) contains the words PROT=HTTP, PORT=8000 That is the HTTP related setup.

Adding 1 to the value of X on that line, you obtain the filter value for PROTOCOL as explained for the ICM_GET_INFO.

If your DEV and PRD system are setup in about the same way, you can simplify the thinking and assuming the http filter value would always be 1, as in our case, and skip the mapping part.

The data-flow explained above we have put in a small VC model (and exported it into a *.gml) so that can be imported in each of the iViews we had already. Remains to adapt all the url's of course, to include the new symbol.

It would be nice if other SAP experts reading this entry in the forum could confirm to us that the method we use for protocol and filter determination is correct.

Kind regards

Hugo

Lisi
Advisor
Advisor
0 Kudos

Hi Hugo,

Since your solution doesn't require the user data personalization parameters, it is also applicable in VC 7.1.

I don't know this BAPI you are using, but it sounds like a good (and creative solution.

Best Regards,

Lisi