public int CreateField(int workspaceID, FieldRequest request) { int fieldID = 0; DTOs.WriteResultSet <DTOs.Field> results; //Create a Field DTO var fieldDTO = new DTOs.Field(); //Set secondary fields request.HydrateFieldDTO(fieldDTO); //Create the field using (var client = _helper.GetServicesManager().CreateProxy <IRSAPIClient>(ExecutionIdentity.System)) { client.APIOptions.WorkspaceID = workspaceID; results = client.Repositories.Field.Create(fieldDTO); } //Check for success if (results.Success) { fieldID = results.Results.FirstOrDefault().Artifact.ArtifactID; } else { var innEx = results.Results.Any() ? new Exception(results.Results.First().Message) : null; throw new Exception(results.Message, innEx); } return(fieldID); }
public static int CreateDocumentFieldArticleTitle(IRSAPIClient proxy, int workspaceId) { Field createField = new Field() { Name = "Article Title", FieldTypeID = FieldType.LongText, IsRequired = false, Unicode = true, OpenToAssociations = true, Linked = false, AllowSortTally = true, Wrapping = true, AllowGroupBy = true, AllowPivot = true, IgnoreWarnings = true, IncludeInTextIndex = false, AvailableInViewer = false, AllowHTML = false, Width = "123", ObjectType = new ObjectType { DescriptorArtifactTypeID = 10 } }; proxy.APIOptions.WorkspaceID = workspaceId; int artifactIdCreatedField = proxy.Repositories.Field.CreateSingle(createField); return(artifactIdCreatedField); }
public int GetFieldArtifactId(string fieldName, int workspaceId, IServicesMgr svcMgr, ExecutionIdentity identity) { int artifactId; try { using (IRSAPIClient client = svcMgr.CreateProxy <IRSAPIClient>(identity)) { client.APIOptions.WorkspaceID = workspaceId; Query <kCura.Relativity.Client.DTOs.Field> query = new Query <kCura.Relativity.Client.DTOs.Field>(); query.Fields = FieldValue.AllFields; query.Condition = new TextCondition("Name", TextConditionEnum.Like, fieldName); ResultSet <kCura.Relativity.Client.DTOs.Field> results = client.Repositories.Field.Query(query); kCura.Relativity.Client.DTOs.Field fieldArtifact = results.Results.FirstOrDefault().Artifact; artifactId = fieldArtifact.ArtifactID; } } catch (Exception) { //Instead of throwing an exception we want to set the artifactId = 0 artifactId = 0; } return(artifactId); }
public static Int32 CreateField_FixedLengthText(IRSAPIClient client, Int32 workspaceID) { Int32 fieldID = 0; //Set the workspace ID client.APIOptions.WorkspaceID = workspaceID; //Read the object type to add fields to //kCura.Relativity.Client.DTOs.ObjectType objectToAddFieldTo = client.Repositories.ObjectType.ReadSingle(objectTypeID); //Create a Field DTO kCura.Relativity.Client.DTOs.Field fieldDTO = new kCura.Relativity.Client.DTOs.Field(); //Set primary fields //The name of the sample data is being set to a random string so that sample data can be debugged //and never causes collisions. You can set this to any string that you want fieldDTO.Name = string.Format("FixedLegthText{0}", Guid.NewGuid()); fieldDTO.ObjectType = new kCura.Relativity.Client.DTOs.ObjectType() { DescriptorArtifactTypeID = (int)ArtifactType.Document }; fieldDTO.FieldTypeID = kCura.Relativity.Client.FieldType.FixedLengthText; //Set secondary fields fieldDTO.AllowHTML = false; fieldDTO.AllowGroupBy = false; fieldDTO.AllowPivot = false; fieldDTO.AllowSortTally = false; fieldDTO.IncludeInTextIndex = true; fieldDTO.IsRequired = false; fieldDTO.OpenToAssociations = false; fieldDTO.Length = 255; fieldDTO.Linked = false; fieldDTO.Unicode = true; fieldDTO.Width = ""; fieldDTO.Wrapping = true; fieldDTO.IsRelational = false; //Create the field kCura.Relativity.Client.DTOs.WriteResultSet <kCura.Relativity.Client.DTOs.Field> resultSet = client.Repositories.Field.Create(fieldDTO); //Check for success if (resultSet.Success) { fieldID = resultSet.Results.FirstOrDefault().Artifact.ArtifactID; return(fieldID); } else { Console.WriteLine("Field was not created"); return(fieldID); } }
private int?GetFileTypeCode() { int?result = null; DTOs.Field ftField = Connection.Repositories.Field.ReadSingle(new Guid(MainApp.Helper.Constant.FIELD_DOCUMENT_TYPE)); if (ftField != null) { result = ftField.ChoiceTypeID; } return(result); }
public static Int32 CreateField_YesNO(IRSAPIClient client, int workspaceID) { Int32 fieldID = 0; //Set the workspace ID client.APIOptions.WorkspaceID = workspaceID; //Create a Field DTO kCura.Relativity.Client.DTOs.Field fieldDTO = new kCura.Relativity.Client.DTOs.Field(); //Set primary fields //The name of the sample data is being set to a random string so that sample data can be debugged //and never causes collisions. You can set this to any string that you want fieldDTO.Name = string.Format("API Sample {0}", Guid.NewGuid()); fieldDTO.ObjectType = new kCura.Relativity.Client.DTOs.ObjectType() { DescriptorArtifactTypeID = (int)ArtifactType.Document }; fieldDTO.FieldTypeID = kCura.Relativity.Client.FieldType.YesNo; fieldDTO.YesValue = "Yes"; fieldDTO.NoValue = "No"; // Set secondary fields fieldDTO.AllowGroupBy = false; fieldDTO.AllowPivot = false; fieldDTO.AllowSortTally = false; fieldDTO.IsRequired = false; fieldDTO.OpenToAssociations = false; fieldDTO.Linked = false; fieldDTO.Width = ""; fieldDTO.Wrapping = true; kCura.Relativity.Client.DTOs.WriteResultSet <kCura.Relativity.Client.DTOs.Field> resultSet = client.Repositories.Field.Create(fieldDTO); //Check for success if (resultSet.Success) { fieldID = resultSet.Results.FirstOrDefault().Artifact.ArtifactID; return(fieldID); } else { Console.WriteLine("Field was not created"); return(fieldID); } }
public async Task <int> CreateResponsiveFieldAsync(int workspaceArtifactId) { Console2.WriteDisplayStartLine("Creating Responsive Field"); try { RsapiClient.APIOptions.WorkspaceID = workspaceArtifactId; kCura.Relativity.Client.DTOs.Field responsiveField = new kCura.Relativity.Client.DTOs.Field { ObjectType = new ObjectType { DescriptorArtifactTypeID = Constants.DOCUMENT_ARTIFACT_TYPE }, Name = Constants.Workspace.ResponsiveField.Name, FieldTypeID = Constants.Workspace.ResponsiveField.FIELD_TYPE_ID, IsRequired = Constants.Workspace.ResponsiveField.IS_REQUIRED, OpenToAssociations = Constants.Workspace.ResponsiveField.OPEN_TO_ASSOCIATIONS, Linked = Constants.Workspace.ResponsiveField.LINKED, AllowSortTally = Constants.Workspace.ResponsiveField.ALLOW_SORT_TALLY, Wrapping = Constants.Workspace.ResponsiveField.WRAPPING, AllowGroupBy = Constants.Workspace.ResponsiveField.ALLOW_GROUP_BY, AllowPivot = Constants.Workspace.ResponsiveField.ALLOW_PIVOT, IgnoreWarnings = Constants.Workspace.ResponsiveField.IGNORE_WARNINGS, Width = Constants.Workspace.ResponsiveField.WIDTH, NoValue = Constants.Workspace.ResponsiveField.NO_VALUE, YesValue = Constants.Workspace.ResponsiveField.YES_VALUE }; int responsiveFieldArtifactId = await Task.Run(() => RsapiClient.Repositories.Field.CreateSingle(responsiveField)); if (responsiveFieldArtifactId == 0) { throw new Exception("Failed to create Responsive Field"); } Console2.WriteDebugLine($"Responsive Field ArtifactId: {responsiveFieldArtifactId}"); Console2.WriteDisplayEndLine("Created Responsive Field!"); return(responsiveFieldArtifactId); } catch (Exception ex) { throw new Exception("An error occured when creating Responsive field", ex); } }
public static Int32 CreateField_MultipleChoice(IRSAPIClient client, int workspaceID) { Int32 fieldID = 0; //Set the workspace ID client.APIOptions.WorkspaceID = workspaceID; //Create a Field DTO kCura.Relativity.Client.DTOs.Field fieldDTO = new kCura.Relativity.Client.DTOs.Field(); fieldDTO.Name = string.Format("API Sample {0}", Guid.NewGuid()); fieldDTO.ObjectType = new kCura.Relativity.Client.DTOs.ObjectType() { DescriptorArtifactTypeID = (int)ArtifactType.Document }; fieldDTO.FieldTypeID = kCura.Relativity.Client.FieldType.MultipleChoice; // Set secondary fields fieldDTO.AllowGroupBy = false; fieldDTO.AllowPivot = false; fieldDTO.AllowSortTally = false; fieldDTO.AvailableInFieldTree = false; fieldDTO.IsRequired = false; fieldDTO.OpenToAssociations = false; fieldDTO.Linked = false; fieldDTO.Unicode = true; fieldDTO.Width = ""; fieldDTO.Wrapping = true; //Create the fields kCura.Relativity.Client.DTOs.WriteResultSet <kCura.Relativity.Client.DTOs.Field> resultSet = client.Repositories.Field.Create(fieldDTO); //Check for success if (resultSet.Success) { fieldID = resultSet.Results.FirstOrDefault().Artifact.ArtifactID; return(fieldID); } else { Console.WriteLine("Field was not created"); return(fieldID); } }
private void hydrateCommonData(DTOs.Field fieldDTO) { //Set primary fields //The name of the sample data is being set to a random string so that sample data can be debugged //and never causes collisions. You can set this to any string that you want fieldDTO.Name = FieldName ?? $"{FieldType}{Guid.NewGuid()}"; if (fieldDTO.Name.Length > 50) { fieldDTO.Name = fieldDTO.Name.Substring(0, 50); } fieldDTO.FieldTypeID = FieldType; fieldDTO.ObjectType = new DTOs.ObjectType { DescriptorArtifactTypeID = ArtifactType }; fieldDTO.AllowGroupBy = AllowGroupBy; fieldDTO.AllowPivot = AllowPivot; fieldDTO.AllowSortTally = AllowSortTally; fieldDTO.IsRequired = IsRequired; fieldDTO.Linked = Linked; fieldDTO.Width = Width; }
public static Int32 GetFieldCodeTypeId(IRSAPIClient proxy, Int32 workspaceID) { proxy.APIOptions.WorkspaceID = workspaceID; // STEP 1: Call the Read() method on the Field repository, passing a Field DTO. ResultSet <kCura.Relativity.Client.DTOs.Field> results; //todo: Get the duplicate status field artifact id dynamically results = proxy.Repositories.Field.Read(new kCura.Relativity.Client.DTOs.Field(1038856) { Fields = FieldValue.AllFields }); // STEP 2: Get the Field artifact from the read results. kCura.Relativity.Client.DTOs.Field fieldArtifact = results.Results.FirstOrDefault().Artifact; Console.WriteLine("Field Name: " + fieldArtifact.Name); Console.WriteLine("Field Type: " + fieldArtifact.FieldTypeID); Console.WriteLine("Object Type: " + fieldArtifact.ObjectType.DescriptorArtifactTypeID); Int32 CodetypeId = Convert.ToInt32(fieldArtifact.ChoiceTypeID); return(CodetypeId); }
public void HydrateFieldDTO(DTOs.Field fieldDTO) { hydrateCommonData(fieldDTO); hydrateByFieldType(fieldDTO); }
private void hydrateByFieldType(DTOs.Field fieldDTO) { switch (FieldType) { case FieldType.FixedLengthText: //TODO: move to atomic methods fieldDTO.AllowHTML = AllowHTML; fieldDTO.IncludeInTextIndex = IncludeInTextIndex; fieldDTO.OpenToAssociations = OpenToAssociations; fieldDTO.Length = Length; fieldDTO.Unicode = Unicode; fieldDTO.Wrapping = Wrapping; fieldDTO.IsRelational = IsRelational; break; case FieldType.WholeNumber: fieldDTO.OpenToAssociations = OpenToAssociations; fieldDTO.Wrapping = Wrapping; break; case FieldType.Date: fieldDTO.OpenToAssociations = OpenToAssociations; fieldDTO.Wrapping = Wrapping; break; case FieldType.YesNo: fieldDTO.YesValue = YesValue; fieldDTO.NoValue = NoValue; fieldDTO.OpenToAssociations = OpenToAssociations; fieldDTO.Wrapping = true; break; case FieldType.LongText: fieldDTO.AllowHTML = AllowHTML; fieldDTO.AvailableInViewer = AvailableInViewer; fieldDTO.IncludeInTextIndex = IncludeInTextIndex; fieldDTO.OpenToAssociations = OpenToAssociations; fieldDTO.Unicode = Unicode; fieldDTO.Wrapping = Wrapping; break; case FieldType.SingleChoice: fieldDTO.AvailableInFieldTree = AvailableInFieldTree; fieldDTO.OpenToAssociations = OpenToAssociations; fieldDTO.Unicode = Unicode; fieldDTO.Wrapping = Wrapping; break; case FieldType.Decimal: fieldDTO.OpenToAssociations = OpenToAssociations; fieldDTO.Wrapping = Wrapping; break; case FieldType.Currency: fieldDTO.OpenToAssociations = OpenToAssociations; fieldDTO.Wrapping = Wrapping; break; case FieldType.MultipleChoice: fieldDTO.AvailableInFieldTree = AvailableInFieldTree; fieldDTO.OpenToAssociations = OpenToAssociations; fieldDTO.Unicode = Unicode; fieldDTO.Wrapping = Wrapping; break; case FieldType.User: fieldDTO.OpenToAssociations = OpenToAssociations; fieldDTO.Wrapping = Wrapping; break; case FieldType.MultipleObject: case FieldType.SingleObject: case FieldType.File: throw new NotImplementedException(); } }
public int CreateFixedLengthTextField(int workspaceId, IServicesMgr svcMgr, ExecutionIdentity identity) { int fieldId = 0; try { using (IRSAPIClient client = svcMgr.CreateProxy <IRSAPIClient>(identity)) { //Set the workspace ID client.APIOptions.WorkspaceID = workspaceId; //Create a Field DTO kCura.Relativity.Client.DTOs.Field fieldDto = new kCura.Relativity.Client.DTOs.Field(); //Set primary fields //The name of the sample data is being set to a random string so that sample data can be debugged //and never causes collisions. You can set this to any string that you want fieldDto.Name = "Demo Document Field"; fieldDto.ObjectType = new kCura.Relativity.Client.DTOs.ObjectType() { DescriptorArtifactTypeID = (int)ArtifactType.Document }; fieldDto.FieldTypeID = FieldType.FixedLengthText; //Set secondary fields fieldDto.AllowHTML = false; fieldDto.AllowGroupBy = false; fieldDto.AllowPivot = false; fieldDto.AllowSortTally = false; fieldDto.IncludeInTextIndex = true; fieldDto.IsRequired = false; fieldDto.OpenToAssociations = false; fieldDto.Length = 255; fieldDto.Linked = false; fieldDto.Unicode = true; fieldDto.Width = ""; fieldDto.Wrapping = true; fieldDto.IsRelational = false; //Create the field WriteResultSet <kCura.Relativity.Client.DTOs.Field> resultSet = client.Repositories.Field.Create(fieldDto); //Check for success if (!resultSet.Success) { Console.WriteLine("Field was not created"); return(fieldId); } Result <kCura.Relativity.Client.DTOs.Field> firstOrDefault = resultSet.Results.FirstOrDefault(); if (firstOrDefault != null) { fieldId = firstOrDefault.Artifact.ArtifactID; } return(fieldId); } } catch (Exception) { throw new Exception("Failed in the create field method."); } }