Hi Chak,
The following is code sample showing how to create reference between two tables.
Here assuming you have table Parent and Child.
As you can see, the code automatically add Parent PK column as FK in child table.
set model =ActiveModel
set parentTable = model.findChildByName("Parent", cls_Table)
set childTable = model.findChildByName("Child", cls_Table)
set references=Model.references
set ref=references.createNew()
ref.name="child To Parent"
ref.code="childToParent"
set ref.object1=Childtable
set ref.object2=Parenttable
ActiveDiagram.AttachAllObjects
If you have multiple tables to reference to one table, you can modify above code.
set model =ActiveModel
set parentTable = model.findChildByName("Parent", cls_Table)
set tables=model.Tables
for each t in tables
if t.name <> parentTable.name then
set references=Model.references
set ref=references.createNew()
ref.name=t.name & " " & parentTable.name
ref.code=t.code & "_" & parentTable.code
set ref.object1=t
set ref.object2=parentTable
end if
next
ActiveDiagram.AttachAllObjects
You can study code example(which locates at your Powerdesigner folder) to get idea
on how to call API.