Under the version of 2019 SR2 - 15.2.0.1041, when partially matched with translation memory meanwhile using the self-developed plugin under the check-box "lookup segments in MT even if a TM match has been found", there would be a translation error reported. But under the version of 2019 - 15.0.1.36320 and SDL Trados Studio 2019 SR2 - 15.2.8.3007, it will work well. But for some policy reasons, I cannot change or use other version.


the Error message in the Studio log file as following:
ERROR [2021-02-02 10:47:58,276] Sdl.TranslationStudio.Editor.Translation.Translator - Object reference not set to an instance of on object.
System.AggregateException:one or more error have occurred. ---> System.NullReferenceException: Null Reference Exception.
ε¨ Sdl.ProjectApi.Translation.FuzzyMatchRepair.TranslationSource.TranslationMemorySource.GetTranslations(IReadOnlyList`1 sourceTokens, TranslationPurpose purpose, ICollection`1 proposals, SegmentAndSubsegmentSearchResultsMerged searchResults, Boolean completeTranslationsOnly)
ε¨ Sdl.ProjectApi.Translation.FuzzyMatchRepair.TranslationSource.TranslationMemorySource.GetTranslations(List`1 sourceTokens, TranslationPurpose purpose, Boolean completeTranslationsOnly)
ε¨ Sdl.ProjectApi.Translation.FuzzyMatchRepair.TranslationSource.TranslationMemorySource.AddSearchIfRequired(List`1 searchTokens, TranslationPurpose proposalPurpose, Boolean completeProposals, Dictionary`2 requiredSearches)
ε¨ Sdl.ProjectApi.Translation.FuzzyMatchRepair.TranslationSource.TranslationMemorySource.GetRequiredSearches(DeferredTranslationData translation, Dictionary`2 requiredSearches, Boolean& alignmentSearchAdded)
ε¨ Sdl.ProjectApi.Translation.FuzzyMatchRepair.TranslationSource.TranslationMemorySource.GetDeferredTranslations(List`1 deferredTranslationData)
ε¨ Sdl.ProjectApi.Translation.FuzzyMatchRepair.TranslationSource.ProxyTranslationSource.<>c__DisplayClass10_1.<GetDeferredTranslations>b__0()
ε¨ System.Threading.Tasks.Task.InnerInvoke()
ε¨ System.Threading.Tasks.Task.Execute()
---End of inner exception stack trace ---
ε¨ System.Threading.Tasks.Task.FastWaitAll(Task[] tasks)
ε¨ System.Threading.Tasks.Parallel.Invoke(ParallelOptions parallelOptions, Action[] actions)
ε¨ Sdl.ProjectApi.Translation.FuzzyMatchRepair.TranslationSource.ProxyTranslationSource.GetDeferredTranslations(List`1 deferredTranslationData)
ε¨ Sdl.ProjectApi.Translation.FuzzyMatchRepair.FuzzyMatchRepair.GetDeferredTranslations()
ε¨ Sdl.ProjectApi.Translation.FuzzyMatchRepair.FuzzyMatchRepair.RepairResults()
ε¨ Sdl.TranslationStudio.Editor.Translation.Translator.ApplyMatchRepairs()
ε¨ Sdl.TranslationStudio.Editor.Translation.Translator.EditorTranslate()
---> (inner exception #0) System.NullReferenceException:Object reference not set to an instance of on object.
ε¨ Sdl.ProjectApi.Translation.FuzzyMatchRepair.TranslationSource.TranslationMemorySource.GetTranslations(IReadOnlyList`1 sourceTokens, TranslationPurpose purpose, ICollection`1 proposals, SegmentAndSubsegmentSearchResultsMerged searchResults, Boolean completeTranslationsOnly)
ε¨ Sdl.ProjectApi.Translation.FuzzyMatchRepair.TranslationSource.TranslationMemorySource.GetTranslations(List`1 sourceTokens, TranslationPurpose purpose, Boolean completeTranslationsOnly)
ε¨ Sdl.ProjectApi.Translation.FuzzyMatchRepair.TranslationSource.TranslationMemorySource.AddSearchIfRequired(List`1 searchTokens, TranslationPurpose proposalPurpose, Boolean completeProposals, Dictionary`2 requiredSearches)
ε¨ Sdl.ProjectApi.Translation.FuzzyMatchRepair.TranslationSource.TranslationMemorySource.GetRequiredSearches(DeferredTranslationData translation, Dictionary`2 requiredSearches, Boolean& alignmentSearchAdded)
ε¨ Sdl.ProjectApi.Translation.FuzzyMatchRepair.TranslationSource.TranslationMemorySource.GetDeferredTranslations(List`1 deferredTranslationData)
ε¨ Sdl.ProjectApi.Translation.FuzzyMatchRepair.TranslationSource.ProxyTranslationSource.<>c__DisplayClass10_1.<GetDeferredTranslations>b__0()
ε¨ System.Threading.Tasks.Task.InnerInvoke()
ε¨ System.Threading.Tasks.Task.Execute()<---
Thank you!
Translate