GenerateWherePaginationStatement Method

Summary
Generates a SQL WHERE statement (using the given matching parameters) that returns groups of records that can be used for pagination.
Syntax
C#
C++/CLI
public static string GenerateWherePaginationStatement( 
   Collection<CatalogElement[]> matchingParams, 
   string tableName, 
   string keyField, 
   string orderByField, 
   QueryPageInfo queryPageInfo, 
   string originalTableQuery 
) 
public: 
static String^ GenerateWherePaginationStatement(  
   Collection<array<CatalogElement^>>^ matchingParams, 
   String^ tableName, 
   String^ keyField, 
   String^ orderByField, 
   QueryPageInfo^ queryPageInfo, 
   String^ originalTableQuery 
)  

Parameters

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)

Return Value

A SQL WHERE statement using the given matching parameters.

Remarks

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.

Requirements

Target Platforms

Help Version 22.0.2023.2.2
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.Medical.DataAccessLayer Assembly
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.