DataQueryName kann optional angegeben werden

This commit is contained in:
Meik
2026-02-05 14:12:54 +01:00
parent f7130eebac
commit c647b81350
8 changed files with 69 additions and 51 deletions

View File

@@ -713,7 +713,7 @@
</Table-Columns>
</Table>
<Table Name="M42Wpm-Ticket-QuickCalls" Type="Selection" Key="id">
<Matrix42-DataQueryItems-Template EntityClassName="SPSQuickCallClassBase" EntityTypeNames="SPSQuickCallType" OrderBy="" WhereExpression="Restricted = 0" />
<Matrix42-DataQueryItems-Template EntityClassName="SPSQuickCallClassBase" EntityTypeNames="SPSQuickCallType" OrderBy="" WhereExpression="Restricted = 0" DataQueryName="C4IT - F4SD - Quick Calls" />
<Table-Columns>
<Table-Column Name="id" SourceName="Id" Type="guid" />
<Table-Column Name="SysObjectId" SourceName="Sys-ObjectId" Type="guid" />

View File

@@ -293,6 +293,7 @@
<xs:attribute name="EntityTypeNames" type="ColumnList" use="required"/>
<xs:attribute name="OrderBy" type="xs:string " use="optional"/>
<xs:attribute name="WhereExpression" type="xs:string " use="optional"/>
<xs:attribute name="DataQueryName" type="xs:string" use="optional"/>
</xs:complexType>
</xs:element>

View File

@@ -2266,6 +2266,7 @@ namespace C4IT.DataHistoryProvider
{
EntityClassName = _template.EntityClassName,
EntityTypeName = string.Join(",", _template.EntityTypeNames),
DataQueryName = string.IsNullOrWhiteSpace(_template.DataQueryName) ? null : _template.DataQueryName,
search = search,
WhereExpression = _whereExpr,
pageSize = 0,
@@ -2324,6 +2325,7 @@ namespace C4IT.DataHistoryProvider
{
EntityClassName = _template.EntityClassName,
EntityTypeName = string.Join(",", _template.EntityTypeNames),
DataQueryName = string.IsNullOrWhiteSpace(_template.DataQueryName) ? null : _template.DataQueryName,
WhereExpression = _whereExpr,
search = search,
pageSize = PageSize,
@@ -4071,6 +4073,8 @@ public class cM42DataQueryRelationInfo
public int ClientTimeOffset { get; set; } = 0;
public string EntityClassName { get; set; }
public string EntityTypeName { get; set; }
[JsonProperty(NullValueHandling = NullValueHandling.Ignore)]
public string DataQueryName { get; set; }
public string AddedRelations { get; set; } = "";
public string RemovedRelations { get; set; } = "";
public string WhereExpression { get; set; } = "";

View File

@@ -381,7 +381,7 @@ namespace C4IT.DataHistoryProvider
RetVal |= DoXmlInsertElement(XmlRoot
, "DataCluster[@Name='M42Tickets']"
, "Table[@Name='M42Wpm-Ticket-QuickCalls']"
, "<Table Name=\"M42Wpm-Ticket-QuickCalls\" Type=\"Selection\" Key=\"id\"><Matrix42-DataQueryItems-Template EntityClassName=\"SPSQuickCallClassBase\" EntityTypeNames=\"SPSQuickCallType\" OrderBy=\"\" WhereExpression=\"Restricted = 0\"/><Table-Columns><Table-Column Name=\"id\" SourceName=\"Id\" Type=\"guid\"/><Table-Column Name=\"SysObjectId\" SourceName=\"Sys-ObjectId\" Type=\"guid\"/><Table-Column Name=\"SysName\" SourceName=\"Sys-Name\" Type=\"string\" Cardinal=\"50\"/><Table-Column Name=\"Name\" Type=\"string\" Cardinal=\"300\"/><Table-Column Name=\"Subject\" Type=\"string\" Cardinal=\"1024\"/><Table-Column Name=\"Priority\" Type=\"string\" Cardinal=\"100\"/><Table-Column Name=\"Responsible\" Type=\"string\" Cardinal=\"300\"/><Table-Column Name=\"ResponsibleRole\" Type=\"string\" Cardinal=\"300\"/><Table-Column Name=\"Category\" SourceName=\"Category_Value\" Type=\"guid\"/></Table-Columns></Table>"
, "<Table Name=\"M42Wpm-Ticket-QuickCalls\" Type=\"Selection\" Key=\"id\"><Matrix42-DataQueryItems-Template EntityClassName=\"SPSQuickCallClassBase\" EntityTypeNames=\"SPSQuickCallType\" OrderBy=\"\" WhereExpression=\"Restricted = 0\" DataQueryName=\"C4IT - F4SD - Quick Calls\"/><Table-Columns><Table-Column Name=\"id\" SourceName=\"Id\" Type=\"guid\"/><Table-Column Name=\"SysObjectId\" SourceName=\"Sys-ObjectId\" Type=\"guid\"/><Table-Column Name=\"SysName\" SourceName=\"Sys-Name\" Type=\"string\" Cardinal=\"50\"/><Table-Column Name=\"Name\" Type=\"string\" Cardinal=\"300\"/><Table-Column Name=\"Subject\" Type=\"string\" Cardinal=\"1024\"/><Table-Column Name=\"Priority\" Type=\"string\" Cardinal=\"100\"/><Table-Column Name=\"Responsible\" Type=\"string\" Cardinal=\"300\"/><Table-Column Name=\"ResponsibleRole\" Type=\"string\" Cardinal=\"300\"/><Table-Column Name=\"Category\" SourceName=\"Category_Value\" Type=\"guid\"/></Table-Columns></Table>"
, "Table[@Name='M42Wpm-Ticket-Assets']"
);
@@ -516,6 +516,16 @@ namespace C4IT.DataHistoryProvider
}
}
var quickCallsTemplate = XmlRoot.SelectSingleNode("DataCluster[@Name='M42Tickets']/Table[@Name='M42Wpm-Ticket-QuickCalls']/Matrix42-DataQueryItems-Template") as XmlElement;
if (quickCallsTemplate != null)
{
if (!string.Equals(quickCallsTemplate.GetAttribute("DataQueryName"), "C4IT - F4SD - Quick Calls", StringComparison.OrdinalIgnoreCase))
{
quickCallsTemplate.SetAttribute("DataQueryName", "C4IT - F4SD - Quick Calls");
RetVal = true;
}
}
var categoriesColumns = XmlRoot.SelectSingleNode("DataCluster[@Name='M42Tickets']/Table[@Name='M42Wpm-Ticket-Categories']/Table-Columns") as XmlElement;
if (categoriesColumns != null)
{
@@ -2513,6 +2523,7 @@ namespace C4IT.DataHistoryProvider
public List<string> EntityTypeNames { get; private set; } = null;
public string OrderBy { get; private set; } = null;
public string WhereExpression { get; private set; } = null;
public string DataQueryName { get; private set; } = null;
internal cDataHistoryConfigQueryTemplateM42DataQueryItems(XmlElement XNode, cXmlParser Parser) :
@@ -2546,6 +2557,7 @@ namespace C4IT.DataHistoryProvider
OrderBy = cXmlParser.GetStringFromXmlAttribute(XNode2, "OrderBy");
WhereExpression = cXmlParser.GetStringFromXmlAttribute(XNode2, "WhereExpression");
DataQueryName = cXmlParser.GetStringFromXmlAttribute(XNode2, "DataQueryName");
Parser.LeaveElement("Matrix42-DataQueryItems-Template");

View File

@@ -713,7 +713,7 @@
</Table-Columns>
</Table>
<Table Name="M42Wpm-Ticket-QuickCalls" Type="Selection" Key="id">
<Matrix42-DataQueryItems-Template EntityClassName="SPSQuickCallClassBase" EntityTypeNames="SPSQuickCallType" OrderBy="" WhereExpression="Restricted = 0" />
<Matrix42-DataQueryItems-Template EntityClassName="SPSQuickCallClassBase" EntityTypeNames="SPSQuickCallType" OrderBy="" WhereExpression="Restricted = 0" DataQueryName="C4IT - F4SD - Quick Calls" />
<Table-Columns>
<Table-Column Name="id" SourceName="Id" Type="guid" />
<Table-Column Name="SysObjectId" SourceName="Sys-ObjectId" Type="guid" />

View File

@@ -713,7 +713,7 @@
</Table-Columns>
</Table>
<Table Name="M42Wpm-Ticket-QuickCalls" Type="Selection" Key="id">
<Matrix42-DataQueryItems-Template EntityClassName="SPSQuickCallClassBase" EntityTypeNames="SPSQuickCallType" OrderBy="" WhereExpression="Restricted = 0" />
<Matrix42-DataQueryItems-Template EntityClassName="SPSQuickCallClassBase" EntityTypeNames="SPSQuickCallType" OrderBy="" WhereExpression="Restricted = 0" DataQueryName="C4IT - F4SD - Quick Calls" />
<Table-Columns>
<Table-Column Name="id" SourceName="Id" Type="guid" />
<Table-Column Name="SysObjectId" SourceName="Sys-ObjectId" Type="guid" />

View File

@@ -293,6 +293,7 @@
<xs:attribute name="EntityTypeNames" type="ColumnList" use="required"/>
<xs:attribute name="OrderBy" type="xs:string " use="optional"/>
<xs:attribute name="WhereExpression" type="xs:string " use="optional"/>
<xs:attribute name="DataQueryName" type="xs:string" use="optional"/>
</xs:complexType>
</xs:element>