Versions Compared
compared with
Key
- This line was added.
- This line was removed.
- Formatting was changed.
Здесь вы найдете тексты примеров запросов и программ для дополнительных отчетов.
Подробнее о создании отчетов типа «Запрос» и «Программно» читайте на соответствующих страницах.
Info |
---|
Значение в поле «Значение параметра» служит для тестирования отчета и как значение по умолчанию, если агент не выбрал необязательный к заполнению параметр на мобильном устройстве. Если параметр является обязательным для выбора торговым агентом и тестирование отчета не предполагается, то значение параметра можно не заполнять. |
Разделы
Table of Contents |
---|
Запросы
Тексты запросов и описание используемых параметров
Заказы партнера за последние семь дней
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
ВЫБРАТЬ ЗаказКлиента.Ссылка КАК Ссылка, ЗаказКлиента.Дата КАК Дата, ЗаказКлиента.Менеджер КАК Менеджер, ЗаказКлиента.СуммаДокумента КАК СуммаДокумента ИЗ Документ.ЗаказКлиента КАК ЗаказКлиента ГДЕ ЗаказКлиента.Дата > &Дата И ЗаказКлиента.Партнер = &Партнер |
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
// Дата Выражение: ДА Значение параметра: ТекущаяДата()-(86400*7) // текущая дата минус семь дней в секундах Использовать: ДА Тип параметра: Не выгружать Обязательный: НЕТ // Партнер Выражение: НЕТ Значение параметра: Альфа-Протон // выберите партнера для тестирования отчета Использовать: ДА Тип параметра: Справочник "Партнеры" Обязательный: ДА |
Ведомость заказов торгового агента за период
Здесь для примера используется значение параметра «ВыбАгент» — это агент, который формирует запрос с мобильного устройства.
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. Вывод результата РезультатЗапроса = Запрос.Выполнить(); ПостроительОтчета = Новый ПостроительОтчета; ПостроительОтчета.ИсточникДанных = Новый ОписаниеИсточникаДанных(РезультатЗапроса); ПостроительОтчета.Вывести(ТабличныйДокументРезультат); |
Code Block | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
// ПериодОт Выражение: ДА Значение параметра: ТекущаяДата() // или снимите галочку «Выражение», выберите тип «Дата» и укажите дату вручную Использовать: ДА Тип параметра: Дата Обязательный: ДА // ПериодДо Выражение: ДА Значение параметра: ТекущаяДата() Использовать: ДА Тип параметра: Дата Обязательный: ДА // Партнер Выражение: НЕТ Значение параметра: Альфа-Протон // выберите партнера для тестирования отчета Использовать: ДА Тип параметра: Дата Обязательный: ДА |