【问题标题】:How to create an image import job using KTA SDK?如何使用 KTA SDK 创建图像导入作业?
【发布时间】:2020-12-07 08:58:50
【问题描述】:

我正在尝试使用 SDK 创建工作。发送电子邮件活动的简单工作就像魅力一样!

但是当我尝试使用变量输入文件夹创建作业以导入少量图像时,它根本不起作用。我是否缺少非常琐碎的设置?

我的流程有分类活动和提取活动 变量:DefaultImportFolder

仅供参考:如果我设置导入设置 -> 导入源,我的流程可以正常工作。这告诉我,我的流程 Smile 没有问题。但是当我尝试通过带有动态变量的控制台应用程序运行时,它不起作用。

以下是我的示例代码。 有什么帮助吗?

ProcessIdentity processIdentity = new ProcessIdentity
            {
                Name = "SDK TestProcess"
            };

            var jobService = new TotalAgility.Sdk.JobService();
            JobInitialization jobInitialization = new JobInitialization();

            InputVariableCollection variablesCollections = new InputVariableCollection();
            InputVariable inputVariable = new InputVariable
            {
                Id = "DefaultImportFolder",
                Value = @"\\FolderPath",
            };
            variablesCollections.Add(inputVariable);

            inputVariable = new InputVariable
            {
                Id = "ExportSuccess",
                Value = "true"
            };
            variablesCollections.Add(inputVariable);

            var createJobAndProgress = jobService.CreateJob(sessionId, processIdentity, jobInitialization);

            Console.WriteLine($"Job ID {createJobAndProgress.Id}");

按照史蒂夫的建议,尝试了 WithDocuments 方法仍然没有运气.....

JobWithDocumentsInitialization jobWithDocsInitialization = new JobWithDocumentsInitialization();

                Agility.Sdk.Model.Capture.RuntimeDocumentCollection documentsCollection = new Agility.Sdk.Model.Capture.RuntimeDocumentCollection();

                Agility.Sdk.Model.Capture.RuntimeDocument runtimeDoc = new Agility.Sdk.Model.Capture.RuntimeDocument
                {
                    FilePath = @"FolderPath\abc.tif",

                };

                documentsCollection.Add(runtimeDoc);

                jobWithDocsInitialization.Documents = documentsCollection;


                var jobIdentity = jobService.CreateJobWithDocuments(sessionId, processIdentity, jobWithDocsInitialization);
                Console.WriteLine($"Job ID {jobIdentity.Id}");

【问题讨论】:

    标签: kofax


    【解决方案1】:

    文件夹变量表示对 KTA 数据库中已存在的文件夹的引用,因此您不能只为变量设置文件路径。当您通过导入源创建作业时,它会在创建作业的过程中创建文件夹和文档。

    要在您的代码中执行相同操作,您可以使用“WithDocuments”API 之一,例如 CreateJobWithDocuments,它具有特定于将文档导入流程的参数,包括文件路径。

    正如其他答案 (Kofax TotalAgility Send a PDF Document to Jobs Queue (KTA)) 中所讨论的,您可能希望查看产品随附的示例代码(大多数人没有意识到它是可用的),并查看其他 API 函数有关上述“WithDocuments”API 所需参数的更多上下文。

    【讨论】:

    • 斯蒂芬,感谢您提供的信息。我已将代码更改为将 CreateJobWithDocuments 与 jobInitialization 一起使用。还是没有运气!有什么建议吗?
    • 您需要确保创建一个 RuntimeDocument 集合并设置 FilePath 属性。确保运行代码的用户可以访问文件路径。如果您仍然遇到问题,您将希望发布完整更新的代码以明确实际发生的情况(代码异常?作业暂停?作业中出现意外结果?) RuntimeDocument:docshield.kofax.com/KTA/en_US/7.8.0-dpm5ap0jk8/help/API/latest/…
    • 我发现了问题,inputVariable 区分大小写。一旦我匹配了变量大小写,我就可以导入文档。谢谢!
    • 是否可以创建或上传文档到现有文件夹 id ?
    • 不作为创建工作的一部分,不。如果您想稍后在流程中执行此类操作,请使用 MoveDocument API。但也为新问题创建新帖子。 docshield.kofax.com/KTA/en_US/7.8.0-dpm5ap0jk8/help/API/latest/…
    猜你喜欢
    • 1970-01-01
    • 2021-05-15
    • 1970-01-01
    • 1970-01-01
    • 2012-03-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多