<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://community.cadence.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Allegro X Scripting - TCL - Recent Threads</title><link>https://community.cadence.com/cadence_technology_forums/pcb-design/f/allegro-x-scripting-tcl</link><description>Allegro X Scripting - TCL</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Thu, 06 Aug 2026 05:53:42 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://community.cadence.com/cadence_technology_forums/pcb-design/f/allegro-x-scripting-tcl" /><item><title>RE: How do I use the TCL command to save an image and a Visio drawing file from a DSN file as a new file?</title><link>https://community.cadence.com/thread/1409118?ContentTypeID=1</link><pubDate>Thu, 06 Aug 2026 05:53:42 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:dcf4e0d0-d86f-4f29-86ed-2c83fecb755d</guid><dc:creator>FK202606088435</dc:creator><slash:comments>0</slash:comments><comments>https://community.cadence.com/thread/1409118?ContentTypeID=1</comments><wfw:commentRss>https://community.cadence.com/cadence_technology_forums/pcb-design/f/allegro-x-scripting-tcl/66208/how-do-i-use-the-tcl-command-to-save-an-image-and-a-visio-drawing-file-from-a-dsn-file-as-a-new-file/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Nice solution! Thank you very much.&lt;/p&gt;
&lt;p&gt;Regarding retrieving the text content and formatting from a circuit page using TCL commands,&lt;br /&gt;I need the text content, text size, font, and font style.&lt;/p&gt;
&lt;p&gt;I&amp;#39;d like to ask if there are TCL commands that can extract the same information as in File&amp;rarr;Export&amp;rarr;Design XML in the following UI interface?&lt;/p&gt;
&lt;p&gt;&amp;lt;GraphicCommentTextInst&amp;gt;&lt;br /&gt;&amp;lt;Defn color=&amp;quot;48&amp;quot; dbId=&amp;quot;1715717&amp;quot; locX=&amp;quot;21&amp;quot; locY=&amp;quot;19&amp;quot; name=&amp;quot;001 COVER PAGE&amp;quot; rotation=&amp;quot;0&amp;quot; textJustification=&amp;quot;0&amp;quot; x1=&amp;quot;21&amp;quot; x2=&amp;quot;261&amp;quot; y1=&amp;quot;19&amp;quot; y2=&amp;quot;47&amp;quot;/&amp;gt;&lt;br /&gt;&amp;lt;TextFont&amp;gt;&lt;br /&gt;&amp;lt;Defn charset=&amp;quot;0&amp;quot; escapement=&amp;quot;0&amp;quot; height=&amp;quot;-27&amp;quot; italic=&amp;quot;0&amp;quot; name=&amp;quot;Arial&amp;quot; orientation=&amp;quot;0&amp;quot; weight=&amp;quot;700&amp;quot; width=&amp;quot;0&amp;quot;/&amp;gt;&lt;br /&gt;&amp;lt;/TextFont&amp;gt;&lt;br /&gt;&amp;lt;/GraphicCommentTextInst&amp;gt;&lt;/p&gt;
&lt;p&gt;Below is an example of an error I encountered when trying to retrieve font format, text size, and text font:&lt;/p&gt;
&lt;p&gt;# Retrieving LOGFONT object index (but pure TCL cannot parse its internal fields)&lt;br /&gt;# set lFont [DboGraphicCommentTextInst_sGetFont $lTextInst $lStatus]&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>How do I use the TCL command to save an image and a Visio drawing file from a DSN file as a new file?</title><link>https://community.cadence.com/thread/66208?ContentTypeID=0</link><pubDate>Tue, 28 Jul 2026 06:48:23 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:0a6c069e-b008-449b-8f93-4e505539dac8</guid><dc:creator>FK202606088435</dc:creator><slash:comments>2</slash:comments><comments>https://community.cadence.com/thread/66208?ContentTypeID=0</comments><wfw:commentRss>https://community.cadence.com/cadence_technology_forums/pcb-design/f/allegro-x-scripting-tcl/66208/how-do-i-use-the-tcl-command-to-save-an-image-and-a-visio-drawing-file-from-a-dsn-file-as-a-new-file/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Hi,&lt;br /&gt;&lt;br /&gt;My current version is 23.1.&amp;nbsp;How do I use the TCL command to save an image and a Visio drawing file from a DSN file as a new file?&lt;br /&gt;&lt;br /&gt;I&amp;#39;ve tried the Base64 decoding mentioned on pages 762 and 767 of the OrCAD_Capture_TclTk_Extensions.pdf file, but it&amp;#39;s not working. The code snippet provided is:&lt;/p&gt;
&lt;p&gt;Invalid command name &amp;quot;DboTclHelper_sGetBase64ImageData&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;</description></item><item><title>OrCAD how to create a correct Variant report through TCL</title><link>https://community.cadence.com/thread/66222?ContentTypeID=0</link><pubDate>Thu, 30 Jul 2026 12:51:47 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:5a926c28-8775-413c-8bf7-fc3b35468ffe</guid><dc:creator>PatEscher</dc:creator><slash:comments>2</slash:comments><comments>https://community.cadence.com/thread/66222?ContentTypeID=0</comments><wfw:commentRss>https://community.cadence.com/cadence_technology_forums/pcb-design/f/allegro-x-scripting-tcl/66222/orcad-how-to-create-a-correct-variant-report-through-tcl/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Hello,&amp;nbsp;&lt;br /&gt;we are trying to build a Variant BOM Report through tcl and have been inspired by the sample tcl file capCIS.tcl.&lt;/p&gt;
&lt;p&gt;Everything works fine, as long as you do the Group assignment through the Part Manager.&lt;/p&gt;
&lt;p&gt;However, if you do it through the Schematic Right Mouse button Action, you will most likely get into trouble as soon as you use Components with multiple parts (does not matter if homogenous or heterogenous).&lt;br /&gt;&lt;br /&gt;So what I do is the following:&lt;/p&gt;
&lt;p&gt;I place a multi part component, so let&amp;#39;s say K401A and K401B in my schematic&lt;br /&gt;&lt;img style="max-height:152px;max-width:249px;" height="152" src="https://community.cadence.com/resized-image/__size/498x304/__key/communityserver-discussions-components-files/138/pastedimage1785414411003v1.png" width="249" alt=" " /&gt;&lt;/p&gt;
&lt;p&gt;Looking at the Part Manager I see that K401 (Designator A) is added to the common Group. --&amp;gt; so far so good --&amp;gt; the Component is Mounted&lt;br /&gt;then I add it to a Variant group and set it to &amp;quot;Not present&amp;quot; --&amp;gt; so far so good --&amp;gt; the Component is Unmounted&lt;br /&gt;&lt;br /&gt;Then I go ahead in the schematic, select the Part K401B and use the right Mouse button to add it to a Variant&amp;nbsp; Group --&amp;gt; WOW, why I am allowed to do this, the &amp;quot;Physical Part&amp;quot; should already been added before.&lt;/p&gt;
&lt;p&gt;Now,back in Part Manager, I still see that the Part K401 (Designator A) is&amp;nbsp; set to &amp;quot;Not present&amp;quot;... but... when we now run the tcl code to get the Variant BOM, I see both part entries, K401A and K401B, both in the same group, but one as &lt;strong&gt;present&lt;/strong&gt; and the other one as &lt;strong&gt;not present&lt;/strong&gt; --&amp;gt; why is it be possible to have such a situation. I have ONE physical Component which is a MultiPart package (or fractured Symbol). I should be be able to assign the individual parts to different groups. If I add one part to a group, then it must be valid for all the parts (once again, we are dealing with one physical Component).&lt;/p&gt;
&lt;p&gt;My debug output verifies this:&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:inherit;"&gt;[DEBUG] 2026-07-30 11:22:34:557 SubGroup Ch4-Relay Duplicator &lt;strong&gt;unmounted&lt;/strong&gt; PartId:4293&amp;nbsp; and refDes &lt;strong&gt;K401A&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="font-size:inherit;"&gt;[DEBUG] 2026-07-30 11:22:34:557 SubGroup Ch4-Relay Duplicator &lt;strong&gt;MOUNTED&lt;/strong&gt; PartId:4296 and refDes &lt;strong&gt;K401B &lt;/strong&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;So what I am missing here? What is the usecase which makes this required/useful?&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;in addition, I have absolutely no possibility to visualize this issue nor to correct it. I would need to know what is going wrong somehow and then manually remove K401B through the Command action in the schematic.&lt;/p&gt;
&lt;p&gt;How can we identify and deal with this situation and make sure, that the BOM is created on the physical components and not the instantiated parts. Not clear to me which tcl functions to use for this.&lt;/p&gt;
&lt;p&gt;I though about considering the Reference Designator/Designator, but this would also not be really working, as I can manually assign a RefDes and therefore they could be the same but are indeed different physical components (--&amp;gt; yes, this is a design error, but we would need to deal with it somehow). So I would need to have a possibility to identify if a component is mounted or not across all available parts of this component (essentially it seems that if one part is set to &lt;strong&gt;not present&lt;/strong&gt;, then the component is &lt;strong&gt;not present&lt;/strong&gt;)&lt;br /&gt;&lt;br /&gt;When I create a BOM report through the Part Manager, then everything is fine, so it means to me that there must be somehow a possibility to work on the physical components.&lt;br /&gt;&lt;br /&gt;Any idea appreciated&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;+Patrick&lt;/p&gt;</description></item><item><title>RE: OrCAD how to create a correct Variant report through TCL</title><link>https://community.cadence.com/thread/1409058?ContentTypeID=1</link><pubDate>Fri, 31 Jul 2026 15:06:21 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:6707aebd-e490-43b6-87c3-45dc95de615f</guid><dc:creator>TechnoBobby</dc:creator><slash:comments>0</slash:comments><comments>https://community.cadence.com/thread/1409058?ContentTypeID=1</comments><wfw:commentRss>https://community.cadence.com/cadence_technology_forums/pcb-design/f/allegro-x-scripting-tcl/66222/orcad-how-to-create-a-correct-variant-report-through-tcl/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Hi &lt;a href="https://community.cadence.com/members/patescher"&gt;PatEscher&lt;/a&gt;&amp;nbsp;,&lt;br /&gt;&lt;br /&gt;You can try the following script. Give it a RefDes and it will report all groups/subgroups where that part is present and whether it is marked as stuffed (present) or not stuffed (DNI).&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;set targetRefDes &amp;quot;C20&amp;quot;&lt;br /&gt;&lt;br /&gt;proc cs {obj} {&lt;br /&gt; if {$obj == &amp;quot;&amp;quot; || $obj == &amp;quot;NULL&amp;quot;} {&lt;br /&gt; return &amp;quot;&amp;quot;&lt;br /&gt; }&lt;br /&gt; return [DboTclHelper_sGetConstCharPtr $obj]&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;set cisDesign [CPartMgmt_GetCisDesign [GetActivePMDesign]]&lt;br /&gt;set grpCont [$cisDesign GetGroupsContainer]&lt;br /&gt;&lt;br /&gt;puts &amp;quot;Checking $targetRefDes&amp;quot;&lt;br /&gt;&lt;br /&gt;set groupCount [$grpCont GetGroupCount]&lt;br /&gt;&lt;br /&gt;for {set g 0} {$g &amp;lt; $groupCount} {incr g} {&lt;/p&gt;
&lt;p&gt;set groupCS [$grpCont GetGroupByIndex $g]&lt;br /&gt; set groupName [cs $groupCS]&lt;/p&gt;
&lt;p&gt;if {[$grpCont IsGroupHasSubGroups $groupCS]} {&lt;/p&gt;
&lt;p&gt;set subCnt [$grpCont GetSubGroupCount $groupCS]&lt;/p&gt;
&lt;p&gt;for {set s 0} {$s &amp;lt; $subCnt} {incr s} {&lt;/p&gt;
&lt;p&gt;set subCS [$grpCont GetSubGroupByIndex $groupCS $s]&lt;br /&gt; set subName [cs $subCS]&lt;/p&gt;
&lt;p&gt;set partArr [CISTclHelper_sMakeCUIntArray]&lt;br /&gt; $grpCont GetPartsFromSubGroup $groupCS $subCS $partArr&lt;/p&gt;
&lt;p&gt;set cnt [CISTclHelper_sGetCUIntArraySize $partArr]&lt;/p&gt;
&lt;p&gt;for {set i 0} {$i &amp;lt; $cnt} {incr i} {&lt;/p&gt;
&lt;p&gt;set partId [CISTclHelper_sGetUInt $partArr $i]&lt;br /&gt; set occ [$cisDesign GetPartOccForID [CISTclHelper_sGetUINTFromInt $partId]]&lt;/p&gt;
&lt;p&gt;if {$occ == &amp;quot;NULL&amp;quot; || $occ == &amp;quot;&amp;quot;} {&lt;br /&gt; continue&lt;br /&gt; }&lt;/p&gt;
&lt;p&gt;set rdObj [$occ GetPartRefDes]&lt;br /&gt; set refdes [cs [$rdObj GetRefDes]]&lt;/p&gt;
&lt;p&gt;if {[string equal -nocase $refdes $targetRefDes]} {&lt;/p&gt;
&lt;p&gt;set stuffed [$grpCont IsPartStuffedSubGroup $groupCS $subCS [CISTclHelper_sGetUINTFromInt $partId]]&lt;/p&gt;
&lt;p&gt;puts &amp;quot;Group=$groupName SubGroup=$subName PartId=$partId Stuffed=$stuffed&amp;quot;&lt;/p&gt;
&lt;p&gt;if {$stuffed} {&lt;br /&gt; puts &amp;quot; Status : PRESENT&amp;quot;&lt;br /&gt; } else {&lt;br /&gt; puts &amp;quot; Status : NOT PRESENT / DNI&amp;quot;&lt;br /&gt; }&lt;br /&gt; }&lt;/p&gt;
&lt;p&gt;delete_CISInstOccurrence $occ&lt;br /&gt; }&lt;br /&gt; }&lt;br /&gt; }&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Hope this helps!&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: OrCAD how to create a correct Variant report through TCL</title><link>https://community.cadence.com/thread/1409056?ContentTypeID=1</link><pubDate>Fri, 31 Jul 2026 14:01:56 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:625c3d74-3323-4648-b16b-f51ffea0bba9</guid><dc:creator>PatEscher</dc:creator><slash:comments>1</slash:comments><comments>https://community.cadence.com/thread/1409056?ContentTypeID=1</comments><wfw:commentRss>https://community.cadence.com/cadence_technology_forums/pcb-design/f/allegro-x-scripting-tcl/66222/orcad-how-to-create-a-correct-variant-report-through-tcl/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p style="color:#000000;font-family:Arial, Helvetica, sans-serif;font-size:12px;font-style:normal;font-weight:400;letter-spacing:normal;margin-top:0px;text-align:start;text-indent:0px;text-transform:none;white-space:normal;"&gt;ok, to make this a little bit simpler (hopefully)&lt;span class="emoticon" data-url="https://community.cadence.com/cfs-file/__key/system/emoji/1f642.svg" title="Slight smile"&gt;&amp;#x1f642;&lt;/span&gt;&lt;/p&gt;
&lt;p style="color:#000000;font-family:Arial, Helvetica, sans-serif;font-size:12px;font-style:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;"&gt;The idea now is to get the &amp;quot;Do Not Stuff&amp;quot; string (the name I can get from the CIS Configuration) and then use this as a filter&lt;br /&gt;But I am not clear on how to get this information. I tried a lot of things like looking t the EffectiveProperties etc., but did not find this &amp;#39;override&amp;#39; in case that a part is not stuffed&lt;/p&gt;
&lt;p style="color:#000000;font-family:Arial, Helvetica, sans-serif;font-size:12px;font-style:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;"&gt;Can you provide me an example how to get to this info, assuming that I have the&lt;span&gt;&amp;nbsp;&lt;/span&gt;&lt;span&gt;partId&amp;nbsp;&lt;/span&gt;which is provided through the Part Manager&lt;/p&gt;
&lt;p style="color:#000000;font-family:Arial, Helvetica, sans-serif;font-size:12px;font-style:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;"&gt;&lt;br /&gt;set uintPartId [CISTclHelper_sGetUINTFromInt $partId]&lt;br /&gt;set cisInstOcc [$cisDesign GetPartOccForID $uintPartId]&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Thanks&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How do I use the TCL command to save an image and a Visio drawing file from a DSN file as a new file?</title><link>https://community.cadence.com/thread/1409002?ContentTypeID=1</link><pubDate>Tue, 28 Jul 2026 08:50:58 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:6f42b37d-359c-405f-8d37-3588d58cf9a8</guid><dc:creator>TechnoBobby</dc:creator><slash:comments>1</slash:comments><comments>https://community.cadence.com/thread/1409002?ContentTypeID=1</comments><wfw:commentRss>https://community.cadence.com/cadence_technology_forums/pcb-design/f/allegro-x-scripting-tcl/66208/how-do-i-use-the-tcl-command-to-save-an-image-and-a-visio-drawing-file-from-a-dsn-file-as-a-new-file/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Hi &lt;a href="https://community.cadence.com/members/fk202606088435"&gt;FK202606088435&lt;/a&gt;&amp;nbsp;,&lt;br /&gt;&lt;br /&gt;Please try the following&amp;nbsp;TCL code&amp;nbsp;on a selected image on schematic page:&lt;br /&gt;&lt;br /&gt;&lt;span&gt;set bmpInst [GetSelectedObjects]&lt;br /&gt;&lt;/span&gt;&lt;span&gt;set bmp [$bmpInst GetDboBitMap]&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span&gt;set outStr [DboTclHelper_sMakeStdStr ""]&lt;br /&gt;&lt;/span&gt;&lt;span&gt;set status [DboState]&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;DboBitMap_sGetBase64ImageData $bmp $outStr $status&lt;br /&gt;&lt;br /&gt;set base64Data [DboTclHelper_sGetConstCharPtr $outStr]&lt;br /&gt;&lt;br /&gt;COrBase64Encoder_decodeToFile $base64Data &amp;quot;c:/temp/image.png&amp;quot;&lt;br /&gt;&lt;br /&gt;Hope this helps!&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Constraint setup via TCL in ASC?</title><link>https://community.cadence.com/thread/1408972?ContentTypeID=1</link><pubDate>Thu, 23 Jul 2026 05:41:25 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:1b5be4d9-394e-4981-8422-25e19a2ba598</guid><dc:creator>Gelzone</dc:creator><slash:comments>0</slash:comments><comments>https://community.cadence.com/thread/1408972?ContentTypeID=1</comments><wfw:commentRss>https://community.cadence.com/cadence_technology_forums/pcb-design/f/allegro-x-scripting-tcl/66192/constraint-setup-via-tcl-in-asc/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;The English ver:&amp;nbsp;&lt;strong&gt;Applications of Electrical Constraint Sets&lt;/strong&gt; for the first section;&amp;nbsp;&lt;strong&gt;Automatic Topology and Updates&lt;/strong&gt; for the first selection;&amp;nbsp;&lt;strong&gt;Creating XNet and Differential Pairs Using the DML Model (same with SPB 16.6)&lt;/strong&gt; for the second selection&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>Constraint setup via TCL in ASC?</title><link>https://community.cadence.com/thread/66192?ContentTypeID=0</link><pubDate>Thu, 23 Jul 2026 05:36:55 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:77ff1d91-1259-4a5e-9288-9f20f8d53071</guid><dc:creator>Gelzone</dc:creator><slash:comments>1</slash:comments><comments>https://community.cadence.com/thread/66192?ContentTypeID=0</comments><wfw:commentRss>https://community.cadence.com/cadence_technology_forums/pcb-design/f/allegro-x-scripting-tcl/66192/constraint-setup-via-tcl-in-asc/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;I need to do a manual process for each schematic:&amp;nbsp;Electrical Analysis -&amp;gt; Constraint Manager -&amp;gt; Edit -&amp;gt; a window popup (the screenshot) -&amp;gt; Tools -&amp;gt; Options and check the items below:&lt;/p&gt;
&lt;p&gt;&lt;img style="max-height:480px;max-width:640px;" alt=" " src="https://community.cadence.com/resized-image/__size/1280x960/__key/communityserver-discussions-components-files/138/pastedimage1784784598693v1.png" /&gt;&lt;/p&gt;
&lt;p&gt;I found it is not a global setting so I need to set this one by one.&lt;/p&gt;
&lt;p&gt;I&amp;#39;d like to know is there any command/script can handle this? I just find &lt;code&gt;cnsmgr&lt;/code&gt; to open the window but can not manipulate the choice.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Or another way, if ASC has a config file just like OrCAD&amp;#39;s &lt;strong&gt;Capture.ini&lt;/strong&gt;? Maybe I can set them in this kind of file.&lt;/p&gt;</description></item><item><title>Disable CM updates or Audits during Component Replace through tcl</title><link>https://community.cadence.com/thread/66123?ContentTypeID=0</link><pubDate>Wed, 01 Jul 2026 10:08:22 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:a73d5503-cb9e-4206-a2b6-d50e3c3e2177</guid><dc:creator>PatEscher</dc:creator><slash:comments>3</slash:comments><comments>https://community.cadence.com/thread/66123?ContentTypeID=0</comments><wfw:commentRss>https://community.cadence.com/cadence_technology_forums/pcb-design/f/allegro-x-scripting-tcl/66123/disable-cm-updates-or-audits-during-component-replace-through-tcl/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Hello,&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;we have written TCL code which programmatically replaces a component instance on the schematic with another one from the CIS library.&lt;/p&gt;
&lt;p&gt;For this we do a full replace, set all the properties and also consider any user properties and merge them. so a quite complex process, but everything is working fine.&lt;/p&gt;
&lt;p&gt;But we see some performance issues when doing this in OrCAD.&lt;/p&gt;
&lt;p&gt;Apparently OrCAD tries to update CM connectivity and XNets when we do this. we see in the status bar messages like &amp;quot;Pushing Connectivity changes in CM&amp;quot; , &amp;quot;ECSet Audit on Net Connectivity&amp;quot; Change, etc.&lt;/p&gt;
&lt;p&gt;is there any possibility to turn these updates off when we do the replace of the instance (it is not a single instance, but can be dozens or hundreds) and then later on turn it on again and do the &amp;#39;full update&amp;#39; ?&lt;br /&gt;Can this be done through a tcl command, maybe like&amp;nbsp;DboDesign_SetConnectivityUpdateTracking or maybe some Preference Settings?&lt;br /&gt;&lt;br /&gt;Thanks&lt;/p&gt;
&lt;p&gt;Patrick&lt;/p&gt;</description></item><item><title>RE: Disable CM updates or Audits during Component Replace through tcl</title><link>https://community.cadence.com/thread/1408834?ContentTypeID=1</link><pubDate>Fri, 03 Jul 2026 13:16:52 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:d74c2228-1166-4a34-9224-d48342b5eb82</guid><dc:creator>PatEscher</dc:creator><slash:comments>0</slash:comments><comments>https://community.cadence.com/thread/1408834?ContentTypeID=1</comments><wfw:commentRss>https://community.cadence.com/cadence_technology_forums/pcb-design/f/allegro-x-scripting-tcl/66123/disable-cm-updates-or-audits-during-component-replace-through-tcl/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;I can confirm, CM flow is enabled&lt;/p&gt;
&lt;p&gt;capIsCMFlowEnabled delivers 1&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;So is there a possibility to temporarily turn it off, then do the replace of the components and then turn it on again?I quickly checked the available tcl commands, but did not find a command/method which is selfspeaking&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Disable CM updates or Audits during Component Replace through tcl</title><link>https://community.cadence.com/thread/1408824?ContentTypeID=1</link><pubDate>Wed, 01 Jul 2026 14:19:22 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:e286fb08-0310-4d59-8264-39d2d0d9e8b7</guid><dc:creator>PatEscher</dc:creator><slash:comments>1</slash:comments><comments>https://community.cadence.com/thread/1408824?ContentTypeID=1</comments><wfw:commentRss>https://community.cadence.com/cadence_technology_forums/pcb-design/f/allegro-x-scripting-tcl/66123/disable-cm-updates-or-audits-during-component-replace-through-tcl/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;I would need to confirm this with our client, but I am pretty sure that Constraint manager is enabled.&lt;/p&gt;
&lt;p&gt;Cadence Version is SPB 23.1&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Disable CM updates or Audits during Component Replace through tcl</title><link>https://community.cadence.com/thread/1408823?ContentTypeID=1</link><pubDate>Wed, 01 Jul 2026 12:46:46 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:727cbdef-9344-4b5f-a1b1-3f15b511afb9</guid><dc:creator>TechnoBobby</dc:creator><slash:comments>1</slash:comments><comments>https://community.cadence.com/thread/1408823?ContentTypeID=1</comments><wfw:commentRss>https://community.cadence.com/cadence_technology_forums/pcb-design/f/allegro-x-scripting-tcl/66123/disable-cm-updates-or-audits-during-component-replace-through-tcl/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Hi &lt;a href="https://community.cadence.com/members/patescher"&gt;PatEscher&lt;/a&gt;&amp;nbsp;,&lt;br /&gt;&lt;br /&gt;Just to narrow this down, these connectivity updates are typically triggered when Constraint Manager is active in Capture. Could you please confirm if Constraint Manager is enabled from Schematic Capture in your setup and whether you are actively using it in this design? Also, it would be helpful to know which Capture version you are currently using.&lt;br /&gt;These CM push and ECSet audit messages are generally observed only when Constraint Manager integration is enabled, so this information will help in understanding the behavior more accurately.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to successfully place a custom TitleBlock in the TCL instructions for creating an OPJ</title><link>https://community.cadence.com/thread/1408604?ContentTypeID=1</link><pubDate>Tue, 09 Jun 2026 08:37:58 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:f84ef3e8-8898-49f1-9e5a-89f6319dffe0</guid><dc:creator>FK202606088435</dc:creator><slash:comments>0</slash:comments><comments>https://community.cadence.com/thread/1408604?ContentTypeID=1</comments><wfw:commentRss>https://community.cadence.com/cadence_technology_forums/pcb-design/f/allegro-x-scripting-tcl/66051/how-to-successfully-place-a-custom-titleblock-in-the-tcl-instructions-for-creating-an-opj/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Hi TechnoBobby,&lt;/p&gt;
&lt;p&gt;No problem. Please refer to the following TCL command I&amp;#39;m currently experiencing issues with.&lt;/p&gt;
&lt;p&gt;I&amp;#39;ve tried several times but still can&amp;#39;t paste my TCL command content here. Please allow me to share it with you via a Google Drive shared link. The tcl and txt files contain the same content.&lt;/p&gt;
&lt;p&gt;URL:&lt;a href="https://drive.google.com/drive/folders/1xFMwL3FbEvZ0yQqglEbWdf-f9hRpPeyQ?usp=drive_link"&gt;drive.google.com/.../1xFMwL3FbEvZ0yQqglEbWdf-f9hRpPeyQ&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Thank you for your assistance in replying.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>How to successfully place a custom TitleBlock in the TCL instructions for creating an OPJ</title><link>https://community.cadence.com/thread/66051?ContentTypeID=0</link><pubDate>Tue, 09 Jun 2026 03:00:04 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:017c8c09-f61e-473c-8f23-0208db410e81</guid><dc:creator>FK202606088435</dc:creator><slash:comments>4</slash:comments><comments>https://community.cadence.com/thread/66051?ContentTypeID=0</comments><wfw:commentRss>https://community.cadence.com/cadence_technology_forums/pcb-design/f/allegro-x-scripting-tcl/66051/how-to-successfully-place-a-custom-titleblock-in-the-tcl-instructions-for-creating-an-opj/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Hi, Sir:&lt;/p&gt;
&lt;p&gt;In the OrCAD Capture CIS 23.1,&lt;/p&gt;
&lt;p&gt;In the DSN page of the manually created project, I can successfully place my custom TitleBlock using the same TCL commands.&lt;/p&gt;
&lt;p&gt;However, it does not work in the OPJ I currently create using the following TCL commands,&lt;/p&gt;
&lt;p&gt;and there are no error messages. After the entire circuit diagram is drawn, the lower right corner is still blank.&lt;/p&gt;
&lt;p&gt;Thank you for your careful and patient guidance.&lt;/p&gt;</description></item><item><title>RE: How to successfully place a custom TitleBlock in the TCL instructions for creating an OPJ</title><link>https://community.cadence.com/thread/1408603?ContentTypeID=1</link><pubDate>Tue, 09 Jun 2026 08:32:18 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:6b6af561-29f0-4170-987f-1b94d8eb6e80</guid><dc:creator>TechnoBobby</dc:creator><slash:comments>1</slash:comments><comments>https://community.cadence.com/thread/1408603?ContentTypeID=1</comments><wfw:commentRss>https://community.cadence.com/cadence_technology_forums/pcb-design/f/allegro-x-scripting-tcl/66051/how-to-successfully-place-a-custom-titleblock-in-the-tcl-instructions-for-creating-an-opj/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Hi &lt;a href="https://community.cadence.com/members/fk202606088435"&gt;FK202606088435&lt;/a&gt;&amp;nbsp;,&lt;br /&gt;&lt;br /&gt;Could you please confirm how you are trying to share the TCL, are you attempting to upload the *.tcl file directly to the forum, or are you trying to copy‑paste the commands into the reply thread? you can try pasting the script in smaller parts or share only the relevant portion causing the issue.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to successfully place a custom TitleBlock in the TCL instructions for creating an OPJ</title><link>https://community.cadence.com/thread/1408600?ContentTypeID=1</link><pubDate>Tue, 09 Jun 2026 07:44:53 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:f554c6ee-86eb-48a5-85d9-e87052c63535</guid><dc:creator>FK202606088435</dc:creator><slash:comments>1</slash:comments><comments>https://community.cadence.com/thread/1408600?ContentTypeID=1</comments><wfw:commentRss>https://community.cadence.com/cadence_technology_forums/pcb-design/f/allegro-x-scripting-tcl/66051/how-to-successfully-place-a-custom-titleblock-in-the-tcl-instructions-for-creating-an-opj/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Hi TechnoBobby,&lt;br /&gt;&lt;br /&gt;I&amp;#39;ve tried several times, but I still can&amp;#39;t paste my TCL command here. I also can&amp;#39;t share it with you via Google Drive sharing link. Is there any other way to share my TCL command?&lt;/p&gt;
&lt;p&gt;Thank you for your assistance in replying.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: How to successfully place a custom TitleBlock in the TCL instructions for creating an OPJ</title><link>https://community.cadence.com/thread/1408594?ContentTypeID=1</link><pubDate>Tue, 09 Jun 2026 06:45:03 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:a71b9821-fecd-4125-a075-b52f211c6902</guid><dc:creator>TechnoBobby</dc:creator><slash:comments>1</slash:comments><comments>https://community.cadence.com/thread/1408594?ContentTypeID=1</comments><wfw:commentRss>https://community.cadence.com/cadence_technology_forums/pcb-design/f/allegro-x-scripting-tcl/66051/how-to-successfully-place-a-custom-titleblock-in-the-tcl-instructions-for-creating-an-opj/rss?ContentTypeId=0</wfw:commentRss><description>&lt;div&gt;
&lt;div class="___47blsr0 fi64zpg fz5stix f79feoa fp9bwmr fxldao9 f22iagw f122n59"&gt;&lt;span style="font-size:inherit;"&gt;Hi &lt;a href="https://community.cadence.com/members/fk202606088435"&gt;FK202606088435&lt;/a&gt;&amp;nbsp;,&lt;/span&gt;&lt;/div&gt;
&lt;div class="___r7kt3y0 fqerorx"&gt;
&lt;div class="fai-CopilotMessage r1f6yzd6 ___1fjo9g7 f1g2tzg5 fgct6un fy77jfu f2c7lf3"&gt;
&lt;div id="copilot-message-r3ig" class="fai-CopilotMessage__content r1izxv8h ___7qar2c0 fcthzvy" dir="auto"&gt;
&lt;div dir="auto"&gt;
&lt;div class="___1vve6yh f22iagw f1vx9l62 f122n59 f3bhgqh f1mnxvew fly5x3f"&gt;
&lt;div class="___j4vmuw0 f22iagw f1vx9l62 f1869bpl fly5x3f fbc6vix"&gt;
&lt;div data-testid="loading-message" data-fui-focus-visible=""&gt;
&lt;div id="response-idr3ie" class="___1yop6mf f336tjw f9ijwd5 fz7g6wx fod5ikn f1s184ao" data-testid="lastChatMessage"&gt;
&lt;div class="___1j4t0a1 f1lmfglv f1abmfm4" dir="auto" data-testid="markdown-reply" data-message-type="Chat"&gt;
&lt;div class="___ae8kgg0 f22iagw f1vx9l62 fkmyikg fk15e71 f1k953kz f137keqj f1rncccw f1stllg3 f1w4kmmc f1tric3v f10dk5ic fx8cdsv f16nlwsl f1eookvz fhjrts3 fqugt2f f18d18k8 f1v1vhmp f1hdmul3 f198vjnp f2dshw1 fjpjndq fnmj2pj ffrrb40 f1mon110 fhajzam fimndk6 fxv4dng fb1rn9k f59wlhv f1xmfh30 f18yf5o5 fmr6chf fw8qy2q ff161sd f1qr7t77 f1yyogn1 foogchg fp5872b f1tpb8gf f1hdgrc8 f1vatr43 frkxccd f9pdzkb f158oiaz ft5kggy f5l4ui7 f13j03li f18xdoka f8off4e f1go6zfc f128n2ra f1jpxw2j f1lwd9n0 fy0b8hm f1g2633v fx4kvgi fkvolse f1gxrt3a f1os76ua f1js9cnw f1g87ej0 freluf8 f1yggaq6 f2i3chp f1151osp florpoh f35kzfz ftp9m57 f1e288vi fz62hnz fixvuys f1nmofwh fc1c6mv f18a2er7 fhvkrdl fhxnn68 f1oce4bo fvhlfan f7tc0t0 f1ngf1n2 ffrzq6x f1yjiq2m f1aqdgql f1huvaf f10ij78l f1k94sa4 fkmfumq f1jvzkyl f1eu24ob f1xbfc1f fmf0lwf f107dsy8 f3w566c f4648sl f13zpkng f7unjfp f8p1rz fzu6h1w f1i1bi6h f1smo7hi f1sk1xod f1kgogdq f1gjktkp ft608jz f1o9wiiv fg3xr24 fhd155k f1b8gl2e fg4b9ou flb4lo fdicbfk fgwcyh1 f1jbds0d f1fb9uea f1stuka4 fcrtu6g fwqh0xn f11w66yg f6e0e65 f1vvgu0 f1607507 fgct6un f1ec1nbe f1m9bycv f1ntoah8 f1b694rt faql4r2 fpjuhzh fmavl6h f1d9bsk fmzhlt0 f145l92p fwkyaqm f129obh1 f19la9g f127w39w fr0ux9m fxhidck f1cu4h9j f1wnbo7v f1eueg4z fy9c24f f1h2o91j f1iw08fq f19n0e5"&gt;
&lt;p&gt;&lt;br /&gt;&lt;span style="font-size:inherit;"&gt;Since the same TCL commands works in a manually created DSN, the issue is likely related to when and where the title block is being applied in the script. &lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:inherit;"&gt;Could you confirm whether your script places the title block after the DSN is fully open and the page is created and set as active?&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:inherit;"&gt;Sharing your TCL snippet will help narrow this down.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:inherit;"&gt;For further details, you can refer to below article on ASK portal:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:inherit;"&gt;Article (20498203) Title: How to place custom title blocks based on page sizes in OrCAD X Capture&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:inherit;"&gt;URL: &lt;a href="https://support.cadence.com/apex/ArticleAttachmentPortal?id=a1O3w000009EpzQEAS"&gt;support.cadence.com/.../ArticleAttachmentPortal&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Generate ORCAD netlist (with orWirelist.dll) using TCL Script</title><link>https://community.cadence.com/thread/1408593?ContentTypeID=1</link><pubDate>Tue, 09 Jun 2026 06:34:22 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:bb46dd72-dc61-48a9-9be7-4f343d479005</guid><dc:creator>TechnoBobby</dc:creator><slash:comments>0</slash:comments><comments>https://community.cadence.com/thread/1408593?ContentTypeID=1</comments><wfw:commentRss>https://community.cadence.com/cadence_technology_forums/pcb-design/f/allegro-x-scripting-tcl/51640/generate-orcad-netlist-with-orwirelist-dll-using-tcl-script/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Hi &lt;a href="https://community.cadence.com/members/ca20240926987"&gt;CA20240926987&lt;/a&gt;&amp;nbsp;,&lt;br /&gt;&lt;br /&gt;If you&amp;#39;re looking to export similar format data using TCL script, you can try&amp;nbsp;below code.&lt;br /&gt;&lt;br /&gt;Hope this helps!&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;proc pinConnectivityReport {} {&lt;br /&gt;&lt;br /&gt; if {[file exists "pinConnectivity.txt"] == 1} {&lt;/p&gt;
&lt;p&gt;file delete &amp;quot;pinConnectivity.txt&amp;quot;&lt;/p&gt;
&lt;p&gt;}&lt;br /&gt; set lPathCS [DboTclHelper_sMakeCString]&lt;br /&gt; [GetActivePMDesign] GetName $lPathCS&lt;br /&gt; set lPath [file dirname [DboTclHelper_sGetConstCharPtr $lPathCS]]&lt;br /&gt; set lSession $::DboSession_s_pDboSession&lt;br /&gt; DboSession -this $lSession&lt;br /&gt; set lNullObj NULL&lt;br /&gt; set lStatus [DboState]&lt;br /&gt; set lDesign [$lSession GetActiveDesign]&lt;br /&gt; if {$lDesign == $lNullObj} {&lt;br /&gt; puts &amp;quot;ERROR: No active design.&amp;quot;&lt;br /&gt; return&lt;br /&gt; }&lt;br /&gt; set lSchi_Name [DboTclHelper_sMakeCString]&lt;br /&gt; set lPinNameCS [DboTclHelper_sMakeCString]&lt;br /&gt; set lPinNumberCS [DboTclHelper_sMakeCString]&lt;br /&gt; set lNetNameCS [DboTclHelper_sMakeCString]&lt;br /&gt; set lRefdesNameCS [DboTclHelper_sMakeCString]&lt;br /&gt; set lReport [open "pinConnectivity.txt" a+]&lt;br /&gt; if {$lDesign != $lNullObj} {&lt;/p&gt;
&lt;p&gt;set lSchematicIter [$lDesign NewViewsIter $lStatus $::IterDefs_SCHEMATICS]&lt;br /&gt; #get the first schematic view&lt;br /&gt; set lView [$lSchematicIter NextView $lStatus]&lt;br /&gt; set lPage_Name [DboTclHelper_sMakeCString]&lt;br /&gt; while { $lView != $lNullObj} {&lt;br /&gt; #dynamic cast from DboView to DboSchematic&lt;br /&gt; set lSchematic [DboViewToDboSchematic $lView]&lt;br /&gt; $lSchematic GetName $lSchi_Name&lt;br /&gt; set lPagesIter [$lSchematic NewPagesIter $lStatus]&lt;br /&gt; #get the first page&lt;br /&gt; set lPage [$lPagesIter NextPage $lStatus]&lt;br /&gt; # puts [DboTclHelper_sGetConstCharPtr $lSchi_Name]&lt;br /&gt; while {$lPage!=$lNullObj} {&lt;br /&gt; #placeholder: do your processing on $lPage&lt;br /&gt; $lPage GetName $lPage_Name&lt;br /&gt; # puts [DboTclHelper_sGetConstCharPtr $lPage_Name]&lt;br /&gt; set lPageName [DboTclHelper_sGetConstCharPtr $lPage_Name]&lt;br /&gt; set lPartInstIter [$lPage NewPartInstsIter $lStatus]&lt;br /&gt; set lInst [$lPartInstIter NextPartInst $lStatus]&lt;br /&gt; while {$lInst != $lNullObj} {&lt;br /&gt; puts $lReport &amp;quot;++++++++++===========+++++++++++++&amp;quot;&lt;br /&gt; $lInst GetReferenceDesignator $lRefdesNameCS&lt;br /&gt; set lRefdes [DboTclHelper_sGetConstCharPtr $lRefdesNameCS]&lt;br /&gt; set lPinIter [$lInst NewPinsIter $lStatus]&lt;br /&gt; set lPin [$lPinIter NextPin $lStatus]&lt;br /&gt; &lt;br /&gt; while {$lPin !=$lNullObj } {&lt;br /&gt; # puts $lPin&lt;br /&gt; $lPin GetPinName $lPinNameCS&lt;br /&gt; set lPinName [DboTclHelper_sGetConstCharPtr $lPinNameCS]&lt;br /&gt; # puts &amp;quot;$lPinName pinName&amp;quot;&lt;br /&gt; $lPin GetPinNumber $lPinNumberCS&lt;br /&gt; set lPinNumber [DboTclHelper_sGetConstCharPtr $lPinNumberCS]&lt;br /&gt; # puts &amp;quot;$lPinNumber pinNumber&amp;quot;&lt;br /&gt; set lWire [$lPin GetNet $lStatus]&lt;br /&gt; # puts $lWire&lt;br /&gt; if {$lWire != $lNullObj} {&lt;br /&gt; $lWire GetNetName $lNetNameCS&lt;br /&gt; set lNetName [DboTclHelper_sGetConstCharPtr $lNetNameCS]&lt;br /&gt; # puts &amp;quot;$lRefdes.$lPinNumber.$lNetName.$lPageName&amp;quot;&lt;br /&gt; puts $lReport &amp;quot;$lRefdes.$lPinNumber.$lPinName.$lNetName.$lPageName&amp;quot;&lt;br /&gt; # puts [DboTclHelper_sGetConstCharPtr $lNetNameCS]&lt;br /&gt; }&lt;br /&gt; #get the next pin of the part&lt;br /&gt; set lPin [$lPinIter NextPin $lStatus]&lt;br /&gt; &lt;br /&gt; }&lt;br /&gt; delete_DboPartInstPinsIter $lPinIter&lt;br /&gt; puts $lReport &amp;quot;++++++++++===========+++++++++++++&amp;quot;&lt;br /&gt; set lInst [$lPartInstIter NextPartInst $lStatus]&lt;br /&gt; &lt;br /&gt; }&lt;br /&gt; delete_DboPagePartInstsIter $lPartInstIter&lt;br /&gt; #get the next page&lt;br /&gt; set lPage [$lPagesIter NextPage $lStatus]&lt;br /&gt; }&lt;br /&gt; #get the next schematic view&lt;br /&gt; delete_DboSchematicPagesIter $lPagesIter&lt;br /&gt; set lView [$lSchematicIter NextView $lStatus]&lt;br /&gt; }&lt;br /&gt; delete_DboLibViewsIter $lSchematicIter&lt;/p&gt;
&lt;p&gt;} &lt;br /&gt; close $lReport&lt;br /&gt; exec {*}[auto_execok start] &amp;quot;&amp;quot; &amp;quot;$lPath\\pinConnectivity.txt&amp;quot;&lt;br /&gt;}&lt;/p&gt;
&lt;p&gt;pinConnectivityReport&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>Generate ORCAD netlist (with orWirelist.dll) using TCL Script</title><link>https://community.cadence.com/thread/51640?ContentTypeID=0</link><pubDate>Tue, 10 May 2022 12:19:20 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:06239395-4d6b-4b22-9744-97356b879865</guid><dc:creator>Shanmugi</dc:creator><slash:comments>2</slash:comments><comments>https://community.cadence.com/thread/51640?ContentTypeID=0</comments><wfw:commentRss>https://community.cadence.com/cadence_technology_forums/pcb-design/f/allegro-x-scripting-tcl/51640/generate-orcad-netlist-with-orwirelist-dll-using-tcl-script/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;I need to generate netlist with&amp;nbsp;orWirelist.dll&amp;nbsp;&lt;span&gt;(as if from the &amp;#39;other&amp;#39; tab in OrCAD) from orcad using TCL script.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;I manually generated the script from tools-&amp;gt;create netlist-&amp;gt;other option -&amp;gt;&amp;nbsp;orWirelist.dll (under formatters option).&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;But trying to generate the same using TCL scripts.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;Is there a way to do, if so&amp;nbsp;&lt;/span&gt;kindly help me on the same.&lt;/p&gt;
&lt;p&gt;Thanks for your help in advance!&lt;/p&gt;</description></item><item><title>RE: Generate ORCAD netlist (with orWirelist.dll) using TCL Script</title><link>https://community.cadence.com/thread/1408588?ContentTypeID=1</link><pubDate>Tue, 09 Jun 2026 01:57:17 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:af55cf0f-8317-4042-9aef-a0882d80f13a</guid><dc:creator>CA20240926987</dc:creator><slash:comments>1</slash:comments><comments>https://community.cadence.com/thread/1408588?ContentTypeID=1</comments><wfw:commentRss>https://community.cadence.com/cadence_technology_forums/pcb-design/f/allegro-x-scripting-tcl/51640/generate-orcad-netlist-with-orwirelist-dll-using-tcl-script/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Did you ever figure this out? I am trying to solve this problem as well.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Add a tcl command I created and registered to the toolbar and also assign an icon to it programmatically for capture 17.2 version</title><link>https://community.cadence.com/thread/1408471?ContentTypeID=1</link><pubDate>Wed, 13 May 2026 16:44:38 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:8d0c118f-ed31-431a-9aee-9d23030cfcac</guid><dc:creator>CadAP</dc:creator><slash:comments>0</slash:comments><comments>https://community.cadence.com/thread/1408471?ContentTypeID=1</comments><wfw:commentRss>https://community.cadence.com/cadence_technology_forums/pcb-design/f/allegro-x-scripting-tcl/65997/add-a-tcl-command-i-created-and-registered-to-the-toolbar-and-also-assign-an-icon-to-it-programmatically-for-capture-17-2-version/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;&amp;nbsp;&lt;a href="https://community.cadence.com/members/rs202512234819"&gt;RS202512234819&lt;/a&gt;&amp;nbsp; I would suggest add a separate menu or menu under Accessories tab and assign you custom proc to it.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;AddAccessoryMenu(lVendorName, lMenuName, proc) : returns bool&lt;br /&gt;Parameters:&lt;br /&gt;lVendorName: char const *&lt;br /&gt;lMenuName: char const *&lt;br /&gt;proc: char const *&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;For adding custom menu&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Article (20240311) Title: How to add a custom menu in OrCAD Capture?&lt;br /&gt;URL: &lt;a href="https://support.cadence.com/apex/ArticleAttachmentPortal?id=a1Od0000000tbsyEAA"&gt;support.cadence.com/.../ArticleAttachmentPortal&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Try and let me know in case of any concern.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>Add a tcl command I created and registered to the toolbar and also assign an icon to it programmatically for capture 17.2 version</title><link>https://community.cadence.com/thread/65997?ContentTypeID=0</link><pubDate>Sun, 10 May 2026 13:27:23 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:322ae390-a37e-47b5-9142-f85db609f40b</guid><dc:creator>RS202512234819</dc:creator><slash:comments>1</slash:comments><comments>https://community.cadence.com/thread/65997?ContentTypeID=0</comments><wfw:commentRss>https://community.cadence.com/cadence_technology_forums/pcb-design/f/allegro-x-scripting-tcl/65997/add-a-tcl-command-i-created-and-registered-to-the-toolbar-and-also-assign-an-icon-to-it-programmatically-for-capture-17-2-version/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Hi,Sir:&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; I had create a tcl command, and I want to register to the toolbar&amp;nbsp; and assign an icon to it for capture 17.2,&lt;/p&gt;
&lt;p&gt;I had try the &amp;quot;new&amp;quot; button from menu &amp;quot;Tool&amp;quot;---&amp;gt;&amp;quot;Customize&amp;quot;----&amp;gt;&amp;quot;Toolbars&amp;quot;,but it can&amp;#39;t bind the tcl command,&lt;/p&gt;
&lt;p&gt;please kindly help to give a method to&amp;nbsp;achieve it?&lt;/p&gt;
&lt;p&gt;thanks!&lt;/p&gt;</description></item><item><title>TCL to set active page in the treeview using SelectPMItem</title><link>https://community.cadence.com/thread/65984?ContentTypeID=0</link><pubDate>Mon, 04 May 2026 08:51:01 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:101ef490-6a09-49b9-812b-61d3400b5ec6</guid><dc:creator>fSeyer</dc:creator><slash:comments>2</slash:comments><comments>https://community.cadence.com/thread/65984?ContentTypeID=0</comments><wfw:commentRss>https://community.cadence.com/cadence_technology_forums/pcb-design/f/allegro-x-scripting-tcl/65984/tcl-to-set-active-page-in-the-treeview-using-selectpmitem/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;Could anyone suggest an alternative to &lt;code data-start="371" data-end="385"&gt;SelectPMItem&lt;/code&gt;?&lt;br data-start="386" data-end="389" /&gt; I&amp;rsquo;m using it to set the active page in a tree view, but it ignores page names that contain &amp;quot;0&amp;quot;.&lt;/p&gt;</description></item><item><title>RE: TCL to set active page in the treeview using SelectPMItem</title><link>https://community.cadence.com/thread/1408419?ContentTypeID=1</link><pubDate>Mon, 04 May 2026 15:33:14 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:233e1ca8-c3f4-4b20-bec4-1f7e43cd46df</guid><dc:creator>fSeyer</dc:creator><slash:comments>0</slash:comments><comments>https://community.cadence.com/thread/1408419?ContentTypeID=1</comments><wfw:commentRss>https://community.cadence.com/cadence_technology_forums/pcb-design/f/allegro-x-scripting-tcl/65984/tcl-to-set-active-page-in-the-treeview-using-selectpmitem/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Hi TechnoBobby,&lt;/p&gt;
&lt;p&gt;Thanks for respond!&lt;br /&gt; i have a UI that listed all the pages, my intend is to to print pdf or generate Bom for either per page or all page.&lt;br /&gt;usually we set page name stars from 01_circuit name ~ 10_circuit name.&amp;nbsp;&lt;br /&gt;i notice that only page name without &amp;quot;0&amp;quot; can used by SelectPMItem.&lt;br /&gt;&lt;br /&gt;here&amp;#39;s my code&lt;br /&gt;&lt;br /&gt; set sel [.pageReport.lb curselection]&lt;br /&gt; if {$sel eq &amp;quot;&amp;quot;} return&lt;br /&gt; set idx [lindex $sel 0]&lt;br /&gt; set text [string trim [.pageReport.lb get $idx]]&lt;br /&gt; if {$text eq &amp;quot;ALL PAGES&amp;quot;} {&lt;br /&gt; set lDesign [GetActivePMDesign]&lt;br /&gt; set lDesignName [DboTclHelper_sMakeCString]&lt;br /&gt; set lsts [$lDesign GetName $lDesignName]&lt;br /&gt; $lsts -delete&lt;br /&gt; set fullPath [DboTclHelper_sGetConstCharPtr $lDesignName]&lt;br /&gt; set splitPath [file split $fullPath]&lt;br /&gt; set dsnName [file rootname [lindex $splitPath end]]&lt;br /&gt; SelectPMItem &amp;quot;./$dsnName.DSN&amp;quot;&lt;br /&gt; }&lt;br /&gt; catch {SelectPMItem &amp;quot;$text&amp;quot;}&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: TCL to set active page in the treeview using SelectPMItem</title><link>https://community.cadence.com/thread/1408407?ContentTypeID=1</link><pubDate>Mon, 04 May 2026 11:36:28 GMT</pubDate><guid isPermaLink="false">75bcbcf9-38a3-4e2e-b84b-26c8c46a9500:5eaf699c-9cf8-477b-9ed3-a4505309e7b1</guid><dc:creator>TechnoBobby</dc:creator><slash:comments>1</slash:comments><comments>https://community.cadence.com/thread/1408407?ContentTypeID=1</comments><wfw:commentRss>https://community.cadence.com/cadence_technology_forums/pcb-design/f/allegro-x-scripting-tcl/65984/tcl-to-set-active-page-in-the-treeview-using-selectpmitem/rss?ContentTypeId=0</wfw:commentRss><description>&lt;div&gt;
&lt;p&gt;Hi &lt;a href="https://community.cadence.com/members/fseyer"&gt;fSeyer&lt;/a&gt;&amp;nbsp;,&lt;br /&gt;&lt;br /&gt;Could you clarify what you do after selecting the page in the Project Manager tree?&lt;br /&gt; Do you need the page selected only to make it active in the UI, or are you selecting it to obtain a DboPage and perform further operations on it?&lt;/p&gt;
&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>