Если НЕ Страна = ВыбСтрана ИЛИ Цена > 100 И Цена < 1000 Тогда
//лучше записать так:
Если (НЕ Страна = ВыбСтрана) ИЛИ (Цена > 100 И Цена < 1000) Тогда
В 1C: Предприятии 8.0 введено сокращенное вычисление логических выражений. Это означает, что если по части выражения можно определить конечный результат, тогда остаток логического выражения не вычисляется.
Если Цена > 10 И Цена < 20 Тогда
При вычислении результата составного логического выражения проверяется первое условие «Цена > 10». Допустим, цена равна 5, тогда первое условие не выполняется (дает значение Ложь) и следующую часть вычислять уже не нужно, поскольку в любом случае результат всего выражения будет Ложь.
//следующая процедура принимает табличный документ,
//а если ничего не передано,
//то она его создает и показывает на экране
Процедура Печать(ТабДок = Неопределено) Экспорт
Если ТабДок = Неопределено Тогда
ТабДок = Новый ТабличныйДокумент;
флПоказывать = Истина;
Иначе
флПоказывать = Ложь;
КонецЕсли;
Макет = ПолучитьМакет("Основной");
ТабДок.Вывести(Макет.ПолучитьОбласть("Бланк"));
Если флПоказывать Тогда
ТабДок.Показать();
КонецЕсли;
КонецПроцедуры
Замечание.
Процедуры и функции рекомендуется предварять комментариями с описанием их назначения, параметров, основных принципов работы и возвращаемого значения для функций. В редакторе модулей есть возможность свернуть процедуры и функции модуля, а также перейти на одну из них, выбрав ее из списка. Описания в виде комментариев также можно сворачивать.
Параметры процедуры или функции по умолчанию передаются по ссылке. Это означает, что изменение формального параметра внутри процедуры или функции приведет к изменению фактического параметра в том месте, где она вызывается. Чтобы гарантированно передать параметр по значению, нужно перед именем параметра вставить ключевое слово