Показать сообщение отдельно
Старый 30.12.2019, 10:36   #14  
axm2017 is offline
axm2017
Участник
 
1,754 / 292 (13) ++++++
Регистрация: 15.05.2017
Сопутствующее
иногда требуется внезапно перевести ер метки зная что есть аксаптовые, а возможности ждать переводчика нет.
Может помочь что то типа такого
X++:
#File
        Dialog dlg = new Dialog();
        container langCon = languageList();

        DialogField labelIdField = dlg.addFieldValue(extendedTypeStr(LabelId), '');
        labelIdField.mandatory_RU(true);

        DialogField erlabelField = dlg.addFieldValue(extendedTypeStr(Description), '', 'ER label');
        labelIdField.mandatory_RU(true);

        dlg.run();

        dlg.wait();

        if (labelIdField.value() && erlabelField.value())
        {
            str filename = @'C:\Temp\Labels.txt';
            TextIo io;

            io = new TextIo(filename, #IO_Write);

            LabelId labelId = labelIdField.value();

            for (int i = 1; i <= conLen(langCon); i++)
            {
                LanguageId langId = conPeek(langCon, i);

                LabelType labelType = SysLabel::labelId2String(labelId, langId);

                if (labelType)
                {
                    io.write(strFmt('            <ERLabel LabelId="%3" LabelValue="%2" LanguageId="%1" />',
                        langId,
                        labelType,
                        erlabelField.value()));
                }
            }

            io.finalize();