Где находятся процедуры и функции, которые используются в видео, например, ЗначениеЗаполнено()?

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

1. Встроенные функции и процедуры платформы

Функция ЗначениеЗаполнено() является встроенной функцией платформы 1С:Предприятие. Её можно использовать без предварительного объявления в любом модуле — в модуле объекта, формы, менеджера, общего модуля и т.д.

Примеры встроенных функций:

  • ЗначениеЗаполнено()

  • НайтиПоКоду()

  • СокрЛП()

  • НРег()

  • СтрЗаменить()

  • ТипЗнч()

Такие функции определяются на уровне платформы, и их невозможно просмотреть в исходниках, так как они встроены в ядро платформы. Документацию по ним можно найти в официальной справке 1С или на its.1c.ru.

2. Общие модули

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

Как найти:

  1. Открой конфигуратор.

  2. Перейди к Общие модули.

  3. Воспользуйся поиском (Ctrl+F) по всем модулям — например, введи имя функции: ИмяФункции(.

  4. Посмотри, не определена ли она в модулях типа ОбщиеМодули.ИмяМодуля.Функция().

Пример:

Функция ПолучитьНастройкиПользователя()

Может вызываться как:

ОбщиеМодули.УправлениеНастройками.ПользовательскиеНастройки()

Если у общего модуля стоит флажок "Экспорт", то его функции и процедуры могут вызываться из других объектов. Если флажка нет — функции доступны только внутри самого модуля.

3. Модули объектов

Некоторые процедуры или функции определяются в модулях объектов, таких как:

  • Документы

  • Справочники

  • Перечисления

  • Планы видов характеристик и т.д.

Пример:

Процедура ОбработкаПроведения()

Находится в модуле объекта документа. Чтобы найти:

  1. Перейди в конфигураторе к нужному объекту (например, Документы → РеализацияТоваровУслуг).

  2. Выбери "Модуль объекта" или "Модуль менеджера".

4. Модули форм

Если функция используется только в пользовательском интерфейсе (например, при нажатии кнопки), то она может находиться в модуле формы. Такие функции и процедуры, как правило, не экспортируются и работают только в пределах конкретной формы.

Пример:

Процедура ПриНажатииКнопки(Команда)

Чтобы найти:

  1. Открой нужный объект в конфигураторе.

  2. Перейди на вкладку Формы.

  3. Открой соответствующую форму.

  4. Перейди в модуль формы.

5. Вспомогательные модули БСП (библиотека стандартных подсистем)

Если используется БСП, то большинство повторно используемых процедур определены в модулях с типичными именами:

  • ОбщиеМодули.УправлениеПользователями

  • ОбщиеМодули.ОбщиеПроцедуры

  • ОбщиеМодули.Форма

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

Например:

ОбщиеМодули.УправлениеПользователями.ЗначениеПользователяПоУмолчанию()

6. Процедуры и функции из внешних обработок

Если вы используете внешнюю обработку (.epf или .erf), то функции и процедуры могут быть определены в модулях самой обработки. В таком случае:

  • Нужно открыть внешний файл в режиме конфигуратора (через 1С:Предприятие с правами администратора).

  • Перейти к модулям и просмотреть их содержимое.

7. Как узнать, встроенная ли функция или пользовательская

Есть простой способ:

  • Если при вызове функции не указано пространство имён (например, просто ЗначениеЗаполнено()), то это либо встроенная функция, либо функция в текущем модуле.

  • Если указано, например, ОбщиеМодули.ИмяМодуля.ИмяФункции() — это точно функция в общем модуле.

8. Как использовать встроенную справку 1С

Чтобы убедиться, встроена ли функция в платформу:

  • Выдели название функции, например ЗначениеЗаполнено, в модуле.

  • Нажми F1.

  • Если откроется справка 1С с описанием параметров и возвращаемого значения — значит, функция встроенная.

  • Если нет — функция пользовательская и определена в конфигурации.

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

  • Определить, встроенная она или пользовательская.

  • Если пользовательская — проследить, откуда она вызывается (модуль формы, объекта, общий модуль).

  • Использовать поиск по конфигурации.

  • В случае внешних обработок — открывать их в конфигураторе и изучать модули.