Логін: Пароль: Допомога :: реєстрація :: забув пароль :: персональнi данi :: правила  

 : розширений
 : по класифікатору
 : документів


повідомлення
короткий зміст


Информер УФС (http://ufs.com.ua/)



Діловий тижневик
"КОНТРАКТИ"


№48/2008

Гроші:
Причини і наслідки інфляційних процесів в Україні :: Хто ще потрібен і вже не потрібен роботодавцям :: Чому різко дешевшає комерційна нерухомість...


Рейтинги "ГВАРДІЯ"

Гвардия корпораций
Рейтинг самых дорогих компаний и корпораций Украины.

Автоматично з Дт-Кт № 49 (6.12.2004)
Вікно у світ «1С»

Зведена таблиця в «1С:Підприємстві 8.0»

Постачальники багатовимірних рішень люблять говорити: «Якщо ваш аналіз одномірний, то проблеми бізнесу будуть багатовимірні і багатогранні». Нехай не всі проблеми вирішуються так, та все ж... Тепер прилучитися до багатовимірного аналізу можуть користувачі «1С».


У «1С:Підприємстві 8.0» з’явився такий інструмент аналізу багатовимірних даних, як зведена таблиця. Джерелом даних для неї є результат запиту користувача, і саме для цього ми й знайомилися із запитами1.

Довгий шлях до третього виміру

Аналіз багатовимірних даних має історію настільки ж давню, як і сама історія баз даних. Як тільки з’являється реляційна модель бази, що дозволяє накопичувати великі обсяги даних, з’являється і модель багатовимірного збереження інформації. У 1962 році виходить концептуальна книга К. Айверсона - «Мова програмування» (A Programming Language - APL). Мова APL була реалізована наприкінці 60-х компанією IBM. Ця математично визначена мова з багатовимірними перемінними, дуже витонченими операторами заклала основи сучасної обробки багатовимірних даних.

Одночасно APL є однією з найекстравагантніших мов програмування. У її нотації використовувалися грецькі символи. Навіть концепція сучасного графічного інтерфейсу користувача з’явилася пізніше, а в той час нотація потребувала спеціальних моніторів і друкувальних пристроїв. Мова APL дозволяла описувати багатовимірні перетворення. Однак вона зовсім не приділяла уваги банальним речам, таким як робота з файлами або друк даних. Вона вимагала непомірного на ті часи обсягу оперативної пам’яті - 6 МБ. Нехай сьогодні для клієнтської машини «1С:Підприємства 8.0» навіть 256 МБ небагато, та це ніщо порівняно з такою цифрою тоді.

Витончені програми, написані мовою APL, працювали повільно й обходилися дорого. Програмувати цією мовою означало належати до елітного клубу. Тому «борці за чистоту лав» припинили спроби замінити грецькі оператори англійськими. Мова була дуже складною у використанні. Нічого не залишалося, як чекати наступного покоління програмних продуктів.

Якщо позначити віхи дуже схематично, на початку 80-х з’являються продукти, орієнтовані на кінцевого фінансового користувача. У цих програмах уперше використовувалася ідея гіперкубу та його повноекранного перегляду (Compare System W), клієнт-серверних обчислень, багатовимірної обробки реляційних даних (Metafor). Саме з них почалася галузь великих, серйозних OLAP-продуктів.

Так уже склалося, що багатовимірний аналіз багатьом асоціюється з дорогим інструментарієм і великою роботою. Але великі завдання і невеликі завдання існують одночасно.

Водночас наприкінці 80-х серед інструментів аналізу даних кінцевого користувача стали домінувати електронні таблиці. Тоді ж почали з’являтися інструменти малого «настільного» багатовимірного аналізу для електронних таблиць (наприклад, Improve компанії Lotus). Але коли ця компанія випустила електронну таблицю 1-2-3 для Windows, дуже серйозним конкурентом для неї став уже Excel. Зведені таблиці (PivotTables) були додані до стандартного набору Excel і стали доступним способом прилучатися до багатовимірної обробки даних для широкої аудиторії користувачів цієї електронної таблиці. Excel 2000 зведену таблицю можна використовувати як клієнтську частину MS OLAP Services.

В «1С:Підприємстві 8.0» теж з’явилася можливість використовувати свою зведену таблицю для аналізу даних. Але оскільки вона залишається відкритою системою, можна й далі імпортувати дані в Excel.

Багатовимірні дані

Управління - це галузь, у якій аналіз інформації є невід’ємною частиною процесу. Будь-яке рішення виникає в результаті визначеної обробки інформації. При цьому менеджери витрачають багато часу на збір, пошук і систематизацію потрібних даних, відчуваючи при цьому велику завантаженість зай-вою інформацією. (Говориться про це років з десять підряд, однак усе залишається по-старому).

Будь-які засоби багатовимірного аналізу, від найбільших до найменших, покликані полегшити цю роботу. При цьому вони повинні забезпечувати одночасний аналіз кількох показників за кількома вимірами.

Щоб зрозуміти багатовимірність даних, представимо таблицю з документа «Реализация», що описує один продаж. Дані про продаж можна представити в кількох вимірах:

покупець;

продавець;

товар (і далі теж, але поки вистачить, на цьому зупинимося).

Один продаж може цікавити бухгалтера, але аналітикам потрібно обробити статистично значиме число продажів, тисячі продажів. Графічно результат обробки можна показати у вигляді куба, по осях якого знаходяться виміри, а всередині (у кубиках) - дані (мал. 2а, 2б).

«Порожні» кубики на малюнках символізують те, що якихось даних може не вистачати, гіперкуб1 не ставить за необхідну умову наявність однакового числа вимірів. Значення по осях куба називають мітками (у цьому випадку вони представляють назви товарів, продавців і покупців).

Зберігати можна велику кількість вимірів, але візуалізуються тільки три (при цьому динамічно міняються осі).

Вважають, що людина може сприймати загальні закономірності, подані у вигляді образів, на кілька порядків краще, ніж у символьному вигляді. Наприклад, відома задача «розрізнення кішки і собаки». Людина розв’язує її миттєво. Однак з огляду на різноманіття порід коректно формалізувати це в «буквено-цифровому» вигляді дуже складно.

Для числового аналізу навіть тривимірний куб не дуже придатний. Потрібна його декомпозиція в простіші структури. Для цього його «ріжуть» по мітках, розгортаючи в плоскі таблиці. Наприклад, якщо «зрізати» перший шар лівого кубика (мал. 2а), ми одержимо зріз «Номенклатура-покупець» за продажами, зробленими одним підрозділом. Якщо зрізати перший шар правого кубика - одержимо зріз за одним товаром, що покаже, який підрозділ кому продавав і який товар.

За рахунок ускладнення структури пласких даних можна одержати зріз по двох і більшій кількості міток (немовби вирізувавши «підкубики» і розгорнувши їх). Крім того, дані в кубах передбачають ієрархічну структуру, і кожен «подкубик» теж може бути розгорнутий.

Зведені таблиці, властиво, якраз і є таким «пласким зрізом» гіперкуба і дозволяють представити досить складну структуру даних. Покажемо це на прикладі зведеної таблиці в «1С:Підприємстві 8.0».

Формування зведеної таблиці

Покажемо процес формування зведеної таблиці.

1. Побудова зведеної таблиці починається з питання про мету обробки даних2. Що нам потрібно довідатися? Допустимо, які підрозділи який товар кому і на яку суму продали?

2. Джерелом даних для зведеної таблиці в «1С:Підприємстві 8.0» є результуючий набір SQL-запиту. Викличемо вікно конструктора Сервис - Консоль отчетов. У дереві в лівій верхній частині вікна (за допомогою Ins або інструментів на панелі вікна) введемо в дерево новий звіт, назвемо його «Продажи», і за допомогою кнопки викличемо конструктор. Запит навмисне зробимо максимально простим.

3. На закладці Таблицы и поля виберемо:

таблиця «РегистрНакопления. ПродажиКомпании»;

поле Номенклатура, ПодразделениеКомпании, поле ДоговорВзаиморасчетовПокупателяЮрФизЛицоКонтр-агента (якому дамо псевдонім «Покупатель», хоча без цього можна й обійтися); на закладці Итоги установимо підсумки за полях Номенклатура, Подразделение, Покупатель;

як Суммируемое поле виберемо СуммаПродаж. Якщо ви будете будувати таблицю з іншими вимірами, слід потрібні вам поля відібрати на відповідній закладці і перелічити на закладці Итоги.

4. Натиснемо ОК. Потім виконаємо запит (наприклад, подвійним клацанням на імені запиту в дереві консолі звітів або натисненням клавіші F5). За замовчуванням результат запиту виводиться в табличний документ.

5. На верхній панелі інструментів натиснемо кнопку Вывести в сводную таблицу. У нижній частині вікна з’явиться заготовка зведеної таблиці. Якщо клацнути лівою кнопкою миші в зоні таблиці (або вибрати пункт Отображение полей у контекстному меню, доступному через праву кнопку миші), відкриється список полів зведеної таблиці (мал. 3).

6. Тепер треба сформувати бажаний порядок полів для аналізу. Вибравши елемент у списку полів зведеної таблиці, можна мишкою «перетягнути» його в потрібну область (мал. 3).

Виміри (Номенклатура, ПодразделенияКомпании, Покупатель) будуть відноситися до області рядків або колонок, а поля, що сумуються (у нашому випадку - СуммаПродажи), - до області даних.

Побудований «кістяк» можна буде легко змінити, просто перетягнувши поля назад або помінявши їх одне з одним місцями.

7. Розмістимо послідовно в рядках поля Номеклатура, Покупатель, а в колонку - ПодразделениеКомпании (мал. 4).

8. Зведена таблиця готова, можна її аналізувати.

Для того, щоб подивитися, які товари продавалися, досить двічі клацнути на слові Товары (мал. 3, 4), розкриваючи подвійним клацанням миші послідовно до найнижчого рівня ієрархії.

Так, на мал. 5 бачимо, що товар «Міксер BOSCH MFQ 1931» придбавали покупці «Трейд+» і «Морський». Клацання по заголовку стовпчика Подразделения розкриє інформацію про те, через які підрозділи фірми вони це робили. Для доборів за певними товарами-покупцями-підрозділами ви можете, як і раніше, використовувати Настройку отчета.

Тепер змінимо задачу. Нехай потрібно довідатися, які товари ще купував той же «Трейд+». Щоб знайти відповідь, можна просто поміняти місцями поля Номенклатура і Покупатели, що потребуватиме одного руху мишею. Тепер таблиця показує продажу кожному покупцеві в розрізі товарів (мал. 6).Такий процес ще називають переорієнтацією таблиці. Новий запит при цьому не виконується (у цьому одна з головних переваг зведених таблиць), перегруповуються дані результуючого набору.

Як видно, наш покупець придбав два міксери і телевізор.

Дані можна згортати, розгортати й обертати по всіх вимірах. Крім того, усі дані знаходяться в системі, і ви можете швидко замінити набір.

Тепер рекомендації щодо цього конкретного прикладу для тих, хто читав наші попередні уроки.

По-перше, потрібно додати період, передавши дати як параметри віртуальної таблиці. Задати період можна через закладку Отбор у Настройке отчета (було в статті «Запити «1С:Підприємства» №40/2004). Зазначимо, що аналізувати дані потрібно, звичайно, за конкретні періоди.

По-друге, додати в таблицю «КонтрагентыВзаиморасчетыКомпанииОбороты» поле СуммаПрихода, об’єднати з наявною за полем ДоговорВзаиморасчетов і повторити кроки, починаючи з п. 3. Це дозволить бачити не тільки суму продажу, а й прихід грошей, додавши інформативність таблиці. За бажанням можна додати у вибірку поля характеристик (колір, розмір тощо), додаючи або забираючи їх при аналізі зі зведеної таблиці.

Можливі шляхи розвитку

Зведена таблиця, якою ми користалися, саме в такому вигляді знаходиться в тій версії «1С:Підприємства», що продається зараз. Ви можете відкривати консоль звітів і починати будувати таблиці.

Такий підхід має велику перевагу. Коли користувач сам може будувати звіти, він сам же негайно реагує на зміну своїх потреб. Йому не треба витрачати час на формалізацію (і без такої можливості «нудьгували» користувачі версії 7.7).

Тим часом підхід, коли певну кількість таких звітів пишуть як стандартні розробники системи, теж виправданий. Є моделі аналізу у вигляді певних кубів. Є й готові набори зведених таблиць для «малого» аналізу в Excel (у нас вони не надто поширені), що містять певний набір вимірів і даних для розкриття якого-небудь поняття бізнесу.

Типовими є продажі, рух коштів, бюджет (одна з благодатних тем для такого аналізу), аналіз витрат (часто - окремо податків), прибутковості.

Звіти такого роду як стандартна версія або як розробки окремих фірм-франчайзі, безсумнівно, з’являться. По-перше, є стандартна можливість висновку даних у зведену діаграму, що дозволяє візуалізувати (у тому числі в тривимірному вигляді) ці дані. Крім того, тепер форми «1С:Підприємства» дозволяють мати кілька табличних частин, тобто з’єднати в одному макеті таблицю, зведену таблицю і діаграму. Але якщо з макетом впоратися можна, то для серйозного опису куба треба побудувати досить складну систему підзапитів. Річ не в тім, що користувачі не вміють писати запити. Це справді складно, оскільки єдиним запитом не можна зробити багатовимірну обробку.

Хоча запити є одним із трьох провідних методів видобування даних навіть у великому OLAP, це відзначається як недолік, щоправда, нікого не зупиняє.

Тому можна просто чекати. Але ті, хто знайомий з проектами впроваджень, знають, що такого роду інструменти настроюються в останню чергу. А оскільки останні вони, як говорять англійці, за списком, а не за важливістю, можна самостійно розпочинати просто зараз.

ВІДПОВІДІ НА ЗАПИТАННЯ КОРИСТУВАЧІВ «1С»

При роботі в «1С:Бухгалтерії 7.7 для України» ми використовуємо табло рахунків. Однак дані в ньому виходять неправильні. Може, це залежить від конфігурації?

Це системна можливість, вона повинна працювати в будь-якій конфігурації. Причин неправильної роботи, швидше за все, дві.

Передусім перевірте роздільник обліку (він за замовчуванням вимкнений). Табло рахунків знаходиться в меню Сервис - Табло счетов. На панелі інструментів або у меню Действия виберіть пункт Разделитель учета і зазначте потрібне підприємство або ввімкніть По всем, щоб одержати консолідовані підсумки.

Потім перевірте період виведення підсумків. У попередніх версіях «1С:Підприємства» за замовчуванням вибирався період виведення, заданий у Параметры - Бухгалтерские итоги. Тепер це не так. Виберіть пункт Сменить период на панелі інструментів екранної форми або в меню Действия і зазначте потрібний.

Табло рахунків - справді зручний інструмент: дані в ньому динамічно змінюються під час проведення операцій, що стосуються обраних рахунків, це дає можливість не формувати жодних додаткових звітів. А щоб воно займало менше місця на екрані, можна вимкнути панель інструментів екранної форми, вибравши відповідний пункт у меню Действия (вмикається у зворотному порядку).

Навіщо щокварталу розраховувати бухгалтерські підсумки?

На початку нового періоду в меню Действия - Управление бухгалтерскими итогами потрібно встановити наступний квартал і натиснути кнопку Рассчитать. Рекомендується встановлювати той період, у якому ви працюватимете. Під час роботи системи автоматично підтримуються в актуальному стані підсумки на початок кожного періоду між проведеним документом і періодом, по який розраховані підсумки. Якщо є «зайві» періоди, усі підсумки будуть перераховуватися, сповільнюючи роботу системи.



версія для друкувідправити поштоюнаписати редактору


Наступна стаття:  На початок статті 



«Вісімка» завойовує ринок Частковий перегляд статті (тільки початок)
Вікно у світ «1С»
Нова високотехнологічна платформа «1С:Підприємство 8.0» призначена для автоматизації підприємств різного масштабу. Найбільший ефект від її застосування досягається при автоматизації підприємств із досить складними обліковими схемами, що використовують баг...

В рубриці: 


Автоматично з "Дт-Кт" Частковий перегляд статті (тільки початок)
№ 51-52 (22.12.2008) :: Вікно у світ «1С»
Тематичний посторінковий перелік публікацій випусків поліграфічного видання бухгалтерського тижневика "Дебет-Кредит" (розділ "Автоматично з "Дт-Кт"") за 4-й квартал 2008-го року...

Центр антикризового управління Частковий перегляд статті (тільки початок)
№ 50 (15.12.2008) :: Вікно у світ «1С»
Комплект рішень у програмі «1С:Бухгалтерія для України»...

0.348777