1 / 118

Windchill Reporting R6.2

Windchill Reporting R6.2. Rebecca French PTC Global Services. Draft A.2. Contents. This workshop will cover the following areas Overview Examples and references Creating Reports Output Types Joins Sub Select IBA Reporting Workflow & Lifecycle History Reporting Non Standard Output

kaden-cole
Télécharger la présentation

Windchill Reporting R6.2

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Windchill ReportingR6.2 Rebecca French PTC Global Services Draft A.2

  2. Contents • This workshop will cover the following areas • Overview • Examples and references • Creating Reports • Output Types • Joins • Sub Select • IBA Reporting • Workflow & Lifecycle History Reporting • Non Standard Output • Charts • Excel Web Query • Xml Manipulation • Macros • Configuration • Advantages • Limitations • Objects & Relationships Summary

  3. Why Bother With Query Builder? • Query Builder provides an OOTB UI which enables consultants and customers to produce reports on the data held in Windchill in various formats quickly and easily • While it does require a good knowledge of Windchill as an application and some technical skill it is not rocket science and once you get used to it is no where near as daunting as first time users think. • Things people say about Query Builder: • You need to know all about the data model • NOT REALLY. You do need some awareness of the relationships between objects and how they are constructed but this normally a fairly limited set. See Objects & Relationships Summary. • It is too difficult to understand • NOT REALLY. It is not the easiest of tools to use at first sight, but given a few pointers most people can get to grips with it. • It is too limited • NOT REALLY. It will not necessarily fulfil every requirement the business has but you generally find it should satisfy 50-80% of the requirement, particularly at R6.x. With the addition of out puts such as Excel Web Query you can add another dimension to the report without customisation

  4. What Query Builder Can Do OOTB There are a large variety of OOTB outputs, Metrics can be calculated, Relationships can be navigated. Before you resort to customised reports – give it a try you may be surprised by how far you get!

  5. What Query Builder Can Do OOTB You can also output to other applications, via csv, tsv and xml. OOTB you can produce Excel Web Queries which add the functionality of Excel to the give greater flexibility on format, allowing automatic refresh from the database.

  6. Execution Potential Custom QML Generation Oracle Authoring Report Template Object Report Template GUI XML Query Specification (QML) Low-Level Outputs For Customizations JDBC Output Persistence Manager Java Objects Invocation HTML Form Input Parameters XSLT Transforms XML Potential Custom Invocation Custom Output Formats CSS HTML CSV TSV … Browser Presentation Output Format Customization Points Overview • Query Builder builds Report Template objects which are executed at runtime

  7. Overview • If you really find the OOTB functionality too limited you can see from the architecture that there are customisation points. • Don’t overlook the use of third party tools, such as Excel Web Query • Input sheets can be customised • Macros allow functions to be run to generate input • XSLT will allow manipulation of the output • The Charting element can be extended to provide more flexible charts and graphs • Extension of Query Builder has the advantage of still retaining the flexibility of a user interface to alter the input and output from reports • As we are all aware, business requirements are constantly shifting.

  8. Overview • This presentation will cover the use of the tool OOTB but there are references to where you can look for guidance on extending the functionality. • The presentation uses Windchill 6.2, the tool was much improved between versions 5 and 6. Some references have been made to the key differences between the versions but these are not comprehensive, so be warned, if you are using 5.x you may be disappointed, all the more reason to upgrade. • The use of the tool with other products such as Project Link and Dynamic Design Link has be investigated in a limited manner. At 6.1 you will be using a 5.1 Query Builder, at 6.2 it will be in line with Windchill 6.2. You may find that some of Class specific to the links are not available by default for selection. If you are to use Query builder with links in anger you may wish to clarify the support status.

  9. Examples and references • All of the reports used in the presentation are supplied as examples, plus one or two extra. But there are other places you can look for information. • Windchill Report Templates • System/Reports • These are loaded via the Windchill load program, demo data. See Windchill Installation and Configuration Guide • Windchill Customizers Guide – Report Generation • Tutorial, accessible from Help in Query Builder • PTC Windmill • /Windchill Sample Reports • THIS IS PTC INTERNAL ONLY

  10. Creating a Report Template • Creating Reports Contents: • Creating a basic Report on WTPart • Running the Report • Standard Output Types • Joins By Link • Part Usage • Parts and Described By Documents • Joins Via Criteria • Change Activities • Sub-Select • Joins By Reference

  11. Creating a Report Template • This is done from Windchill Explorer • For example creating a report which will list the parts in the database, with optional search criteria fields

  12. Only part of the class name should be entered. Some of the class on the list appear with spaces therefore entering an exact class name may not return the class you want on the list Multiple classes may be selected at once, using the shift or control keys Creating a Report Template - From • There are various tabs in which you can enter your information. • The first is From, this allows you to select the classes that will be used in the query, as input, output or to enable a join. • In this case we select WTPart

  13. Where there are multiple classes, you need to select the class which holds the attribute Multiple attributes may be selected at once, using the shift or control keys Creating a Report Template - Select • The Select tab allows you to select the attributes you want to display in the results of the report

  14. The order of the selected attribute can be changed Creating a Report Template - Select • In this case we want the Name, Number, Creator and Version • Name and Number appear at the top level. • The Creators Full Name appears as a sub option of Created By • Version is a little more tricky. It will depend on the way you wish it to be displayed. Version -> Lineage -> Series -> Value This will display the Revision.Iteration, e.g. A.5 • The alias column contains the text which will be used as the heading for the output in the results. It defaults to the modelled name which may not always be helpful to a user. • It can be updated by selecting the contents of the cell, and an alternate name can then be entered

  15. Persistent Attribute Derived Attribute Creating a Report Template - Attributes • Attributes can be one of two types: • Persistent • These relate directly to a database or column (which may be a view rather than a table) • Derived • These use Java Instance methods to establish values, they are run after the query is run in the database. • Key Differences • Derived attributes are most more costly on performance so should be used only when required • Derived attributes may not always be available for selection in functions, criteria or sorts (within query builder) • Derived attributes will detrimentally affect grouping

  16. Saving The Report • Once there is enough information in the report that it could be run it can be saved. • As a minimum the report must have From classes and Selected attributes • The Report is saved in the users personal cabinet. • The Report may be moved to an alternate location once completed • Reports can have access control policies applied in the same way as other business objects

  17. Creating a Report Template - Criteria • Criteria allows comparison between, attributes, parameters, constants and sub selects • Attribute – A persisted attribute on the class. • Parameter – This represents user input. For each Parameter Type an appropriate input field will be displayed at runtime • Constants – These allow enforcement of a fixed value, e.g Part State = Released • Sub Select – This allows a sub query to be entered as criteria, an example will be given • All of these options are used in the examples in this workshop

  18. Select Name from the list of attributes for WTPart Creating a Report Template - Criteria • In this case we want to allow the user to enter Name and State as criteria at runtime.

  19. The operator is the comparison type, e.g. equals, greater than etc. The Name for a parameter is the text which will appear as the title for the input field label A default value may optionally be entered. Creating a Report Template - Criteria • The information on the top half of the frame (Left Operand) will be compared, in the manner you select as the Operator, to the information in the lower half. • In this case the attribute Name is compared to a value which will be entered by the user

  20. The default for an attribute which is an enumerated type will allow selection from a list Creating a Report Template - Criteria • The steps are repeated for State

  21. Criteria defined as Type Parameter can be entered. If an input field is left blank it will be ignored. The type of output can be selected Running the Report • To run a fully formatted output with the required input parameters the you need to save the report.

  22. Running the Report • It is possible to test a report before saving using preview, this can be useful if you are unsure of the effect of changes you have made.

  23. HTML With Merging MSWord 2000 HTML Standard Output Types • OTTB Standard Output • HTML – Standard HTML tabular output • HTML with Sorting – Column headings can be used to sort output • HTML with Merging – consecutive values in a column are merged • CSV, TSV – Output to file, comma or tab separated • MS Word 2000 HTML, see below (Not available 5.x) • PDF, requires Adobe Acrobat Distiller (Not available 5.x) • XML (Not available 5.x)

  24. Enforcing Output • The output type can be enforced for the query by setting the properties

  25. Running Reports From HTML Interface • Users can run reports from the HTML Interface • Reports can be located via Local Search or Browse Cabinets • Links to Generate the report appear beneath the URL for the properties page or from the Properties Page. • The Report description is shown on the properties page, this helps users determine the applicability of the Report – so you should always enter this when the report is defined.

  26. Refining Criteria • Currently the Report will only support the input of the correct Part name. To allow the input of wild cards (default wild card is %) the criteria should be altered to LIKE as opposed to = • It is also case sensitive, to avoid this issue with any text input field it is advisable to set both Function settings to UPPER

  27. Refining Criteria • The report outputs all iterations of all versions of the Parts. This is often an issue with iterated objects. • To alleviate this an additional criteria is added which requires the attribute, Latest Iteration is a constant value of 1. This will show the latest iteration of all the revisions

  28. Refining Criteria - Booleans • If the Report must return all parts where the name, and state are those entered, the iteration is the latest and the type is separable with a source of make, or the type is component with a source of buy. • This could be written: (Name = x) AND (State = y) AND (iteration = 1) AND ( ( (type = separable) AND (source = make) ) OR ( (type = component) AND (source = buy) ) ) • In the Criteria tree it would be: If you need to move an entry you can drag it to the section you wish to move it to. NOT 5.x, in 5.x you must delete existing entry and recreate the entry in the new location

  29. Selecting Entire Objects • This does not apply to R5.x • If the entire object is selected it will displayed in the form shown. The Number (Name) Version string should be displayed as a link to the object’s properties. At 6.0 the link will be displayed, at R6.2 it is simply text, no link is generated. This issue has been logged as SPR#934820 and should be fixed in service pack 3.

  30. Joins – Part Uses • In the case of most business objects you do not need to understand the data model as defined in Rose to use join. • You need to understand Windchill and have some idea of the class names and you can create most of the links you need. • For example the uses relationship for a Part. A Part Version owns all versions of another Part. All versions equates to the Part Master, therefore the link is from WTPart to WTPartMaster, the link is Part Usage. • In the Rose model the relationship is represented:

  31. Joins – Part Uses • On the From & Select Tabs:

  32. Joins – Part Uses • Link Vs Reference • Link Joins are made where a modelled link with a cardinality of greater than 1 exists, e.g a WTPart may reference more than one Document. The link name will be: • The name of the association class, if one is specified • Else, link class name is the concatenation of role names • If role names are not specified, they are derived from the end class names • Reference joins are made where the object to object relationship has a cardinality or one or less E.g. • A Part contains a reference to zero or one Teams • A WfAssignedActivity must have a link to only one parent process • Some knowledge of Windchill and some areas of the data model is required but an element of guess work will often suffice, see section Objects & Relationships summary at the end of the presentation

  33. Joins – Part Uses • In the Join Tab Pick Part Usage Output in merged HTML

  34. Joins – Described By Document • If we want to add the link to Described by. • This is a Part Version to Document Version link. WTPart to WTDocument • Modelled as:

  35. Joins – Described By Document • If we want to add the link to Described by. This is a Part Version to Document Version link. WTPart to WTDocument

  36. Joins – Uses + Described By • We want to create a report that shows the parent part, the uses parts and the documents that are associated to those “child” objects. • For example:

  37. WTDocument WTPart WTPart WTPart WTPartMaster WTPartMaster WTDocument Joins – Uses + Described By • To achieve this we can not simply combine the two previous reports. • The Described By report navigates the WTPart to WTDocument relationship The uses navigates the WTPart to WTPartMaster Therefore combining them would retrieve the Documents associated to the “parent” Wtpart, which does not meet the requirement

  38. WTPart WTPartMaster WTPartMaster WTDocument WTDocument WTPart WTPart Joins – Uses + Described By • We want to navigate to obtain the following relationships So to achieve the desired result:

  39. Joins – Uses + Described By To achieve this we need to be able to distinguish between two WTParts, to do this we add two WTPart classes to the From Tab NOTE – when you are doing this alias the two parts sensibly so you know which one you are selecting for the joins or attributes and any criteria

  40. WTPart - Parent Part Usage Link WTPart Describe Link Master Iteration Link WTPartMaster WTPartMaster WTDocument WTDocument WTPart - Child WTPart - Child Joins – Uses + Described By • For the Join you need: • Uses - Parent WTPart to WTPartMaster • Master Iteration - WTPart Master to Child WTPart • Described By - Child WTPart to WTDocument

  41. Joins – Uses + Described By • We add Select as required, making sure we pick the appropriate WTPart

  42. Change Activity Join • A Change Activity has links to parts or documents that will be changed (Affected or Original Data Versions) and are the result of the change (Amended or New Data Versions) • The Parts and Documents inherit from Changeable2, the Affected objects are linked by the AffectedActivityData link, Amended objects are linked by the ChangeRecord2 link.

  43. Change Activity Join • We want a report that will show the Change Activities and their associated amended or affected Documents. In Windchill we have:

  44. Change Activity Join • If we create the following report: This report will return zero results. No document version is going to be associated as both amended and affected. By definition a Document that is affected by a change will be altered, creating a new iteration or version, which is associated as the amended object

  45. Change Activity Join • If we add two Documents, and alias appropriately then we can separate affected and amended links to the two document classes.

  46. Change Activity Join This shows results, but only where the Activity has both an affected and amended link, those with only affected are not shown. Therefore Change Activity 00001, Material Specification Change – 9978 is not shown in the results. The key requirement for the report is that we wish to see activities that have amended OR affected Documents.

  47. Change Activity Join • To enforce the OR we can link the objects via the criteria tab. • If we use the original report as a basis: • Removing the joins. • The link classes need to be added as selected classes to allow us to use them as criteria • Selection remains unchanged.

  48. Link Properties Change Activity Join • To successfully link the via criteria we need to look at the Rose model, and at the link properties in detail

  49. Change Activity Join • Armed with the knowledge that Role A on the link is the Document, B is the Activity, the other element we need to understand is the attribute used on the link. • Objects are normally linked using their unique persistence id. This is displayed on the object itself as Persist Info.Object Identifier.Id. So to display either the Change Activities where there is an affected or amended document the criteria would colloquially be: ( ( (Doc Id = Affected Role A ID) AND (Activity ID = Affected Role B ID) ) OR ( (Doc Id = Amended Role A ID) AND (Activity ID = Amended Role B ID) ) )

  50. Change Activity Join • The expression: ( ( (Doc Id = Affected Role A ID) AND (Activity ID = Affected Role B ID) ) OR ( (Doc Id = Amended Role A ID) AND (Activity ID = Amended Role B ID) ) ) • Would be implemented as shown below, in addition the results are limited to display only the latest iteration of any revision.

More Related