Showing posts with label How to get model object from item id. Show all posts
Showing posts with label How to get model object from item id. Show all posts

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.DataManagementService" means 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;
   }