Отчет Диаграммы

1. user1087014 08.06.23 10:34 Сейчас в теме
Друзья такая тема. Значит есть справочники "Участники" - которые приходят на игру.
Захотелось поставить диаграмму в справочники а точнее на форму элемента. что бы при открытии карточки игрока из справочника видно было что на этот месяц игрок сколько платил мне.. Я создал реквизит прям внутри формы элемента справочника и путь дал на "поле диаграммы" - Теперь тут нужно наверника всего при открытии формы написать код. Но вот как написать не знаю. Проблема в том что я понимаю что нужно поставить отбор и дату (Текущий месяц) но увы столько еще не смог научиться. Заранее спасибо..
Прикрепленные файлы:
По теме из базы знаний
Вознаграждение за ответ
Показать полностью
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. DesertPunk 08.06.23 11:09 Сейчас в теме
(1)У тебя есть группа, которая выше по иерархии чем "Основной", "Учет", "Фотография" и "Дополнительно". Если нет - создай и помести туда свои группы. Затем в событии отработай "ПриСменеСтраницы":

&НаКлиенте
Процедура ТвояНоваяГруппаПриСменеСтраницы(Элемент, ТекущаяСтраница)
	
	Если ТекущаяСтраница = Элементы.Учет Тогда
		СформироватьОтчет();
	КонецЕсли;
	
КонецПроцедуры


&НаСервере
Процедура СформироватьОтчет()

КонецПроцедуры
Показать
4. user1087014 08.06.23 11:16 Сейчас в теме
(2)Так минуточку, так же нету отбора по конкретному игроку. И отбора по текущей даты. каак он будет работать ?
3. DesertPunk 08.06.23 11:11 Сейчас в теме
(1)Опиши структуру регистра, в котором хранишь данные по платежам.
5. user1087014 08.06.23 11:20 Сейчас в теме
Вот создал кнопку просто для проверки и нарисовал с помощи конструктора
&НаСервере
Процедура СформироватьНаСервере(Диаграмма)
//{{КОНСТРУКТОР_ЗАПРОСА_С_ОБРАБОТКОЙ_РЕЗУЛЬТАТА
// Данный фрагмент построен конструктором.
// При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!

Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ПриобритениеУслугПоМафии.Приходы КАК Приходы,
| ПРЕДСТАВЛЕНИЕ(ПриобритениеУслугПоМафии.Приходы) КАК ПриходыПредставление,
| ПриобритениеУслугПоМафии.Дата КАК Дата,
| ПриобритениеУслугПоМафии.Сумма КАК Сумма
|ИЗ
| РегистрНакопления.ПриобритениеУслугПоМафии КАК ПриобритениеУслугПоМафии
|ИТОГИ
| СУММА(Сумма)
|ПО
| Приходы";

РезультатЗапроса = Запрос.Выполнить();

Диаграмма.Обновление = Ложь;
Диаграмма.Очистить();
Диаграмма.АвтоТранспонирование = Ложь;
Точка = Диаграмма.УстановитьТочку("Сумма");

ВыборкаПриходы = РезультатЗапроса.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);

Пока ВыборкаПриходы.Следующий() Цикл
Серия = Диаграмма.УстановитьСерию(ВыборкаПриходы.Приходы);
Серия.Текст = ВыборкаПриходы.ПриходыПредставление;
Серия.Расшифровка = ВыборкаПриходы.Приходы;
Диаграмма.УстановитьЗначение(Точка, Серия, ВыборкаПриходы.Сумма, Серия.Расшифровка);

ВыборкаДетальныеЗаписи = ВыборкаПриходы.Выбрать();

Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
// Вставить обработку выборки ВыборкаДетальныеЗаписи
КонецЦикла;
КонецЦикла;

Диаграмма.АвтоТранспонирование = Истина;
Диаграмма.Обновление = Истина;

//}}КОНСТРУКТОР_ЗАПРОСА_С_ОБРАБОТКОЙ_РЕЗУЛЬТАТА



КонецПроцедуры

&НаКлиенте
Процедура Сформировать(Команда)
СформироватьНаСервере(Диаграмма);
КонецПроцедуры

Только выдает ошибку {Справочник.Мафия.Форма.ФормаЭлемента.Форма(135,24)}: Переменная не определена (Диаграмма)
СформироватьНаСервере(<<?>>Диаграмма); (Проверка: Тонкий клиент)
12. DesertPunk 08.06.23 14:36 Сейчас в теме
(5) Естественно! У тебя параметр "Диаграмма" не назначен заранее. Да и не нужен он тебе.

&НаКлиенте
// Просто обратись к процедуре на сервере
Процедура Сформировать(Команда)
СформироватьНаСервере();
КонецПроцедуры

&НаСервере
Процедура СформироватьНаСервере(Диаграмма)
// Тут просто обратись к диаграмме
Диаграмма...
КонецПроцедуры
Показать


Если "Приход" это посетитель, то где отбор по нему в запросе? Если тебе нужны данные за период, то где отбор по дате?
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ПриобритениеУслугПоМафии.Приходы КАК Приходы,
| ПРЕДСТАВЛЕНИЕ(ПриобритениеУслугПоМафии.Приходы) КАК ПриходыПредставление,
| ПриобритениеУслугПоМафии.Дата КАК Дата,
| ПриобритениеУслугПоМафии.Сумма КАК Сумма
|ИЗ
| РегистрНакопления.ПриобритениеУслугПоМафии КАК ПриобритениеУслугПоМафии
|ИТОГИ
| СУММА(Сумма)
|ПО
| Приходы";

РезультатЗапроса = Запрос.Выполнить();
Показать
6. DesertPunk 08.06.23 11:28 Сейчас в теме
(4) В РегистрНакопления.ПриобритениеУслугПоМафии какие измерения и ресурсы?
8. user1087014 08.06.23 11:37 Сейчас в теме
(6)Вот
Прикрепленные файлы:
9. DesertPunk 08.06.23 11:52 Сейчас в теме
10. user1087014 08.06.23 12:05 Сейчас в теме
11. DesertPunk 08.06.23 12:13 Сейчас в теме
(10) Единственный выход - использовать нормальные регистры сведений с остатками и оборотами без измерений "Приход" и "Расход" , но с измерением "Покупатель/Гость/как ты его у себя назвал в конфе"
7. user1087014 08.06.23 11:29 Сейчас в теме
Там измирение много. Мне нужно конкретный игрок поэтому я выбрал Приход. А ресурс Сумма
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот