Exemple #1
0
        private static bool GetApprovalRequired(string modelName, string entityName)
        {
            var getRequest = new MetadataGetRequest
            {
                ResultOptions = new MetadataResultOptions
                {
                    Entities = ResultType.Identifiers
                },
                SearchCriteria = new MetadataSearchCriteria
                {
                    Models = new Collection <Identifier>
                    {
                        new Identifier {
                            Name = modelName
                        }
                    },
                    Entities = new Collection <Identifier>
                    {
                        new ModelContextIdentifier
                        {
                            Name    = entityName,
                            ModelId = new Identifier {
                                Name = modelName
                            }
                        }
                    }
                }
            };

            return
                (clientProxy.MetadataGet(getRequest)
                 .Metadata.Entities.Single()
                 .RequireApproval);
        }
Exemple #2
0
        // Process staging data in the staging table with the specified batch tag.
        private static void ProcessStagingData(string modelName, string entityName, string versionName, string batchTag, MemberType memberType)
        {
            try
            {
                // Set model, entity, and version objects.
                MDSTestService.Identifier modelId = new MDSTestService.Identifier {
                    Name = modelName
                };
                MDSTestService.Identifier entityId = new MDSTestService.Identifier {
                    Name = entityName
                };
                MDSTestService.Identifier versionId = new MDSTestService.Identifier {
                    Name = versionName
                };

                // Get entity MUID.
                MetadataGetRequest getRequest = new MetadataGetRequest();
                getRequest.SearchCriteria        = new MetadataSearchCriteria();
                getRequest.SearchCriteria.Models = new System.Collections.ObjectModel.Collection <Identifier> {
                };
                getRequest.SearchCriteria.Models.Add(modelId);
                getRequest.SearchCriteria.Entities = new System.Collections.ObjectModel.Collection <Identifier> {
                };
                getRequest.SearchCriteria.Entities.Add(entityId);
                getRequest.SearchCriteria.Versions = new System.Collections.ObjectModel.Collection <Identifier> {
                };
                getRequest.SearchCriteria.Versions.Add(versionId);
                getRequest.SearchCriteria.SearchOption = SearchOption.BothUserDefinedAndSystemObjects;

                getRequest.ResultOptions          = new MetadataResultOptions();
                getRequest.ResultOptions.Entities = ResultType.Identifiers;
                getRequest.ResultOptions.Versions = ResultType.Identifiers;

                MetadataGetResponse getResponse = clientProxy.MetadataGet(getRequest);
                HandleOperationErrors(getResponse.OperationResult);

                // Set entity MUID since it cannot be specified only by name.
                entityId.Id = getResponse.Metadata.Entities[0].Identifier.Id;

                // Set entity MUID since it cannot be specified only by name.
                versionId.Id = getResponse.Metadata.Versions[0].Identifier.Id;
                // Create the request object.
                MDSTestService.EntityStagingProcessRequest processRequest = new EntityStagingProcessRequest();
                processRequest.BatchTag   = batchTag;
                processRequest.EntityId   = entityId;
                processRequest.VersionId  = versionId;
                processRequest.MemberType = MemberType.Leaf;

                // Process staging data.
                MDSTestService.EntityStagingProcessResponse processResponse = clientProxy.EntityStagingProcess(processRequest);

                HandleOperationErrors(processResponse.OperationResult);
            }
            catch (Exception ex)
            {
                Console.WriteLine("Error: {0}", ex);
            }
        }
Exemple #3
0
        public BasicResponse <MetadataInfo> GetMetadataById(MetadataGetRequest metadatarequest)
        {
            var result           = _Repository.GetMetadataById(metadatarequest.Id);
            var metadataInfo     = ObjectConverter.Copy <MetadataModel, MetadataInfo>(result);
            var metadataresponse = new BasicResponse <MetadataInfo>();

            metadataresponse.Data = metadataInfo;
            return(metadataresponse);
        }
Exemple #4
0
        // Get an attribute group information (ModelContextIdentifier for the attribute group) with specified attribute group name, model id, and entity id.
        private static ModelContextIdentifier GetAttributeGroup(Guid modelId, Guid entityId, string attributeGroupName)
        {
            ModelContextIdentifier AttributeGroupIdentifier = new ModelContextIdentifier();

            try
            {
                // Create the request object for getting attribute group information.
                MetadataGetRequest getRequest = new MetadataGetRequest();
                getRequest.SearchCriteria = new MetadataSearchCriteria();
                getRequest.SearchCriteria.SearchOption = SearchOption.UserDefinedObjectsOnly;
                // Set model id, entity id, and attribute group name.
                getRequest.SearchCriteria.Models = new System.Collections.ObjectModel.Collection <Identifier> {
                    new Identifier {
                        Id = modelId
                    }
                };
                getRequest.SearchCriteria.Entities = new System.Collections.ObjectModel.Collection <Identifier> {
                    new Identifier {
                        Id = entityId
                    }
                };
                getRequest.SearchCriteria.AttributeGroups = new System.Collections.ObjectModel.Collection <Identifier> {
                    new Identifier {
                        Name = attributeGroupName
                    }
                };
                getRequest.ResultOptions = new MetadataResultOptions();
                getRequest.ResultOptions.AttributeGroups = ResultType.Details;

                // Get an attribute group information.
                MetadataGetResponse getResponse = clientProxy.MetadataGet(getRequest);

                if (getResponse.Metadata.AttributeGroups.Count > 0)
                {
                    AttributeGroupIdentifier = getResponse.Metadata.AttributeGroups[0].Identifier;
                }

                HandleOperationErrors(getResponse.OperationResult);
            }
            catch (Exception ex)
            {
                Console.WriteLine("Error: {0}", ex);
            }

            return(AttributeGroupIdentifier);
        }
Exemple #5
0
        // Get a model information (model identifier) with specified modle and version names.
        private static Identifier GetModel(string modelName, string versionName)
        {
            Identifier modelIdentifier = new Identifier();

            try
            {
                // Create the request object for getting model information.
                MetadataGetRequest getRequest = new MetadataGetRequest();
                getRequest.SearchCriteria = new MetadataSearchCriteria();
                getRequest.SearchCriteria.SearchOption = SearchOption.UserDefinedObjectsOnly;
                // Set the model and version names in the search criteria.
                getRequest.SearchCriteria.Models = new System.Collections.ObjectModel.Collection <Identifier> {
                    new Identifier {
                        Name = modelName
                    }
                };
                getRequest.SearchCriteria.Versions = new System.Collections.ObjectModel.Collection <Identifier> {
                    new Identifier {
                        Name = versionName
                    }
                };
                getRequest.ResultOptions        = new MetadataResultOptions();
                getRequest.ResultOptions.Models = ResultType.Details;

                // Get a model information.
                MetadataGetResponse getResponse = clientProxy.MetadataGet(getRequest);

                if (getResponse.Metadata.Models.Count > 0)
                {
                    modelIdentifier = getResponse.Metadata.Models[0].Identifier;
                }

                HandleOperationErrors(getResponse.OperationResult);
            }
            catch (Exception ex)
            {
                Console.WriteLine("Error: {0}", ex);
            }

            return(modelIdentifier);
        }
        // Process staging data in the staging table with the specified batch tag.
        private static void ProcessStagingData(string modelName, string entityName, string versionName, string batchTag, MemberType memberType)
        {
            try
            {
                // Set model, entity, and version objects.
                MDSTestService.Identifier modelId = new MDSTestService.Identifier { Name = modelName };
                MDSTestService.Identifier entityId = new MDSTestService.Identifier { Name = entityName };
                MDSTestService.Identifier versionId = new MDSTestService.Identifier { Name = versionName };

                // Get entity MUID.
                MetadataGetRequest getRequest = new MetadataGetRequest();
                getRequest.SearchCriteria = new MetadataSearchCriteria();
                getRequest.SearchCriteria.Models = new System.Collections.ObjectModel.Collection<Identifier> { };
                getRequest.SearchCriteria.Models.Add(modelId);
                getRequest.SearchCriteria.Entities = new System.Collections.ObjectModel.Collection<Identifier> { };
                getRequest.SearchCriteria.Entities.Add(entityId);
                getRequest.SearchCriteria.Versions = new System.Collections.ObjectModel.Collection<Identifier> { };
                getRequest.SearchCriteria.Versions.Add(versionId);
                getRequest.SearchCriteria.SearchOption = SearchOption.BothUserDefinedAndSystemObjects;

                getRequest.ResultOptions = new MetadataResultOptions();
                getRequest.ResultOptions.Entities = ResultType.Identifiers;
                getRequest.ResultOptions.Versions = ResultType.Identifiers;

                MetadataGetResponse getResponse = clientProxy.MetadataGet(getRequest);
                HandleOperationErrors(getResponse.OperationResult);

                // Set entity MUID since it cannot be specified only by name.
                entityId.Id = getResponse.Metadata.Entities[0].Identifier.Id;

                // Set entity MUID since it cannot be specified only by name.
                versionId.Id = getResponse.Metadata.Versions[0].Identifier.Id;
                // Create the request object.
                MDSTestService.EntityStagingProcessRequest processRequest = new EntityStagingProcessRequest();
                processRequest.BatchTag = batchTag;
                processRequest.EntityId = entityId;
                processRequest.VersionId = versionId;
                processRequest.MemberType = MemberType.Leaf;

                // Process staging data.
                MDSTestService.EntityStagingProcessResponse processResponse = clientProxy.EntityStagingProcess(processRequest);

                HandleOperationErrors(processResponse.OperationResult);
            }
            catch (Exception ex)
            {
                Console.WriteLine("Error: {0}", ex);
            }
        }
        // Get a model information (model identifier) with specified modle and version names.
        private static Identifier GetModel(string modelName, string versionName)
        {
            Identifier modelIdentifier = new Identifier();

            try
            {
                // Create the request object for getting model information.
                MetadataGetRequest getRequest = new MetadataGetRequest();
                getRequest.SearchCriteria = new MetadataSearchCriteria();
                getRequest.SearchCriteria.SearchOption = SearchOption.UserDefinedObjectsOnly;
                // Set the model and version names in the search criteria.
                getRequest.SearchCriteria.Models = new System.Collections.ObjectModel.Collection<Identifier> { new Identifier { Name = modelName } };
                getRequest.SearchCriteria.Versions = new System.Collections.ObjectModel.Collection<Identifier> { new Identifier { Name = versionName } };
                getRequest.ResultOptions = new MetadataResultOptions();
                getRequest.ResultOptions.Models = ResultType.Details;

                // Get a model information.
                MetadataGetResponse getResponse = clientProxy.MetadataGet(getRequest);

                if (getResponse.Metadata.Models.Count > 0)
                {
                    modelIdentifier = getResponse.Metadata.Models[0].Identifier;
                }

                HandleOperationErrors(getResponse.OperationResult);
            }
            catch (Exception ex)
            {
                Console.WriteLine("Error: {0}", ex);
            }

            return modelIdentifier;
        }
        // Get an entity information (ModelContextIdentifier for the entity) with specified entity name and model id.
        private static ModelContextIdentifier GetEntity(Guid modelId, string entityName)
        {
            ModelContextIdentifier entityIdentifier = new ModelContextIdentifier();

            try
            {
                // Create the request object for getting entity information.
                MetadataGetRequest getRequest = new MetadataGetRequest();
                getRequest.SearchCriteria = new MetadataSearchCriteria();
                getRequest.SearchCriteria.SearchOption = SearchOption.UserDefinedObjectsOnly;
                // Set the entity name and model id
                getRequest.SearchCriteria.Entities = new System.Collections.ObjectModel.Collection<Identifier> { new Identifier { Name = entityName } };
                getRequest.SearchCriteria.Models = new System.Collections.ObjectModel.Collection<Identifier> { new Identifier { Id = modelId } };
                getRequest.ResultOptions = new MetadataResultOptions();
                getRequest.ResultOptions.Entities = ResultType.Details;
                // Get an entity information.
                MetadataGetResponse getResponse = clientProxy.MetadataGet(getRequest);

                if (getResponse.Metadata.Entities.Count > 0)
                {
                    entityIdentifier = getResponse.Metadata.Entities[0].Identifier;
                }

                HandleOperationErrors(getResponse.OperationResult);
            }
            catch (Exception ex)
            {
                Console.WriteLine("Error: {0}", ex);
            }

            return entityIdentifier;
        }
        private static bool GetApprovalRequired(string modelName, string entityName)
        {
            var getRequest = new MetadataGetRequest
            {
                ResultOptions = new MetadataResultOptions
                {
                    Entities = ResultType.Identifiers
                },
                SearchCriteria = new MetadataSearchCriteria
                {
                    Models = new Collection<Identifier>
                    {
                        new Identifier {Name = modelName}
                    },
                    Entities = new Collection<Identifier>
                    {
                        new ModelContextIdentifier
                        {
                            Name = entityName,
                            ModelId = new Identifier {Name = modelName}
                        }
                    }
                }
            };

            return
                clientProxy.MetadataGet(getRequest)
                    .Metadata.Entities.Single()
                    .RequireApproval;
        }
        public static Collection <MasterDataServices.Attribute> GetEntityAttributes(string model, string entity)
        {
            Collection <MasterDataServices.MetadataAttribute> metadataAttributes;
            var attributes = new Collection <MasterDataServices.Attribute>();

            try
            {
                // Create the request object for getting attribute information.
                var getRequest = new MetadataGetRequest();
                getRequest.SearchCriteria = new MetadataSearchCriteria();
                getRequest.SearchCriteria.SearchOption = SearchOption.UserDefinedObjectsOnly;
                // Set model id, entity id, and attribute name.
                getRequest.SearchCriteria.Entities = new Collection <Identifier> {
                    new Identifier {
                        Name = entity
                    }
                };
                getRequest.SearchCriteria.Models = new Collection <Identifier> {
                    new Identifier {
                        Name = model
                    }
                };
                getRequest.ResultOptions            = new MetadataResultOptions();
                getRequest.ResultOptions.Attributes = ResultType.Details;

                // Get an attribute information.
                MetadataGetResponse getResponse = ServiceReferencesSettings.clientProxy.MetadataGet(getRequest);

                metadataAttributes = getResponse.Metadata.Attributes;

                ServiceReferencesSettings.HandleOperationErrors(getResponse.OperationResult);

                foreach (var item in metadataAttributes)
                {
                    var attribute = new MasterDataServices.Attribute();

                    if (item.AttributeType == AttributeType.Domain || item.AttributeType == AttributeType.File)
                    {
                        switch (item.AttributeType)
                        {
                        case AttributeType.Domain:
                            attribute.Type = AttributeValueType.Domain;
                            break;

                        case AttributeType.File:
                            attribute.Type = AttributeValueType.File;
                            break;
                        }
                    }
                    else if (item.AttributeType == AttributeType.FreeForm)
                    {
                        switch (item.DataType)
                        {
                        case AttributeDataType.DateTime:
                            attribute.Type = AttributeValueType.DateTime;
                            break;

                        case AttributeDataType.Number:
                            attribute.Type = AttributeValueType.Number;
                            break;

                        case AttributeDataType.Text:
                            attribute.Type = AttributeValueType.String;
                            break;
                        }
                    }
                    attributes.Add(attribute);
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine("Error: {0}", ex);
            }

            //return AttributeIdentifier;

            return(attributes);
        }