Skip to main content
1-Visitor
December 10, 2012
Solved

Publishing CAD files to different files types in Windchill 10.1

  • December 10, 2012
  • 11 replies
  • 10339 views

I'm looking to publish Creo drawings to PDF and DXF and publish parts/assemblies to CreoView and STEP... The documentation goes over how to sort by epm-type in the publishing rules but all the "CAD Documents" are of a single epm type. They are further sorted by document category (i.e. "CAD Part" or "Drawing") within the epm type of "CAD Document" but I can figure out if it's possible or not to sort by document category. Anyone been able to do this?

Thanks!

Best answer by AndrewDrenner

After a lot of trial and error I figured out the solution to my problem. My publisher rules file looks like the following now:

<?xml version="1.0" encoding="UTF-8"?>

<rules xmlns="http://www.ptc.com" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.ptc.com PublishRulesSchema.xsd" evaluate-rules-on-republish="true">

<authoring-application name="PROE">

<additional-files name="drawing_files">

<!--only default='true' files will be generated at this time -->

<file display-label="PDF" type="pdf" default="true" output-prefix="pdf" />

<file display-label="DXF" type="dxf" default="false" output-prefix="dxf" />

</additional-files>

<additional-files name="part_files">

<!--only default='true' files will be generated at this time -->

<file display-label="STEP" type="step" default="true" output-prefix="step" />

<file display-label="IGES" type="iges" default="false" output-prefix="iges" />

</additional-files>

<additional-files name="asm_files">

<!--only default='true' files will be generated at this time -->

<file display-label="STEP" type="step" default="false" output-prefix="step" />

<file display-label="IGES" type="iges" default="false" output-prefix="iges" />

</additional-files>

<condition name="is_drawing">

<attribute name="epmdoc_name" regex=".*\.drw" />

</condition>

<condition name="is_part">

<attribute name="epmdoc_name" regex=".*\.prt" />

</condition>

<condition name="is_asm">

<attribute name="epmdoc_name" regex=".*\.asm" />

</condition>

<!-- Following conditions are evaluated based on the order they appear in this file -->

<if condition="is_drawing">

<publish on="checkin" display-label="Publish drawing - checkin" additional-files="drawing_files" />

<publish on="create-representation" display-label="Publish drawing" additional-files="drawing_files" />

</if>

<if condition="is_part">

<publish on="checkin" display-label="Publish part - checkin" additional-files="part_files" />

<publish on="create-representation" display-label="Publish part" additional-files="part_files" />

</if>

<if condition="is_asm">

<publish on="checkin" display-label="Publish assembly - checkin" additional-files="asm_files" />

<publish on="create-representation" display-label="Publish assembly" additional-files="asm_files" />

</if>

</authoring-application>

</rules>

11 replies

AndrewDrenner1-VisitorAuthorAnswer
1-Visitor
December 20, 2012

After a lot of trial and error I figured out the solution to my problem. My publisher rules file looks like the following now:

<?xml version="1.0" encoding="UTF-8"?>

<rules xmlns="http://www.ptc.com" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.ptc.com PublishRulesSchema.xsd" evaluate-rules-on-republish="true">

<authoring-application name="PROE">

<additional-files name="drawing_files">

<!--only default='true' files will be generated at this time -->

<file display-label="PDF" type="pdf" default="true" output-prefix="pdf" />

<file display-label="DXF" type="dxf" default="false" output-prefix="dxf" />

</additional-files>

<additional-files name="part_files">

<!--only default='true' files will be generated at this time -->

<file display-label="STEP" type="step" default="true" output-prefix="step" />

<file display-label="IGES" type="iges" default="false" output-prefix="iges" />

</additional-files>

<additional-files name="asm_files">

<!--only default='true' files will be generated at this time -->

<file display-label="STEP" type="step" default="false" output-prefix="step" />

<file display-label="IGES" type="iges" default="false" output-prefix="iges" />

</additional-files>

<condition name="is_drawing">

<attribute name="epmdoc_name" regex=".*\.drw" />

</condition>

<condition name="is_part">

<attribute name="epmdoc_name" regex=".*\.prt" />

</condition>

<condition name="is_asm">

<attribute name="epmdoc_name" regex=".*\.asm" />

</condition>

<!-- Following conditions are evaluated based on the order they appear in this file -->

<if condition="is_drawing">

<publish on="checkin" display-label="Publish drawing - checkin" additional-files="drawing_files" />

<publish on="create-representation" display-label="Publish drawing" additional-files="drawing_files" />

</if>

<if condition="is_part">

<publish on="checkin" display-label="Publish part - checkin" additional-files="part_files" />

<publish on="create-representation" display-label="Publish part" additional-files="part_files" />

</if>

<if condition="is_asm">

<publish on="checkin" display-label="Publish assembly - checkin" additional-files="asm_files" />

<publish on="create-representation" display-label="Publish assembly" additional-files="asm_files" />

</if>

</authoring-application>

</rules>

1-Visitor
April 16, 2014

For my opinion better condition is:

<condition name="is_drawing">

<attribute name="epmdoc_CADName" regex=".*\.drw" />

</condition>

<condition name="is_part">

<attribute name="epmdoc_CADName" regex=".*\.prt" />

</condition>

<condition name="is_asm">

<attribute name="epmdoc_CADName" regex=".*\.asm" />

</condition>

23-Emerald IV
April 16, 2014

Instead of using "epmdoc_name" or "epmdoc_CADName", why not use "epmdoc_docType"?

For example:

<condition name="Valid_Creo_Type">

<or>

<attribute name="epmdoc_docType" value="Assembly"/>

<attribute name="epmdoc_docType" value="Drawing"/>

<attribute name="epmdoc_docType" value="Drawing format"/>

<attribute name="epmdoc_docType" value="Layout"/>

<attribute name="epmdoc_docType" value="Part"/>

</or>

</condition>