RunAutomaticTask VerifyFiles is falsely reporting zero errors

Hello,

I'm maintaining a small application that runs certain common translation tasks automatically and I am currently trying to implement an automatic verification check using the API.

To do this, I'm running the FileBasedProject.RunAutomaticTask Method on the target bilingual .sdlxliff file using AutomaticTemplateIds.VerifyFiles.

This seems to execute without an error, but the problem is that the report generated through the task does not actually show any errors or warnings. I'm testing the application on the SecondSample.docx file found in the SampleProject folder that comes with the installation of SDL Trados Studio 2019. I am also pretranslating this document using the sample TM "English-German.sdltm" that is also provided by SDL Trados Studio.

By running the "Verify Files" batch-task on the same .sdlxliff file using the actual SDL Trados Studio application, I can generate a verification report with 26 errors. This should be the expected outcome, since not all segments are being automatically translated by the TM.

So my question is, why doesn't the report generated through the RunAutomaticTask method show any errors? It actually seems to not use the QAChecker plugin at all. Am I missing something in the implementation?

Also is there any documentation available for the QAChecker settings? I wasn't able to find it in the Verification API documentation.

Thank you very much for any help.

Here is the relevant code and both of the generated reports:

public void RunVerifyFilesTask()
{
    //Set the QAChekcer Plugin settings
    ISettingsBundle settings = fbProject.GetSettings();

    SegmentVerificationSettings sver = new SegmentVerificationSettings
    {
    CheckUntranslatedSegments = true,
    CheckUntranslatedSeverity = 3, //Severity.High, //3 = Error
    CheckIdenticalSegments = true,
    CheckIdenticalSegmentsSeverity = 1 // 1 = Info
    };

    sver.SaveToSettingsBundle(settings, "QAVerificationSettings");
    fbProject.UpdateSettings(settings);

    //Run verification on the target language bilingual files
    Guid verifyTaskReportId = this.RunTaskOnTrgFiles(AutomaticTaskTemplateIds.VerifyFiles);
    fbProject.SaveTaskReportAs(verifyTaskReportId, Path+@"\Reports\Verification_Report.xls", ReportFormat.Excel);

}


}

Dateien prüfen en-US_de-DE_RunAutomaticTask.xml
<task name="Dateien prüfen"><taskInfo version="1.0.1" taskId="026599a8-8c74-46fc-9f23-daf9ce8a7f45" runAt="23.03.2020 11:24:16"><project name="Project_Laurent OrderId Base Project" /><activePlugins /></taskInfo><file name="SecondSample.docx.sdlxliff" path="c:\TradosServer\Laurent ClientId\Projects\Laurent UserId\Laurent OrderId Base Project\defProject\de-DE\SecondSample.docx.sdlxliff" guid="21612723-888e-4b0a-a865-aa9f32a9313e" lcid="1031"><Messages includeIgnored="False" /></file></task>

Dateien prüfen en-US_de-DE_BatchTaskVerify.xml
<task name="Dateien prüfen"><taskInfo version="1.0.1" taskId="dd446cee-c468-43c4-9048-943bbcc3905a" runAt="23.03.2020 11:25:49"><project name="Project_Laurent OrderId Base Project" /><activePlugins /></taskInfo><file name="SecondSample.docx.sdlxliff" path="C:\TradosServer\Laurent ClientId\Projects\Laurent UserId\Laurent OrderId Base Project\defProject\de-DE\SecondSample.docx.sdlxliff" guid="21612723-888e-4b0a-a865-aa9f32a9313e" lcid="1031"><Messages includeIgnored="False"><Message><Origin>QA Checker 3.0</Origin><Text>Segment wurde nicht übersetzt - "Park Hotel, Dub..."</Text><ErrorLevel>Error</ErrorLevel><Ignored>false</Ignored><ParagraphUnitId>b130e87b-7b90-4586-8e98-69b60d83e3d5</ParagraphUnitId><SegmentId>3</SegmentId><Source>Park Hotel, Dublin 6, Ireland - Friday, May 23, 2008</Source><Target /></Message><Message><Origin>QA Checker 3.0</Origin><Text>Segment wurde nicht übersetzt - "The National As..."</Text><ErrorLevel>Error</ErrorLevel><Ignored>false</Ignored><ParagraphUnitId>1e30be88-b231-4350-ad61-4f0b3c4bd656</ParagraphUnitId><SegmentId>4</SegmentId><Source>The National Association for Road Safety (NARS) invites all primary school teachers to participate in a day long conference on Road Safety education for four to eleven year old children.</Source><Target /></Message><Message><Origin>QA Checker 3.0</Origin><Text>Segment wurde nicht übersetzt - "For more inform..."</Text><ErrorLevel>Error</ErrorLevel><Ignored>false</Ignored><ParagraphUnitId>7c43376f-a19f-4f45-870c-94a968fca187</ParagraphUnitId><SegmentId>6</SegmentId><Source>For more information, contact your local branch of the Teachers Education Programme Foundation.</Source><Target /></Message><Message><Origin>QA Checker 3.0</Origin><Text>Segment wurde nicht übersetzt - "Collect the con..."</Text><ErrorLevel>Error</ErrorLevel><Ignored>false</Ignored><ParagraphUnitId>356c9f5f-0e34-4614-8cf8-2f5999f0e30b</ParagraphUnitId><SegmentId>7</SegmentId><Source>Collect the conference motor car mascots for your school.</Source><Target /></Message><Message><Origin>QA Checker 3.0</Origin><Text>Segment wurde nicht übersetzt - "Register today ..."</Text><ErrorLevel>Error</ErrorLevel><Ignored>false</Ignored><ParagraphUnitId>c25a37c3-0041-49ef-8407-a634091c0f9b</ParagraphUnitId><SegmentId>8</SegmentId><Source>Register today  and obtain a 20% discount!</Source><Target /></Message><Message><Origin>QA Checker 3.0</Origin><Text>Segment wurde nicht übersetzt - "Agenda:"</Text><ErrorLevel>Error</ErrorLevel><Ignored>false</Ignored><ParagraphUnitId>ea534487-f89b-4cb7-9dc5-ef2968bfec43</ParagraphUnitId><SegmentId>9</SegmentId><Source>Agenda:</Source><Target /></Message><Message><Origin>QA Checker 3.0</Origin><Text>Segment wurde nicht übersetzt - "Event"</Text><ErrorLevel>Error</ErrorLevel><Ignored>false</Ignored><ParagraphUnitId>8b05fc03-b317-404e-af23-9c08db21128c</ParagraphUnitId><SegmentId>11</SegmentId><Source>Event</Source><Target /></Message><Message><Origin>QA Checker 3.0</Origin><Text>Segment wurde nicht übersetzt - "Registration an..."</Text><ErrorLevel>Error</ErrorLevel><Ignored>false</Ignored><ParagraphUnitId>3423f9c6-9e28-41e6-ba43-f0cdfa998640</ParagraphUnitId><SegmentId>13</SegmentId><Source>Registration and Welcome</Source><Target /></Message><Message><Origin>QA Checker 3.0</Origin><Text>Segment wurde nicht übersetzt - "Road Safety Awa..."</Text><ErrorLevel>Error</ErrorLevel><Ignored>false</Ignored><ParagraphUnitId>1f950a44-9103-40f0-9d01-eea3aca2849c</ParagraphUnitId><SegmentId>15</SegmentId><Source>Road Safety Awareness in 4 - 11 year old children:</Source><Target /></Message><Message><Origin>QA Checker 3.0</Origin><Text>Segment wurde nicht übersetzt - "A Case Study"</Text><ErrorLevel>Error</ErrorLevel><Ignored>false</Ignored><ParagraphUnitId>1f950a44-9103-40f0-9d01-eea3aca2849c</ParagraphUnitId><SegmentId>16</SegmentId><Source>A Case Study</Source><Target /></Message><Message><Origin>QA Checker 3.0</Origin><Text>Segment wurde nicht übersetzt - "Coffee"</Text><ErrorLevel>Error</ErrorLevel><Ignored>false</Ignored><ParagraphUnitId>db978895-9d85-49eb-956b-ac72b648f9a7</ParagraphUnitId><SegmentId>18</SegmentId><Source>Coffee</Source><Target /></Message><Message><Origin>QA Checker 3.0</Origin><Text>Segment wurde nicht übersetzt - "Road Safety Edu..."</Text><ErrorLevel>Error</ErrorLevel><Ignored>false</Ignored><ParagraphUnitId>1cbfdb21-11ed-47aa-803f-730b032a1684</ParagraphUnitId><SegmentId>20</SegmentId><Source>Road Safety Education Programme (Minister for Education)</Source><Target /></Message><Message><Origin>QA Checker 3.0</Origin><Text>Segment wurde nicht übersetzt - "Lunch"</Text><ErrorLevel>Error</ErrorLevel><Ignored>false</Ignored><ParagraphUnitId>4665955e-7769-4388-843e-130526b47eb9</ParagraphUnitId><SegmentId>22</SegmentId><Source>Lunch</Source><Target /></Message><Message><Origin>QA Checker 3.0</Origin><Text>Segment wurde nicht übersetzt - "Workshops:"</Text><ErrorLevel>Error</ErrorLevel><Ignored>false</Ignored><ParagraphUnitId>dc021051-03a9-4fd7-9cd5-16f2e94aaa5f</ParagraphUnitId><SegmentId>24</SegmentId><Source>Workshops:</Source><Target /></Message><Message><Origin>QA Checker 3.0</Origin><Text>Segment wurde nicht übersetzt - "Bringing road s..."</Text><ErrorLevel>Error</ErrorLevel><Ignored>false</Ignored><ParagraphUnitId>dc021051-03a9-4fd7-9cd5-16f2e94aaa5f</ParagraphUnitId><SegmentId>25</SegmentId><Source>Bringing road safety into the classroom</Source><Target /></Message><Message><Origin>QA Checker 3.0</Origin><Text>Segment wurde nicht übersetzt - "Conclusions and..."</Text><ErrorLevel>Error</ErrorLevel><Ignored>false</Ignored><ParagraphUnitId>5db5eee3-03f8-4d69-86e6-0aa5c82570e8</ParagraphUnitId><SegmentId>27</SegmentId><Source>Conclusions and Close.</Source><Target /></Message><Message><Origin>QA Checker 3.0</Origin><Text>Segment wurde nicht übersetzt - "Association for..."</Text><ErrorLevel>Error</ErrorLevel><Ignored>false</Ignored><ParagraphUnitId>e2128868-e1e0-4351-88d6-7c5dfd19e7e4</ParagraphUnitId><SegmentId>28</SegmentId><Source>Association for Road Safety - Conference Day 2</Source><Target /></Message><Message><Origin>QA Checker 3.0</Origin><Text>Segment wurde nicht übersetzt - "Agenda:"</Text><ErrorLevel>Error</ErrorLevel><Ignored>false</Ignored><ParagraphUnitId>6278eacc-6ee6-4fa9-962b-f44487dfd285</ParagraphUnitId><SegmentId>29</SegmentId><Source>Agenda:</Source><Target /></Message><Message><Origin>QA Checker 3.0</Origin><Text>Segment wurde nicht übersetzt - "Event"</Text><ErrorLevel>Error</ErrorLevel><Ignored>false</Ignored><ParagraphUnitId>61c13658-afd3-4662-9687-51114a0b64d6</ParagraphUnitId><SegmentId>31</SegmentId><Source>Event</Source><Target /></Message><Message><Origin>QA Checker 3.0</Origin><Text>Segment wurde nicht übersetzt - "Registration an..."</Text><ErrorLevel>Error</ErrorLevel><Ignored>false</Ignored><ParagraphUnitId>9f54d6b8-7be8-4043-9ad7-b25830148753</ParagraphUnitId><SegmentId>33</SegmentId><Source>Registration and Welcome</Source><Target /></Message><Message><Origin>QA Checker 3.0</Origin><Text>Segment wurde nicht übersetzt - "Workshops:"</Text><ErrorLevel>Error</ErrorLevel><Ignored>false</Ignored><ParagraphUnitId>d835c1b8-050e-4347-8287-aeda5da3537f</ParagraphUnitId><SegmentId>35</SegmentId><Source>Workshops:</Source><Target /></Message><Message><Origin>QA Checker 3.0</Origin><Text>Segment wurde nicht übersetzt - "Selling the roa..."</Text><ErrorLevel>Error</ErrorLevel><Ignored>false</Ignored><ParagraphUnitId>d835c1b8-050e-4347-8287-aeda5da3537f</ParagraphUnitId><SegmentId>36</SegmentId><Source>Selling the road safety message to the wider community</Source><Target /></Message><Message><Origin>QA Checker 3.0</Origin><Text>Segment wurde nicht übersetzt - "Coffee"</Text><ErrorLevel>Error</ErrorLevel><Ignored>false</Ignored><ParagraphUnitId>200ec288-c7a8-41bd-8ec3-68abad83ea0f</ParagraphUnitId><SegmentId>38</SegmentId><Source>Coffee</Source><Target /></Message><Message><Origin>QA Checker 3.0</Origin><Text>Segment wurde nicht übersetzt - "Workshops:"</Text><ErrorLevel>Error</ErrorLevel><Ignored>false</Ignored><ParagraphUnitId>f9fb9765-31dc-4dd2-afe1-cddb4d860a02</ParagraphUnitId><SegmentId>40</SegmentId><Source>Workshops:</Source><Target /></Message><Message><Origin>QA Checker 3.0</Origin><Text>Segment wurde nicht übersetzt - "Working with Ro..."</Text><ErrorLevel>Error</ErrorLevel><Ignored>false</Ignored><ParagraphUnitId>f9fb9765-31dc-4dd2-afe1-cddb4d860a02</ParagraphUnitId><SegmentId>41</SegmentId><Source>Working with Road-Safety Partners</Source><Target /></Message><Message><Origin>QA Checker 3.0</Origin><Text>Segment wurde nicht übersetzt - "Conclusions and..."</Text><ErrorLevel>Error</ErrorLevel><Ignored>false</Ignored><ParagraphUnitId>b9022a28-a5c6-4794-9e0a-9146a832e127</ParagraphUnitId><SegmentId>43</SegmentId><Source>Conclusions and Close.</Source><Target /></Message></Messages></file></task>

  • I found the error.

    It turns out that, while learning how to use the SDL Trados Studio API, I followed one of the code examples: How to Create a Global Verifier.

    The VerifyFiles AutomaticTask was trying to use the "Idential Check" plug-In that I created by following the code example, even though I had already uninstalled it.

    The AutomaticTask was generating a "could not validate plug-in" message, but not throwing any errors. I only found the problem after looking at the Messages property of the AutomaticTask and writing all generated messages to my log.

    After deleting all of the files that were associated with the code example plug-in, the VerifyFiles Task executes properly (using QA Checker 3.0) and generates the correct error report.