public void findMasterTM() { try { foreach (TMListResponse tm in TMlist) { if (tm.FriendlyName.ToLower().StartsWith((client + "_" + LanguageHelper.GetLanguageByMemoQCode(sLang).ISOCode + "-" + LanguageHelper.GetLanguageByMemoQCode(tLang).ISOCode + "_Master").ToLower())) { MasterTM = tm; return; } } } catch (Exception ex) { Log.AddLog(ex.Message, false); } TMListResponse newMaster = new TMListResponse(); newMaster.TMGuid = (new Guid()).ToString(); newMaster.Client = client; newMaster.SourceLangCode = sLang; newMaster.TargetLangCode = tLang; newMaster.FriendlyName = client + "_" + LanguageHelper.GetLanguageByMemoQCode(sLang).ISOCode + "-" + LanguageHelper.GetLanguageByMemoQCode(tLang).ISOCode + "_Master"; MasterTM = newMaster; }
private void ProcessTB() { int processedEntries = 0; int failedEntries = 0; int tbSize; Dictionary <int, TBEntry> tbEntriesToUpdate = new Dictionary <int, TBEntry>(); int lastID = RAPI_Session.GetLastEntryID(tbID.ToString(), out tbLanguages, out tbSize); lastID = RAPI_Session.GetLastEntryID(tbID.ToString(), out tbLanguages, out tbSize); // need to run two queries due to server bug if (lastID > 0) { foreach (string lang in tbLanguages) { missingTerms.Add(lang, 0); } Program.mainWindow.updateProgress(10); for (int i = 0; i < lastID; i++) { try { TBEntry tbEntry; if (RAPI_Session.getTBEntry(tbID.ToString(), i, out tbEntry)) { processedEntries++; if (CheckEntry(ref tbEntry)) { tbEntriesToUpdate.Add(i, tbEntry); Log.AddLog("TBEntry fixed: " + i + ". Total: " + lastID); } Program.mainWindow.updateProgress(Convert.ToInt32(10 + 90 * processedEntries / tbSize)); } } catch (Exception ex) { Log.AddLog("Error while processing TB entry " + i.ToString() + " - " + ex.Message, true); failedEntries++; } } } foreach (int entryID in tbEntriesToUpdate.Keys) { TBEntry tbe = tbEntriesToUpdate[entryID]; if (!RAPI_Session.UpdateTBEntry(tbID.ToString(), entryID, tbe)) { failedEntries++; } } Log.AddLog(processedEntries.ToString() + " termbase entries processed." + (failedEntries == 0 ? "" : (failedEntries.ToString() + " entries failed")), failedEntries != 0); bool isLangMessageDisplayed = false; foreach (string key in missingTerms.Keys) { if (missingTerms[key] > 0) { Log.AddLog("For " + LanguageHelper.GetLanguageByMemoQCode(key).DisplayName + " " + missingTerms[key] + " term" + (missingTerms[key] == 1 ? " was" : "s were") + " marked with " + substText + ".", false); isLangMessageDisplayed = true; } } if (!isLangMessageDisplayed) { Log.AddLog("No missing terms."); } }