Review the operation for the:
Output document header evaluation (performed before delivery). |
|
Delivery process. |
|
Delivery conclusion. |
Output document header evaluation
A delivery object has a
Watcher thread that is dedicated to watching its directory using completion ports.
When a new file is added to the directory, this thread
Adds the name of the file to the preliminary output document list.
Goes back to monitoring the directory.
Control thread that checks each file in the preliminary list (if there are files) to make sure that it has the required header.
If the file:
Does have a valid header
Document Delivery:
Copies the file without the header into the work directory.
Makes a new entry for the output document list, which contains the name of the:
File.
Destination file.
Places the entry at the end of the list, to ensure that the output documents are processed in sequence.
Does not have the required header
Document Delivery:
Generates an audit message.
Moves the file to the flush directory.
Delivery process
Network or FTP |
|
HTTP |
Network or FTP delivery
Network or FTP delivery attempts to deliver the first file in the output document list. The method that is used is defined in the delivery object configuration.
Options are:
Overwrite |
|
Fail On Existing |
|
Append |
Document Delivery delivers the file unconditionally.
Destination file does exist
Document Delivery
Delivers the output file to the remote location with the following name.
DDTEMP_<destination file name>
Where
DDTEMP_ denotes a temporary file.
<destination file name> is the name the file will be when it reaches its destination.
Deletes the existing file, if a file exists.
Changes the output file name with the DDTEMP_ prefix to the original destination filename.
Destination file does not exist
Delivers the output file to the remote location with the following name.
DDTEMP_<destination file name>
Where
DDTEMP_ denotes a temporary file.
<destination file name> is the name the file will be when it reaches its destination.
Changes the output file name with the DDTEMP_ prefix to the original destination filename.
Fail On Existing
Checks the remote location to see if the destination file already exists.
Destination file does exist
Document Delivery fails the delivery.
Destination file does not exist
Document Delivery:
Delivers the output file to the remote location with the following name.
DDTEMP_<destination file name>
Where
DDTEMP_ denotes a temporary file.
Changes the output file name with the DDTEMP_ prefix to the original destination filename.
Important: Append only applies to Mapped Network and FTP delivery.
The following happens if the destination file:
Destination file does exist
Document Delivery:
Copies the remote file to the working directory with the following name.
DDTEMP_<destination file name>
Where
DDTEMP_ denotes a temporary file.
Appends the append file with the body of the output document.
Delivers the append file to the remote location with the following name.
DDTEMP_<destination file name>
Where
DDTEMP_ denotes a temporary file.
Deletes the existing file, if a file exists.
Changes the destination file name with the DDTEMP_ prefix to the original destination filename.
Destination file does not exist
Document Delivery:
Delivers the append file to the remote location with the name of the destination file pre-pended with DDTEMP_.
Changes the destination file name with the DDTEMP_ prefix to the original destination filename.
HTTP delivery
HTTP attempts to deliver the first file in the output document. The method that is used is defined in the delivery object configuration.
Options are:
Overwrite |
|
Fail On Existing |
Document Delivery delivers the file unconditionally.
Destination file does exist
Document Delivery overwrites the destination file.
Destination file does not exist
Delivers the file.
Fail On Existing
Document Delivery checks the remote location to see if the destination file already exists.
Destination file does exist
Fails the delivery
Re-attempts the delivery, as configured.
Destination file does not exist
Delivers the file.
Delivery conclusion
The following occurs based on the status of the delivery.
If in during delivery:
Any of the delivery steps are interrupted by an error
Document Delivery stores the status of the delivery so a step does not have to be repeated.
Delivery fails
Document Delivery logs an audit message.
If a retry count has been configured:
Document Delivery:
Attempts the retry after the retry interval has elapsed.
Keeps a count of the number of times this particular delivery has failed.
If the number of failures is greater than the number of configured failures before alarm:
The CIMPLICITY alarm point triggers an alarm.
Document Delivery continues to resend the document until all retries have been attempted.
If the retryCount parameter is set to INFINITE(-1)
Document Delivery will resend the document until it succeeds.
Delivery succeeds
Document Delivery:
Logs an audit message.
Resets all error parameters.
Deletes the output document.
Number of retries has been exceeded
Document Delivery:
Logs an audit message.
Resets all error parameters.
Moves the output document to the flush directory.
Note: There may be occasions when the project has been shut down before all deliveries have occurred. When the project starts up again, the directory notification will not see these files as new, so it will not do a notification.
To solve this issue, an Document Delivery does an initial directory scan to process any unsent output documents. This scan will put output documents on the output document list in the order that they were created; the oldest document is sent out first.
About Document Delivery |