Фильтрация данных при обмене |
При необходимости в программе существует возможность экспортировать/ импортировать определенные записи выборки по заданному условию. Условное выражение на внутреннем языке СБиС++ может быть помещено на вкладку "Методы" в описании формата импорта/экспорта в файле ресурсов (рис. 1-1). В общем случае выражение для фильтрации выглядит следующим образом:
Если(Условие) Вернуть да
Иначе Вернуть нет;
В этом выражении доступны все поля экспортируемой/импортируемой записи. Если результатом выражения является ненулевое значение, то запись будет экспортирована/импортирована. Если результат – ноль, запись будет пропущена.
Например, чтобы экспортировать расходные накладные только с определённой темой, например "РОЗ", нужно написать:
Если(Внешняя.Тема == "РОЗ") Вернуть да
Иначе Вернуть нет;
Хочется отметить, что при написании выражений на внутреннем языке доступны два предопределённых объекта: "Внешняя" и "Внутренняя". Используя эти объекты можно обращаться к любой текущей записи внешней или внутренней таблицы.
В языке СБиС++ есть ряд функций, которые могут быть полезны при написании выражения для фильтрации при импорте/экспорте. Такие, как "ЗаписьНайдена", "ОсновнаяТаблица", "ВнешнееПоле", "ЕстьВнешнееПоле", "ФорматФайла", "КодировкаФайла" и т.д. Подробное описание этих функций и примеры их использования можно найти в "Справочнике по языку СБиС++".