So,
da bin ich wieder! Ich möchte gerne auf den Seiten, die ich generiert habe, verschiedene Teilschaltungen setzen. Diese Teilschaltungen möchte ich dann gerne mit Betriebsmitteln verknüpfen. Diese Betriebsmittel sind jedesmal von der Bezeichnung her verschieden, auch wenn sich alles sehr ähnelt, so daß man viel kopieren kann. Mit folgendem Code kann ich die Teilschaltung auch setzen, wie kann ich sie aber mit dem Betriebsmittel verknüpfen?
Public Function DropCircuitComponent(sNameCC As String, oSheet As Sheet, CloseAfterDrop As Boolean, lPosX As Long, lPosY As Long) As Boolean
'Drops circuit component in sheet
'circuit components must have a droppoint
Dim cmds(1 To 4) As Aucotec.AucExecuteSheetRecord
Dim oWorksheet As Worksheet
Dim sNameCCID As String
Dim oFilter As WorksheetFilterItem
On Error GoTo ErrorHandler
Set oWorksheet = Application.Folders.Stencils.OpenWorksheet(Nothing)
With oWorksheet
.Filter.Kind = aucObjStencilsCircuitComponents
Call .Attributes.Add(aucAttrDesignation)
Call .Attributes.Add(aucAttrSymbolSyncDesignation)
Call oWorksheet.Filter.Add(aucAttrDesignation, aucCondEqual, sNameCC)
Call oWorksheet.Refresh
If .RowCount = 0 Then
MsgBox "Circuit " & sNameCC & " not found"
Exit Function
End If
End With
With oWorksheet.GetObjectItem(1)
sNameCCID = .Parent.ID & "#" & .Attributes.ItemByID(aucAttrSymbolSyncDesignation)
End With
If Not oSheet.IsOpened Then Call oSheet.Open(aucSheetOpenAutosave + aucSheetOpenVisio)
cmds(1).qual = aucOpExecSheetDropSymbol
cmds(2).qual = aucArgExecSheetRef2Master
cmds(2).Val = sNameCCID 'Übergabe des Master und OID im Format xxxxx-xxxxxx-xxxxxx-xxxxxx#xx-x
cmds(3).qual = aucArgExecSheetPosX
cmds(3).Val = lPosX
cmds(4).qual = aucArgExecSheetPosY
cmds(4).Val = lPosY
Call Utils.ExecuteSheetOperation(oSheet, cmds)
DropCircuitComponent = True
If CloseAfterDrop = True Then oSheet.Close
Exit Function
Call Application.Utils.e
ErrorHandler:
MsgBox "Error in DropCircuitComponent"
End Function
Die Teilschaltung bekomme ich einfach nicht zu greifen.
Ich muß noch bemerken, daß der Code nicht von mir stammt, sondern von einem Workshop bei Aucotec als Beispiel mitgenommen wurde.
Gruß,
Olli
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP