Products | Support | Email a link to this topic. | Send comments on this topic. | Back to Introduction - All Topics | Help Version 19.0.4.3
|
Leadtools.Documents.Converters Namespace > DocumentConverterJobs Class : RunJob Method |
public void RunJob( DocumentConverterJob job )
'Declaration
Public Sub RunJob( _ ByVal job As DocumentConverterJob _ )
'Usage
Dim instance As DocumentConverterJobs Dim job As DocumentConverterJob instance.RunJob(job)
public void runJob(DocumentConverterJob job)
public: void RunJob( DocumentConverterJob^ job )
RunJob will block the current thread till the method returns. To run a job asynchronously, use RunJobAsync.
When this method returns, DocumentConverterJob.Status will contain the status of the job and whether it was successful (DocumentConverterJobStatus.Success), completed but with errors (DocumentConverterJobStatus.SuccessWithErrors) or was aborted by the user or due to recoverable errors (DocumentConverterJobStatus.Aborted).
If errors did occur, then DocumentConverterJob.Errors will contain a list of error description values.
The above is correct when the value of DocumentConverterOptions.JobErrorMode is set to DocumentConverterJobErrorMode.Continue (the default) which catches all the exceptions and adds them to the error list. If the mode was set to DocumentConverterJobErrorMode.Abort then exceptions are not caught by the engine and instead delegate up to the calling code as usual.
To use this method, initialize a new DocumentConverterJobData object with the job's parameters (input file name or document, pages, output format, output file name, annotations, etc.), then use CreateJob to create the DocumentConverterJob object passed as job to this method. Finally, call RunJob passing the DocumentConverterJob.
If tracing is enabled using DocumentConverterDiagnostics.EnableTrace, then logging and debugging messages will be sent to any trace listener while the job is running.
The JobStarted event will occur once right after RunJob is called. Then one or more JobOperation events will occur while the job is running with information on the various operations being performed. Finally the JobCompleted will fire once when the job is completed (successfully or not) and right before this method returns.
Imports Leadtools Imports Leadtools.Codecs Imports Leadtools.Forms.DocumentWriters Imports Leadtools.Svg Imports Leadtools.Documents Imports Leadtools.Caching Imports Leadtools.Annotations.Core Imports Leadtools.Forms.Ocr Imports Leadtools.Documents.Converters <TestMethod> _ Public Sub DocumentConverterJobsRunJobExample() Using documentConverter As New DocumentConverter() Dim inFile As String = Path.Combine(ImagesPath.Path, "Leadtools.docx") Dim outFile As String = Path.Combine(ImagesPath.Path, "output.tif") Dim format As RasterImageFormat = RasterImageFormat.Tif Dim jobData As DocumentConverterJobData = DocumentConverterJobs.CreateJobData(inFile, outFile, format) jobData.JobName = "conversion job" Dim job As DocumentConverterJob = documentConverter.Jobs.CreateJob(jobData) documentConverter.Jobs.RunJob(job) If job.Status = DocumentConverterJobStatus.Success Then Console.WriteLine("Success") Else Console.WriteLine("{0} Errors", job.Status) For Each errorItem As DocumentConverterJobError In job.Errors Console.WriteLine(" {0} at {1}: {2}", errorItem.Operation, errorItem.InputDocumentPageNumber, errorItem.Error.Message) Next End If End Using End Sub
using Leadtools; using Leadtools.Codecs; using Leadtools.Forms.DocumentWriters; using Leadtools.Svg; using Leadtools.Documents; using Leadtools.Caching; using Leadtools.Annotations.Core; using Leadtools.Forms.Ocr; using Leadtools.Documents.Converters; [TestMethod] public void DocumentConverterJobsRunJobExample() { using (DocumentConverter documentConverter = new DocumentConverter()) { var inFile = Path.Combine(ImagesPath.Path, @"Leadtools.doc"); var outFile = Path.Combine(ImagesPath.Path, @"output.tif"); var format = RasterImageFormat.Tif; var jobData = DocumentConverterJobs.CreateJobData(inFile, outFile, format); jobData.JobName = "conversion job"; var job = documentConverter.Jobs.CreateJob(jobData); documentConverter.Jobs.RunJob(job); if (job.Status == DocumentConverterJobStatus.Success) { Console.WriteLine("Success"); } else { Console.WriteLine("{0} Errors", job.Status); foreach (var error in job.Errors) { Console.WriteLine(" {0} at {1}: {2}", error.Operation, error.InputDocumentPageNumber, error.Error.Message); } } } }