Move(DicomScp,string,string) Method

Summary
Sends a C-MOVE-REQ message to a peer member of a connection defined by Scp.
Syntax
C#
VB
C++
public void Move( 
   DicomScp Scp, 
   string DestAE, 
   string StudyInstanceUID 
) 
  
Public Overloads Sub Move( _ 
   ByVal Scp As DicomScp, _ 
   ByVal DestAE As String, _ 
   ByVal StudyInstanceUID As String _ 
)  
public: 
void Move(  
   DicomScp^ Scp, 
   String^ DestAE, 
   String^ StudyInstanceUID 
)  

Parameters

Scp
The peer connection to send the C-MOVE-REQ to.

DestAE
The name of the Application Entity to which to move the data. If DestAE is null or empty the dataset will be moved to the AETitle defined in DicomFindSCU

StudyInstanceUID
The study instance UID of the study to move.

Remarks

Performs a study level move. All series under the specified study will be moved to the DestAE.

Example

Moves the specified study to the local computer.

C#
VB
using Leadtools; 
using Leadtools.Dicom.Scu; 
using Leadtools.Dicom.Scu.Common; 
using Leadtools.Dicom; 
using Leadtools.Dicom.Common.DataTypes; 
using Leadtools.Dicom.Common.DataTypes.Status; 
 
 
public void MoveStudy() 
{ 
   DicomEngine.Startup(); 
   DicomNet.Startup(); 
 
   QueryRetrieveScu retrieveStudy = new QueryRetrieveScu(); 
   FindQuery query = new FindQuery(); 
   DicomScp scp = new DicomScp(); 
 
   // 
   // Change these parameters to reflect the calling AETitle. 
   // 
 
   retrieveStudy.AETitle = "LEAD_CLIENT"; 
   retrieveStudy.HostPort = 1000; 
   retrieveStudy.HostAddress = Dns.GetHostEntry(Dns.GetHostName()).AddressList.FirstOrDefault(ip => ip.AddressFamily == AddressFamily.InterNetwork); 
 
   // 
   // Change these parameters to reflect the called AETitle (server). 
   // 
 
   scp.AETitle = "MI_SERVER"; 
   scp.Port = 104; 
   scp.Timeout = 60; 
   scp.PeerAddress = IPAddress.Parse("10.1.1.96"); 
 
   retrieveStudy.BeforeCMove += new BeforeCMoveDelegate(retrieveStudy_BeforeCMove); 
   retrieveStudy.Moved += new MovedDelegate(retrieveStudy_Moved); 
   retrieveStudy.AfterCMove += new AfterCMoveDelegate(retrieveStudy_AfterCMove); 
   retrieveStudy.HostReady += RetrieveStudy_HostReady; 
   retrieveStudy.Move(scp, string.Empty, "1.2.840.114257.3.6.5.41964868"); 
 
   DicomNet.Shutdown(); 
   DicomEngine.Shutdown(); 
} 
 
private void RetrieveStudy_HostReady(object sender, HostReadyEventArgs e) 
{ 
   if (e.ScpHost != null) 
   { 
      Console.WriteLine("HostReady: Host AETitle:{0} Host Port:{1}", e.ScpHost.AETitle, e.ScpHost.HostPort); 
   } 
} 
 
void retrieveStudy_BeforeCMove(object sender, BeforeCMoveEventArgs e) 
{ 
   Console.WriteLine("Before CMove"); 
} 
 
void retrieveStudy_Moved(object sender, MovedEventArgs e) 
{ 
   Console.WriteLine(e.Patient.Name.Full); 
   Console.WriteLine(e.Study.AccessionNumber); 
   Console.WriteLine(e.Series.Number); 
   Console.WriteLine(e.Instance.SOPInstanceUID); 
   Console.WriteLine("=========================================="); 
} 
 
void retrieveStudy_AfterCMove(object sender, AfterCMoveEventArgs e) 
{ 
   Console.WriteLine("{0} Completed", e.Completed); 
   Console.WriteLine("{0} Failed", e.Failed); 
   Console.WriteLine("{0} Warning", e.Warning); 
   Console.WriteLine("Status: {0}", e.Status); 
 
   if (e.Status != DicomCommandStatusType.Success) 
   { 
      string statusAllString = e.StatusAll.ToString(StatusFormatFlags.IgnoreStatus, "\n", "\t"); 
      Console.WriteLine(statusAllString); 
   } 
} 
Imports Leadtools 
Imports Leadtools.Dicom.Scu 
Imports Leadtools.Dicom.Scu.Common 
Imports Leadtools.Dicom 
Imports Leadtools.Dicom.Common.DataTypes 
 
Public Sub MoveStudy() 
    DicomEngine.Startup() 
    DicomNet.Startup() 
 
    Dim retrieveStudy As QueryRetrieveScu = New QueryRetrieveScu() 
    Dim query As FindQuery = New FindQuery() 
    Dim scp As DicomScp = New DicomScp() 
 
    ' 
    ' Change these parameters to reflect the calling AETitle. 
    ' 
    retrieveStudy.AETitle = "LEAD_CLIENT" 
    retrieveStudy.HostPort = 1000 
    retrieveStudy.HostAddress = Dns.GetHostEntry(Dns.GetHostName()).AddressList.FirstOrDefault(Function(ip) ip.AddressFamily = AddressFamily.InterNetwork) 
 
    ' 
    ' Change these parameters to reflect the called AETitle (server). 
    ' 
    scp.AETitle = "MI_SERVER" 
    scp.Port = 104 
    scp.Timeout = 60 
    scp.PeerAddress = IPAddress.Parse("10.1.1.96") 
 
    AddHandler retrieveStudy.BeforeCMove, AddressOf retrieveStudy_BeforeCMove 
    AddHandler retrieveStudy.Moved, AddressOf retrieveStudy_Moved 
    AddHandler retrieveStudy.AfterCMove, AddressOf retrieveStudy_AfterCMove 
    AddHandler retrieveStudy.HostReady, AddressOf retrieveStudy_HostReady 
    retrieveStudy.Move(scp, String.Empty, "1.2.840.114257.3.6.5.41964868") 
 
    DicomNet.Shutdown() 
    DicomEngine.Shutdown() 
End Sub 
 
Private Sub retrieveStudy_HostReady(ByVal sender As Object, ByVal e As HostReadyEventArgs) 
    If e.ScpHost IsNot Nothing Then 
        Console.WriteLine("HostReady: Host AETitle:{0} Host Port:{1}", e.ScpHost.AETitle, e.ScpHost.HostPort) 
    End If 
End Sub 
 
Private Sub retrieveStudy_BeforeCMove(ByVal sender As Object, ByVal e As BeforeCMoveEventArgs) 
    Console.WriteLine("Before CMove") 
End Sub 
 
Private Sub retrieveStudy_Moved(ByVal sender As Object, ByVal e As MovedEventArgs) 
    Console.WriteLine(e.Patient.Name.Full) 
    Console.WriteLine(e.Study.AccessionNumber) 
    Console.WriteLine(e.Series.Number) 
    Console.WriteLine(e.Instance.SOPInstanceUID) 
    Console.WriteLine("==========================================") 
End Sub 
 
Private Sub retrieveStudy_AfterCMove(ByVal sender As Object, ByVal e As AfterCMoveEventArgs) 
    Console.WriteLine("{0} Completed", e.Completed) 
    Console.WriteLine("{0} Failed", e.Failed) 
    Console.WriteLine("{0} Warning", e.Warning) 
    Console.WriteLine("Status: {0}", e.Status) 
End Sub 
Requirements

Target Platforms

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

Leadtools.Dicom.Scu Assembly
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2021 LEAD Technologies, Inc. All Rights Reserved.