Language="VBSCRIPT"

' Creation of publications related to the Mirror

Sub CATMain()

'msgbox " Opening VB " 

Dim productDocument1 As Document
Set productDocument1 = CATIA.ActiveDocument

Dim documents1 As Documents
Set documents1 = CATIA.Documents

Dim partDocument1 As Document
Set partDocument1 = documents1.Item("Mirror_Part.CATPart")

'******** Behavior == VBScriptImplementation
' NO error 
On Error Resume Next

Dim CurSelection As Selection
set CurSelection = productDocument1.Selection

Dim VBScriptBeh As Behavior
set VBScriptBeh = CurSelection.FindObject("CATIABehaviorVBScript")

'msgbox " OK to get the behavior" 
'******** Start 


if VBScriptBeh Is Nothing then
    MsgBox "Not Started From A Behavior"
else
	VBScriptBeh.Start 

	Dim product1 As AnyObject
	Set product1 = partDocument1.GetItem("Mirror_Part")
	' catcher the error in order to display a message and ask for save
	if product1 is nothing then 
		MsgBox " Please save the Mirror_Part as Mirror_Part.CATPart" 
	else 
		' EE1 
		Dim reference1 As Reference
		Set reference1 = product1.CreateReferenceFromName("Mirror_Part/!Top_Ext")

		Dim publications1 As Publications
		Set publications1 = product1.Publications

		Dim publication1 As Publication
		Set publication1 = publications1.Add("Top_Ext")

		publications1.SetDirect "Top_Ext", reference1

	'	msgbox "Top_Ext Published"

		' EE2
		Dim reference2 As Reference
		Set reference2 = product1.CreateReferenceFromName("Mirror_Part/!Top_Mid")

		Dim publication2 As Publication
		Set publication2 = publications1.Add("Top_Mid")

		publications1.SetDirect "Top_Mid", reference2

	'	msgbox "Top_Mid Published " 

		' US1 

		Dim reference3 As Reference
		Set reference3 = product1.CreateReferenceFromName("Mirror_Part/!Bottom_Ext")

		Dim publication3 As Publication
		Set publication3 = publications1.Add("Bottom_Ext")

		publications1.SetDirect "Bottom_Ext", reference3

	'	msgbox " Bottom_Ext Published "

		' US2 

		Dim reference4 As Reference
		Set reference4 = product1.CreateReferenceFromName("Mirror_Part/!Bottom_Mid")

		Dim publication4 As Publication
		Set publication4 = publications1.Add("Bottom_Mid")

		publications1.SetDirect "Bottom_Mid", reference4

	'	msgbox " Bottom_Mid Published "
	end if 


	VBScriptBeh.Done 

End if 

End Sub
