Leadtools.Medical.Workstation.Client Requires Medical product license | Send comments on this topic. | Back to Introduction - All Topics | Help Version 16.5.9.25
DbQueryClient Class
See Also  Members   Example 
Leadtools.Medical.Workstation.Client.Local Namespace : DbQueryClient Class



Performs query operations against a DICOM database.

Syntax

Visual Basic (Declaration) 
Public Class DbQueryClient 
   Inherits QueryClient
Visual Basic (Usage)Copy Code
Dim instance As DbQueryClient
C# 
public class DbQueryClient : QueryClient 
C++/CLI 
public ref class DbQueryClient : public QueryClient 

Example

Visual BasicCopy Code
<Test> _
Public Sub DatabaseQueryLocal()
  Leadtools.Examples.Support.Unlock()
  Dim clientInfo As AeInfo = New AeInfo ()


  clientInfo.Address = Dns.GetHostName() 'local machine
  clientInfo.AETitle = "TEST_CLIENT"
  clientInfo.Port = 1000

  'Make sure that the FindAddIn is configured properly before using this class.
  Dim client As DbQueryClient = New DbQueryClient (clientInfo)

  client.EnableLog = True
  client.LogFileName = ("c:\DicomLog.txt")

  PerformClientQuery (client)
End Sub

Public Sub PerformClientQuery(ByVal client As QueryClient)
  Dim studiesQuery As FindQuery = New FindQuery ()


  Dim studies As ClientQueryDataSet = client.FindStudies (studiesQuery)


  If studies.Studies.Count > 0 Then
     Dim study As ClientQueryDataSet.StudiesRow = studies.Studies (0)
     Dim seriesQuery As FindQuery = New FindQuery()


     seriesQuery.StudyInstanceUID = study.StudyInstanceUID

     Dim series As ClientQueryDataSet = client.FindSeries (seriesQuery)

     For Each seriesRow As ClientQueryDataSet.SeriesRow In series.Series
       Dim imagesQuery As FindQuery = New FindQuery ()


       imagesQuery.SeriesInstanceUID = seriesRow.SeriesInstanceUID

       Dim images As ClientQueryDataSet = client.FindImages (imagesQuery)


       For Each image As ClientQueryDataSet.ImagesRow In images.Images
         Console.WriteLine ("SOPInstanceUID: {0}", image.SOPInstanceUID)

         If (Not image.IsSeriesInstanceUIDNull ()) Then
           Console.WriteLine("SeriesInstanceUID: {0}", image.SeriesInstanceUID)
         End If

         If (Not image.IsStudyInstanceUIDNull ()) Then
           Console.WriteLine("StudyInstanceUID: {0}", image.StudyInstanceUID)
         End If
       Next image
     Next seriesRow
  End If
End Sub
C#Copy Code
public void DatabaseQueryLocal() 

   Leadtools.Examples.Support.Unlock(); 
 
   AeInfo clientInfo = new AeInfo ( ); 
 
 
   clientInfo.Address = Dns.GetHostName(); //local machine 
   clientInfo.AETitle = "TEST_CLIENT" ; 
   clientInfo.Port    = 1000 ; 
 
   //Make sure that the FindAddIn is configured properly before using this class. 
   DbQueryClient client = new DbQueryClient ( clientInfo ) ; 
 
   client.EnableLog = true; 
   client.LogFileName = ( @"c:\DicomLog.txt" ) ; 
 
   PerformClientQuery ( client ) ; 

 
public void PerformClientQuery ( QueryClient client )  

   FindQuery studiesQuery = new FindQuery ( ) ; 
 
 
   ClientQueryDataSet studies = client.FindStudies ( studiesQuery ) ; 
 
 
   if ( studies.Studies.Count > 0 )  
   { 
      ClientQueryDataSet.StudiesRow study = studies.Studies [ 0 ] ; 
      FindQuery seriesQuery = new FindQuery(); 
 
 
      seriesQuery.StudyInstanceUID = study.StudyInstanceUID ; 
 
      ClientQueryDataSet series = client.FindSeries ( seriesQuery ) ; 
 
      foreach ( ClientQueryDataSet.SeriesRow seriesRow in series.Series )  
      { 
         FindQuery imagesQuery = new FindQuery ( ) ; 
 
 
         imagesQuery.SeriesInstanceUID = seriesRow.SeriesInstanceUID ; 
 
         ClientQueryDataSet images = client.FindImages ( imagesQuery ) ; 
 
 
         foreach ( ClientQueryDataSet.ImagesRow image in images.Images )  
         { 
            Console.WriteLine ( "SOPInstanceUID: {0}", image.SOPInstanceUID ) ; 
 
            if ( !image.IsSeriesInstanceUIDNull ( ) ) 
            { 
               Console.WriteLine("SeriesInstanceUID: {0}", image.SeriesInstanceUID); 
            } 
 
            if ( !image.IsStudyInstanceUIDNull ( ) ) 
            { 
               Console.WriteLine("StudyInstanceUID: {0}", image.StudyInstanceUID); 
            } 
         } 
      } 
   } 
}

Remarks

The implementation of this class uses the FindAddIn class to run the queries.

Check the FindAddIn to ensure the database configuration is set correctly in order for that class to function.

Inheritance Hierarchy

System.Object
   Leadtools.Medical.Workstation.Client.QueryClient
      Leadtools.Medical.Workstation.Client.Local.DbQueryClient

Requirements

Target Platforms: Microsoft .NET Framework 3.0, Windows XP, Windows Server 2003 family, Windows Server 2008 family

See Also

Leadtools.Medical.Workstation.Client requires a Medical toolkit license and unlock key. For more information, refer to: Imaging Pro/Document/Medical Features