Вычисление логических выражений в операторах встроенного языка
Состав работы
|
|
|
|
Необходимые программы
Работа представляет собой zip архив с файлами (распаковать онлайн), которые открываются в программах:
- Microsoft Word
Описание
В условных операторах и операторах цикла встроенного языка системы 1С:Предприятие для определения последовательности выполняемых действий используются логические выражения. Логическим выражением может быть элементарное логическое выражение (сравнение двух значений) или более сложные конструкции полученные из элементарных логических выражений при помощи логических операций И/ИЛИ/НЕ.
Логические выражения могут быть весьма сложными и изощренными. И здесь у разработчика конфигурации может возникнуть сложности, связанные с неправильным пониманием правил вычисления логических выражений. Рассмотрим пример.
Предположим, имеется процедура, предназначенная для обработки некоторого реквизита справочника или документа. Тип данного реквизита не определен, а процедура может вызываться для любого значения реквизита вне зависимости от его типа. Процедура может иметь вид:
Процедура Обработать(Об)
Если (ТипЗначенияСтр(Об) = "Справочник") И (Об.Вид() = "Товары") Тогда
// Некоторые действия
КонецЕсли;
...
КонецПроцедуры
Если в качестве значения параметра, передаваемого в данную процедуру, будет фигурировать элемент справочника любого вида, то процедура будет работать нормально, но если в качестве параметра будет передано значение типа "Число" или "Дата", то выполнение процедуры будет аварийно завершено. В логическом выражении, используемом в операторе 'Если' только составляющая ТипЗначенияСтр(Об) = "Справочник" будет корректно функционировать независимо от типа передаваемого параметра, а составляющая Об.Вид() = "Товары" сможет нормально работать только в том случае, если в качестве параметра в процедуру передано значение агрегатного типа и для данного агрегатного типа определен метод Вид(). Дело в том, что при вычислении логических выражений встроенный язык системы 1С:Предприятие 7.х сначала вычисляет элементарные логические выражения (операции сравнения), а затем производит вычисление логического выражения в целом (операции И/ИЛИ/НЕ).
Логические выражения могут быть весьма сложными и изощренными. И здесь у разработчика конфигурации может возникнуть сложности, связанные с неправильным пониманием правил вычисления логических выражений. Рассмотрим пример.
Предположим, имеется процедура, предназначенная для обработки некоторого реквизита справочника или документа. Тип данного реквизита не определен, а процедура может вызываться для любого значения реквизита вне зависимости от его типа. Процедура может иметь вид:
Процедура Обработать(Об)
Если (ТипЗначенияСтр(Об) = "Справочник") И (Об.Вид() = "Товары") Тогда
// Некоторые действия
КонецЕсли;
...
КонецПроцедуры
Если в качестве значения параметра, передаваемого в данную процедуру, будет фигурировать элемент справочника любого вида, то процедура будет работать нормально, но если в качестве параметра будет передано значение типа "Число" или "Дата", то выполнение процедуры будет аварийно завершено. В логическом выражении, используемом в операторе 'Если' только составляющая ТипЗначенияСтр(Об) = "Справочник" будет корректно функционировать независимо от типа передаваемого параметра, а составляющая Об.Вид() = "Товары" сможет нормально работать только в том случае, если в качестве параметра в процедуру передано значение агрегатного типа и для данного агрегатного типа определен метод Вид(). Дело в том, что при вычислении логических выражений встроенный язык системы 1С:Предприятие 7.х сначала вычисляет элементарные логические выражения (операции сравнения), а затем производит вычисление логического выражения в целом (операции И/ИЛИ/НЕ).
Другие работы
Контрольная работа по экологии. Вариант № 2
moadin
: 2 мая 2012
вариант 2
Задание 1
2. Каковы природные ресурсы нашей планеты?
Природные ресурсы — естественные ресурсы, тела и силы природы, которые на данном уровне развития производительных сил и изученности могут быть использованы для удовлетворения потребностей человеческого общества.
22. Каковы права и обязанности граждан по экологическому законодательству?
Задание 2
Задача 1
На поле с травяным покровом расположена радиолокационная станция, имеющая следующие характеристики излучения: импульсная мощность и
150 руб.
Гидравлика Задача 9.34 Вариант 02
Z24
: 15 января 2026
Определить напор, необходимый для пропуска расхода воды Q м³/c через трубопровод диаметром d=300 мм и длиной L м. Трубы стальные новые. Температура воды 20 ºС.
150 руб.
Маркетинг, контрольная работа, вариант №9
Margo777
: 6 июня 2015
Фирма осуществляет производство и продажу товара через сеть фирменных магазинов. Данные о цене товара и объеме проданных товаров в среднем за сутки, в одном из географических сегментов рынка приведены в таблице 1.1.
Таблица 1.1 Данные о цене и объеме проданных товаров в среднем за сутки:
Цена товара, тыс. руб.
Объем продажи товара в
средней за сутки (штук) по
вариантам
150 руб.
Цифровые системы передачи (ЦСП). Контрольная работа. Вариант 15.
Vladimirus
: 11 сентября 2016
Задача 1.
Разработайте структурную схему N канальной системы передачи с ИКМ, разрядность кода равна m.
Нарисуйте цикл передачи.
Определите скорость группового сигнала.
Разработайте генераторное оборудование этой системы и нарисуйте диаграммы его работы.
Где N и m значения, взятые из таблицы 1.
Задача 2.
Рассчитать для заданных отсчетов группового АИМ сигнала:
1. Число уровней квантования Мрасч для двух заданных значений шага квантования при равномерном (линейном) законе квантования.
2
150 руб.