• Skip to main content
  • Skip to search
  • Skip to footer
Cadence Home
  • This search text may be transcribed, used, stored, or accessed by our third-party service providers per our Cookie Policy and Privacy Policy.

  1. Community Forums
  2. Allegro X Capture CIS
  3. How to automatically place an off-page connector name from...

Stats

  • State Verified Answer
  • Replies 7
  • Subscribers 45
  • Views 1499
  • Members are here 0
More Content

How to automatically place an off-page connector name from a net alias?

FB202502193638
FB202502193638 5 months ago

Hi,

I captured a schematic and assigned a 'net alias' to every net. However, I now realize that I need to connect these nets to anothers pages. So, I added an 'off-page connector,' but it does not automatically take the value of the 'net alias.'

I tried copying and pasting the spreadsheet, it does not work and rewrite each off-page connector is time-consuming for 20 schematic pages.

  • What is the correct procedure to automatically rename an off-page connector with the same net alias value?



Allegro X 23.1 Capture CIS

Thanks for your help,

-Fabrizio


  • Sign in to reply
  • Cancel
Parents
  • CadAP
    0 CadAP 5 months ago

    FB202502193638 

    I have created a sample script below which will applies the netalis name to offpage.

    Select a .dsn from the PM(project manager) and source the code.

    # ##Getting alisa of the wires.
    set lNets [CapFindObjects $COrFindFilterDlg_NETS {*}]
    set lStatus [DboState]
    # set lAliasName [DboTclHelper_sMakeCString]
    # set lNetName [DboTclHelper_sMakeCString]
    set lOffpageNameCS [DboTclHelper_sMakeCString]
    set lNullObj NULL
    foreach lNet $lNets {
        set lNet [lindex $lNet 0]
        set lWiresIter [$lNet NewWiresIter $lStatus]
        #get the first wire
        set lWire [$lWiresIter NextWire $lStatus]
        while {$lWire != $lNullObj} {
            puts $lWire
            $lWire GetNetName $lNetName
            $lNet GetName $lSchiNetName
            set lObjectType [$lWire GetObjectType]
            if {$lObjectType == $::DboBaseObject_WIRE_SCALAR} {
               
               
                set lAliasIter [$lWire NewAliasesIter $lStatus]
                # #get the first alias of wire
                set lAlias [$lAliasIter NextAlias $lStatus]
                while { $lAlias!=$lNullObj} {
                    #placeholder: do your processing on $lAlias
                    $lAlias GetName $lAliasName
                    set lAlias [$lAliasIter NextAlias $lStatus]
                }

                set lOffPagesIter [$lWire NewOffPageConnectorsIter $lStatus]
                #get the first off-page of the page
                set lOffPage [$lOffPagesIter NextOffPageConnector $lStatus]
                while {$lOffPage!=$lNullObj} {
                    #placeholder: do your processing on $lOffPage
                    #get the next off-page of the page
                    # $lOffPage GetName $lOffpageNameCS
                    $lOffPage SetName $lAliasName
                    # puts "offpage: = [DboTclHelper_sGetConstCharPtr $lOffpageNameCS]"
                    set lOffPage [$lOffPagesIter NextOffPageConnector $lStatus]
                }
                delete_DboWireOffPageConnectorsIter $lOffPagesIter
                   
            }
            #get the next wire
            delete_DboWireAliasesIter $lAliasIter
            set lWire [$lWiresIter NextWire $lStatus]
           
        }
       
    }
    Hope this helps.
    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
Reply
  • CadAP
    0 CadAP 5 months ago

    FB202502193638 

    I have created a sample script below which will applies the netalis name to offpage.

    Select a .dsn from the PM(project manager) and source the code.

    # ##Getting alisa of the wires.
    set lNets [CapFindObjects $COrFindFilterDlg_NETS {*}]
    set lStatus [DboState]
    # set lAliasName [DboTclHelper_sMakeCString]
    # set lNetName [DboTclHelper_sMakeCString]
    set lOffpageNameCS [DboTclHelper_sMakeCString]
    set lNullObj NULL
    foreach lNet $lNets {
        set lNet [lindex $lNet 0]
        set lWiresIter [$lNet NewWiresIter $lStatus]
        #get the first wire
        set lWire [$lWiresIter NextWire $lStatus]
        while {$lWire != $lNullObj} {
            puts $lWire
            $lWire GetNetName $lNetName
            $lNet GetName $lSchiNetName
            set lObjectType [$lWire GetObjectType]
            if {$lObjectType == $::DboBaseObject_WIRE_SCALAR} {
               
               
                set lAliasIter [$lWire NewAliasesIter $lStatus]
                # #get the first alias of wire
                set lAlias [$lAliasIter NextAlias $lStatus]
                while { $lAlias!=$lNullObj} {
                    #placeholder: do your processing on $lAlias
                    $lAlias GetName $lAliasName
                    set lAlias [$lAliasIter NextAlias $lStatus]
                }

                set lOffPagesIter [$lWire NewOffPageConnectorsIter $lStatus]
                #get the first off-page of the page
                set lOffPage [$lOffPagesIter NextOffPageConnector $lStatus]
                while {$lOffPage!=$lNullObj} {
                    #placeholder: do your processing on $lOffPage
                    #get the next off-page of the page
                    # $lOffPage GetName $lOffpageNameCS
                    $lOffPage SetName $lAliasName
                    # puts "offpage: = [DboTclHelper_sGetConstCharPtr $lOffpageNameCS]"
                    set lOffPage [$lOffPagesIter NextOffPageConnector $lStatus]
                }
                delete_DboWireOffPageConnectorsIter $lOffPagesIter
                   
            }
            #get the next wire
            delete_DboWireAliasesIter $lAliasIter
            set lWire [$lWiresIter NextWire $lStatus]
           
        }
       
    }
    Hope this helps.
    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
Children
No Data
Cadence Guidelines

Community Guidelines

The Cadence Design Communities support Cadence users and technologists interacting to exchange ideas, news, technical information, and best practices to solve problems and get the most from Cadence technology. The community is open to everyone, and to provide the most value, we require participants to follow our Community Guidelines that facilitate a quality exchange of ideas and information. By accessing, contributing, using or downloading any materials from the site, you agree to be bound by the full Community Guidelines.

© 2025 Cadence Design Systems, Inc. All Rights Reserved.

  • Terms of Use
  • Privacy
  • Cookie Policy
  • US Trademarks
  • Do Not Sell or Share My Personal Information