Versions Compared
Key
- This line was added.
- This line was removed.
- Formatting was changed.
Здесь вы найдете тексты примеров запросов и программ для примеры дополнительных отчетов.
Подробнее о создании отчетов типа «Запрос» и «Программно» читайте на соответствующих страницах.
Info |
---|
Значение в поле «Значение параметра» служит для тестирования отчета и как значение по умолчанию, если агент не выбрал необязательный к заполнению параметр на мобильном устройстве. Если параметр является обязательным для выбора торговым агентом и тестирование отчета не предполагается, то значение параметра можно не заполнять. |
РазделыСписок примеров
Table of Contentschildren |
---|
Запросы
Тексты запросов и описание используемых параметров
Заказы партнера за последние семь дней
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
ВЫБРАТЬ
ЗаказКлиента.Ссылка КАК Ссылка,
ЗаказКлиента.Дата КАК Дата,
ЗаказКлиента.Менеджер КАК Менеджер,
ЗаказКлиента.СуммаДокумента КАК СуммаДокумента
ИЗ
Документ.ЗаказКлиента КАК ЗаказКлиента
ГДЕ
ЗаказКлиента.Дата > &Дата
И ЗаказКлиента.Партнер = &Партнер |
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
// Дата
Выражение: ДА
Значение параметра: ТекущаяДата()-(86400*7) // текущая дата минус семь дней в секундах
Использовать: ДА
Тип параметра: Не выгружать
Обязательный: НЕТ
// Партнер
Выражение: НЕТ
Значение параметра: Альфа-Протон // выберите партнера для тестирования отчета
Использовать: ДА
Тип параметра: Справочник "Партнеры"
Обязательный: ДА |
Ведомость заказов торгового агента за период
Здесь для примера используется значение параметра «ВыбАгент» — это агент, который формирует запрос с мобильного устройства.
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
ВЫБРАТЬ
ЗаказКлиента.Ссылка КАК Ссылка,
ЗаказКлиента.Дата КАК Дата,
ЗаказКлиента.Менеджер КАК Агент,
ЗаказКлиента.СуммаДокумента КАК СуммаДокумента
ИЗ
Документ.ЗаказКлиента КАК ЗаказКлиента
ГДЕ
ЗаказКлиента.Дата МЕЖДУ НачалоПериода(&ПериодОт,День) И КонецПериода(&ПериодДо,День)
И ЗаказКлиента.Менеджер = &Агент |
Параметры
Image Removed
ПериодОт и ПериодДо
- параметры будут запрашиваться на мобильном устройстве и являются обязательными для заполнения;
- для проверки формирования отчета в настройках значения укажем «Выражение» и «Текущая дата()»;
- вместо выражения «Текущая дата()» вы можете выбрать тип «Дата» и указать свое значение.
Агент
- параметр не будет запрашиваться на мобильном устройстве;
для автоматического определения кто из агентов запросил отчет используем глобальную переменную ВыбАгент.
Если вы не хотите проверять отчет на вкладке «Проверить отчет», то в значении параметра «Агент» можно просто указать
Code Block |
---|
ВыбАгент |
Но мы рекомендуем указать тестового агента для проверки отчета. Укажите любого из своих торговых агентов.
Code Block | ||
---|---|---|
| ||
// если отчет формируется в учетной системе, то формируем его для агента Белкина Анастасия Георгиевна
// иначе берем значение из глобальной переменной ВыбАгент.
?(ЗначениеЗаполнено(ВыбАгент), ВыбАгент, Справочники.Пользователи.НайтиПоНаименованию("Белкина Анастасия Георгиевна")) |
Программы
Тексты программ и описание используемых параметров
Ведомость по товарам на мобильном складе торгового агента за период
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
//ПРОГРАММА: Ведомость по товарам на мобильном складе торгового агента за период
//1. Глобальные параметры
//1.1 Параметры
// сзПараметры - СписокЗначений - Список значений из вкладки Параметры
// сзПараметры.Значение - Любой - Значение параметра
// сзПараметры.Представление - Строка - Имя параметра
// сзПараметры.Пометка - Булево - Признак "Использовать"
//1.2 Результат
// ТабличныйДокументРезультат - ТабличныйРезультат - Результат выполнения программы, при выгрузке данные из параметра будут сконвертированы в МУ.
//2. Макет схемы компоновки данных
СхемаКомпоновкиДанных = Отчеты.ВедомостьПоТоварамНаСкладах.ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных");
//3. ВариантыНастроек
ВариантыНастроек = СхемаКомпоновкиДанных.НастройкиПоУмолчанию; // Или другой: СхемаКомпоновкиДанных.ВариантыНастроек.Найти("СвойВариант");
//3. КомпоновщикНастроек
КомпоновщикНастроек = Новый КомпоновщикНастроекКомпоновкиДанных;
КомпоновщикНастроек.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(СхемаКомпоновкиДанных));
КомпоновщикНастроек.ЗагрузитьНастройки(ВариантыНастроек);
//4. Установка параметра Период и отбора по Складу. сзПараметры - глобальный параметр
ПериодОчета = Новый СтандартныйПериод;
Для Каждого Элемент Из сзПараметры Цикл
//4.1 Заполнение "ПериодОчета" - это период отчета.
Если Элемент.Представление = "ПериодОт" Тогда
ПериодОчета.ДатаНачала = Элемент.Значение;
ИначеЕсли Элемент.Представление = "ПериодДо" Тогда
ПериодОчета.ДатаОкончания = КонецДня(Элемент.Значение);
КонецЕсли;
//4.2 Отбор по складу
Если Элемент.Представление = "Склад" И Элемент.Пометка Тогда
Если ЗначениеЗаполнено(ВыбАгент) И ЗначениеЗаполнено(ВыбНастройкиАгента.МобильныйСклад) Тогда
//МобильныйСклад, при выгрузке
Склад = ВыбНастройкиАгента.МобильныйСклад;
ИначеЕсли НЕ ЗначениеЗаполнено(ВыбАгент) И ЗначениеЗаполнено(Элемент.Значение) Тогда
//Для теста, при нажатии на кнопку сформировать в УС.
Склад = Элемент.Значение
Иначе
Продолжить;
КонецЕсли;
ДоступноеПоле = КомпоновщикНастроек.Настройки.Отбор.ДоступныеПоляОтбора.Элементы.Найти("Склад");
ЭлементОтбора = КомпоновщикНастроек.Настройки.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ЭлементОтбора.ЛевоеЗначение = ДоступноеПоле.Поле;
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ЭлементОтбора.ПравоеЗначение = Склад;
ЭлементОтбора.Использование = Истина;
КонецЕсли;
КонецЦикла;
//4.3 Установка стандартного периода
ПараметрОтчетаСтандартныйПериод = КомпоновщикНастроек.Настройки.ПараметрыДанных.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("Период"));
ПараметрОтчетаСтандартныйПериод.Использование = Истина;
ПараметрОтчетаСтандартныйПериод.Значение = ПериодОчета;
//5. Вывод значений параметров в отчет (шапка отчета)
ПараметрВыводитьПараметры = КомпоновщикНастроек.Настройки.ПараметрыВывода.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("ВыводитьПараметрыДанных"));
ПараметрВыводитьПараметры.Использование = Истина;
ПараметрВыводитьПараметры.Значение = ТипВыводаТекстаКомпоновкиДанных.Выводить; //Или ТипВыводаТекстаКомпоновкиДанных.НеВыводить
//6. Вывод значений отбора в отчет (шапка отчета)
ПараметрВыводитьОтбор = КомпоновщикНастроек.Настройки.ПараметрыВывода.НайтиЗначениеПараметра(Новый ПараметрКомпоновкиДанных("ВыводитьОтбор"));
ПараметрВыводитьОтбор.Использование = Истина;
ПараметрВыводитьОтбор.Значение = ТипВыводаТекстаКомпоновкиДанных.Выводить; //Или ТипВыводаТекстаКомпоновкиДанных.НеВыводить
//7. КомпоновщикМакетаКомпоновкиДанных
КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
Настройки = КомпоновщикНастроек.Настройки;
МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, Настройки);
//8. ПроцессорКомпоновкиДанных
ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных;
ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновки,,,Истина);
//9. Результат выполнения. ТабличныйДокументРезультат - глобальный параметр
ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
ПроцессорВывода.УстановитьДокумент(ТабличныйДокументРезультат);
ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных); |
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
// ПериодОт
Выражение: ДА
Значение параметра: ТекущаяДата() // или снимите галочку «Выражение», выберите тип «Дата» и укажите дату вручную
Использовать: ДА
Тип параметра: Дата
Обязательный: ДА
// ПериодДо
Выражение: ДА
Значение параметра: ТекущаяДата()
Использовать: ДА
Тип параметра: Дата
Обязательный: ДА
// Склад
Выражение: НЕТ
Значение параметра: Центральный склад // здесь выбрать склад для тестирования отчета и выгрузки агенту, если у него нет мобильного склада.
Использовать: ДА
Тип параметра: Не выгружать
Обязательный: Нет |
Перечень документов «Посещение», созданных агентом за определенный период
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
//ПРОГРАММА: Перечень документов Посещение, созданных агентом за определенный период
//1. Глобальные параметры
//1.1 Параметры
// сзПараметры - СписокЗначений - Список значений из вкладки Параметры
// сзПараметры.Значение - Любой - Значение параметра
// сзПараметры.Представление - Строка - Имя параметра
// сзПараметры.Пометка - Булево - Признак "Использовать"
//1.2 Результат
// ТабличныйДокументРезультат - ТабличныйРезультат - Результат выполнения программы, при выгрузке данные из параметра будут сконвертированы в МУ.
//2. Получение всех документов посещение
тзПосещение = ВОТЗЗагрузить("_Посещение");
//3. Запрос с отбором
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
| тзПосещение.Дата КАК Дата,
| РАЗНОСТЬДАТ(тзПосещение.ВремяОкончания, тзПосещение.ВремяНачала, МИНУТА) КАК Время,
| тзПосещение.Партнер КАК Партнер,
| тзПосещение.Менеджер КАК Агент
|ПОМЕСТИТЬ тзПосещение
|ИЗ
| &тзПосещение КАК тзПосещение
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ
| тзПосещение.Дата КАК Дата,
| тзПосещение.Время КАК Время,
| тзПосещение.Партнер КАК Партнер,
| тзПосещение.Агент КАК Агент
|ИЗ
| тзПосещение КАК тзПосещение
|ГДЕ
| тзПосещение.Дата МЕЖДУ НачалоПериода(&ПериодОт,День) И КонецПериода(&ПериодДо,День)";
Запрос.УстановитьПараметр("тзПосещение", тзПосещение);
//4. Установка параметров Период и партнер. сзПараметры - глобальный параметр
Для Каждого Элемент Из сзПараметры Цикл
Если Элемент.Представление = "ПериодОт" Тогда
Запрос.УстановитьПараметр("ПериодОт", Элемент.Значение);
ИначеЕсли Элемент.Представление = "ПериодДо" Тогда
Запрос.УстановитьПараметр("ПериодДо", Элемент.Значение);
ИначеЕсли Элемент.Представление = "Партнер" И Элемент.Пометка И ЗначениеЗаполнено(Элемент.Значение) Тогда
Запрос.Текст = Запрос.Текст + Символы.ПС + "И тзПосещение.Партнер = &Партнер";
Запрос.УстановитьПараметр("Партнер", Элемент.Значение);
КонецЕсли;
КонецЦикла;
//5. Вывод результата
РезультатЗапроса = Запрос.Выполнить();
ПостроительОтчета = Новый ПостроительОтчета;
ПостроительОтчета.ИсточникДанных = Новый ОписаниеИсточникаДанных(РезультатЗапроса);
ПостроительОтчета.Вывести(ТабличныйДокументРезультат); |
language | java |
---|---|
title | Параметры |
linenumbers | true |
collapse | true |
Смотрите также