5 Replies Latest reply: Feb 10, 2015 12:49 AM by Vladislav Tatarnikov RSS

    Нужен совет

    Vladislav Tatarnikov

      Здравствуйте!

      Подскажите как вписать "Численность населения" в сводную таблицу? Сложность в том, что численность региона не равна сумме населения городов. У магазинов численность можно не указывать (хотя не помешает указать численность города для магазина), главное численность по городам и регионам.

      1.png

      Возможно имеет смысл что-то поправить в модели, сейчас она такая:

      (таблица Магазины, не содержит иерархии и записи выглядят так Новосиб.обл/Новосиб/Магазин, т.е. придется прописывать 2 поля - численность региона и города, что не очень удобно)

      2.png

      Посоветуйте, пожалуйста, что-нибудь.

        • Re: Нужен совет
          Norka Oleg

          Добрый день!

          Может быть я что-то не так понял, но все же сделал вот такую таблицу. Может она поможет решить вопрос.

          Вместо района будет ваш город. Можно еще город поделить на районы и уже указать численность населения городских районов.

          2015-02-09 15_02_33-qvt - Подключение к удаленному рабочему столу.jpg

          2015-02-09 15_02_18-qvt - Подключение к удаленному рабочему столу.jpg

            • Re: Нужен совет
              Vladislav Tatarnikov

              У меня население региона это не сумма населения городов, в которых есть магазины. Т.е. взяли из справочника население Новосибирской обл. 2,686 млн, и населения 3 городов - 29к, 100к, 1,524 млн. Т.е. sum( ) не подходит ((( Может какая-то хитрая агрегация нужна..

                • Re: Нужен совет
                  Vadim Tsushko

                  Я бы наверное на этапе загрузки создал дополнительную запись для каждой области, например "Новосибирская область/остальные населенные пункты" и записал бы туда разницу между населением области, и суммы населения этих трех городов. Таким образом можно было бы использовать стандартную аггрегацию.

              • Re: Нужен совет
                Norka Oleg

                Может вот так:

                if(Dimensionality()=1,численность_населения, SUM(численность_населения))

                В Свойства/Представления- Измерения и выражения поставь галочку для Региона "Показать част. сумму"

                2015-02-09 16_30_53-qvt - Подключение к удаленному рабочему столу.jpg

                У меня получилась вот такая диаграмма, я не убирал численность населения для магазинов, можно убрать и добавить для города. Можно if(Dimensionality()=1.... использовать по другому, в любом случае выводит вместо суммы значение которое нам нужно, как видно на моей диаграмме.

                2015-02-09 16_36_47-qvt - Подключение к удаленному рабочему столу.jpg

                  • Re: Нужен совет
                    Vladislav Tatarnikov

                    Олег, спасибище!)

                    Я сделал так:

                    if(dimensionality()=1,aggr([Численность региона],[Регион магазина]), if(dimensionality()=2,aggr([Численность города],[Город магазина]), if(dimensionality()=0,sum([Численность города]),)))

                     

                    (итог у мне нужен только по сумме городов)

                    3.png