-
Notifications
You must be signed in to change notification settings - Fork 0
/
AGC - Convert to Image Filing - 242.cs
77 lines (66 loc) · 3.51 KB
/
AGC - Convert to Image Filing - 242.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
// Skeleton generated by Hyland Unity Editor on 4/27/2017 8:51:01 AM
namespace CRConvertFinalDocument
{
using System;
using System.Collections.Generic;
using Hyland.Unity;
using UnityFileConversions;
/// <summary>
/// Create new CIU - Camera Ready Document from POSTCONV documents
/// </summary>
public class CRConvertFinalDocument : Hyland.Unity.IWorkflowScript
{
#region User-Configurable Script Settings
// Script name for diagnostics logging
private const string ScriptName = "242 - AGC - Convert to Image Filing";
// Diagnostics logging level - set to Verbose for testing, Error for production
private const Diagnostics.DiagnosticsLevel DiagLevel = Diagnostics.DiagnosticsLevel.Verbose;
// Date/Time format for diagnostics logging
private const string DateTimeFormat = "MM-dd-yyyy HH:mm:ss.fff";
private const string CRD_DOCUMENT_TYPE = "AGC - Filings";
private const string TEMP_DIRECTORY = @"C:\Temp\Unity\";
private const string CONVERTER_DIRECTORY = @"C:\Converter\FileConverter.exe";
#endregion
#region IWorkflowScript
/// <summary>
/// Implementation of <see cref="IWorkflowScript.OnWorkflowScriptExecute" />.
/// <seealso cref="IWorkflowScript" />
/// </summary>
/// <param name="app"></param>
/// <param name="args"></param>
public void OnWorkflowScriptExecute(Hyland.Unity.Application app, Hyland.Unity.WorkflowEventArgs args)
{
try
{
app.Diagnostics.WriteIf(Diagnostics.DiagnosticsLevel.Info, string.Format("{0} - Start Script - [{1}]", DateTime.Now.ToString(DateTimeFormat), ScriptName));
ConversionUtilities unityConverter = new ConversionUtilities(app, TEMP_DIRECTORY, CONVERTER_DIRECTORY);
List<FileDefinition> files = unityConverter.Convert(args.Document, UnityFileConversions.ImxFileType.Image, UnityFileConversions.ImportType.Document, app.Core.DocumentTypes.Find(CRD_DOCUMENT_TYPE), true);
unityConverter.CleanupFiles();
args.ScriptResult = true;
}
catch (InvalidProgramException ex)
{
app.Diagnostics.WriteIf(Diagnostics.DiagnosticsLevel.Error, string.Format("Invalid Program Exception: {0}", ex.Message));
app.Diagnostics.WriteIf(Diagnostics.DiagnosticsLevel.Error, string.Format("Stack Trace: {0}", ex.StackTrace));
args.ScriptResult = false;
}
catch (UnityAPIException ex)
{
app.Diagnostics.WriteIf(Diagnostics.DiagnosticsLevel.Error, string.Format("Unity API Exception: {0}", ex.Message));
app.Diagnostics.WriteIf(Diagnostics.DiagnosticsLevel.Error, string.Format("Stack Trace: {0}", ex.StackTrace));
args.ScriptResult = false;
}
catch (Exception ex)
{
app.Diagnostics.WriteIf(Diagnostics.DiagnosticsLevel.Error, string.Format("General Exception: {0}", ex.Message));
app.Diagnostics.WriteIf(Diagnostics.DiagnosticsLevel.Error, string.Format("Stack Trace: {0}", ex.StackTrace));
args.ScriptResult = false;
}
finally
{
app.Diagnostics.WriteIf(Diagnostics.DiagnosticsLevel.Info, string.Format("End Script - [{0}]", ScriptName));
}
}
#endregion
}
}