You are on page 1of 21

IQM

Integral Quality Monitor

IQM Plan Mover Service


Extension for IQM User Manual

iRT Systems
Schlossstrasse 1, 56068 Koblenz, Germany

www.i-rt.de
IQM Plan Mover Service Extension User Manual v1.2 i
Copyright & Disclaimer

IQM Plan Mover Service Extension User Manual


© 2015-2021 iRT Systems GmbH. All rights reserved.
iRT Systems GmbH
Schlossstrasse 1, 56068 Koblenz, Germany
info@i-rt.de · http://www.i-rt.de

This device bears the CE mark in conformance with the European Medical
Device Directive

Copyright & Disclaimer for the Contents of this Manual


This manual and the software described herein are made available in confidence as
part of a license agreement and for the sole use of assisting the user in correct use of the
hardware and software of the system. This manual contains proprietary information and
may not be shared or distributed to other persons or 3rd parties without explicit written
consent of iRT Systems.
The contents of this manual are protected under copyright law. No part of the manual
may be stored in a database or distributed in electronic, mechanical, recorded form or
in any other way, without the prior written agreement of iRT Systems GmbH.
This extension manual is an appendix to the main IQM User Reference Manual. Please
consult the main manual for more information concerning copyright.

Trademarks and logos:


All trademarks and trade names are those of their respective owners.

IQM Plan Mover Service Extension User Manual v1.2 ii


IQM Plan Mover Service Extension User Manual v1.2 iii
Applicability
This manual applies to IQM Plan Mover Service as optionally delivered as a utility
with the IQM software. The service will be installed separately from the IQM
software and can be used in combination with any IQM software version.

Revision History
Revision Released Changes made (chapter/page)
on
1.0 2019-08-15 Initial release.

1.1 2020-03-12 Updates in chapter 2.4.3 Source Section and 2.5 Logging
regarding error handling. Added new Section 2.6
Troubleshooting.
1.2 2021-10-28 Updates in chapter 2.4 Configuration. Introduction of 3
new settings – Timeout, IsLocalDrive and CleanUp

IQM Plan Mover Service Extension User Manual v1.2 iv


IQM Plan Mover Service Extension User Manual v1.2 v
Table of Contents
Copyright & Disclaimer .............................................................................................. ii
Applicability .............................................................................................................. iv
Revision History .......................................................................................................... iv
Table of Contents ...................................................................................................... vi
1 About this manual ............................................................................................... 1
1.1 Location and Availability of the Manual and Electronic Instructions for
Use (eIFU).................................................................................................................1
2 IQM Plan Mover Service Extension .................................................................... 3
2.1 Installing the Plan Mover Service ................................................................4
2.2 Changing the user account that runs Plan Mover Service ......................4
2.3 Uninstalling the Plan Mover Service ............................................................5
2.4 Configuration ...............................................................................................5
2.5 Logging .......................................................................................................12
2.6 Troubleshooting .......................................................................................... 13

IQM Plan Mover Service Extension User Manual v1.2 vi


IQM Plan Mover Service Extension User Manual v1.2 vii
1 About this manual
The Plan Mover Service Extension User Manual is an extension of the main
manual, the IQM User Reference Manual, for the optional utility Plan Mover
Service.

1.1 Location and Availability of the Manual and Electronic Instructions


for Use (eIFU)
The IQM manuals are made available in an electronic version which fulfills the
regulatory requirements for "electronic Instructions For Use" (also called "eIFU"). It
is provided in electronic PDF document form and may be opened and read with
Adobe Acrobat Reader or any reader compatible with the PDF 1.4 format.
Adobe Acrobat Reader is pre-installed on the IQM Workstations. To download
the free Acrobat Adobe Reader application for viewing PDF files on other
computers, visit http://get.adobe.com/reader.
An electronic (PDF) copy of the manuals is available on the desktop of each
IQM Workstation. Either a shortcut to a central server location is provided, or a
copy is saved directly on the desktop of the IQM Workstation at the time of
installation. The manual is updated for each new software version, and the most
up-to-date PDF will be provided with the software release. Therefore, any time a
software update is applied to the IQM System, all manual PDF copies should be
replaced with the new, updated manual PDF from the software release.
It is recommended that an electronic (PDF) copy of the manuals be saved on
the desktop of any computer where IQM Review is installed, and that the
manual be updated any time the software is updated.
It is recommended to discard expired copies of the manual to ensure that all
users use the correct, current version of the manual.
To review whether the correct manual is available, compare the software
version given in the first Chapter Applicability of the User Reference Manual with
the version shown in the info screen (click the “i” icon) of any IQM application.
Alternatively, browse to the IQM installation folder and view the “product
version” file property of any IQM executable. The version numbers should match
to the extent of the first two digits, e.g. 1.6.
Users may print copies of the manuals for their own use for the purpose of
operating the IQM System. It is not permissible to supply the manuaIs to other
persons outside the user's hospital without permission of iRT Systems.
All IQM manuals are available for download to registered users from the iRT
website www.i-rt.de/support-downloads. Contact iRT Support for information
about access details.
Users may request one print (paper) copy of the manual by contacting iRT
Support by email, phone or fax:

IQM Plan Mover Service Extension User Manual v1.2 1


Email: support@i-rt.de
Telephone: +49(261) 91545-0
Fax: +49(261) 91545-99

IQM Plan Mover Service Extension User Manual v1.2 2


2 IQM Plan Mover Service Extension
The IQM System is designed to import DICOM RT plans from one source folder
(import directory) into the central IQM Database. For larger centers with multiple
sites, it may be required to operate not only one central database but one
database for each site and to automatically distribute plans from a central
location to site-specific locations.
The Plan Mover Service is a Windows service utility which is designed to meet
these needs: the service can be installed and operated on a central server
which receives all treatment plans. It can be configured to forward the plans
intended for a specific site, based on specific information in the plan file, from
the central location to the site-specific IQM Application Server. On that server,
where IQM Calculator Service is installed, the plans will be imported to the site-
specific IQM Database.

Caution:
Changes to the configuration file must be made with care.
Invalid or improper settings can lead to performance issues
of the IQM system. IQM cannot perform pre-treatment plan
QA or online fraction QA without the Dicom RT plan file
imported to the IQM System at the specific hospital or clinic
where the patient will be treated.
Consult iRT Support for assistance when making changes to
the configuration file.

IQM Plan Mover Service Extension User Manual v1.2 3


2.1 Installing the Plan Mover Service
In order to install the Plan Mover Service, copy the installation files to the
installation path “C:\Program Files (x86)\IQM.PlanMoverService”. Open the
Windows command prompt in “Run as administrator” mode, navigate to the
installation path and execute the command “PlanMover.Service.exe --install”.

Figure 1: Success message shown after service installation

The service needs to be started manually after installation. Right-click the service
name in either the Windows Task Manager or Windows Services utility and select
“Start.”
The service is presented as follows in Windows Services:
• Name: IQM PlanMover Service [IQM <version>]
• Description: iRT System GmbH IQM Integral Quality Monitor © < year of
release> iRT Systems GmbH

The service will run its job every 60 seconds. This time lapse value can be
configured using the “CheckInterval” parameter in the AppSettings section.
The service only processes DICOM files, regardless of the file extension. The
service moves Dicom files that it cannot read and any non-Dicom files present
in the specified source folder to an ‘Error’ sub-folder where they are excluded
from future processing cycles.
If any problem occurs during installation or startup, please check the Event
Viewer for recorded error events. For example, if the configuration file
(PlanMover.Config.ini) is invalid an error would occur and be logged.

2.2 Changing the user account that runs Plan Mover Service
After installation, the user logon used for running the service can be changed.
In the Windows Services utility, right-click the Plan Mover Service and select
“Properties”, then choose the “Log On” tab to enter the log-in credentials to be
used for running the service.

IQM Plan Mover Service Extension User Manual v1.2 4


2.3 Uninstalling the Plan Mover Service
To uninstall the Plan Mover Service, open the Windows command prompt in “Run
as administrator” mode, navigate to the installation path and execute the
command “PlanMover.Service.exe –uninstall.”

2.4 Configuration
The service can be configured using the “PlanMover.Config.ini” file. The sections
and parameters which can be defined are described in this chapter.
Parameters for which default values are defined are optional. If not defined, the
default setting will be applied.

2.4.1 Overview
The following example shows the contents of a complete and valid
configuration file.
[AppSettings]
LogDirectory="C:\PlanMover\Logs"
[Source:IncomingMove]
Mode=FileMove
Directory="C:\PlanMover\Incoming"
[Destination:Koblenz]
Directory="C:\PlanMover\Plans_Koblenz"
[Rule:ToKoblenz]
Source=IncomingMove
Destination=Koblenz
Tag="Treatment Machine Name"
Value=Agility
MatchMode=first
Condition=eq
OnMatch=nextfile
OnMismatch=nextfile

This example is further explained in the section “Rule Example”.

Multiple sections for defining sources, destinations and rules are allowed.
The section names (in the example: “Incoming”, “Koblenz” and “ToKoblenz”)
must be unique. The case is ignored when identifying sections by section name.
The section names may not include
• special characters that are forbidden in file names,
• umlauts,
• spaces

IQM Plan Mover Service Extension User Manual v1.2 5


For each file in “Source” the rules are processed in the sequence in which they
are defined in the configuration file.

2.4.2 AppSettings Section

Parameter name Value description

LogDirectory The path where log files will be stored.


Default: <installation path>\logs

CheckInterval The interval for the service to execute its job in milliseconds.
Integer value, default: 60000 (60 seconds)

Timeout Timespan in milliseconds in which the service retries failed


operations.
Integer value, default: 0 (0 seconds)

2.4.3 Source Section


Each Source section has a name assigned in the form [Source:<name>]. This
name will be used in the Rule section to reference a specific source, so it needs
to be unique.
Example: [Source:Incoming]
There must be at least one Source section specified and there can be as many
Source sections as needed.

Parameter name Value description

Mode The Mode parameter is used to indicate how a DICOM RT


plan file in the source directory will be processed if it matches
a rule.
Values:
• FileCopy – the file is copied
• FileMove – the file is moved
Further details are given below the table.

Directory A valid path to the source directory. All files in this directory
will be checked against the defined rules.
Note: if any file in the source folder cannot be read, it will be
automatically moved to a subfolder named “Error”. This
action and details about the problem will also be written to
the log file.

IncludeSubDirectories This parameter indicates whether only files in the Directory


folder are processed, i.e., IncludeSubDirectories=false, or
whether files in the folder and all subfolders are processed,
i.e., IncludeSubDirectories=true.

IQM Plan Mover Service Extension User Manual v1.2 6


Parameter name Value description
Values:
• false (default)
• true
Note: If IncludeSubDirectories=true and a non-Dicom file or
errored Dicom file is found in a subfolder, a separate ‘Error’
folder is created in that sub-folder and the file is moved into
it.
Note: the special “Error” folder(s), to which files that cannot
be read are moved, is not processed in any future
processing cycle.

IsLocalDrive This parameter indicates whether the source is a local or a


network drive.
IsLocalDrive=true, service shall try to create the folder
specified in the Directory path, if it does not exist.
IsLocalDrive=false (default), the service will not try to create
the specified Directory path folder, if not accessible. If the
service tries to process file(s) of the folder which is not
accessible, the service will skip the process for this source.

Further details about the Mode parameter:


• If Mode is set to “FileCopy”, the service will create one text file for each
rule in the source folder to control that a file is not copied more than
once. The text files are named “PlanMover.CopyList_<rule-name>.txt”.
Deleting such file might lead to files being copied several times. If a file
was already copied, it will be handled and logged as “AlreadyCopied”
or “NoMatch” in the next processing cycle.
• If Mode is set to “FileMove” and after processing the files in the source
folder there are any files that were not moved, the service will check
each file for a rule match every time it executes.
Note: If it is desired to clean up the source folder and to move files which
did not match any rule to a separate folder in order to avoid processing
them in every cycle, a dedicated rule should be created as the last rule
– see section 2.4.5 Rule and CleanUp Sections.

2.4.4 Destination Section


Each Destination section has a name assigned in the form [Destination:<name>].
This name will be used in the Rule section to reference a specific source, so it
needs to be unique.
Example: [Destination:Koblenz]
There must be at least one Destination section specified and there can be as
many Destination sections as needed.

IQM Plan Mover Service Extension User Manual v1.2 7


Parameter name Value description

Mode The Mode parameter is used to determine the protocol used to


send the matched files to their destination. Currently, only file
operations are available (FileCopy or FileMove, as defined in the
Source section).
Value: File (default)

Directory A valid path to the destination directory.

IsLocalDrive This parameter indicates whether the destination is a local or a


network drive.
IsLocalDrive=true, service shall try to create the folder specified
in the Directory path, if it does not exist.
IsLocalDrive=false (default), the service will not try to create the
specified Directory path folder, if not accessible. If the service
tries to process file(s) of the folder which is not accessible, the
service will skip the process for this destination.

2.4.5 Rule and CleanUp Sections


The header of each Rule or CleanUp section identifies the processing type and
name/description.
[[Rule|CleanUp]:(RuleName)]
Examples
[Rule:ToKoblenz]
[CleanUp:UnmatchedRTPlans]
Rule Sections filter for certain Plan characteristics and Copy or Move matching
plans to a specified destination location. CleanUp Sections move files that did
not match any of the defined Rules out of the Source folder so that they are not
continually re-processed.
Rules are executed in the order defined in the configuration file, except that all
Cleanup Sections are executed after all Rule Sections.

2.4.5.1 Rule Section(s)


The following parameters define the source, destination and options for each
rule section.

Parameter name Value description

Source The name of a defined Source section

IQM Plan Mover Service Extension User Manual v1.2 8


Parameter name Value description

Destination The name of a defined Destination section

Tag A valid DICOM tag that identifies the attribute used for matching
DICOM files according to this rule.
Alternative values:
a) attribute name (as defined in DICOM standard 1), for
example:
Tag=“Treatment Machine Name”
b) attribute tag in the format
(XXXX,XXXX)
where XXXX are hexadecimal numbers,
for example:
Tag=(300A,00B2)

Value Value of the DICOM tag defined in the “Tag” parameter used to
determine whether to process DICOM files according to this rule.

MatchMode The MatchMode parameter is used to determine which tags in


the currently processed DICOM file are evaluated to determine
whether the rule matches. When using “All”, it’s all the tags, and
“Any” means at least one tag value needs to match for the rule
to be executed. These settings are explained with an example
later.
Values:
• first – the file will be processed if the first tag defined in
“Tag” appearing in the DICOM file matches the defined
“Value”
• any – the file will be processed if any tag defined in
“Tag” matches the defined “Value”
• all – the file will be processed if all tags defined in “Tag”
match the defined “Value”

Condition The Condition parameter can be set to determine whether the


file should be processed if the tag defined in “Tag” is equals to
the value in “Value” (eq) or if it is not equal (neq).
Values:
• eq – equal (default)
• neq - not equal

OnMatch This parameter defines what should happen if the current file
matches the rule, after it was processed.
Values:

1DICOM RT General Plan Module:


http://dicom.nema.org/medical/dicom/current/output/chtml/part03/sect_C.8.8.9.html

IQM Plan Mover Service Extension User Manual v1.2 9


Parameter name Value description

• NextFile – the same rule is evaluated for the next file in


the source directory

Note: OnMatch must be set to NextFile, there is no default


setting.

OnMismatch This parameter defines what should happen if the current file
does not match the rule.
Values:
• NextFile – the rule is evaluated for the next file in the
source

Note: OnMismatch must be set to NextFile, there is no default


setting.

2.4.5.1.1 Rule Example


The following walk through of the rule from the section “Overview” demonstrates
how the syntax of the configuration file is applied.

[Rule:ToKoblenz]
Source=IncomingMove
Destination=Koblenz
Tag="Treatment Machine Name"
MatchMode=first
Condition=eq
Value=Agility
OnMatch=nextfile
OnMismatch=nextfile

The service will start by evaluating the first rule for the first DICOM file in the source
folder (ordered by creation date and time). If the first “Treatment Machine
Name” attribute value in the file equals “Agility”, then the action defined in the
source (“FileMove”) is applied (in other words, “the file is processed”): it is moved
from the source directory defined in [Source:IncomingMove] to the destination
directory in [Destination:Koblenz]. Then, the same rule will be evaluated for the
next file.
Changing the “MatchMode” value to “All” requires all “Treatment Machine
Name” values in the DICOM file to be equal to “Agility” for the file to be
processed. Setting it to “Any”, at least one “Treatment Machine Name” value
needs to be equal to “Agility” for the file to be processed.

IQM Plan Mover Service Extension User Manual v1.2 10


Changing the “Condition” value to “neq” and keeping “MatchMode=first”
means that the first “Treatment Machine Name” value can be anything except
“Agility” for the file to be processed.
2.4.5.1.2 Filtering for valid RT Plans
In case a file that is not a valid RT Plan is copied to the Source folder, it is helpful
to include a filtering rule at the start of the .ini file to move these files out of the
Source directory before the action rules are applied. Otherwise, the not-a-valid-
plan file will be evaluated against every rule in the configuration file.
[Source:IncomingMove]
Mode=FileMove
Directory="C:\PlanMover\Incoming"
[Destination:NotMatched]
Directory="C:\PlanMover\Plans_NotMatched"
[Destination:NotPlans]
Directory="C:\PlanMover\NotPlans"
[Rule:FilterIncomingNotPlans]
Source=IncomingMove
Destination=NotPlans
Tag="Modality"
MatchMode=any
Condition=neq
Value=RTPlan
OnMatch=nextfile
OnMismatch=nextfile

2.4.5.2 CleanUp Section(s)


Since DICOM files which are not moved may accumulate in the source folders,
it may be helpful to clean up the source folder at the end of each cycle and to
move files which did not match any rule to a separate cleanup folder.
The CleanUp Sections are configured like the Rule Sections but all CleanUp
Sections are processed after all regular Rule Sections. CleanUp Sections should
be configured to only process files that were not matched to an earlier rule. If
for example a folder is not accessible during a processing cycle, any files which
should have been copied or moved to this folder will be excluded from the
CleanUp Section processing.
Note: CleanUp rules are processed at the end of each cycle after all rules of
type Rule have been processed.
For example, the following settings can be used. The first CleanUp rule separates
out RT treatment plans, assuming that there are no valid DICOM plans where
“Patient ID” equals 0.

IQM Plan Mover Service Extension User Manual v1.2 11


[Source:IncomingMove]
Mode=FileMove
Directory="C:\PlanMover\Incoming"
[Destination:NotMatched]
Directory="C:\PlanMover\Plans_NotMatched"
[Destination:NotPlans]
Directory="C:\PlanMover\NotPlans"
[CleanUp:CleanupIncomingRTPlans]
Source=IncomingMove
Destination=NotMatched
Tag="Patient ID"
MatchMode=any
Condition=neq
Value=0
OnMatch=nextfile
OnMismatch=nextfile

2.5 Logging
The folder where the service writes log files is defined using the “LogDirectory”
parameter in the “AppSettings” section. If it is not defined, the log files will be
written to a subdirectory of the installation directory named “Logs”. A new log
file will be created for each day on which the service is running.
If the configuration file is invalid and the service is started, details about the
invalid settings can be found in the log file. If a configuration error occurs before
the Logs directory location have been read from the configuration file, the log
will be created instead in the default “Logs” subfolder of the application folder.
“Fatal” errors which lead to a service termination are written both to the Plan
Mover application log file and to the Windows Event Log (Windows Application
Log). Entries in the Event Log written by the PlanMover Service have the Source
“PlanMover.Service”.
When the service starts, it will log startup information, including assembly
properties such as name and version as well as all settings from the configuration
file. If an optional parameter is not set and therefore the default value is applied,
this information is also logged.
Whenever a DICOM plan file is processed, i.e., copied or moved, the log file will
contain the information which file was copied or moved to which folder
according to which rule. It is also logged if a file were skipped (not processed)
and why.
If a file in one of the specified source folders cannot be read by the software, for
example, due to an unexpected file type (non-Dicom file or invalid Dicom tags
or other unexpected content in a Dicom file), the file will be moved to a new
subfolder of the specific source folder named “Error”. This is done to prevent the

IQM Plan Mover Service Extension User Manual v1.2 12


service from processing the erroneous file over and over again. The action of
moving such a file to an “Error” folder is written to the log file with further details
about the problem, if known.

2.6 Troubleshooting
Refer to the PlanMover log file and the Windows Event Log for troubleshooting,
for example if files do not arrive in the intended target location as expected. The
log file will also provide details about files that were skipped or files that could
not be read and were therefore moved to the source folder’s “Error” subfolder.
Review the files in these “Error” folders.
If the log file is not found or not updated in the expected Logs directory, check
the application folder for a \Logs subdirectory. If a configuration error occurs
before the Logs directory location have been read from the configuration file, a
log is created in this default location instead.

IQM Plan Mover Service Extension User Manual v1.2 13

You might also like