-

Функция значение заполнено в 1С

1
42970
03.04.2021 Айдар Фархутдинов

Содержание:

1.       Функция ЗначениеЗаполнено

2.       Примеры использования функции


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


1.   Функция ЗначениеЗаполнено


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


Функция Значение заполнено в 1С

Рис. 1 Функция Значение заполнено в 1С


В платформе 1С считается заполненным только то значение, которое разнится со значением, по умолчанию заведенным в данный тип.


Например: стандартное значение в ссылочном типе – это пустая ссылка.


Примечание: считаются пустыми значения, которые содержат Ноль или Неопределённо – в них возвращается «Ложь».


Функция ЗначениеЗаполнено() проверяет, что «Истина» возвращается для:

· реквизиты и параметры типа «Булево»;

· если в строке есть символы отличные от пробела, то значения с типом «Строка»;

· если в массиве есть не меньше одного элемента, то «Массив».


Примечание: в функции ЗначениеЗаполнено() не поддерживаются мутабельные значения (один из типов данных, в котором объекты могут менять собственные свойства, например «Таблица значений» или «Древо значений», чтобы, к примеру, проверить, что таблица не пустая – в системе 1С используется функция Количество()). Помимо этой особенности, функция прекрасно работает в любой конфигурации системы 1С.  


2.   Примеры использования функции


Пример подпрограммы (функции):


использование ЗначениеЗаполнено

Рис. 2 Пример функции 1С ЗначениеЗаполнено


В примере подпрограммы на картинке выше в переменной «Проверка» будет храниться значение «Ложь». А в самих условиях можно пользоваться также данной функцией – ЗначениеЗаполнено(). Также можно взглянуть на аналогичный пример, который следует из определения данной функции:


Пример использования ЗначениеЗаполнено

Рис.3 Пример использования ЗначениеЗаполнено


Второй пример:


 ЗначениеЗаполнено

Рис. 4 Использование функции ЗначениеЗаполнено

 

На этом примере показано, что в случае, когда документ с названием «Авансовый отчёт», который имеет номер «000000001», существует, тогда внутри параметра «Проверка» станет находится значение «Истина», в другом случае – «Ложь».


Третий пример использования функции:


Пример ЗначениеЗаполнено с параметром Ложь

Рис. 5 Пример ЗначениеЗаполнено с параметром Ложь

 

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


Специалист компании «Кодерлайн»

Айдар Фархутдинов

Задать вопрос автору статьи
Тема вопроса*
Ваше имя*
E-mail или телефон*
Ваш вопрос*
 

0
Прохожий
Айдар, вы написали ерунду, даже не проверив.

В синтаксис-помощнике написано русским по-белому:
"Для массивов и коллекций возвращается Истина, если в них есть хотя бы 1 элемент."

Соответственно, замечательно работают следующие проверки:
Код
Таб = Новый ТаблицаЗначений;
Таб.Колонки.Добавить("Колонка1");

ЗначениеЗаполнено(Таб);
// Ложь

Таб.Добавить().Колонка1 = 1;

ЗначениеЗаполнено(Таб);
// Истина

Для дерева значений то же самое, за исключением того, что для самого дерева значение функции ЗначениеЗаполнено() всегда будет "Истина", а правильно применять не к дереву, а к коллекции его строк:

Код
Дерево1 = Новый ДеревоЗначений;  
Дерево1.Колонки.Добавить("Колонка1");

ЗначениеЗаполнено(Дерево1.Строки);  
// Ложь
 
Дерево1.Строки.Добавить().Колонка1 = 1; 
 
ЗначениеЗаполнено(Дерево1.Строки);
// Истина
Имя Цитировать 0
Добавить комментарий
Текст сообщения*
Защита от автоматических сообщений
 
Услуги программиста 1С
Получите специалиста
для решения всех задач
в области 1С
Программы 1С
Цены и подробное описание программ 1С:Предприятие 8.