<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: batch flat pattern in Inventor Programming Forum</title>
    <link>https://forums.autodesk.com/t5/inventor-programming-forum/batch-flat-pattern/m-p/13969625#M178862</link>
    <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/14688128"&gt;@design5LD8F&lt;/a&gt;.&amp;nbsp; Unfortunately, when using the&amp;nbsp;&lt;A href="https://help.autodesk.com/view/INVNTOR/2026/ENU/?guid=DataIO_WriteDataToFile" target="_blank" rel="noopener"&gt;DataIO.WriteDataToFile&lt;/A&gt;&amp;nbsp;method, we can not use the 'INI' file.&amp;nbsp; Instead, we must include all specifications / settings / options (see help documentation at the Link provided) directly within the 'Format' input (the 'sOut' variable's value, in your case).&amp;nbsp; Depending on the extent of custom settings you use, that can require a TON of additional lines in your rule, to fit all of those specifications into that one String value.&amp;nbsp; In newer versions of Inventor (starting with 2025), we can use the&amp;nbsp;&lt;A href="https://help.autodesk.com/view/INVNTOR/2026/ENU/?guid=TranslatorAddIn_SaveCopyAs" target="_blank" rel="noopener"&gt;TranslatorAddIn.SaveCopyAs&lt;/A&gt;&amp;nbsp;method, supply the &lt;A href="https://help.autodesk.com/view/INVNTOR/2026/ENU/?guid=GUID-FlatPattern" target="_blank" rel="noopener"&gt;FlatPattern&lt;/A&gt; object itself directly as the 'SourceObject' input, instead of the Document object.&amp;nbsp; Then when using that SaveCopyAs method, the one 'Option' we have is to specify the full file name of the 'INI' file, so that it can use the settings in that file...similar to the manual process.&lt;/P&gt;</description>
    <pubDate>Thu, 08 Jan 2026 17:22:32 GMT</pubDate>
    <dc:creator>WCrihfield</dc:creator>
    <dc:date>2026-01-08T17:22:32Z</dc:date>
    <item>
      <title>batch flat pattern</title>
      <link>https://forums.autodesk.com/t5/inventor-programming-forum/batch-flat-pattern/m-p/13968734#M178853</link>
      <description>&lt;P&gt;Hi&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I used google AI to write a ilogic code that creates dxf files for all open sheet metal parts.&lt;/P&gt;&lt;P&gt;what i want it to do is use my flat pattern dxf export options, add my job number to the end of the file name, and decide which side to use as the front ( which ever side has the most IV_BEND or bend lines (front) lines).&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;code below, any help &lt;STRONG&gt;appreciated&lt;/STRONG&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;' 1. DEFINE YOUR INI PATH&lt;BR /&gt;Dim sIniFile As String = "C:\Users\design.BRISELEC\Documents\Drawing Standards and Parameters\FlatPatternConfiguration.ini"&lt;/P&gt;&lt;P&gt;If Not System.IO.File.Exists(sIniFile) Then&lt;BR /&gt;MessageBox.Show("Configuration file not found at:" &amp;amp; vbLf &amp;amp; sIniFile, "Error")&lt;BR /&gt;Return&lt;BR /&gt;End If&lt;/P&gt;&lt;P&gt;' 2. PROMPT FOR JOB NUMBER ONCE&lt;BR /&gt;Dim oJobNum As String = InputBox("Enter Job Number for ALL open parts:", "Batch Export", "")&lt;BR /&gt;If String.IsNullOrEmpty(oJobNum) Then Return&lt;/P&gt;&lt;P&gt;' 3. CAPTURE OPEN DOCUMENTS&lt;BR /&gt;Dim oDocsToProcess As New List(Of Document)&lt;BR /&gt;For Each oDoc As Document In ThisApplication.Documents.VisibleDocuments&lt;BR /&gt;oDocsToProcess.Add(oDoc)&lt;BR /&gt;Next&lt;/P&gt;&lt;P&gt;' 4. PROCESS LOOP&lt;BR /&gt;For Each oDoc As Document In oDocsToProcess&lt;BR /&gt;If oDoc.DocumentType = DocumentTypeEnum.kPartDocumentObject Then&lt;BR /&gt;oDoc.Activate() ' Prevents export errors in 2024&lt;BR /&gt;Dim oPartDoc As PartDocument = oDoc&lt;BR /&gt;&lt;BR /&gt;If oPartDoc.ComponentDefinition.Type = ObjectTypeEnum.kSheetMetalComponentDefinitionObject Then&lt;BR /&gt;Dim oCompDef As SheetMetalComponentDefinition = oPartDoc.ComponentDefinition&lt;BR /&gt;&lt;BR /&gt;' A. REFRESH FLAT PATTERN&lt;BR /&gt;If oCompDef.HasFlatPattern Then&lt;BR /&gt;Try : oCompDef.FlatPattern.Delete() : Catch : End Try&lt;BR /&gt;End If&lt;BR /&gt;Try : oCompDef.Unfold() : Catch : Continue For : End Try&lt;/P&gt;&lt;P&gt;' B. OPTIMIZE BEND DIRECTION (Favor Front/Up Bends)&lt;BR /&gt;Dim oFlatPattern As FlatPattern = oCompDef.FlatPattern&lt;BR /&gt;Dim upCount As Integer = 0&lt;BR /&gt;Dim downCount As Integer = 0&lt;BR /&gt;For Each oResult As FlatBendResult In oFlatPattern.FlatBendResults&lt;BR /&gt;If oResult.IsDirectionUp Then upCount += 1 Else downCount += 1&lt;BR /&gt;Next&lt;BR /&gt;If downCount &amp;gt; upCount Then&lt;BR /&gt;oFlatPattern.FlatPatternOrientations.ActiveFlatPatternOrientation.FlipBaseFace = Not oFlatPattern.FlatPatternOrientations.ActiveFlatPatternOrientation.FlipBaseFace&lt;BR /&gt;End If&lt;/P&gt;&lt;P&gt;' C. DEFINE FILENAME&lt;BR /&gt;Dim oFileName As String = System.IO.Path.GetFileNameWithoutExtension(oPartDoc.FullFileName)&lt;BR /&gt;Dim oFilePath As String = System.IO.Path.GetDirectoryName(oPartDoc.FullFileName)&lt;BR /&gt;Dim sFullDXFName As String = oFilePath &amp;amp; "\" &amp;amp; oFileName &amp;amp; " - " &amp;amp; oJobNum &amp;amp; ".dxf"&lt;/P&gt;&lt;P&gt;' D. ROBUST EXPORT STRING (Forces valid version and loads INI)&lt;BR /&gt;' Using AcadVersion=2018 is standard for 2024. Use R12 if your CNC is very old.&lt;BR /&gt;Dim sOut As String = "FLAT PATTERN DXF?AcadVersion=2018&amp;amp;ConfigFile=" &amp;amp; sIniFile&lt;BR /&gt;&lt;BR /&gt;Try&lt;BR /&gt;' This method is the most direct way to bypass "not valid" errors&lt;BR /&gt;oCompDef.DataIO.WriteDataToFile(sOut, sFullDXFName)&lt;BR /&gt;oPartDoc.Save()&lt;BR /&gt;oPartDoc.Close(True)&lt;BR /&gt;Catch ex As Exception&lt;BR /&gt;' Skips read-only or locked files&lt;BR /&gt;End Try&lt;BR /&gt;End If&lt;BR /&gt;End If&lt;BR /&gt;Next&lt;/P&gt;&lt;P&gt;MessageBox.Show("Batch processing complete.", "Success")&lt;/P&gt;</description>
      <pubDate>Thu, 08 Jan 2026 04:42:43 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/inventor-programming-forum/batch-flat-pattern/m-p/13968734#M178853</guid>
      <dc:creator>design5LD8F</dc:creator>
      <dc:date>2026-01-08T04:42:43Z</dc:date>
    </item>
    <item>
      <title>Re: batch flat pattern</title>
      <link>https://forums.autodesk.com/t5/inventor-programming-forum/batch-flat-pattern/m-p/13969625#M178862</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/14688128"&gt;@design5LD8F&lt;/a&gt;.&amp;nbsp; Unfortunately, when using the&amp;nbsp;&lt;A href="https://help.autodesk.com/view/INVNTOR/2026/ENU/?guid=DataIO_WriteDataToFile" target="_blank" rel="noopener"&gt;DataIO.WriteDataToFile&lt;/A&gt;&amp;nbsp;method, we can not use the 'INI' file.&amp;nbsp; Instead, we must include all specifications / settings / options (see help documentation at the Link provided) directly within the 'Format' input (the 'sOut' variable's value, in your case).&amp;nbsp; Depending on the extent of custom settings you use, that can require a TON of additional lines in your rule, to fit all of those specifications into that one String value.&amp;nbsp; In newer versions of Inventor (starting with 2025), we can use the&amp;nbsp;&lt;A href="https://help.autodesk.com/view/INVNTOR/2026/ENU/?guid=TranslatorAddIn_SaveCopyAs" target="_blank" rel="noopener"&gt;TranslatorAddIn.SaveCopyAs&lt;/A&gt;&amp;nbsp;method, supply the &lt;A href="https://help.autodesk.com/view/INVNTOR/2026/ENU/?guid=GUID-FlatPattern" target="_blank" rel="noopener"&gt;FlatPattern&lt;/A&gt; object itself directly as the 'SourceObject' input, instead of the Document object.&amp;nbsp; Then when using that SaveCopyAs method, the one 'Option' we have is to specify the full file name of the 'INI' file, so that it can use the settings in that file...similar to the manual process.&lt;/P&gt;</description>
      <pubDate>Thu, 08 Jan 2026 17:22:32 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/inventor-programming-forum/batch-flat-pattern/m-p/13969625#M178862</guid>
      <dc:creator>WCrihfield</dc:creator>
      <dc:date>2026-01-08T17:22:32Z</dc:date>
    </item>
    <item>
      <title>Re: batch flat pattern</title>
      <link>https://forums.autodesk.com/t5/inventor-programming-forum/batch-flat-pattern/m-p/13970118#M178865</link>
      <description>&lt;P&gt;Hi Wesley&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Yes this morning i worked this out today, using 2024, might pay to update soon, but i did get it to work today with adding in centre punch marks on fold lines.&lt;/P&gt;
&lt;P&gt;i also tried to create all the sheet metal dxf's straight out of the assembly ranther than opening all parts and running the code. no luck yet.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;PRE&gt;&lt;SPAN&gt;' 1. Setup - Manual DXF Option String&lt;/SPAN&gt;
&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;sOut&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;String&lt;/SPAN&gt; = &lt;SPAN&gt;"FLAT PATTERN DXF?AcadVersion=2004"&lt;/SPAN&gt; _
    &amp;amp; &lt;SPAN&gt;"&amp;amp;OuterProfileLayer=IV_OUTER_PROFILE&amp;amp;OuterProfileLayerColor=0;0;0"&lt;/SPAN&gt; _
    &amp;amp; &lt;SPAN&gt;"&amp;amp;InteriorProfilesLayer=IV_INTERIOR_PROFILES&amp;amp;InteriorProfilesLayerColor=0;0;0"&lt;/SPAN&gt; _
    &amp;amp; &lt;SPAN&gt;"&amp;amp;BendUpLayer=IV_BEND&amp;amp;BendUpLayerColor=255;0;0"&lt;/SPAN&gt; _
    &amp;amp; &lt;SPAN&gt;"&amp;amp;BendDownLayer=IV_BEND_DOWN&amp;amp;BendDownLayerColor=0;255;255"&lt;/SPAN&gt; _
    &amp;amp; &lt;SPAN&gt;"&amp;amp;FeatureProfilesUpLayer=IV_FEATURE_PROFILES&amp;amp;FeatureProfilesUpLayerColor=255;128;0"&lt;/SPAN&gt; _
    &amp;amp; &lt;SPAN&gt;"&amp;amp;FeatureProfilesDownLayer=IV_FEATURE_PROFILES_DOWN&amp;amp;FeatureProfilesDownLayerColor=0;255;0"&lt;/SPAN&gt; _
    &amp;amp; &lt;SPAN&gt;"&amp;amp;AltRepFrontLayer=IV_ALTREP_FRONT&amp;amp;AltRepFrontLayerColor=0;0;0"&lt;/SPAN&gt; _
    &amp;amp; &lt;SPAN&gt;"&amp;amp;AltRepBackLayer=IV_ALTREP_BACK&amp;amp;AltRepBackLayerColor=0;0;0"&lt;/SPAN&gt; _
    &amp;amp; &lt;SPAN&gt;"&amp;amp;RollTangentLayer=IV_ROLL_TANGENT&amp;amp;RollTangentLayerColor=0;0;0"&lt;/SPAN&gt; _
    &amp;amp; &lt;SPAN&gt;"&amp;amp;RollLayer=IV_ROLL&amp;amp;RollLayerColor=0;0;0"&lt;/SPAN&gt; _
    &amp;amp; &lt;SPAN&gt;"&amp;amp;UnconsumedSketchesLayer=IV_UNCONSUMED_SKETCHES"&lt;/SPAN&gt; _
    &amp;amp; &lt;SPAN&gt;"&amp;amp;SimplifySplines=True&amp;amp;SplineSimplificationMethod=Linear&amp;amp;ChordTolerance=0.01"&lt;/SPAN&gt; _
    &amp;amp; &lt;SPAN&gt;"&amp;amp;InvisibleLayers=IV_TANGENT;IV_TOOL_CENTER;IV_TOOL_CENTER_DOWN;IV_ARC_CENTERS"&lt;/SPAN&gt;

&lt;SPAN&gt;' 2. Prompt for Job Number&lt;/SPAN&gt;
&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oJobNum&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;String&lt;/SPAN&gt; = &lt;SPAN&gt;InputBox&lt;/SPAN&gt;(&lt;SPAN&gt;"Enter Job Number for ALL open parts:"&lt;/SPAN&gt;, &lt;SPAN&gt;"Batch Export"&lt;/SPAN&gt;, &lt;SPAN&gt;""&lt;/SPAN&gt;)
&lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;String&lt;/SPAN&gt;.&lt;SPAN&gt;IsNullOrEmpty&lt;/SPAN&gt;(&lt;SPAN&gt;oJobNum&lt;/SPAN&gt;) &lt;SPAN&gt;Then&lt;/SPAN&gt; &lt;SPAN&gt;Return&lt;/SPAN&gt;

&lt;SPAN&gt;' 3. Process open documents&lt;/SPAN&gt;
&lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oDocsToProcess&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;New&lt;/SPAN&gt; &lt;SPAN&gt;List&lt;/SPAN&gt;(&lt;SPAN&gt;Of&lt;/SPAN&gt; &lt;SPAN&gt;Document&lt;/SPAN&gt;)
&lt;SPAN&gt;For&lt;/SPAN&gt; &lt;SPAN&gt;Each&lt;/SPAN&gt; &lt;SPAN&gt;oDoc&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;Document&lt;/SPAN&gt; &lt;SPAN&gt;In&lt;/SPAN&gt; &lt;SPAN&gt;ThisApplication&lt;/SPAN&gt;.&lt;SPAN&gt;Documents&lt;/SPAN&gt;.&lt;SPAN&gt;VisibleDocuments&lt;/SPAN&gt;
    &lt;SPAN&gt;' Only add parts that are actually saved to disk (have a file path)&lt;/SPAN&gt;
    &lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;oDoc&lt;/SPAN&gt;.&lt;SPAN&gt;DocumentType&lt;/SPAN&gt; = &lt;SPAN&gt;DocumentTypeEnum&lt;/SPAN&gt;.&lt;SPAN&gt;kPartDocumentObject&lt;/SPAN&gt; &lt;SPAN&gt;AndAlso&lt;/SPAN&gt; &lt;SPAN&gt;Not&lt;/SPAN&gt; &lt;SPAN&gt;String&lt;/SPAN&gt;.&lt;SPAN&gt;IsNullOrEmpty&lt;/SPAN&gt;(&lt;SPAN&gt;oDoc&lt;/SPAN&gt;.&lt;SPAN&gt;FullFileName&lt;/SPAN&gt;) &lt;SPAN&gt;Then&lt;/SPAN&gt;
        &lt;SPAN&gt;oDocsToProcess&lt;/SPAN&gt;.&lt;SPAN&gt;Add&lt;/SPAN&gt;(&lt;SPAN&gt;oDoc&lt;/SPAN&gt;)
    &lt;SPAN&gt;End&lt;/SPAN&gt; &lt;SPAN&gt;If&lt;/SPAN&gt;
&lt;SPAN&gt;Next&lt;/SPAN&gt;

&lt;SPAN&gt;For&lt;/SPAN&gt; &lt;SPAN&gt;Each&lt;/SPAN&gt; &lt;SPAN&gt;oDoc&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;Document&lt;/SPAN&gt; &lt;SPAN&gt;In&lt;/SPAN&gt; &lt;SPAN&gt;oDocsToProcess&lt;/SPAN&gt;
    &lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oPartDoc&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;PartDocument&lt;/SPAN&gt; = &lt;SPAN&gt;oDoc&lt;/SPAN&gt;
    &lt;SPAN&gt;oPartDoc&lt;/SPAN&gt;.&lt;SPAN&gt;Activate&lt;/SPAN&gt;()
    
    &lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;oPartDoc&lt;/SPAN&gt;.&lt;SPAN&gt;ComponentDefinition&lt;/SPAN&gt;.&lt;SPAN&gt;Type&lt;/SPAN&gt; = &lt;SPAN&gt;ObjectTypeEnum&lt;/SPAN&gt;.&lt;SPAN&gt;kSheetMetalComponentDefinitionObject&lt;/SPAN&gt; &lt;SPAN&gt;Then&lt;/SPAN&gt;
        &lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oCompDef&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;SheetMetalComponentDefinition&lt;/SPAN&gt; = &lt;SPAN&gt;oPartDoc&lt;/SPAN&gt;.&lt;SPAN&gt;ComponentDefinition&lt;/SPAN&gt;
        
        &lt;SPAN&gt;' A. Ensure Flat Pattern exists&lt;/SPAN&gt;
        &lt;SPAN&gt;Try&lt;/SPAN&gt;
            &lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;Not&lt;/SPAN&gt; &lt;SPAN&gt;oCompDef&lt;/SPAN&gt;.&lt;SPAN&gt;HasFlatPattern&lt;/SPAN&gt; &lt;SPAN&gt;Then&lt;/SPAN&gt;
                &lt;SPAN&gt;oCompDef&lt;/SPAN&gt;.&lt;SPAN&gt;Unfold&lt;/SPAN&gt;()
            &lt;SPAN&gt;End&lt;/SPAN&gt; &lt;SPAN&gt;If&lt;/SPAN&gt;
        &lt;SPAN&gt;Catch&lt;/SPAN&gt; &lt;SPAN&gt;ex&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;Exception&lt;/SPAN&gt;
            &lt;SPAN&gt;oPartDoc&lt;/SPAN&gt;.&lt;SPAN&gt;Close&lt;/SPAN&gt;(&lt;SPAN&gt;True&lt;/SPAN&gt;) &lt;SPAN&gt;' Close even if unfold fails&lt;/SPAN&gt;
            &lt;SPAN&gt;Continue&lt;/SPAN&gt; &lt;SPAN&gt;For&lt;/SPAN&gt;
        &lt;SPAN&gt;End&lt;/SPAN&gt; &lt;SPAN&gt;Try&lt;/SPAN&gt;
        
        &lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oFlatPattern&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;FlatPattern&lt;/SPAN&gt; = &lt;SPAN&gt;oCompDef&lt;/SPAN&gt;.&lt;SPAN&gt;FlatPattern&lt;/SPAN&gt;
        &lt;SPAN&gt;oFlatPattern&lt;/SPAN&gt;.&lt;SPAN&gt;Edit&lt;/SPAN&gt;()

        &lt;SPAN&gt;' --- CENTER MARKING LOGIC ---&lt;/SPAN&gt;
        &lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oSketch&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;PlanarSketch&lt;/SPAN&gt;
        &lt;SPAN&gt;Try&lt;/SPAN&gt; : &lt;SPAN&gt;oSketch&lt;/SPAN&gt; = &lt;SPAN&gt;oFlatPattern&lt;/SPAN&gt;.&lt;SPAN&gt;Sketches&lt;/SPAN&gt;.&lt;SPAN&gt;Item&lt;/SPAN&gt;(&lt;SPAN&gt;"CTR_MARKS"&lt;/SPAN&gt;) : &lt;SPAN&gt;oSketch&lt;/SPAN&gt;.&lt;SPAN&gt;Delete&lt;/SPAN&gt;() : &lt;SPAN&gt;Catch&lt;/SPAN&gt; : &lt;SPAN&gt;End&lt;/SPAN&gt; &lt;SPAN&gt;Try&lt;/SPAN&gt;
        &lt;SPAN&gt;oSketch&lt;/SPAN&gt; = &lt;SPAN&gt;oFlatPattern&lt;/SPAN&gt;.&lt;SPAN&gt;Sketches&lt;/SPAN&gt;.&lt;SPAN&gt;Add&lt;/SPAN&gt;(&lt;SPAN&gt;oFlatPattern&lt;/SPAN&gt;.&lt;SPAN&gt;TopFace&lt;/SPAN&gt;, &lt;SPAN&gt;False&lt;/SPAN&gt;)
        &lt;SPAN&gt;oSketch&lt;/SPAN&gt;.&lt;SPAN&gt;Name&lt;/SPAN&gt; = &lt;SPAN&gt;"CTR_MARKS"&lt;/SPAN&gt;

        &lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;c1_rad&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;Double&lt;/SPAN&gt; = 0.05 &lt;SPAN&gt;' 0.5mm&lt;/SPAN&gt;
        &lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;c2_rad&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;Double&lt;/SPAN&gt; = 0.025 &lt;SPAN&gt;' 0.25mm&lt;/SPAN&gt;
        &lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oTG&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;TransientGeometry&lt;/SPAN&gt; = &lt;SPAN&gt;ThisApplication&lt;/SPAN&gt;.&lt;SPAN&gt;TransientGeometry&lt;/SPAN&gt;
        
        &lt;SPAN&gt;For&lt;/SPAN&gt; &lt;SPAN&gt;Each&lt;/SPAN&gt; &lt;SPAN&gt;oResult&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;FlatBendResult&lt;/SPAN&gt; &lt;SPAN&gt;In&lt;/SPAN&gt; &lt;SPAN&gt;oFlatPattern&lt;/SPAN&gt;.&lt;SPAN&gt;FlatBendResults&lt;/SPAN&gt;
            &lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oSketchLine&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;SketchLine&lt;/SPAN&gt; = &lt;SPAN&gt;oSketch&lt;/SPAN&gt;.&lt;SPAN&gt;AddByProjectingEntity&lt;/SPAN&gt;(&lt;SPAN&gt;oResult&lt;/SPAN&gt;.&lt;SPAN&gt;Edge&lt;/SPAN&gt;)
            &lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;pStart&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;Point2d&lt;/SPAN&gt; = &lt;SPAN&gt;oSketchLine&lt;/SPAN&gt;.&lt;SPAN&gt;StartSketchPoint&lt;/SPAN&gt;.&lt;SPAN&gt;Geometry&lt;/SPAN&gt;
            &lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;pEnd&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;Point2d&lt;/SPAN&gt; = &lt;SPAN&gt;oSketchLine&lt;/SPAN&gt;.&lt;SPAN&gt;EndSketchPoint&lt;/SPAN&gt;.&lt;SPAN&gt;Geometry&lt;/SPAN&gt;
            &lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;unitDir&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;Vector2d&lt;/SPAN&gt; = &lt;SPAN&gt;oTG&lt;/SPAN&gt;.&lt;SPAN&gt;CreateVector2d&lt;/SPAN&gt;(&lt;SPAN&gt;pEnd&lt;/SPAN&gt;.&lt;SPAN&gt;X&lt;/SPAN&gt; - &lt;SPAN&gt;pStart&lt;/SPAN&gt;.&lt;SPAN&gt;X&lt;/SPAN&gt;, &lt;SPAN&gt;pEnd&lt;/SPAN&gt;.&lt;SPAN&gt;Y&lt;/SPAN&gt; - &lt;SPAN&gt;pStart&lt;/SPAN&gt;.&lt;SPAN&gt;Y&lt;/SPAN&gt;)
            &lt;SPAN&gt;unitDir&lt;/SPAN&gt;.&lt;SPAN&gt;Normalize&lt;/SPAN&gt;()

            &lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;oResult&lt;/SPAN&gt;.&lt;SPAN&gt;IsDirectionUp&lt;/SPAN&gt; &lt;SPAN&gt;Then&lt;/SPAN&gt;
                &lt;SPAN&gt;oSketch&lt;/SPAN&gt;.&lt;SPAN&gt;SketchCircles&lt;/SPAN&gt;.&lt;SPAN&gt;AddByCenterRadius&lt;/SPAN&gt;(&lt;SPAN&gt;oTG&lt;/SPAN&gt;.&lt;SPAN&gt;CreatePoint2d&lt;/SPAN&gt;(&lt;SPAN&gt;pStart&lt;/SPAN&gt;.&lt;SPAN&gt;X&lt;/SPAN&gt; + &lt;SPAN&gt;unitDir&lt;/SPAN&gt;.&lt;SPAN&gt;X&lt;/SPAN&gt; * 0.5, &lt;SPAN&gt;pStart&lt;/SPAN&gt;.&lt;SPAN&gt;Y&lt;/SPAN&gt; + &lt;SPAN&gt;unitDir&lt;/SPAN&gt;.&lt;SPAN&gt;Y&lt;/SPAN&gt; * 0.5), &lt;SPAN&gt;c1_rad&lt;/SPAN&gt;)
                &lt;SPAN&gt;oSketch&lt;/SPAN&gt;.&lt;SPAN&gt;SketchCircles&lt;/SPAN&gt;.&lt;SPAN&gt;AddByCenterRadius&lt;/SPAN&gt;(&lt;SPAN&gt;oTG&lt;/SPAN&gt;.&lt;SPAN&gt;CreatePoint2d&lt;/SPAN&gt;(&lt;SPAN&gt;pEnd&lt;/SPAN&gt;.&lt;SPAN&gt;X&lt;/SPAN&gt; - &lt;SPAN&gt;unitDir&lt;/SPAN&gt;.&lt;SPAN&gt;X&lt;/SPAN&gt; * 0.5, &lt;SPAN&gt;pEnd&lt;/SPAN&gt;.&lt;SPAN&gt;Y&lt;/SPAN&gt; - &lt;SPAN&gt;unitDir&lt;/SPAN&gt;.&lt;SPAN&gt;Y&lt;/SPAN&gt; * 0.5), &lt;SPAN&gt;c1_rad&lt;/SPAN&gt;)
            &lt;SPAN&gt;Else&lt;/SPAN&gt;
                &lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;offsets&lt;/SPAN&gt;() &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;Double&lt;/SPAN&gt; = {0.5, 0.75, 1.0}
                &lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;radii&lt;/SPAN&gt;() &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;Double&lt;/SPAN&gt; = {&lt;SPAN&gt;c1_rad&lt;/SPAN&gt;, &lt;SPAN&gt;c2_rad&lt;/SPAN&gt;, &lt;SPAN&gt;c1_rad&lt;/SPAN&gt;}
                &lt;SPAN&gt;For&lt;/SPAN&gt; &lt;SPAN&gt;i&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;Integer&lt;/SPAN&gt; = 0 &lt;SPAN&gt;To&lt;/SPAN&gt; 2
                    &lt;SPAN&gt;oSketch&lt;/SPAN&gt;.&lt;SPAN&gt;SketchCircles&lt;/SPAN&gt;.&lt;SPAN&gt;AddByCenterRadius&lt;/SPAN&gt;(&lt;SPAN&gt;oTG&lt;/SPAN&gt;.&lt;SPAN&gt;CreatePoint2d&lt;/SPAN&gt;(&lt;SPAN&gt;pStart&lt;/SPAN&gt;.&lt;SPAN&gt;X&lt;/SPAN&gt; + &lt;SPAN&gt;unitDir&lt;/SPAN&gt;.&lt;SPAN&gt;X&lt;/SPAN&gt; * &lt;SPAN&gt;offsets&lt;/SPAN&gt;(&lt;SPAN&gt;i&lt;/SPAN&gt;), &lt;SPAN&gt;pStart&lt;/SPAN&gt;.&lt;SPAN&gt;Y&lt;/SPAN&gt; + &lt;SPAN&gt;unitDir&lt;/SPAN&gt;.&lt;SPAN&gt;Y&lt;/SPAN&gt; * &lt;SPAN&gt;offsets&lt;/SPAN&gt;(&lt;SPAN&gt;i&lt;/SPAN&gt;)), &lt;SPAN&gt;radii&lt;/SPAN&gt;(&lt;SPAN&gt;i&lt;/SPAN&gt;))
                    &lt;SPAN&gt;oSketch&lt;/SPAN&gt;.&lt;SPAN&gt;SketchCircles&lt;/SPAN&gt;.&lt;SPAN&gt;AddByCenterRadius&lt;/SPAN&gt;(&lt;SPAN&gt;oTG&lt;/SPAN&gt;.&lt;SPAN&gt;CreatePoint2d&lt;/SPAN&gt;(&lt;SPAN&gt;pEnd&lt;/SPAN&gt;.&lt;SPAN&gt;X&lt;/SPAN&gt; - &lt;SPAN&gt;unitDir&lt;/SPAN&gt;.&lt;SPAN&gt;X&lt;/SPAN&gt; * &lt;SPAN&gt;offsets&lt;/SPAN&gt;(&lt;SPAN&gt;i&lt;/SPAN&gt;), &lt;SPAN&gt;pEnd&lt;/SPAN&gt;.&lt;SPAN&gt;Y&lt;/SPAN&gt; - &lt;SPAN&gt;unitDir&lt;/SPAN&gt;.&lt;SPAN&gt;Y&lt;/SPAN&gt; * &lt;SPAN&gt;offsets&lt;/SPAN&gt;(&lt;SPAN&gt;i&lt;/SPAN&gt;)), &lt;SPAN&gt;radii&lt;/SPAN&gt;(&lt;SPAN&gt;i&lt;/SPAN&gt;))
                &lt;SPAN&gt;Next&lt;/SPAN&gt;
            &lt;SPAN&gt;End&lt;/SPAN&gt; &lt;SPAN&gt;If&lt;/SPAN&gt;
            &lt;SPAN&gt;oSketchLine&lt;/SPAN&gt;.&lt;SPAN&gt;Delete&lt;/SPAN&gt;()
        &lt;SPAN&gt;Next&lt;/SPAN&gt;
        &lt;SPAN&gt;oFlatPattern&lt;/SPAN&gt;.&lt;SPAN&gt;ExitEdit&lt;/SPAN&gt;()

        &lt;SPAN&gt;' B. Flip Logic&lt;/SPAN&gt;
        &lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;upBends&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;New&lt;/SPAN&gt; &lt;SPAN&gt;List&lt;/SPAN&gt;(&lt;SPAN&gt;Of&lt;/SPAN&gt; &lt;SPAN&gt;Double&lt;/SPAN&gt;)
        &lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;downBends&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;New&lt;/SPAN&gt; &lt;SPAN&gt;List&lt;/SPAN&gt;(&lt;SPAN&gt;Of&lt;/SPAN&gt; &lt;SPAN&gt;Double&lt;/SPAN&gt;)
        &lt;SPAN&gt;For&lt;/SPAN&gt; &lt;SPAN&gt;Each&lt;/SPAN&gt; &lt;SPAN&gt;oResult&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;FlatBendResult&lt;/SPAN&gt; &lt;SPAN&gt;In&lt;/SPAN&gt; &lt;SPAN&gt;oFlatPattern&lt;/SPAN&gt;.&lt;SPAN&gt;FlatBendResults&lt;/SPAN&gt;
            &lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oLine&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;LineSegment&lt;/SPAN&gt; = &lt;SPAN&gt;oResult&lt;/SPAN&gt;.&lt;SPAN&gt;Edge&lt;/SPAN&gt;.&lt;SPAN&gt;Geometry&lt;/SPAN&gt;
            &lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;pos&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;Double&lt;/SPAN&gt; = &lt;SPAN&gt;If&lt;/SPAN&gt;(&lt;SPAN&gt;Math&lt;/SPAN&gt;.&lt;SPAN&gt;Abs&lt;/SPAN&gt;(&lt;SPAN&gt;oLine&lt;/SPAN&gt;.&lt;SPAN&gt;Direction&lt;/SPAN&gt;.&lt;SPAN&gt;X&lt;/SPAN&gt;) &amp;gt; 0.9, &lt;SPAN&gt;oLine&lt;/SPAN&gt;.&lt;SPAN&gt;MidPoint&lt;/SPAN&gt;.&lt;SPAN&gt;Y&lt;/SPAN&gt;, &lt;SPAN&gt;oLine&lt;/SPAN&gt;.&lt;SPAN&gt;MidPoint&lt;/SPAN&gt;.&lt;SPAN&gt;X&lt;/SPAN&gt;)
            &lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;targetList&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;List&lt;/SPAN&gt;(&lt;SPAN&gt;Of&lt;/SPAN&gt; &lt;SPAN&gt;Double&lt;/SPAN&gt;) = &lt;SPAN&gt;If&lt;/SPAN&gt;(&lt;SPAN&gt;oResult&lt;/SPAN&gt;.&lt;SPAN&gt;IsDirectionUp&lt;/SPAN&gt;, &lt;SPAN&gt;upBends&lt;/SPAN&gt;, &lt;SPAN&gt;downBends&lt;/SPAN&gt;)
            &lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;isFound&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;Boolean&lt;/SPAN&gt; = &lt;SPAN&gt;False&lt;/SPAN&gt;
            &lt;SPAN&gt;For&lt;/SPAN&gt; &lt;SPAN&gt;Each&lt;/SPAN&gt; &lt;SPAN&gt;existingPos&lt;/SPAN&gt; &lt;SPAN&gt;In&lt;/SPAN&gt; &lt;SPAN&gt;targetList&lt;/SPAN&gt;
                &lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;Math&lt;/SPAN&gt;.&lt;SPAN&gt;Abs&lt;/SPAN&gt;(&lt;SPAN&gt;existingPos&lt;/SPAN&gt; - &lt;SPAN&gt;pos&lt;/SPAN&gt;) &amp;lt; 0.001 &lt;SPAN&gt;Then&lt;/SPAN&gt; : &lt;SPAN&gt;isFound&lt;/SPAN&gt; = &lt;SPAN&gt;True&lt;/SPAN&gt; : &lt;SPAN&gt;Exit&lt;/SPAN&gt; &lt;SPAN&gt;For&lt;/SPAN&gt; : &lt;SPAN&gt;End&lt;/SPAN&gt; &lt;SPAN&gt;If&lt;/SPAN&gt;
            &lt;SPAN&gt;Next&lt;/SPAN&gt;
            &lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;Not&lt;/SPAN&gt; &lt;SPAN&gt;isFound&lt;/SPAN&gt; &lt;SPAN&gt;Then&lt;/SPAN&gt; &lt;SPAN&gt;targetList&lt;/SPAN&gt;.&lt;SPAN&gt;Add&lt;/SPAN&gt;(&lt;SPAN&gt;pos&lt;/SPAN&gt;)
        &lt;SPAN&gt;Next&lt;/SPAN&gt;

        &lt;SPAN&gt;If&lt;/SPAN&gt; &lt;SPAN&gt;downBends&lt;/SPAN&gt;.&lt;SPAN&gt;Count&lt;/SPAN&gt; &amp;gt; &lt;SPAN&gt;upBends&lt;/SPAN&gt;.&lt;SPAN&gt;Count&lt;/SPAN&gt; &lt;SPAN&gt;Then&lt;/SPAN&gt;
            &lt;SPAN&gt;oFlatPattern&lt;/SPAN&gt;.&lt;SPAN&gt;FlatPatternOrientations&lt;/SPAN&gt;.&lt;SPAN&gt;ActiveFlatPatternOrientation&lt;/SPAN&gt;.&lt;SPAN&gt;FlipBaseFace&lt;/SPAN&gt; = &lt;SPAN&gt;Not&lt;/SPAN&gt; &lt;SPAN&gt;oFlatPattern&lt;/SPAN&gt;.&lt;SPAN&gt;FlatPatternOrientations&lt;/SPAN&gt;.&lt;SPAN&gt;ActiveFlatPatternOrientation&lt;/SPAN&gt;.&lt;SPAN&gt;FlipBaseFace&lt;/SPAN&gt;
        &lt;SPAN&gt;End&lt;/SPAN&gt; &lt;SPAN&gt;If&lt;/SPAN&gt;

        &lt;SPAN&gt;' D. Export, Save, and Close&lt;/SPAN&gt;
        &lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oFileName&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;String&lt;/SPAN&gt; = &lt;SPAN&gt;System&lt;/SPAN&gt;.&lt;SPAN&gt;IO&lt;/SPAN&gt;.&lt;SPAN&gt;Path&lt;/SPAN&gt;.&lt;SPAN&gt;GetFileNameWithoutExtension&lt;/SPAN&gt;(&lt;SPAN&gt;oPartDoc&lt;/SPAN&gt;.&lt;SPAN&gt;FullFileName&lt;/SPAN&gt;)
        &lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;oFilePath&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;String&lt;/SPAN&gt; = &lt;SPAN&gt;System&lt;/SPAN&gt;.&lt;SPAN&gt;IO&lt;/SPAN&gt;.&lt;SPAN&gt;Path&lt;/SPAN&gt;.&lt;SPAN&gt;GetDirectoryName&lt;/SPAN&gt;(&lt;SPAN&gt;oPartDoc&lt;/SPAN&gt;.&lt;SPAN&gt;FullFileName&lt;/SPAN&gt;)
        &lt;SPAN&gt;Dim&lt;/SPAN&gt; &lt;SPAN&gt;sFullDXFName&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;String&lt;/SPAN&gt; = &lt;SPAN&gt;System&lt;/SPAN&gt;.&lt;SPAN&gt;IO&lt;/SPAN&gt;.&lt;SPAN&gt;Path&lt;/SPAN&gt;.&lt;SPAN&gt;Combine&lt;/SPAN&gt;(&lt;SPAN&gt;oFilePath&lt;/SPAN&gt;, &lt;SPAN&gt;oFileName&lt;/SPAN&gt; &amp;amp; &lt;SPAN&gt;" - "&lt;/SPAN&gt; &amp;amp; &lt;SPAN&gt;oJobNum&lt;/SPAN&gt; &amp;amp; &lt;SPAN&gt;".dxf"&lt;/SPAN&gt;)

        &lt;SPAN&gt;Try&lt;/SPAN&gt;
            &lt;SPAN&gt;oCompDef&lt;/SPAN&gt;.&lt;SPAN&gt;DataIO&lt;/SPAN&gt;.&lt;SPAN&gt;WriteDataToFile&lt;/SPAN&gt;(&lt;SPAN&gt;sOut&lt;/SPAN&gt;, &lt;SPAN&gt;sFullDXFName&lt;/SPAN&gt;)
        &lt;SPAN&gt;Catch&lt;/SPAN&gt; &lt;SPAN&gt;ex&lt;/SPAN&gt; &lt;SPAN&gt;As&lt;/SPAN&gt; &lt;SPAN&gt;Exception&lt;/SPAN&gt;
            &lt;SPAN&gt;' If export fails (e.g. file locked), we still want to save/close part&lt;/SPAN&gt;
        &lt;SPAN&gt;End&lt;/SPAN&gt; &lt;SPAN&gt;Try&lt;/SPAN&gt;
        
        &lt;SPAN&gt;oPartDoc&lt;/SPAN&gt;.&lt;SPAN&gt;Save&lt;/SPAN&gt;()
        &lt;SPAN&gt;oPartDoc&lt;/SPAN&gt;.&lt;SPAN&gt;Close&lt;/SPAN&gt;(&lt;SPAN&gt;True&lt;/SPAN&gt;)
    &lt;SPAN&gt;Else&lt;/SPAN&gt;
        &lt;SPAN&gt;' If not sheet metal, just close it? (Optional)&lt;/SPAN&gt;
        &lt;SPAN&gt;' oPartDoc.Close(True)&lt;/SPAN&gt;
    &lt;SPAN&gt;End&lt;/SPAN&gt; &lt;SPAN&gt;If&lt;/SPAN&gt;
&lt;SPAN&gt;Next&lt;/SPAN&gt;

&lt;SPAN&gt;MessageBox&lt;/SPAN&gt;.&lt;SPAN&gt;Show&lt;/SPAN&gt;(&lt;SPAN&gt;"Batch processing complete"&lt;/SPAN&gt;, &lt;SPAN&gt;"Success"&lt;/SPAN&gt;)&lt;/PRE&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&lt;EM&gt;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/14688128"&gt;@design5LD8F&lt;/a&gt;&amp;nbsp;-&amp;nbsp;&lt;SPAN class="TextRun SCXO151123391 BCX8" data-contrast="none"&gt;&lt;SPAN class="NormalTextRun SCXO151123391 BCX8"&gt;this post has been edited due to&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;A class="HyperlinkV2 SCXO151123391 BCX8" href="https://forums.autodesk.com/t5/forum-user-guides/community-rules-and-etiquette/td-p/9581007" target="_blank" rel="noreferrer noopener"&gt;&lt;SPAN class="TextRun SCXO151123391 BCX8" data-contrast="auto"&gt;&lt;SPAN class="NormalTextRun SCXO151123391 BCX8"&gt;Community Rules &amp;amp; Etiquette violation&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/A&gt;&lt;SPAN class="TextRun SCXO151123391 BCX8" data-contrast="none"&gt;&lt;SPAN class="NormalTextRun SCXO151123391 BCX8"&gt;.&amp;nbsp;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/EM&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 09 Jan 2026 17:07:41 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/inventor-programming-forum/batch-flat-pattern/m-p/13970118#M178865</guid>
      <dc:creator>design5LD8F</dc:creator>
      <dc:date>2026-01-09T17:07:41Z</dc:date>
    </item>
    <item>
      <title>Re: batch flat pattern</title>
      <link>https://forums.autodesk.com/t5/inventor-programming-forum/batch-flat-pattern/m-p/13970730#M178878</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://forums.autodesk.com/t5/user/viewprofilepage/user-id/14688128"&gt;@design5LD8F&lt;/a&gt;.&amp;nbsp; I noticed that you are using the&amp;nbsp;&lt;A href="https://help.autodesk.com/view/INVNTOR/2024/ENU/?guid=SheetMetalComponentDefinition_DataIO" target="_blank" rel="noopener"&gt;SheetMetalComponentDefinition.DataIO&lt;/A&gt;&amp;nbsp;Property to access its &lt;A href="https://help.autodesk.com/view/INVNTOR/2024/ENU/?guid=DataIO_WriteDataToFile" target="_blank" rel="noopener"&gt;WriteDataToFile&lt;/A&gt;&amp;nbsp;Method, then ensuring that the &lt;A href="https://help.autodesk.com/view/INVNTOR/2024/ENU/?guid=GUID-FlatPattern" target="_blank" rel="noopener"&gt;FlatPattern&lt;/A&gt; is in 'Edit Mode' before the export.&amp;nbsp; Have you tried using the&amp;nbsp;&lt;A href="https://help.autodesk.com/view/INVNTOR/2024/ENU/?guid=FlatPattern_DataIO" target="_blank" rel="noopener"&gt;FlatPattern.DataIO&lt;/A&gt;&amp;nbsp;Property to access the WriteDataToFile Method, then not having the FlatPattern in 'Edit Mode' while doing the export step.&amp;nbsp; Seems like it would be less complicated, and have less problems doing it from the assembly that way, because that part document would not need to be 'activated'.&amp;nbsp; You would just want to make sure the document was updated after any previous changes, before doing the export step, but that should not require document activation.&amp;nbsp; Just an idea.&lt;/P&gt;</description>
      <pubDate>Fri, 09 Jan 2026 13:29:07 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/inventor-programming-forum/batch-flat-pattern/m-p/13970730#M178878</guid>
      <dc:creator>WCrihfield</dc:creator>
      <dc:date>2026-01-09T13:29:07Z</dc:date>
    </item>
  </channel>
</rss>

