В связи с “особенностями перевода” в SCSM, не всегда бывает понятно, что же имели ввиду разработчики, когда переводили тот или иной элемент. Переключаться между консолями не всегда удобно, да и долго. Поэтому я создал скрипт, который выводит все строки для 2х языков:
SELECT
LTRusName.ElementName,
LTEnuName.LTValue as EnuName,
LTEnuDesc.LTValue as EnuDesc,
LTRusName.LTValue as RusName,
LTRusDesc.LTValue as RusDesc
FROM
(SELECT * FROM dbo.LocalizedText where LTStringType = 1 AND LanguageCode = 'RUS') AS LTRusName
LEFT OUTER JOIN
dbo.LocalizedText AS LTRusDesc ON
LTRusName.LTStringId = LTRusDesc.LTStringId
AND LTRusDesc.LanguageCode = LTRusName.LanguageCode
AND LTRusDesc.LTStringType = 2
LEFT OUTER JOIN
dbo.LocalizedText AS LTEnuName ON
LTRusName.LTStringId = LTEnuName.LTStringId
AND LTEnuName.LTStringType = 1
AND LTEnuName.LanguageCode = 'ENU'
LEFT OUTER JOIN
dbo.LocalizedText AS LTEnuDesc ON
LTRusName.LTStringId = LTEnuDesc.LTStringId
AND LTEnuDesc.LTStringType = 2
AND LTEnuDesc.LanguageCode = 'ENU'
Чтобы получить одно значение, достаточно добавить в запрос условие отбора:
SELECT
LTRusName.ElementName,
LTEnuName.LTValue as EnuName,
LTEnuDesc.LTValue as EnuDesc,
LTRusName.LTValue as RusName,
LTRusDesc.LTValue as RusDesc
FROM
(SELECT * FROM dbo.LocalizedText where LTStringType = 1 AND LanguageCode = 'RUS') AS LTRusName
LEFT OUTER JOIN
dbo.LocalizedText AS LTRusDesc ON
LTRusName.LTStringId = LTRusDesc.LTStringId
AND LTRusDesc.LanguageCode = LTRusName.LanguageCode
AND LTRusDesc.LTStringType = 2
LEFT OUTER JOIN
dbo.LocalizedText AS LTEnuName ON
LTRusName.LTStringId = LTEnuName.LTStringId
AND LTEnuName.LTStringType = 1
AND LTEnuName.LanguageCode = 'ENU'
LEFT OUTER JOIN
dbo.LocalizedText AS LTEnuDesc ON
LTRusName.LTStringId = LTEnuDesc.LTStringId
AND LTEnuDesc.LTStringType = 2
AND LTEnuDesc.LanguageCode = 'ENU'
WHERE LTRusName.LTValue like 'домен NE%'
В итоге вы получите вот такой результат: