Tuesday, 18 December 2018

Teamcenter soa C# - How to get model object from item id ?


In this article, you can learn How to get a model object from Item Id by using Teamcenter Soa calls.

Note:Below code snippet is written in C# soa calls, By using this you can write java soa calls. Major different is , if here class is like " Teamcenter.Services.Strong.Core.DataManagementServicemeans in Java " teamcenter.services.strong.sore.dataManagementService "Please ask your doubts in comment .Will reply as soon as possible .


C Sharp SOA code :



       

  public static ModelObject getModelObj(string Item_ID)
        {

            setObjectPolicyForRevProps();

            Teamcenter.Services.Strong.Core.DataManagementService dmService = Teamcenter.Services.Strong.Core.DataManagementService.getService(Teamcenter.ClientX.Session.getConnection());

            Teamcenter.Services.Strong.Query._2010_09.SavedQuery.SavedQuery queryService = Teamcenter.Services.Strong.Query.SavedQueryService.getService(Teamcenter.ClientX.Session.getConnection());

            Teamcenter.Services.Strong.Query._2010_09.SavedQuery.BusinessObjectQueryInput[] inputs = new Teamcenter.Services.Strong.Query._2010_09.SavedQuery.BusinessObjectQueryInput[1];

            inputs[0] = new Teamcenter.Services.Strong.Query._2010_09.SavedQuery.BusinessObjectQueryInput();
            inputs[0].MaxNumToReturn = 0;
            inputs[0].TypeName = "P7MCPgPart";
            inputs[0].Clauses = new Teamcenter.Services.Strong.Query._2010_09.SavedQuery.BusinessObjectQueryClause[1];
            inputs[0].Clauses[0] = new Teamcenter.Services.Strong.Query._2010_09.SavedQuery.BusinessObjectQueryClause();
            inputs[0].Clauses[0].PropName = "item_id";
            inputs[0].Clauses[0].MathOperator = "=";
            inputs[0].Clauses[0].PropValue = Item_ID;

            Teamcenter.Services.Strong.Query._2007_09.SavedQuery.SavedQueriesResponse newsavedQry_resp = queryService.ExecuteBusinessObjectQueries(inputs);

            Teamcenter.Services.Strong.Query._2007_09.SavedQuery.QueryResults[] output_objs = newsavedQry_resp.ArrayOfResults;

            if (output_objs[0].ObjectUIDS.Length > 0)
            {
                String[] uid = output_objs[0].ObjectUIDS;

                ServiceData sData = dmService.LoadObjects(uid);

                itemModelObject = (ModelObject)sData.GetPlainObject(0);

                return itemModelObject;
            }
            return itemModelObject;
   }