Давным давно мной был написан отчет "Продажи товаров по отгрузке" //infostart.ru/public/16477/. В данной публикации не будем обсуждать его актуальность и достоинства. Данный отчет возьмется как шаблон для экспериментов, видоизменений. Тем более в комментариях спрашивали, как добавлять Поля.
Открываем "Настройки..." и переходим на закладку "Пользовательские настройки".
2. Добавляем "Новое поле Выражение"
Заголовок: Цена продажи |
Как будет отображаться при формировании |
Выражение детальных записей: [Сумма продажи] / Количество |
Собственно из чего получились данные |
Выражение итоговых записей: [Сумма продажи] / Количество |
Выражение для получения итогов по группировкам |
Добавление полей проставляет собой прописывание арифметических действий между Доступными полями, (это позволительно отмеченных зеленым квадратиком). Также особенность, если название такого поля состоит из двух или более слов, его необходимо заключить в квадратные скобки [ ]. Получиться вот так - [Сумма продажи].
После сохранения, это поле станет доступно для выбора:
Вот с помощью несложных манипуляций получаете нужное для себя значение. Данная возможность позволить добавлять нужные поля. В таких вариантах расчета как вам необходимо. Рентабельность, Эффективность и прочее значения будут считаться в вашей логики арифметических расчетов.
Итого, необходимо сохранить что вы сделали:
В этом случае ваша работа не будет потеряна и при следующем открытии отчета можно будет воспользоваться.
Функций, используемые при написании полей.
1. Арифметические « + , - , * , / » с этим понятно, думаю объяснить принцип их действия не надо.
2. Логические выражения в используются для определения отборов. « > , < , = , >= , <= , <>, И, ИЛИ, НЕ ». Данные выражения используется с операцией выбора.
3. Операции выбора. Применяться для получения одного из возможных значений в соответствии с указанными условиями
ВЫБОР
КОГДА < Операция выбора > ТОГДА <Выражение>
ИНАЧЕ <Выражение>
КОНЕЦ
Пример:
ВЫБОР
КОГДА Количество > 0 и Сумма > 0 ТОГДА «Правильно»
ИНАЧЕ «Ошибка»
КОНЕЦ
Это расшифровывается так: при условии когда количество больше нуля и сумм больше нуля, будет выводиться текст «Правильно», а если хоть одно из условий не соблюдено выводиться «Ошибка».
4. Встроенная функция, позволяет произвести определенные преобразования с полями.
ПОДСТРОКА ( «Выражение» , «Начальная позиция» , «Конечная Позиция») – выбирается часть «Выражения», ограниченного рамками «Начальной…» и «Конечной…».
Как это поисходит при значении Номенклатура - «Паста шоколадная» формула Подстрока(Номенклатура,1,5) выведет значение «Паста»
Для работы с датой используются функции
ГОД(<Дата>), КВАРТАЛ(<Дата>), МЕСЯЦ(<Дата>), ДЕНЬГОДА(<Дата>), ДЕНЬ(<Дата>), НЕДЕЛЯ(<Дата>), ДЕНЬНЕДЕЛИ(<Дата>), ЧАС(<Дата>), МИНУТА(<Дата>), СЕКУНДА(<Дата>)
Будет выводится соответствующий названию функции значение.
НАЧАЛОПЕРИОДА(«Дата», «Период сдвига»), КОНЕЦПЕРИОДА(«Дата», «Период сдвига»). Для данных функции, значение Выражения даты на начало или конец заданной даты.
ДОБАВИТЬКДАТЕ («Дата», «Период сдвига», «Величина, на которую требуется увеличить дату») - функция позволяет увеличить или уменьшить дату на определенное значение.
РАЗНОСТЬДАТ («Дата1», «Дата2», «Период сдвига») - Функция предназначена для получения разницы между двумя датами.
«Период сдвига» одно из «Минута, Час, День, Неделя, Месяц, Квартал, Год, Декада, Полугодие».
5.Агрегатные функции языка запросов используются при группировке результатов подсчете итогов
СУММА ( <> ) арифметическую сумму всех попавших в выборку значений.
СРЕДНЕЕ ( <> ) вычисляет среднее значение всех попавших в выборку
МИНИМУМ ( <> ) вычисляет минимальное значение из всех попавших в выборку значений
МАКСИМУМ ( <> ) вычисляет максимальное значение из всех попавших в выборку значений
КОЛИЧЕСТВО ( <> ) подсчитывает количество значений параметра, попавших в выборку. Данная функция позволяет имеет варианты использования. КОЛИЧЕСТВО(*) - позволяет подсчитать количество строк в результате. КОЛИЧЕСТВО(РАЗЛИЧНЫЕ «Выражение») - позволяет подсчитать количество различных значений указанного поля.
Примеры:
Сумма(Выбор
Когда Подстрока(Номенклатура, 1, 5) = "Паста"
Тогда Количество *0.2
Иначе Количество *0.35
Конец)
Получится сумма значений при этом когда в начале наименования номенклатуры присутствует «Паста» в этом случает количество увеличивается на 0.2 если не присутствует увеличивается на 0.35.
Год([Документ.Дата])
Выведется Год когда документ записан/проведен.
Более сложный пример, без расшифровки.
Выбор
Когда Квартал([Документ.Дата]) = 1 И Подстрока(Номенклатура, 1, 5) = "Паста"
Тогда Количество * 0.2
Иначе Выбор
Когда Квартал([Документ.Дата]) = 2
Тогда Количество * 0.3
Иначе Выбор
Когда Квартал([Документ.Дата]) = 3
Тогда Количество * 0.4
Иначе Выбор
Когда Квартал([Документ.Дата]) = 4
Тогда Количество * 0.5
Конец
Конец
Конец
Конец
ps:
Бухгалтерская Справка для БП - //infostart.ru/public/64188/
Все налоги ФОТ по сотрудникам Для БП 2 - //infostart.ru/public/15836/
Реестр по документу Счет-ФактураВыданный для БП и УПП - //infostart.ru/public/18911/
Отчет по себестоимости и продажам товаров для БП - //infostart.ru/public/16477/
Одновременная печать Торг12 + С-Ф и Акт на услуги + С-Ф для БП - //infostart.ru/public/93943/
Одновременная печать Торг12 + С-Ф и Акт на услуги + С-Ф для УТ 10 - //infostart.ru/public/96636/