Generates a SQL WHERE statement (using the given matching parameters) that returns groups of records that can be used for pagination.
matchingParams
A collection of Leadtools.Medical.DataAccessLayer.Catalog.CatalogElement arrays to generate the SQL WHERE statement from.
tableName
The name of the System.Data.DataTable which will be queried in the database.
keyField
The primary key field of the tableName.
orderByField
A field of the tableName that the results will be ordered by.
queryPageInfo
Specifies the page number and the size of the page of the query result.
originalTableQuery
An SQL statement that is the FROM clause of the original query (the a non-pagination version of the query)
A SQL WHERE statement using the given matching parameters.
The returned SQL statement is not guaranteed to work with all database engines. However, the statement can be used with ] Microsoft SQL Server engines.
The method works by combining all of the Leadtools.Medical.DataAccessLayer.Catalog.CatalogElement in each array with an AND operator and inserting an OR operator between each Leadtools.Medical.DataAccessLayer.Catalog.CatalogElement array.
The method will use the Leadtools.Medical.DataAccessLayer.Catalog.CatalogElement.EntityName property as the SQL table name and the Leadtools.Medical.DataAccessLayer.Catalog.CatalogElement.ElementName property as the SQL column name for the SQL statement.
For date-time matching, this method can handle the System.DateTime, Leadtools.Dicom.DicomDateRangeValue, Leadtools.Dicom.DicomTimeRangeValue and Leadtools.Dicom.Common.DataTypes.DateRange data types.
Any other value will be converted to a string where wild card/single character matching could be performed using the MatchAllCharacters and MatchOneCharacter methods.
If the string value contains the MatchingValueSeparator value, the values will be separated with an OR operator.
You can override the default using the WhereStatementGenerator property.