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

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 Сейчас в теме
Там измирение много. Мне нужно конкретный игрок поэтому я выбрал Приход. А ресурс Сумма
Оставьте свое сообщение
Вакансии
Консультант 1С ERP
Москва
зарплата от 200 000 руб. до 250 000 руб.
Полный день

Разработчик 1С
Москва
зарплата от 220 000 руб. до 300 000 руб.
Полный день

Старший программист 1С
Москва
зарплата от 120 000 руб. до 250 000 руб.
Полный день

Аналитик 1C
Москва
зарплата от 200 000 руб. до 240 000 руб.
Полный день

Аналитик группы поддержки 1С
Москва
зарплата от 160 000 руб. до 250 000 руб.
Полный день