cro-logo      
Добро пожаловать, Гость. Пожалуйста, выберите Вход

 
 
  ГлавнаяСправкаПоискВход  
 
Страниц: 1 2 3 4
Послать Тему Печать
СтатОтчёт и иерархический словарь (Прочитано 4 117 раз)
Юзер99335588
Опытный пользователь
***
Вне Форума



Сообщений: 93
СтатОтчёт и иерархический словарь
20.07.2022 :: 13:43:52
 
Добрый день!

Есть такая проблема:

база -> в ней есть словарное поле (иерархический словарь) -> я делаю запрос по образцу (ищу записи у которых есть значения это словаря, отбираю по родительскому значению) -> далее хочу сформировать статОтчёт вида:

родительское значение 1
ребенок 1
ребенок 1
ребенок 2
ребенок 3
ребенок 4

родительское значение 2
ребенок 4
ребенок 4
ребенок 7
ребенок 8
ребенок 9

а у меня получается такой вид:

родительское значение 1
родительское значение 1
родительское значение 1
родительское значение 1
родительское значение 1
ребенок 1
ребенок 1
ребенок 2
ребенок 3
ребенок 4

родительское значение 2
родительское значение 2
родительское значение 2
родительское значение 2
родительское значение 2
ребенок 4
ребенок 4
ребенок 7
ребенок 8
ребенок 9

т.е. сначала записи родительской позиции, а затем идет потомки
как сделать так, чтобы родительские значения были только один раз?

Спасибо!

а ещё было бы здорово делать подытог записей вида:

родительское значение 2
ребенок 4
ребенок 4
ребенок 7
ребенок 8
ребенок 9
итого:                 5
Наверх
 
 
IP записан
 
Zuluss
Бета-тестер
Вне Форума


Старинный пользователь
Кронос

Сообщений: 3 037
Санкт-Петербург
Re: СтатОтчёт и иерархический словарь
Ответ #1 - 20.07.2022 :: 13:58:04
 
Поле множественное или нет?
Если множественное, то там присутствует вся иерархия или только одно более "глубокое" значение?
Наверх
 
 
IP записан
 
Юзер99335588
Опытный пользователь
***
Вне Форума



Сообщений: 93
Re: СтатОтчёт и иерархический словарь
Ответ #2 - 20.07.2022 :: 14:01:46
 
да, словарное поле множественное
Там есть старшее значение и потомок

я специально так делал, чтобы было удобно искать - или по родителю всё или конкретного потомка
и в поле оба значения
Наверх
 
 
IP записан
 
Zuluss
Бета-тестер
Вне Форума


Старинный пользователь
Кронос

Сообщений: 3 037
Санкт-Петербург
Re: СтатОтчёт и иерархический словарь
Ответ #3 - 20.07.2022 :: 14:10:01
 
Получается, что Вы хотите сортировать значения в этом словарном поле?
Наверх
 
 
IP записан
 
Юзер99335588
Опытный пользователь
***
Вне Форума



Сообщений: 93
Re: СтатОтчёт и иерархический словарь
Ответ #4 - 20.07.2022 :: 14:28:09
 
нет
я делаю следующее:

в таблице БД n-полей, я отбираю данные по временному интервалу(поле типа Дата и чтобы записи попадали в нужный мне интервал времени) -> получил допустим 100 записей -> хочу создать статОтчёт на основании отобранных записей -> проектирую отчёт: индикатор делаю "на строки", задаю условие на одну строку - условие поиска по словарю и выбираю одно родительское значение (родительское значение 1), распределение делаю допустим по полям, ставлю галочку "не группировать", задаю поля ячеек этой строки, у словарных ставлю "декодировать по словарю"

и в итоге получается такая картина:

родительское значение 1
родительское значение 1
родительское значение 1
родительское значение 1
родительское значение 1
ребенок 1
ребенок 1
ребенок 2
ребенок 3
ребенок 4


сначала выводятся родительские значения равные числу отобранных записей, а затем выводятся уже потомки

и всё это повторяю строки по числу моих родительских значений словаря
Наверх
 
 
IP записан
 
Zuluss
Бета-тестер
Вне Форума


Старинный пользователь
Кронос

Сообщений: 3 037
Санкт-Петербург
Re: СтатОтчёт и иерархический словарь
Ответ #5 - 20.07.2022 :: 17:51:03
 
Предположим имеем две организации и словарное множественное поле с видом деятельности:
ООО "Рога и копыта" 
     20000000 - ДОБЫЧА ПОЛЕЗНЫХ ИСКОПАЕМЫХ
       20500000 - Добыча угля
         20501000 - Добыча и обогащение угля и антрацита
           20501100 - Добыча и обогащение угля и антрацита
             20501101 - Добыча угля и антрацита
     10000000 - СЕЛЬСКОЕ, ЛЕСНОЕ ХОЗЯЙСТВО, ОХОТА, РЫБОЛОВСТВО И РЫБОВОДСТВО
       10101000 - Растениеводство и животноводство, охота и предоставление соответствующих услуг в этих областях
         10101010 - Выращивание однолетних культур
           10101011 - Выращивание зерновых (кроме риса), зернобобовых культур и семян масличных культур
ООО "Уши и хвосты"
     10000000 - СЕЛЬСКОЕ, ЛЕСНОЕ ХОЗЯЙСТВО, ОХОТА, РЫБОЛОВСТВО И РЫБОВОДСТВО
       10101000 - Растениеводство и животноводство, охота и предоставление соответствующих услуг в этих областях
         10101010 - Выращивание однолетних культур
           10101011 - Выращивание зерновых (кроме риса), зернобобовых культур и семян масличных культур
     20000000 - ДОБЫЧА ПОЛЕЗНЫХ ИСКОПАЕМЫХ
       20500000 - Добыча угля
         20501000 - Добыча и обогащение угля и антрацита
           20501100 - Добыча и обогащение угля и антрацита
             20501101 - Добыча угля и антрацита

Как должен выглядеть статотчет?
Наверх
 
 
IP записан
 
Юзер99335588
Опытный пользователь
***
Вне Форума



Сообщений: 93
Re: СтатОтчёт и иерархический словарь
Ответ #6 - 20.07.2022 :: 21:19:22
 
наверное я не совсем правильно объяснил мои данные

у меня нет фирм, у меня есть только словарь и он такой:

20000000 - ДОБЫЧА ПОЛЕЗНЫХ ИСКОПАЕМЫХ
20500000 - Добыча угля
20501000 - Добыча и обогащение угля и антрацита
20501101 - Добыча угля и антрацита
10000000 - СЕЛЬСКОЕ, ЛЕСНОЕ ХОЗЯЙСТВО, ОХОТА, РЫБОЛОВСТВО И РЫБОВОДСТВО
10101000 - Растениеводство и животноводство, охота и предоставление соответствующих услуг в этих областях
10101010 - Выращивание однолетних культур
10101011 - Выращивание зерновых (кроме риса), зернобобовых культур и семян масличных культур

а таблица имеет типа такой вид:

id
некое поле_1
некое поле_2
некое поле_3
некое поле_4
словарь (множественное поле, обязательно родитель и потомок)
дата

у меня единица информации будет такая:

45345   "текст"  "текст-2"   "текст-3"  "текст-42" ДОБЫЧА ПОЛЕЗНЫХ ИСКОПАЕМЫХ;Добыча угля   12.04.2010
45346   "текст-34534"  "текст-5643"   "текст-354"  "текст-454" ДОБЫЧА ПОЛЕЗНЫХ ИСКОПАЕМЫХ;Добыча угля и антрацита   13.04.2010
45347   "текст-12"  "текст-212"   "текст-34"  "текст-40" СЕЛЬСКОЕ, ЛЕСНОЕ ХОЗЯЙСТВО, ОХОТА, РЫБОЛОВСТВО И РЫБОВОДСТВО;Выращивание однолетних культур   14.04.2010
45348   "текст-9898"  "текст-22"   "текст-0"  "текст-42" ДОБЫЧА ПОЛЕЗНЫХ ИСКОПАЕМЫХ;Добыча угля   12.04.2010
45349   "текст-12"  "текст-212"   "текст-34"  "текст-40" СЕЛЬСКОЕ, ЛЕСНОЕ ХОЗЯЙСТВО, ОХОТА, РЫБОЛОВСТВО И РЫБОВОДСТВО;Выращивание однолетних культур   12.04.2010

я делаю запрос по дате (в некотором интервале допустим за 12.04.2010), потом хочу сделать статОчёт по отобраным значениям, группируя их по значению словаря


   ДОБЫЧА ПОЛЕЗНЫХ ИСКОПАЕМЫХ
1. Добыча угля          "текст"
1. Добыча угля          "текст-9898"
    итого:                     2 
  СЕЛЬСКОЕ, ЛЕСНОЕ ХОЗЯЙСТВО, ОХОТА, РЫБОЛОВСТВО И РЫБОВОДСТВО
1. Выращивание однолетних культур        "текст-12"
    итого:                   
  1


а у меня сейчас получается:

ДОБЫЧА ПОЛЕЗНЫХ ИСКОПАЕМЫХ
ДОБЫЧА ПОЛЕЗНЫХ ИСКОПАЕМЫХ

Добыча угля          "текст"
Добыча угля          "текст-9898"
итого
СЕЛЬСКОЕ, ЛЕСНОЕ ХОЗЯЙСТВО, ОХОТА, РЫБОЛОВСТВО И РЫБОВОДСТВО
Выращивание однолетних культур        "текст-12"



сначала повторяются родительские значения словаря (сколько записей отобралось), а затем уже потомки
а хочется чтобы предки/родители были один раз и была сумма потомков каждого родителя

Наверх
 
 
IP записан
 
Zuluss
Бета-тестер
Вне Форума


Старинный пользователь
Кронос

Сообщений: 3 037
Санкт-Петербург
Re: СтатОтчёт и иерархический словарь
Ответ #7 - 20.07.2022 :: 22:10:58
 
Организации были приведены для примера. Не может же быть у Вас только словарь и текст. Хотя, в принципе, может быть и так, но все равно текст является основным полем описывающим объект базы, а не само словарное поле. Предположим, словарное поле описывает текст и к одному тексту применены несколько понятия словаря. В таком случае у Вас может получаться такое распределение:
45345   "текст"  "текст-2"   "текст-3"  "текст-42" ДОБЫЧА ПОЛЕЗНЫХ ИСКОПАЕМЫХ;Добыча угля   12.04.2010
45347   "текст-12"  "текст-212"   "текст-34"  "текст-40"  ДОБЫЧА ПОЛЕЗНЫХ ИСКОПАЕМЫХ;Добыча угля  14.04.2010
45345   "текст"  "текст-2"   "текст-3"  "текст-42" СЕЛЬСКОЕ, ЛЕСНОЕ ХОЗЯЙСТВО, ОХОТА, РЫБОЛОВСТВО И РЫБОВОДСТВО;Выращивание однолетних культур    12.04.2010

Для воплощения в жизнь Ваших желаний можно разбить статотчет на разделы, по разделам словаря, наложив ограничения на строки, и внутри разделов сделав распределение.
Наверх
 
 
IP записан
 
Юзер99335588
Опытный пользователь
***
Вне Форума



Сообщений: 93
Re: СтатОтчёт и иерархический словарь
Ответ #8 - 21.07.2022 :: 11:04:32
 
Спасибо за ответ!

А можно подсказать куда смотреть надо для этого?
Наверх
 
 
IP записан
 
Юзер99335588
Опытный пользователь
***
Вне Форума



Сообщений: 93
Re: СтатОтчёт и иерархический словарь
Ответ #9 - 21.07.2022 :: 12:28:29
 
я тут смоделировал вариант моей БД

может быть это лучше объяснит мои пожелания
Наверх
 
 
IP записан
 
Юзер99335588
Опытный пользователь
***
Вне Форума



Сообщений: 93
Re: СтатОтчёт и иерархический словарь
Ответ #10 - 21.07.2022 :: 12:31:26
 
вот:
Наверх
 
 
IP записан
 
Zuluss
Бета-тестер
Вне Форума


Старинный пользователь
Кронос

Сообщений: 3 037
Санкт-Петербург
Re: СтатОтчёт и иерархический словарь
Ответ #11 - 21.07.2022 :: 14:14:29
 
Попробуйте такой статотчет
Наверх
 

test2.zip (0 KB | 52 )
 
IP записан
 
Юзер99335588
Опытный пользователь
***
Вне Форума



Сообщений: 93
Re: СтатОтчёт и иерархический словарь
Ответ #12 - 21.07.2022 :: 14:40:41
 
Zuluss писал(а) 21.07.2022 :: 14:14:29:
Попробуйте такой статотчет


а он не сильно отличается от моего

всё равно создаются строки сначала со значением предка (по числу записей), а потом потомки

а как сделать так, чтобы предок был только один раз (или его просто не было, а была строка с жестко записанным текстом) и все найденные потомки?
Наверх
 
 
IP записан
 
Zuluss
Бета-тестер
Вне Форума


Старинный пользователь
Кронос

Сообщений: 3 037
Санкт-Петербург
Re: СтатОтчёт и иерархический словарь
Ответ #13 - 21.07.2022 :: 16:20:43
 
А этот скриншот результат работы статочета или то что требуется?
Наверх
 
 
IP записан
 
Юзер99335588
Опытный пользователь
***
Вне Форума



Сообщений: 93
Re: СтатОтчёт и иерархический словарь
Ответ #14 - 21.07.2022 :: 17:15:05
 
да, картинка это то, что я хотел получить
Наверх
 
 
IP записан
 
Страниц: 1 2 3 4
Послать Тему Печать