cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
Showing results for 
Search instead for 
Did you mean: 

WBR - How do I automatically pass parameter values from Windchill to Cognos Report

SOLVED
Highlighted
Level 1

WBR - How do I automatically pass parameter values from Windchill to Cognos Report

I'm trying to create a report similar to the ootb Multi-Level BOM report on the Product Structure page of a part in Windchill 9.1 M060. We are using Cognos as the Windchill Business Reporting tool. I've copied the Multi-Level BOM report (and sub reports) in Cognos and have tried to hook it up to the product structure page of my WTPart object. The report seems to be firing, but the parameters (like the part oid) doesn't seem to be passing properly. I've tried to emulate all of the parts in Windchill that the BOM report is using, but something seems to be missing. Anybody know what is happening?

1 ACCEPTED SOLUTION

Accepted Solutions

Re: WBR - How do I automatically pass parameter values from Windchill to Cognos Report

Hello

In 9.1 , in the InfoEngine task ( xml file ) which is called by the Cognos multi level Bom report, You can see that an "encrypted" parameter is passed from the form to the IE task.

It is decrypted to get the WTpart oid, the config spec etc ... and then execute the logic to navigate the BOM

The point is , if I remenber, and if you're in 9.1 (seems to be the same in 10). that if you copy the report with the UI, it does not set all the infos. notably, which soap class used to pass parameters ... You have to use a load xml file to set it.

If you delete your report, and then recreate it with this xml file (and use the same soap class to get the parameter in the InfoEngine task), it should work ...

See in WTHOME/LoadFiles/report/WBRBomLoad.xml for an example

<csvCreateReport handler="com.ptc.windchill.enterprise.report.LoadReport.createReport">

<csvname>Single-Level BOM Report</csvname>

<csvcontainerPath>/</csvcontainerPath>

<csvdescription>This report shows all attribute information for a complete product structure of single level.</csvdescription>

<csvinputPage>/netmarkets/jsp/part/reports/bomPromptPage.jsp</csvinputPage>

<csvresourceBundle>com.ptc.windchill.enterprise.reports.bomReportsRB</csvresourceBundle>

<csvuiContext/>

<csvfolderPath>Configuration Management</csvfolderPath>

<csvreadyForUse>true</csvreadyForUse>

<csvsoapClass>com.ptc.windchill.enterprise.report.ReportTask</csvsoapClass>

<csvsoapMethod>Report_Header</csvsoapMethod>

<csvreportTemplateName/>

<csvreportTemplateContainerPath/>

</csvCreateReport>

1 REPLY 1

Re: WBR - How do I automatically pass parameter values from Windchill to Cognos Report

Hello

In 9.1 , in the InfoEngine task ( xml file ) which is called by the Cognos multi level Bom report, You can see that an "encrypted" parameter is passed from the form to the IE task.

It is decrypted to get the WTpart oid, the config spec etc ... and then execute the logic to navigate the BOM

The point is , if I remenber, and if you're in 9.1 (seems to be the same in 10). that if you copy the report with the UI, it does not set all the infos. notably, which soap class used to pass parameters ... You have to use a load xml file to set it.

If you delete your report, and then recreate it with this xml file (and use the same soap class to get the parameter in the InfoEngine task), it should work ...

See in WTHOME/LoadFiles/report/WBRBomLoad.xml for an example

<csvCreateReport handler="com.ptc.windchill.enterprise.report.LoadReport.createReport">

<csvname>Single-Level BOM Report</csvname>

<csvcontainerPath>/</csvcontainerPath>

<csvdescription>This report shows all attribute information for a complete product structure of single level.</csvdescription>

<csvinputPage>/netmarkets/jsp/part/reports/bomPromptPage.jsp</csvinputPage>

<csvresourceBundle>com.ptc.windchill.enterprise.reports.bomReportsRB</csvresourceBundle>

<csvuiContext/>

<csvfolderPath>Configuration Management</csvfolderPath>

<csvreadyForUse>true</csvreadyForUse>

<csvsoapClass>com.ptc.windchill.enterprise.report.ReportTask</csvsoapClass>

<csvsoapMethod>Report_Header</csvsoapMethod>

<csvreportTemplateName/>

<csvreportTemplateContainerPath/>

</csvCreateReport>