9
« on: July 20, 2012, 05:44:39 pm »
Heu ... Yes I have a code how works :
diag = Activity Element
vue = EA.Diagram (attach to diag)
EA.Element elm = (EA.Element)diag.Elements.AddNew(nomAct, "Action");
elm.Update();
diag.Elements.Refresh();
EA.Element tar = (EA.Element)elm.Elements.AddNew("target", "ActionPin");
tar.Update();
Repository.Execute("UPDATE t_object SET Classifier_guid='"+methodExec.MethodGUID+"' WHERE Name='"+nomAct+"';");
Guid g1 = Guid.NewGuid();
String sqlRequest1 = "INSERT INTO t_xref VALUES ";
sqlRequest1 += "(\""+g1.ToString()+"\",";
sqlRequest1 += "\"CustomProperties\",";
sqlRequest1 += "\"element property\",";
sqlRequest1 += "\"Public\",";
sqlRequest1 += "NULL,";
sqlRequest1 += "NULL,";
sqlRequest1 += "NULL,";
sqlRequest1 += "NULL,";
sqlRequest1 += "0,";
sqlRequest1 += "\"@PROP=@NAME=kind@ENDNAME;@TYPE=ActionKind@ENDTYPE;@VALU=CallOperation@ENDVALU;@PRMT=@ENDPRMT;@ENDPROP;\",";
sqlRequest1 += "\"" +elm.ElementGUID+ "\",";
sqlRequest1 += "\"<none>\",";
sqlRequest1 += "NULL)";
Repository.Execute(sqlRequest1);
Guid g2 = Guid.NewGuid();
String sqlRequest2 = "INSERT into t_xref VALUES";
sqlRequest2+= "(\""+g2.ToString()+"\",";
sqlRequest2+= "\"MOFProps\",";
sqlRequest2+= "\"element property\",";
sqlRequest2+= "\"Public\",";
sqlRequest2+= "NULL,";
sqlRequest2+= "NULL,";
sqlRequest2+= "NULL,";
sqlRequest2+= "\"target\",";
sqlRequest2+= "0,";
sqlRequest2+= "\""+tar.ElementGUID+"\",";
sqlRequest2+= "\""+elm.ElementGUID+"\",";
sqlRequest2+= "\"<none>\",";
sqlRequest2+= "NULL)";
Repository.Execute(sqlRequest2);
EA.DiagramObject ob = (EA.DiagramObject)vue.DiagramObjects.AddNew(nomAct, "");
ob.ElementID = elm.ElementID;
ob.Update();
I'm not sure to have understand your question. :-/