1с свойство код языка

Содержание

Особенности использования строк интерфейса конфигурации на разных языках

Платформа 1С:Предприятие 8 предоставляет набор механизмов для удобной локализации конфигураций. Одним из них является поддержка строк на разных языках. Такие строки позволяют хранить интерфейсные (предназначенные для пользователя) тексты на нескольких языках одновременно, при этом пользователь соответствующую строку увидит на своем (указанном в его настройках) языке. Используются эти строки очень широко. Например, в таком виде задаются синонимы (представления) объектов метаданных, тексты в формах, меню и табличных документах. В данной статье мы рассмотрим особенности хранения и редактирования подобных строк.

Языки конфигурации


Отображение строк на разных языках

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

Хранение строк на разных языках и связь с языками конфигурации

Строка на разных языках представляет собой набор пар код-строка. То есть привязка к конкретному языку осуществляется именно по коду, а не по имени или внутреннему идентификатору (данное замечание касается именно строк, поскольку, например, свойство конфигурации «Основной язык» для привязки использует внутренний идентификатор, и редактирование имени и кода языка на него никак не влияет). Что же происходит со строками при изменении кода языка? Ничего. Автоматическая «перепривязка» строк не производится. Таким образом, все строки, привязанные к старому коду, будут недоступны.

Редактирование строк на разных языках

Для формирования строк на языках, отличных от языка редактирования конфигурации, можно использовать редактор в панели свойств. В случае если в конфигурации заведено более одного языка, в нем будет доступна кнопка открытия («лупа»), нажатие на которую вызывает диалог, позволяющий редактировать содержимое на всех языках, заведенных в данный момент в конфигурации. Однако для решения описанной выше проблемы (потери строк при изменении кода языка) этот способ не подходит. Во-первых, строки со старым кодом в этот диалог просто не попадут, да и «разыскивание» всех строк по всей конфигурации задача утомительная. Для восстановления связи с утерянными строками следует воспользоваться механизмом редактирования текстов интерфейса, доступным из меню «Правка». Данный механизм производит сканирование всей конфигурации (или указанного подмножества объектов) и выводит список всех строк на разных языках. Важным отличием этого механизма от редактора в панели свойств, является то, что он выводит содержимое не только на всех языках (а на самом деле кодах языков), которые присутствуют в конфигурации в данный момент, но и всех, встречающихся в строках. Другим важным средством данного механизма является возможность копирования текстов из одного языка в другой. То есть мы можем указать копирование из старого кода языка в новый код, и связь строк с языком будет восстановлена. После чего можно воспользоваться еще одним средством и очистить строки со старым кодом.

Рассмотрим ситуации, когда данная проблема может возникнуть. Наиболее очевидна ситуация, когда у существующего языка (для которого уже определено много строк) меняется код. Однако возникновение ее маловероятно. Как уже указывалось, рекомендуется использовать стандартные значения кодов и в последствии их не менять. Однако есть еще одна, менее очевидная ситуация, связанная с внешними обработками. Внешняя обработка могла быть создана в среде совсем другой конфигурации, где набор языков (или их коды) отличается от набора, используемого в данной конфигурации. При открытии такой обработки все строки будут «утеряны». Описанный механизм позволит решить эту проблему, поскольку он позволяет искать и редактировать строки не только в конфигурации, но и во внешних обработках (как открытых в конфигураторе, так и находящихся в файлах на диске).

Программное формирование строк на разных языках

То есть оформить ее в одинарных кавычках. Можно воспользоваться и двойными, но при этом все внутренние двойные кавычки следует удвоить:

Разумеется, подобная константа не очень наглядна (хотя результат будет тот же, что и в предыдущем варианте). Если же «механически» обрамить строку в двойные кавычки:

то получится ошибочный шаблон. Причем, особенность реализации функции НСтр() состоит в том, что ни при синтаксической проверке модулей, ни при исполнении, никакой ошибки выдано не будет. Функция просто вернет пустую строку.

Читайте также:  Грамотный на украинском языке

Форматирование модулей, содержащих НСтр()

Источник

Встроенный язык

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

Встроенный язык имеет много общих черт с другими языками, такими как Pascal, Java Script, Basic, что облегчает его освоение начинающими разработчиками. Однако он не является прямым аналогом какого-либо из перечисленных языков.

Событийная ориентированность встроенного языка

Назначение встроенного языка в системе 1С:Предприятие определяется идеологией создания прикладных решений. Прикладные решения в 1С:Предприятии 8 не кодируются целиком. Большая часть прикладного решения создается разработчиком путем визуального конструирования — создания новых объектов конфигурации, задания их свойств, форм представления, взаимосвязей и пр. Встроенный язык используется лишь для того, чтобы определить поведение объектов прикладного решения, отличное от типового, и создать собственные алгоритмы обработки данных.

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

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

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

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

Универсальные коллекции значений

Встроенный язык поддерживает работу с большим количеством разнообразных объектов. Безусловно, основную группу объектов составляют прикладные объекты, позволяющие описывать алгоритмы функционирования бизнес-логики.

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

Перечислим кратко их возможности:

Массив

Представляет собой пронумерованную коллекцию значений произвольного типа. К элементу массива можно обращаться по его индексу. В качестве элементов массива могут выступать, в частности, другие массивы. Это позволяет создавать многомерные массивы.

Структура

Представляет собой поименованную коллекцию, состоящую из пар ключ — значение. Ключ может быть только строковым, значение — произвольного типа. К элементу структуры можно обращаться по значению его ключа, т. е. по имени. Обычно используется для хранения небольшого количества значений, каждое из которых имеет некоторое уникальное имя.

Соответствие

Также как и структура, представляет собой коллекцию пар ключ — значение. Однако, в отличие от структуры, ключ может быть практически любого типа.

Список значений

Используется, как правило, для решения интерфейсных задач. Позволяет строить динамические наборы значений и манипулировать ими (добавлять, редактировать, удалять элементы, сортировать). Он может содержать значения любого типа, кроме того, в одном списке типы хранимых значений могут быть разными.

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

Таблица значений

Таблица значений позволяет строить динамические наборы значений и манипулировать ими. Она может быть наполнена значениями любого типа, и в одной таблице типы хранимых значений могут быть разными.

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

Дерево значений

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

COMSafeArray

Представляет собой объектную оболочку над многомерным массивом SAFEARRAY из COM. Позволяет создавать и использовать SAFEARRAY для обмена данными между COM-объектами.

Фиксированный массив

Неизменяемый массив. Массив заполняется системой при инициализации объектов данного типа или разработчиком, с помощью конструктора.

Редактор текстов и модулей

Для создания и изменения текстов на встроенном языке разработчик может использовать редактор текста и модуля, обладающий удобными средствами создания, редактирования и синтаксической проверки модулей. Подробнее…

Источник

Мультиязычность в 1С

В системе 1С используется три языка:

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

Язык разработки 1С

Язык разработки 1С (вариант встроенного языка) — язык, используемый для написания исходного кода конфигурации, т.е. основной язык программирования:

Выбор языка разработки определяет, на каком языке будут формироваться языковые конструкции в модулях и выдаваться информация о базовых типах данных. От него зависит, шаблоны какого языка будут использовать при добавлении данных или использовании конструкторов.

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

Язык разработки указывается в свойствах конфигурации в поле «Вариант встроенного языка».

Читайте также:  Английский язык 11 афанасьева углубленный

Менять данный язык после начала разработки нельзя (может привести к неработоспособности кода).

Язык интерфейса платформы 1С

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

После выбора конкретного языка платформы, на нем начинают отображаться:

Язык интерфейса платформы может быть выбран и при запуске клиентского приложения.

Язык интерфейса конфигурации 1С

Язык интерфейса конфигурации — это языки интерфейса, созданные разработчиком в процессе разработки. При разработке конфигурации разработчик продумывает, какие языки нужны пользователю данной конкретной конфигурации и для каждого языка прописывает свой вариант всех текстов, синонимов, заголовков… В отличии от языков интерфейса платформы (жестко прописанных разработчиками платформы), языки интерфейса конфигурации могут быть любыми.

Платформа 1С поддерживает создание конфигураций с интерфейсами на разных языках. Возможные языки отображения интерфейса добавляются в ветку общих объектов конфигурации («Языки»):

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

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

Переключение языка для конкретного пользователя выполняется в настройках его учетной записи.

Особенности использования мультиязычности 1С:

Остальные надписи на русском, так как английская форма для них не была указана.

Добавить комментарий Отменить ответ

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.

Источник

Про языки интерфейса в 1С

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

Виды языков 1С и для чего они используются

Кроме этих языков, также существуют региональные настройки, которые влияют на формат чисел, дат, времени.

Несколько языков в одной программе

Разберем детально каждый из языков 1С и выясним как изменить тот или иной язык 1С

Язык разработки

Язык разработки (Вариант встроенного языка) – язык, используемый для написания исходного кода конфигурации.

Назначение: Выбор определяет, на каком языке будут формироваться языковые конструкции в модулях и выдаваться информация о базовых типах данных. От него зависит, шаблоны какого языка будут использовать при добавлении данных или использовании конструкторов.

При этом независимо от выбранного языка разработки, код можно писать на любом. В том числе и вперемешку на русском и английском.

Настройка: Язык разработки указывается в свойствах конфигурации в поле “Вариант встроенного языка”

Встроенный язык 1С

Для определения встроенного языка конфигурации из кода 1С можно обратиться к метаданным командой

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

Язык интерфейса платформы

Язык интерфейса платформы – эта настройка определяет, на каком языке будут отображаться элементы интерфейса плафтормы и выдаваться сообщения.

В стандартный дистрибутив платформы входят следующие языки интерфейса платформы:

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

Определить текущий язык интерфейса платформы мы можем с помощью функции:

Настройка: Есть несколько способов установить язык платформы. Наиболее простой и наиболее часто используемый это указать язык платформы в целом для всех баз 1С на данном компьютере, прописав его в файле conf.cfg.

Способ 1. Эту настройку легче всего указать при установке платформы. Для этого достаточно на этапе “Язык интефейса по умолчанию” указать нужный язык.

Способ 2. Если платформа уже установлена, то можно перезапустить установку параметров. Для этого выбираем “Пуск”-“Панель управления”-“Программы и компоненты”. Находим нужную установку 1С и нажимаем “Изменить”

Способ 3. Еще можно напрямую прописать настройку в файл. Обычно он лежит по адресу “C:\Program Files (x86)\1cv8\conf\conf.cfg”. Открываем файл, добавляем строчку “SystemLanguage=RU”, сохраняем.

Способ 4. Если язык платформы не прописан, то используются настройки операционной системы по умолчанию. Для их изменения выбираем “Пуск”-“Панель управления”-“Язык и региональные стандарты”.

Способ 5. При работе в веб-клиенте по умолчанию используется язык, установленный как “предпочитаемый язык” в браузере. Соответственно и менять его нужно в настройках браузера.

Все прошлые способы устанавливают язык платформы в целом для всех баз на компьютере пользователя. Рассмотрим указание языка для конкретного сеанса.

Способ 6. Если для разных баз нужно использовать разные языки интерфейса, то нужный код языка можно указать в строке запуска 1C после ключа /L.

Читайте также:  Dik в турецком языке

Способ 7. Если при запуске информационной базы выполняется выбор базы через 1CEStart.exe. То параметрзапуска /L можно указать в окне “Редактирование информационной базы” в поле “Дополнительные параметры запуска”

Параметр запуска языка 1С

Способ 8. При запуске отладки из конфигуратора язык запуска можно указать в параметрах конфигуратора. “Сервис” – “Параметры” – “Запуск 1С:Предприятия” – “Дополнительные” – “Яык интерфейса системы”.

Способ 9. При работе в браузере язык, отличный от языка по умолчанию, можно указать суффиксом адресной строки вида “/en_US/”

Способ 10. На самом деле указание кода языка в строке запуска это самый надежный вариант. Он работает всегда. Если он не сработал, значит, нужный язык просто не установлен в платформе. Возвращаемся на этап установки платформы и выбираем нужный язык.

Язык конфигурации

Язык интерфейса конфигурации – это языки интерфейса, созданные разработчиком конфигурации. Для каждого языка разработчик прописывает свой вариант всех текстов, синонимов, заголовков и т.д. В отличии от языков интерфейса платформы (жестко прописанных разработчиками платформы), языки интерфейса конфигурации могут быть абсолютно любыми. В том числе мы можем создать язык, не существующий в реальности. Количество языков ничем не ограничено.

Языки интерфейса конфигурации

Коды языков никак не связаны с кодами интерфейса платформы. Мы можем использовать любой удобный код языка. Язык интерфейса также никак не связан с настройками операционной системы. Он зависит только от разработчика конфигурации и администратора.

Определить текущий язык интерфейса платформы мы можем с помощью функции:

Есть всего два способа установки языка интерфейса:

Способ 1. Указать язык для конкретного пользователя в свойствах пользователя информационной базы.

Способ 2. Если у пользователя язык по умолчанию не указан, то будет использоваться язык, указанный в свойствах конфигурации в реквизите “Основной язык”.

Основной язык конфигурации

При работе в конфигураторе для полей, в которых поддерживается многоязычный ввод, появляется значок лупы. При нажатии на данный значок мы можем корректировать тексты на нескольких языках одновременно. Однако также можем и просто корректировать тексты в любом многоязычном поле напряму без нажатия лупы. В этом случае мы редактируем текст текущего языка, не затрагивая второй язык. Чтобы переключить текущий язык в конфигураторе есть следующие способы:

Способ 3: Выбрать в меню пункт “Конфигурация” – “Язык редактирования конфигурации”. Выбрать язык, со значениями которого мы хотим работать в ближайшее время.

Способ 4: Также язык можно переключить мышкой в строке статуса в правом нижнем углу окна конфигуратора.

Способ 5: Для множественного редактирования полезно использовать режим конфигуратора “Правка” – “Редактирование текстов интерфейсов”

Региональные настройки

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

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

Используемые базой региональные настройки можно определить с пощью функци:

Способ 1: При создании базы. На этапе “Добавление информационной базы” необходимо выбрать язык, который будт использоваться для хранения данных.

Региональные настройки языка ИБ

Способ 2. Из конфигуратора. В пункте меню Администрирование – Региональные установки ИБ. Для смены языка информационной базы обязательно использование монопольного режима.

Примечания: Если в качестве СУБД используется PostgreSQL, то для существующей информационной базы изменение языка (страны) не может быть выполнено произвольным образом. Установленное значение языка (страны) можно изменить только на такое, которое будет использовать тот же порядок сортировки строк (collation) СУБД, что и существующее значение. Например, русский (Россия) может быть изменен на белорусский (Беларусь), но не может быть изменен на украинский (Украина).
Если в качестве СУБД используется IBM DB2, то смена значения языка (страны) не поддерживается.

Региональные установки конкретного сеанса влияют на отображение дат, чисел, времени при работе с ИБ. Есть несколько способов установки настройки для конкретного сеанса.

Способ 1: Установка общих настроек для всех сеансов. Для вызова режима нужно выбрать пункт Администрирование – Региональные установки ИБ и указать региональные параметры.

Способ 2. Если общие значения по умолчанию не установлены, то используются настройки операционной системы. Поэтому можно установить нужные настройки, сменив язык операционной системы.

Способ 3. Если для разных баз нужно использовать разные региональные настройки, то нужный код языка можно указать в строке запуска 1C после ключа /VL.

Способ 4. Если при запуске информационной базы выполняется выбор базы через типовой стартер. То ключ запуска /VL можно указать в окне “Редактирование информационной базы” в поле “Дополнительные параметры запуска”

Региональные настройки сеанса

Способ 5. При запуске отладки из конфигуратора язык запуска можно указать в параметрах конфигуратора. “Сервис” – “Параметры” – “Запуск 1С:Предприятия” – “Дополнительные” – “Код локализации сеанса”.

В процессе работы региональные настройки текущего сеанса можно определить с помощью функции:

Источник

Поделиться с друзьями
Расскажем обо всем понемногу
Adblock
detector