Profile picture for user S_Schulz

Hello community,

I generate a header for our BPMN models using an automatic Marko report that displays certain attributes of the model in the top left-hand corner. I would like to group this created object so that it can no longer be moved in size and position. However, I do not have the necessary line of code to do this. 

Enclosed is the working code that represents the header.

var db = ArisData.getActiveDatabase()
var lang = Context.getSelectedLanguage(); 
var model = ArisData.getSelectedModels()[0]
model.setAttrOccHandling(2)

if (db.Name(lang).compareTo("SL_Operations")== 0) 
{ 
  {  
    //Selektiere die Aktuelle Datenbank und das Model
    //try{   
        var SLAM = false
        var x=55
        var y=55
        
        if(db.Name(lang).compareTo("SL_Operations")== 0)
        {
            var SLAM = true
        }    

        // Die Schriftarten müssen der Datenbank zugeordnet sein. Ansonsten werden diese nicht korrekt angewendet
        var fontTitel = db.FontStyleList()[0]
        var fontAttr = db.FontStyleList()[0]    //Dieser Font ist SL_OP_Schriftformat_Header fü die Bezeichnung des platzierten Attributs
        var fontAttrF = db.FontStyleList()[0]   //Dieser Font ist SL_OP_Schriftformat_Header_Fett fü die Bezeichnung des platzierten Attributs
        var fontStandard = db.FontStyleList()[0]
        
        model.setTemplate("1495c1a0-fafe-11ee-0de7-8ae715322932") //--> Stelle die Vorlage des Modells ein --> GUID vom SL_Operations BPMN2.0 & Prozesslandkarte
        
        for(var i=0; i<db.FontStyleList().length; i++) 
        {
            if (db.FontStyleList()[i].Attribute(Constants.AT_NAME,lang).getValue().compareTo("SL_OP_Schriftformat_Header") == 0)
            {
                fontAttr = db.FontStyleList()[i]
            } 
            if (db.FontStyleList()[i].Attribute(Constants.AT_NAME,lang).getValue().compareTo("SL_OP_Schriftformat_Header_Fett") == 0)
            {
                fontAttrF = db.FontStyleList()[i];              
            } 
           if (db.FontStyleList()[i].Attribute(Constants.AT_NAME,lang).getValue().compareTo("Standard") == 0)
            {
                fontStandard = db.FontStyleList()[i]
            } 
        }
        if (SLAM == true){fontAttr = fontStandard}
        
        // Finde das Modell Modellkopf per GUID        
        var TextOccList = model.TextOccList()
        
        //Modellstammdaten -------------------------------------------------------------------------------------------------------------------------
        var rect = model.createRoundedRectangle (x,y,3000,650);
        rect.setZOrder(rect.getZOrder()- 1)
        rect.setFillColor(16777215)
        rect.setShaded(true)
        
        //Name Text
        var NameText = "Prozessname: ";  // Fester Textbaustein
        var NameTextObj = model.CreateTextOcc(x+1050,y+55,NameText);
        NameTextObj.AttrOccList()[0].setFontStyleSheet(fontAttrF)
        //Name
        var modelNameTypeNum = ArisData.ActiveFilter().UserDefinedAttributeTypeNum("AT_NAME");
        var modelNameObj = model.CreateTextOcc(x+1500,y+55,modelNameTypeNum)
        modelNameObj.AttrOccList()[0].SetPortOptions(Constants.ATTROCC_PORT_FREE, 4)
        modelNameObj.AttrOccList()[0].setFontStyleSheet(fontAttr)   
        
        //Erstelldatum Text
        var modellErstellDatumText = "Erstelldatum: ";  // Fester Textbaustein
        var modellErstellDatumTextObj = model.CreateTextOcc(x+1050,y+105,modellErstellDatumText)
        modellErstellDatumTextObj.AttrOccList()[0].setFontStyleSheet(fontAttrF)
        //Erstelldatum 105
        var modellErstellDatumTypeNum = ArisData.ActiveFilter().UserDefinedAttributeTypeNum("AT_CREAT_TIME_STMP");
        var modellErstellDatumObj = model.CreateTextOcc(x+1500,y+105,modellErstellDatumTypeNum)
        modellErstellDatumObj.AttrOccList()[0].SetPortOptions(Constants.ATTROCC_PORT_FREE, 4)
        modellErstellDatumObj.AttrOccList()[0].setFontStyleSheet(fontAttr)    
        
            //Letze Bearbeitung Text
            //var modellAenderungLetzteText = "Letzte Bearbeitung: ";  // Fester Textbaustein
            //var modellAenderungLetzteTextObj = model.CreateTextOcc(x+1050,y+155,modellAenderungLetzteText)
            //modellAenderungLetzteTextObj.AttrOccList()[0].setFontStyleSheet(fontAttrF)              
            //Letze Bearbeitung 155
            //var modellAenderungLetzteTypeNum = ArisData.ActiveFilter().UserDefinedAttributeTypeNum("AT_LAST_CHNG_2");
            //var modellAenderungLetzteObj = model.CreateTextOcc(x+1500,y+155,modellAenderungLetzteTypeNum)
            //modellAenderungLetzteObj.AttrOccList()[0].SetPortOptions(Constants.ATTROCC_PORT_FREE, 4)
            //modellAenderungLetzteObj.AttrOccList()[0].setFontStyleSheet(fontAttr)
        
            //Durch Text
            //var modellAenderungDurchText = "durch: ";  // Fester Textbaustein
            //var modellAenderungDurchTextObj = model.CreateTextOcc(x+1880,y+155,modellAenderungDurchText)
            //modellAenderungDurchTextObj.AttrOccList()[0].setFontStyleSheet(fontAttrF)
            //Durch        155
            //var modellAenderungDurchTypeNum = ArisData.ActiveFilter().UserDefinedAttributeTypeNum("AT_LUSER");
            //var modellAenderungDurchObj = model.CreateTextOcc(x+2005,y+155,modellAenderungDurchTypeNum)
            //modellAenderungDurchObj.AttrOccList()[0].SetPortOptions(Constants.ATTROCC_PORT_FREE, 4)
            //modellAenderungDurchObj.AttrOccList()[0].setFontStyleSheet(fontAttr)
        
        //Prozessverantwortlicher Text
        var prozessverantwortungText = "Prozessverantwortlicher: ";  // Fester Textbaustein
        var prozessverantwortungTextObj = model.CreateTextOcc(x+1050,y+170,prozessverantwortungText)
        prozessverantwortungTextObj.AttrOccList()[0].setFontStyleSheet(fontAttrF)    
       //Prozessverantwortlicher180
        var prozessverantwortungTypeNum = ArisData.ActiveFilter().UserDefinedAttributeTypeNum("AT_PERS_RESP");
        var prozessverantwortungObj = model.CreateTextOcc(x+1500,y+170,prozessverantwortungTypeNum)
        prozessverantwortungObj.AttrOccList()[0].SetPortOptions(Constants.ATTROCC_PORT_FREE, 4)
        prozessverantwortungObj.AttrOccList()[0].setFontStyleSheet(fontAttr)     
        
        //Prozessklassifizierung Text
        var prozessklassifizierungText = "Prozessklassifizierung: ";  // Fester Textbaustein
        var prozessklassifizierungTextObj = model.CreateTextOcc(x+1050,y+220,prozessklassifizierungText)
        prozessklassifizierungTextObj.AttrOccList()[0].setFontStyleSheet(fontAttrF)
        //Prozessklassifizierung230
        var prozessklassifizierungTypeNum = ArisData.ActiveFilter().UserDefinedAttributeTypeNum("739e0831-e1de-11ee-0cc6-86ddf6366627");
        var prozessklassifizierungObj = model.CreateTextOcc(x+1500,y+220,prozessklassifizierungTypeNum)       
        prozessklassifizierungObj.AttrOccList()[0].SetPortOptions(Constants.ATTROCC_PORT_FREE, 4) //2 = Attributnamen + Attributwert; 4 = Attributwert 
        prozessklassifizierungObj.AttrOccList()[0].setFontStyleSheet(fontAttr)         
        
        //Freigabestatus Text
        var modelstatusText = "Freigabestatus: ";  // Fester Textbaustein
        var modelstatusTextObj = model.CreateTextOcc(x+1050,y+295,modelstatusText)
        modelstatusTextObj.AttrOccList()[0].setFontStyleSheet(fontAttrF)        
        //Freigabestatus305
        var modelstatusNum = ArisData.ActiveFilter().UserDefinedAttributeTypeNum("1fca65d1-e2da-11ee-7126-7268366c9a82");
        model.Attribute(modelstatusNum,Context.getSelectedLanguage(),true).setValue("Offen")
        var modelstatusObj = model.CreateTextOcc(x+1500,y+295,modelstatusNum)
        modelstatusObj.AttrOccList()[0].SetPortOptions(Constants.ATTROCC_PORT_FREE, 4)
        modelstatusObj.AttrOccList()[0].setFontStyleSheet(fontAttr)
        
        //FreigabeDatum Text
        var modellFreigabeDatumText = "Letzte Freigabe: ";  // Fester Textbaustein
        var modellFreigabeDatumTextObj = model.CreateTextOcc(x+1050,y+345,modellFreigabeDatumText)
        modellFreigabeDatumTextObj.AttrOccList()[0].setFontStyleSheet(fontAttrF)
        //FreigabeDatum355
        var modellFreigabeDatumTypeNum = ArisData.ActiveFilter().UserDefinedAttributeTypeNum("AT_REL_ON");
        var modellFreigabeDatumObj = model.CreateTextOcc(x+1500,y+345,modellFreigabeDatumTypeNum)
        modellFreigabeDatumObj.AttrOccList()[0].SetPortOptions(Constants.ATTROCC_PORT_FREE, 4)
        modellFreigabeDatumObj.AttrOccList()[0].setFontStyleSheet(fontAttr)
        //durch Text
        var modellFreigabeDatumDurchText = "durch: ";  // Fester Textbaustein
        var modellFreigabeDatumDurchTextObj = model.CreateTextOcc(x+1880,y+345,modellFreigabeDatumDurchText)
        modellFreigabeDatumDurchTextObj.AttrOccList()[0].setFontStyleSheet(fontAttrF)
        //durch
        var modellFreigabeDatumDurchTypeNum = ArisData.ActiveFilter().UserDefinedAttributeTypeNum("AT_REL_BY");
        var modellFreigabeDatumDurchObj = model.CreateTextOcc(x+2005,y+345,modellFreigabeDatumDurchTypeNum)
        modellFreigabeDatumDurchObj.AttrOccList()[0].SetPortOptions(Constants.ATTROCC_PORT_FREE, 4)
        modellFreigabeDatumDurchObj.AttrOccList()[0].setFontStyleSheet(fontAttr)
        
        //Prozessbeschreibung Text
        var prozessbeschreibungText = "Prozessbeschreibung: ";  // Fester Textbaustein
        var prozessbeschreibungTextObj = model.CreateTextOcc(x+1050,y+420,prozessbeschreibungText)
        prozessbeschreibungTextObj.AttrOccList()[0].setFontStyleSheet(fontAttrF)        
        //Prozessbeschreibung430
        var prozessbeschreibungTypeNum = ArisData.ActiveFilter().UserDefinedAttributeTypeNum("AT_DESC");
        var prozessbeschreibungObj = model.CreateTextOcc(x+1500,y+420,prozessbeschreibungTypeNum)
        prozessbeschreibungObj.AttrOccList()[0].SetPortOptions(Constants.ATTROCC_PORT_FREE, 4)
        prozessbeschreibungObj.AttrOccList()[0].setFontStyleSheet(fontAttr)          
        prozessbeschreibungObj.AttrOccList()[0].setTextBoxSize(1470,45)
  }
        
       
        //Logo --------------------------------------------------------------------------------------------------------------------------------       
        var curOleObj = Context.getFile ("SL_Operations_Header.jpg", Constants.LOCATION_COMMON_FILES)
        model.createPicture(x+50,y+75,950,250,curOleObj, Constants.IMAGE_FORMAT_PNG)
//}catch(e){}
} 

Can someone help me to add the grouping and fixing?

Many thanks in advance

 

Featured achievement

Genius
You like to help others solve their problems by answering questions.
Recent Unlocks
  • KF
  • KH
  • RG
  • Profile picture for user Vee_ARIS
  • Profile picture for user smarty
  • PacMan

Leaderboard

|
icon-arrow-down icon-arrow-cerulean-left icon-arrow-cerulean-right icon-arrow-down icon-arrow-left icon-arrow-right icon-arrow icon-back icon-close icon-comments icon-correct-answer icon-tick icon-download icon-facebook icon-flag icon-google-plus icon-hamburger icon-in icon-info icon-instagram icon-login-true icon-login icon-mail-notification icon-mail icon-mortarboard icon-newsletter icon-notification icon-pinterest icon-plus icon-rss icon-search icon-share icon-shield icon-snapchat icon-star icon-tutorials icon-twitter icon-universities icon-videos icon-views icon-whatsapp icon-xing icon-youtube icon-jobs icon-heart icon-heart2 aris-express bpm-glossary help-intro help-design Process_Mining_Icon help-publishing help-administration help-dashboarding help-archive help-risk icon-knowledge icon-question icon-events icon-message icon-more icon-pencil forum-icon icon-lock