locked
Syntax to pass shared item sets and members to PAS report RRS feed

  • Question

  •  

    I am trying to add a Shared Item Set as a parameter string to pass into a Proclarity Standard report.

     

    Here is what I have so far but it does not apply to the report.

     

    <s h="[Markets].[By Region]">{[&lt;#SharedSet.RESERVED.Loblaws - Markham - Set.SharedSet#&gt;]}</s>

     

    My assumtion is that the bold text is the required syntax and the name 'Loblaws - Markham - Set' is the caption value of the SharedSet in the Books table. Or should it simply be the name from the doctext field

     

    <s h="[Markets].[By Region]">{[&lt;#Loblaws - Markham - Set#&gt;]}</s>

     

    Does PAS allow the ability to pass shared sets and members into PAS reports? Is there any documentation on this?

    Thursday, July 10, 2008 3:38 PM

Answers

  • I'm guessing you are passing the Shared Set in via some custom application.  The problem you are running into is caused by the multiple encoding that PAS expects when using the &expr parameter.  Your example is properly XML-encoded but it also needs to be URL-encoded.  Here are some quick URL-encoding values:

     

    [ = %5b

    ] = %5d

    & = %26

    # = %23

    ; = %3b

     

    So try passing this in:

     

    <s h='[Markets].[By Region]'>{%5b%26lt%3b%23SharedSet.RESERVED.Loblaws - Markham - Set.SharedSet%23%26gt%3b%5d}</s>

     

    I tested a similar example on my machine using ProClarity 6.3 and it only worked when the Shared Set name was double-encoded.  If you are using a custom app to call PAS, you might be able to take advantage of a function to do the URL-encoding.

     

    Good Luck,

     

    Jason

    BTG Services

    Thursday, July 10, 2008 9:55 PM

All replies

  • I'm not sure I've seen someone do this before, but in theory it should be possible.

     

    Do you have the ProClarity 6.3 SDK?  There's a section in there on decorated names, which will give you the syntax for shared items.  If you don't have the SDK, you can download it from http://downloads.microsoft.com.

     

    You might also try turning query logging on for the server and running some views that contain the shared items you're looking to pass, just to be sure you're matching the syntax.  You can turn logging on in the registry, and the file is called "Query.log".

     

    [HKEY_LOCAL_MACHINE\SOFTWARE\ProClarity Corporation\Server]
    "QueryLoggingEnabled"=dword:00000001
    "SessionLoggingEnabled"=dword:00000001

     

    The log file will by default be in the documents and settings folder for the user who installed PAS, but you can also change the location by adding another property in the registry.

     

    "QueryLogPath"=string:c:\temp\

     

    Thursday, July 10, 2008 6:19 PM
  • I'm guessing you are passing the Shared Set in via some custom application.  The problem you are running into is caused by the multiple encoding that PAS expects when using the &expr parameter.  Your example is properly XML-encoded but it also needs to be URL-encoded.  Here are some quick URL-encoding values:

     

    [ = %5b

    ] = %5d

    & = %26

    # = %23

    ; = %3b

     

    So try passing this in:

     

    <s h='[Markets].[By Region]'>{%5b%26lt%3b%23SharedSet.RESERVED.Loblaws - Markham - Set.SharedSet%23%26gt%3b%5d}</s>

     

    I tested a similar example on my machine using ProClarity 6.3 and it only worked when the Shared Set name was double-encoded.  If you are using a custom app to call PAS, you might be able to take advantage of a function to do the URL-encoding.

     

    Good Luck,

     

    Jason

    BTG Services

    Thursday, July 10, 2008 9:55 PM