Layout
In Relativity, layouts are web-based coding forms that enable users to view and edit document fields. For more information, see
The Services API supports read and query operations on a Layout DTO.
Note: You can also read layouts using the common DTO ReadSingle method. For more information, see Single-artifact access.
This page contains the following information:
Read a Layout
To read Field values on a Layout, you can use the Read() method on the Layout repository as illustrated in this code sample.
public static bool ReadLayout(IRSAPIClient proxy, int LayoutID, int workspaceID)
{
proxy.APIOptions.WorkspaceID = workspaceID;
Layout LayoutObj = new Layout(LayoutID);
LayoutObj.Fields = FieldValue.AllFields;
ResultSet<Layout> LayoutReadResults = new ResultSet<Layout>();
try
{
LayoutReadResults = proxy.Repositories.Layout.Read(LayoutObj);
}
catch (Exception ex)
{
Console.WriteLine("An error occurred reading the Layout: {0}", ex.Message);
}
if (!LayoutReadResults.Success)
{
Console.WriteLine("An error occurred reading the Layout: {0}", LayoutReadResults.Message);
foreach (Result<Layout> readResult in LayoutReadResults.Results)
{
if (!readResult.Success)
{
Console.WriteLine(" An error occurred in read request: {0}", readResult.Message);
}
}
return false;
}
Console.WriteLine("Successfully read the Layout '{0}'!", LayoutReadResults.Results[0].Artifact.Name);
return true;
}
Query for a Layout
To query for a Layout, you can use the fields listed in the following table. For more information, see Search Relativity.
Fields for Layout queries | |
---|---|
ArtifactID | Notes |
Created By | Object Type |
Created By | Order in Dropdown |
Keywords | Overwrite Protection |
Last Modified By | Owners |
Last Modified On | Relativity Applications |
Name | Security |
This code sample illustrates how to set query conditions, call the Query() method on the Layout repository, and iterate through the result set.
public static bool QueryLayout(IRSAPIClient proxy, int workspaceID)
{
proxy.APIOptions.WorkspaceID = workspaceID;
WholeNumberCondition queryCondition = new WholeNumberCondition("Artifact ID", NumericConditionEnum.IsSet);
Query<Layout> layoutQuery = new Query<Layout>();
layoutQuery.Condition = queryCondition;
layoutQuery.Fields = FieldValue.AllFields;
ResultSet<Layout> layoutQueryResultSet = new ResultSet<Layout>();
try
{
layoutQueryResultSet = proxy.Repositories.Layout.Query(layoutQuery);
}
catch (Exception ex)
{
Console.WriteLine("An error occurred while querying: {0}", ex.Message);
}
if (!layoutQueryResultSet.Success)
{
Console.WriteLine("An error occurred while querying: {0}", layoutQueryResultSet.Message);
return false;
}
foreach (Result<Layout> singleLayout in layoutQueryResultSet.Results)
{
Layout singleLayoutArtifact = singleLayout.Artifact;
Console.WriteLine("\r\nLayout Name: {0}\r\nLayout ID: {1}", singleLayoutArtifact.Name, singleLayoutArtifact.ArtifactID);
}
return true;
}