Как правильно зарегистрировать внешнюю обработку в англоязычной версии 1С:Предприятие?

Программист 1С v8.3 (Управляемые формы) IT и автоматизация бизнеса
← На главную

При разработке под международные версии 1С:Предприятие часто возникают сложности с локализацией параметров регистрации. Платформа ожидает специфические строковые константы, которые отличаются от привычных русскоязычных аналогов. Давайте разберем, как правильно реализовать функцию InfoAboutExternalDataProcessor, чтобы ваша внешняя обработка или печатная форма корректно отображалась в англоязычном интерфейсе.

Разбор структуры InfoAboutExternalDataProcessor

Для того чтобы система «увидела» вашу обработку и правильно добавила её в список дополнительных отчетов и обработок, необходимо вернуть структуру с жестко заданными ключами. Даже если вы пишете основной код на русском языке, параметры регистрации должны строго соответствовать требованиям платформы.

Рассмотрим пример реализации функции, которая успешно проходит регистрацию в англоязычной среде:


Function InfoAboutExternalDataProcessor Export
    ДанныеДляРег = New Structure;
    ДанныеДляРег.Insert("Description", "Mailing Reports");
    ДанныеДляРег.Insert("SafeMode", False);
    ДанныеДляРег.Insert("Version", "ver.: 1.000");
    ДанныеДляРег.Insert("Information", "External processor for automatic reports sending");
    ДанныеДляРег.Insert("Type", "AdditionalDataProcessor");
    
    ТабЗнКоманды = New ValueTable;
    ТабЗнКоманды.Columns.Add("Id");
    ТабЗнКоманды.Columns.Add("Modifier");
    ТабЗнКоманды.Columns.Add("Presentation");
    ТабЗнКоманды.Columns.Add("ShowAlert");
    ТабЗнКоманды.Columns.Add("UsageVariant");
    
    НовСтрока = ТабЗнКоманды.Add();
    НовСтрока.Id = New UUID();
    НовСтрока.Modifier = "MailingReports";
    НовСтрока.Presentation = "Mailing Reports";
    НовСтрока.ShowAlert = False;
    НовСтрока.UsageVariant = "CallServerMethod";
    
    ДанныеДляРег.Insert("Commands", ТабЗнКоманды);
    Return ДанныеДляРег;
EndFunction

Ключевые параметры и их английские значения

При заполнении структуры мы сталкиваемся с необходимостью перевода функциональных вариантов. Рассмотрим основные ключи, которые чаще всего вызывают вопросы:

  1. Type: определяет тип объекта. В англоязычной среде используйте AdditionalReport для отчетов, AdditionalDataProcessor для обработок и PrintForm для печатных форм.
  2. UsageVariant: определяет способ запуска команды. Если вы используете вызов серверного метода, необходимо указывать CallServerMethod. Для клиентских методов — CallClientMethod. Если требуется открыть форму — OpenForm.

Как находить английские эквиваленты самостоятельно?

Если вы столкнулись с методом или параметром, перевод которого вызывает сомнения, не стоит полагаться на догадки. Разберем наиболее эффективные способы поиска правильных значений:

Важные советы по международной разработке

Работая с англоязычной конфигурацией, помните о следующих важных моментах:

Во-первых, платформа поддерживает англоязычный синтаксис. Ключевые слова Function, EndFunction, If, Then, New, Return работают везде одинаково. Переключение на английский язык в конфигураторе делает ваш код более доступным для коллег из других стран.

Во-вторых, не забывайте про метаданные. Помимо программного кода, важно правильно заполнять поля «Синоним» (Synonym) в объектах метаданных. Если они будут пустыми, англоязычные пользователи увидят либо русские названия, либо технические идентификаторы, что значительно снизит удобство использования системы.

В-третьих, придерживайтесь стандартов БСП. Если вы используете Библиотеку стандартных подсистем, убедитесь, что структура параметров регистрации полностью соответствует требованиям механизмов БСП. Ошибки в написании ключей в InfoAboutExternalDataProcessor приведут к тому, что обработка просто не будет обнаружена системой, и вы не увидите её в списке доступных команд.

Следуя этим рекомендациям, вы сможете без труда разрабатывать качественные и понятные решения для международных внедрений, делая архитектуру ваших разработок прозрачной и профессиональной.

← На главную