Hi
I’m trying to add a Text element, using vbScript, to a diagram so that I can display a set of user notes. The code snippet below adds a package, an element, a diagram and place the element on the diagram. All good to that point, but when I go to add a Text element to the diagram it appears to get created but is not visible on the diagram, but is selectable with CTRL-A, what am I missing?
Below is the code I have been using, the bits highlighted between the ************** are the ones that are relevant.
Sub addPackages (thePackage) 'currently selected package passed as the starting parameter
dim newPackage as EA.Package
'create new package
set newPackage=thePackage.Packages.AddNew("TestPackage","Package")
newPackage.Update
'create the artifact
dim artElement as EA.Element
set artElement = newPackage.Elements.AddNew("TestArtifact", "Artifact")
artElement.Update
artElement.Refresh
'*****************************************************
'add a notes element 'I want to create a notes element for the diagram and put instructions in it
dim testElem as EA.Element
set testElem = newPackage.Elements.AddNew("","Text")
testElem.Notes "This is my note"
testElem.Update
'******************************************************
'create new diagram
dim rptDiagram as EA.Diagram
set rptDiagram = newPackage.Diagrams.AddNew("TestDiagram","Custom")
rptDiagram.ShowDetails True 'show diagram details
rptDiagram.Update
'add the artifact element created
dim rptDiagramObject as EA.DiagramObject
set rptDiagramObject = rptDiagram.DiagramObjects.AddNew("l=200;r=600;t=200;b=300;","")
rptDiagramObject.ElementID(artElement.ElementID)
rptDiagramObject.Update
'*************************************************
'add text element
set rptDiagramObject = rptDiagram.DiagramObjects.AddNew("l=200;r=120;t=100;b=60;","")
rptDiagramObject.ElementID(testElem.ElementID)
rptDiagramObject.Update
'*******************************************************
'tidy up
set artElement=Nothing
set testElem=Nothing
set rptDiagramObject=Nothing
set rptDiagram=Nothing
'Package generation completed now refresh the project browser
newPackage.Packages.Refresh
set newPackage=Nothing
Session.Prompt "Packages created!", promptOk
end sub
Many thanks
Derek.