булево что это в бухгалтерии
Булево что это в бухгалтерии
Значение Булево 1С — это значение Истина или Ложь. В числовом выражении Ложь это ноль, а Истина — число больше нуля (обычно единица).
Выражение (операция) Булево 1С — это математическое выражение, результатов которого является значение типа Булево 1С, например:
a = 0+1;
b = 2-1;
x = (a = b);
//x = Истина
Далее — подробнее о условных операциях 1С, значениях и выражениях булево 1С.
Условная операция 1С ЕСЛИ выглядит следующим образом:
Если ОПЕРАЦИЯ-БУЛЕВО Тогда
//действия1…
ИначеЕсли ОПЕРАЦИЯ-БУЛЕВО Тогда
//действия2…
Иначе
//действия3…
КонецЕсли;
Булево 1С — это результат вычисления со значениями Истина или Ложь, например:
Массив1 = Новый СписокЗначений();
Если Массив1.Количество() > 0 Тогда
//действия…
КонецЕсли;
//другой вариант, полностью аналогичный
Если НЕ Массив1.Количество() = 0 Тогда
//действия…
КонецЕсли;
Многие функции/методы объектов возвращают успешность выполнения операции как булево 1С, например:
Запрос = Новый Запрос();
Выборка = Запрос.Выполнить().Выбрать();
Если Выборка.Следующий() Тогда
//действия…
КонецЕсли;
В условной операции 1С можно объединять несколько условий с использованием И и ИЛИ:
Массив1 = Новый СписокЗначений();
Если (Массив1.Количество() > 0 и Массив1.Количество() 100 Тогда
//действия…
КонецЕсли;
Условия булево 1С можно использовать непосредственно в коде программы:
Переменная1 = 5;
флгРезультат = (Переменная1 = 2 + 3); //флгРезультат будет равен ИСТИНА
В условной операции 1С оператор ЕСЛИ ИНАЧЕ ТОГДА можно заменить более кратким выражением. Следующие два варианта равны:
У реквизитов объектов (справочников, документов и т.п.) есть возможность установить тип булево 1С. Также можно создать переменную булево 1С, например:
флгВыполнено = Истина;
Далее, в условиях ЕСЛИ, можно писать равнозначно двумя способами:
//вариант 1
Если флгВыполнено = Истина Тогда
//делаем что-то
КонецЕсли;
//вариант 2
Если флгВыполнено Тогда
//делаем что-то
КонецЕсли;
Второй вариант таит в себе следующую «неприятность»:
Программирование в 1С для всех
Многие, кто только начинает изучать программирование, впервые сталкиваются с новым для себя примитивным типом булево. Еще его по-другому называют логический тип. Данный тип назван в честь английского математика Джорджа Буля, который изучал вопросы математической логики.
Прежде чем начать изучать этот примитивный тип, узнаем вообще, что такое булевы или логические выражения.
Булевы выражения это что-то типа вопроса, на который должен быть однозначные ответ или да, или нет.
Так же могу и быть более сложные вопросы:
Кнопка нажата – нет;
Булевы выражения используются во всех условных переходах:
В языке программирования 1С переменную с примитивным типом Булево можно задать явно:
Где Истина и Ложь единственные значения, которые может принимать примитивный тип Булево.
Истина – значит, что какое-то утверждение соответствует действительности (Ответ — Да).
Ложь – значить, что какое-то утверждение, наоборот, не соответствует действительности (Ответ –Нет).
Так же переменные с типом булево могут быть заданы с помощью какого-либо логического выражения.
Например:
В этом случае, в переменой А будет значение Истина, а в переменной типа Б – ложь;
В языке программирования 1С над переменными типа булево можно осуществлять различные операции.
Всего их три – И, ИЛИ и НЕ.
Понять функциональность этих операций помогут следующие таблицы
А | Б |
Истина | Ложь |
Ложь | Истина |
С = А И Б | А | Б |
Истина | Истина | Истина |
Ложь | Ложь | Истина |
Ложь | Истина | Ложь |
Ложь | Ложь | Ложь |
С = А ИЛИ Б | А | Б |
Истина | Истина | Истина |
Истина | Ложь | Истина |
Истина | Истина | Ложь |
Ложь | Ложь | Ложь |
А можно ли выполнять данные операции подряд?
Да можно, данные операции будут выполняться слева направо. И иметь следующий уровень старшинства:
Первый: в первую очередь выполняются операции в скобках
Второй: Операция НЕ
Четвертый: Операция ИЛИ.
Чтобы не путаться в операциях, я советую Вам использовать скобки, где только возможно.
В данном случае сначала будет работать операция И между А и С.
Смотрим таблицу А – Ложь, С – Ложь, результат А И С будет Ложь.
Следующим шагом будет выполнение операции ИЛИ между Ложью (Результат предыдущей операции) и значением Б, которое Истина.
Результат будет Истина.
А если нам надо, чтобы прошла сначала операция ИЛИ между С и Б, а потом только операция И между А и тем, что получилось, то для этого необходимо использовать скобки.
Результат будет диаметрально противоположный. Почему? Сейчас разберем. Благодаря скобкам сначала выполняется операция и между С и Б, т.к. С — Ложь, а Б – Истина, результат будет Истина. Потом между значением А (которое Ложь) и значением Истина (результатом предыдущей операции) выполняется операция И. Результат будет Ложь.
Многие начинающие программисты не совсем до конца понимают принципы взаимодействия между переменными типа Булево. Помочь в этом сможет только практика. А практики с переменными типа Булево достаточно в моем задачнике к книге «Программировать в 1С за 11 шагов»
Изучайте основы конфигурирования в 1С и учитесь программировать в «1С: Предприятии» с помощью моих книг: «Программировать в 1С за 11 шагов» и «Основы разработки в 1С: Такси»
Изучайте программирование в 1С в месте с моей книги «Программировать в 1С за 11 шагов»
Отличное пособие по разработке в управляемом приложении 1С, как для начинающих разработчиков, так и для опытных программистов.
Промо-код на скидку в 15% — 48PVXHeYu
Если Вам помог этот урок решить какую-нибудь проблему, понравился или оказался полезен, то Вы можете поддержать мой проект, перечислив любую сумму:
можно оплатить вручную:
Яндекс.Деньги — 410012882996301
Web Money — R955262494655
Вступайте в мои группы:
2 thoughts on “ Примитивный тип Булево ”
Что-то вы напутали. Операция (А И В) будет равна Истина, только если ОБА операнда равны Истина.
Операция (А ИЛИ В) равна Истина, если ХОТЯ БЫ ОДИН из операндов равен Истина.
В таблице у меня так и написано. Где Вы нашли ошибку?
Значение и описание типов булево в 1С
Значение Булево в 1С – это значение Истина или Ложь. В числовом выражении Ложь обозначается числом «0», а Истина должна быть в виде числа, которое больше нуля, чаще всего это цифра «1».
Выражение Булево 1С считается математическим выражением, результатом чего является значение типа Булево 1С, например: a = 0+1; b = 2-1; x = (a = b); //x = Истина.
Что бы лучше понять данное значение, надо разобраться в условных операциях 1С, значениях и выражениях булево 1С.
Условная операция 1С ЕСЛИ выглядит следующим образом: Если ОПЕРАЦИЯ-БУЛЕВО Тогда //действия1… ИначеЕсли ОПЕРАЦИЯ-БУЛЕВО Тогда //действия2… Иначе //действия3… КонецЕсли;
Булево 1С – это итог вычисления со значениями Истина или Ложь, например: Массив1 = Новый СписокЗначений(); Если Массив1.Количество() > 0 Тогда //действия…
//другой вариант, полностью аналогичный Если НЕ Массив1.Количество() = 0 Тогда //действия… КонецЕсли;
Многие функции/методы объектов возвращают успешность выполнения операции как булево 1С, например: Запрос = Новый Запрос(); Выборка = Запрос.Выполнить().Выбрать(); Если Выборка.Следующий() Тогда //действия… КонецЕсли;
В условной операции 1С можно объединять несколько условий с использованием И и ИЛИ: Массив1 = Новый СписокЗначений(); Если (Массив1.Количество() > 0 и Массив1.Количество() 100 Тогда //действия… КонецЕсли;
Условия булево 1С можно использовать непосредственно в коде программы: Переменная1 = 5; флгРезультат = (Переменная1 = 2 + 3); //флгРезультат будет равен ИСТИНА
В условной операции 1С оператор ЕСЛИ ИНАЧЕ ТОГДА можно заменить более кратким выражением. Следующие варианты равны:
Если затронуть описание типов булево в 1С, то начинающие программисты встречаются, прежде всего, с примитивным типом булево. Иначе он может называться «логический тип». Это название ему было дано в честь английского математика Джорджа Буля, который занимался изучением вопросов логики в математической науке.
Что бы лучше узнать о примитивном типе, надо сначала познакомиться с булевыми или логическими выражениями. Они представляют из себя вопросы, на которые должны быть короткие ответы «да» или «нет».
Так же могут быть вопросы посложнее:
Дверь открыта – нет.
Булевы выражения фигурируют во всех условных переходах:
В языке программирования 1С переменную с примитивным типом Булево можно задать явно:
Где Истина и Ложь единственные значения, которые может принимать примитивный тип Булево.
Истина значит, что какое-то утверждение соответствует действительности (Ответ – Да).
Ложь – значить, что какое-то утверждение, наоборот, не соответствует действительности (Ответ – Нет).
Так же переменные с типом булево могут быть заданы с помощью какого-либо логического выражения. Например:
В этом случае, в переменой А будет значение Истина, а в переменной типа Б – ложь;
В языке программирования 1С над переменными типа булево можно осуществлять различные операции.
Всего их три – И, ИЛИ и НЕ.
Понять функциональность этих операций помогут следующие таблицы
Операция НЕ
Операция И
С = А И Б | А | Б |
Истина | Истина | Истина |
Ложь | Ложь | Истина |
Ложь | Истина | Ложь |
Ложь | Ложь | Ложь |
Операция ИЛИ
С = А ИЛИ Б | А | Б |
Истина | Истина | Истина |
Истина | Ложь | Истина |
Истина | Истина | Ложь |
Ложь | Ложь | Ложь |
Данные операции можно выполнять подряд слева направо. Только они будут иметь следующий уровень старшинства:
Первый: в первую очередь выполняются операции в скобках
Второй: Операция НЕ
Четвертый: Операция ИЛИ.
Чтобы не путаться в операциях, необходимо использовать скобки, где только возможно.
В данном случае сначала будет работать операция И между А и С.
Согласно таблице А – Ложь, С – Ложь, результат А И С будет Ложь.
Следующим шагом будет выполнение операции ИЛИ между Ложью (Результат предыдущей операции) и значением Б, которое Истина.
Результат будет Истина.
А если нам надо, чтобы прошла сначала операция ИЛИ между С и Б, а потом только операция И между А и тем, что получилось, то для этого необходимо использовать скобки:
Результат будет диаметрально противоположный. Благодаря скобкам сначала выполняется операция и между С и Б, т.к. С — Ложь, а Б – Истина, результат будет Истина. Потом между значением А (которое Ложь) и значением Истина (результатом предыдущей операции) выполняется операция И. Результат будет Ложь.
Довольно часто возникает ошибка: булево значение в 1С «преобразование значения к типу булево\число не может быть выполнено», которая на самом деле может быть легко устранена. В первую очередь надо обновить конфигурацию до последнего релиза. Это одно из решений данной проблемы. Но в большинстве случаев возникновение такой ошибки говорит о попытке присвоить числовой переменной не численное значение, в результате внутренний конвертер типов не может преобразовать переменную в число и возникает ошибка.
Если присваивание переменной происходит из тела выборки результата запроса, следует проверить наличие в выборке значений типа NULL. Это значение нельзя использовать в операциях с числами. Значение NULL появляется в запросе при использовании соединений.
В этом случае ошибка может появиться, если в регистре со сведениями цен номенклатуры нет записи по ней.
Решить проблему можно следующим путем: во время обращения к полю выборки необходимо добавить проверку на равенство значению типа NULL. Либо использовать функцию ЕСТЬNULL(x1, x2). Она проверяет на NULL x1, и если Значение NULL обнаружено функция возвращает x2, в обратно случае возвращает x1. В первом случае равенства Выражения1 NULL, Выражение1 будет заменено в результате запроса на заданное Выражение2.
Примитивные типы данных и булевы операции
Указание типа данных при работе в модуле необязательно, т.к. типизация «мягкая» и зависит от значения. Кстати тип меняется при присвоении нового значения.
Пример. Переменная типа число
Примитивные типы данных
1. Null
Литерал использующиеся для определения отсутствующего значения при работе с базой данных (при соединении таблиц).
Значение типа Null можно присвоить переменной: Переменная = Null
2. Неопределено (Undefined)
Значение данного типа применяются, когда необходимо использовать пустое значение, не принадлежащее ни к одному другому типу. Например, такое значение изначально имеют реквизиты с составным типом значения.
3. Число (Number)
Данным типом можно представить любое десятичное число.Максимально допустимая разрядность числа 38 знаков. А разделителем является точка «.».
С данными числового типа можно выполнять основные арифметические операции: сложение(+), вычитание(-), умножение(*) или деление(/).
4. Строка (String)
Значения данного типа содержат строку в формате Unicode произвольной длины.
Литералы: Набор символов заключенных в кавычки.
Для использования кавычек(«») внутри строки необходимо использовать двойные кавычки.
Для переноса строк в модуле, необходимо использовать вертикальную черту ( | )
5. Дата (Date)
Данный тип содержит дату григорианского календаря (с 01 января 0001 года) и время с точностью до секунды.
Литералы: Строка цифр, заключенная в одинарные кавычки вида: ‘ГГГГММДДччммсс’:
ГГГГ — год, 4-е цифры;
ММ — месяц:
ДД — дата;
чч — час в 24-х часовом формате;
мм — минуты;
сс — секунды;
В качестве разделителя можно использовать любые символы пример: ‘ГГГГ-ММ-ДД чч:мм:сс’.
6. Булево (Boolean)
Значения данного типа имеют два значения Истина и Ложь. Значения возвращаются в результате вычисления логических выражений и часто используются в условиях.
Литералы: Истина (True) и Ложь (False)
Булевы операции
Список булевых операций:
Примечание: для управления последовательности необходимо использовать круглые скобки, так же необходимо знать что вычисление происходит слева направо.
Порядок выполнения операций:
Пример 1. Использование И:
Задача: Если выполняются одновременно 2 условия выводим сообщение
Пример 2. Использование ИЛИ:
Задача: Если выполняются одно из 2 условий, выводим сообщение
Пример 3. Использование НЕ:
Задача: Если значение не заполнено то вывести сообщение.
Систематизация бухгалтерии
Статьи, обзоры, комментарии экспертов
Булево значение в 1С
булево — что это за фрукт? 1с8
Значения данного типа имеют два значения Истина и Ложь, задаваемых соответствующими литералами.
Значения данного типа возвращаются в качестве результата вычисления логических выражений.
Литералы:
Истина (True) Ложь (False)
первый раз вижу человека который умеет печатать но не умеет читать…
Пипец…. Девушка, а вы читать то пробовали, что вам посоветовали?
(3) есть еще люди которые летать умеют :).
Достижения (опыт) 0,5лет Роль на форуме Зарегистрированный участник Дата регистрации: 09.07.2007Стаж: 1 г. 4 мес.
да вы просто мне завидуете!
а что означает Достижения (опыт) 0,5лет
Чего-то у автора все вопросы не от мира сего: «Что такое компоновка, что такое булево». И где это она себе такие вопросы находит? Такое ощущение, что она взялась изучать 1С не с той стороны.
что за ошибка «Булево».
Скора пойдут вопросы, типо «что такое пременная?», «что такое цикл?» и т.д. И такие люди еще себя программистами называют и наверняка еще «программы» кому-то пишут. Потом адинэснеги удивляются, почему их тупыми считают. Я в шоке.
TurboConf 5 — расширение возможностей Конфигуратора 1С
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку «Обновить» в браузере.
Ветка сдана в архив. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Функции преобразования значений
Булево ( ) ― преобразует полученный параметр в значение типа Булево.
Преобразование числа к типу Булево производится по следующим правилам:
· 0 преобразуется в Ложь;
· остальные значения преобразуются в Истина.
Дата ( ) ― преобразует полученный параметр (параметры) в значение типа Дата.
Допускаются следующие форматы задания параметров:
· Дата (Год, Месяц, День);
· Дата (Год, Месяц, День, Час, Минута, Секунда).
Пример.Дата (“19840329202101”);
Дата (“1984, 03, 29, 20, 21, 01”);
Строка ( ) ― преобразует полученный параметр в значение типа Строка.
При преобразовании к строке число формируется его полное представление в стандартном виде, соответствующем национальным установкам.
Число ( ) ― преобразует полученный параметр в значение типа Число.
Значение типа Строка преобразуется в число, если строка представляет собой из себя правильное строковое представление литерала численного типа. В противном случае будет выдано сообщение об ошибке выполнения функции.
Значение типа Булево преобразуется в число по следующим правилам:
· Ложь преобразуется в 0;
· Истина преобразуется в 1.
Функции форматирования
Прочие
Вычислить ( ) ― вычисляет переданное выражение.
1C Предприятие 8.1. Торговля. Булево
С помощью метода можно вычислять математические и логические выражения, а также операции конкатенации.
Пример.А = Вычислить (“500 + 500*20/100”);
ВычиИнформацияОбОшибке ()― получает структурированную информацию об исключении.
ОписаниеОшибки ()― получает описание ошибки.
Тип ( )― получает тип по его строковому имени.
ТипЗн ( )― получает тип значения.
МЕТОДИЧЕСКИЕ УКАЗАНИЯ:
1. Функции и процедуры должны содержаться в модуле объекта конфигурации (например, справочника).
3. Для уточнения синтаксиса функций встроенного языка используется Синтаксис помощник на Стандартной панели инструментов.
СОДЕРЖАНИЕ РАБОТЫ:
1. Изучить и пояснить структуру основных процедур и функций.
2. Написать глобальную функцию с параметрами для расчета суммы чисел, передающихся в качестве параметров.
3. Написать процедуру для расчета произведения чисел от N до 10*N, где N — номер по журналу.
ВОПРОСЫ ВЫХОДНОГО КОНТРОЛЯ:
ДОМАШНЕЕ ЗАДАНИЕ:
Выучить структуру процедуры и функции; добавления и удаления обработки; возможности передачи параметров в процедурах и функциях; возможность использования номеров и индексов; функции работы со значениями типа Строки, Число, Дата.
- к чему снится что горит окно
- что будет в конце 9 класса