Обработка на входе принимает практически любую таблицу значений (ТЗ в которой колонкам указаны типы значений, строка, число и т.п.), на выходе имеем на форме 1С сводную таблицу и график по этой ТЗ, с которой работаем, как и в Excel со сводной таблицей и диаграммой.
Взял за основу разработку «OLAP Анализ счёта» ( http://infostart.ru/public/14964/ ) от JohnyDeath и переделал под любую ТЗ.
Опционально используется «Прогресс бар для 1С 77» (http://infostart.ru/public/14061/ ) от Gmix.
Требования такие же, как и у разработки «OLAP Анализ счёта» ( //infostart.ru/public/14964/ ) от JohnyDeath, т.е.:
1. Наличие предварительно загруженных внешних компонент 1С++ не ниже 2.5 (www.1cpp.ru) и FormEx (dorex.ru)
2. Определён и подключён класс «Общие.Форма.Привязка» (автор Дмитрий Ощепков ака DmitrO)
3. Установленные Office Web Components (входит в стандартную поставку Office, работа проверялась под Office XP RUS и Office 2003), отдельно компоненту без Office можно качнуть тут: http://www.microsoft.com/downloads/details.aspx?displaylang=ru&FamilyID=7287252c-402e-4f72-97a5-e0fd290d4b76
4. Драйвер доступа к данным MS Access (находится в ODBC Data Source)
5. Опционально, наличие внешней обработки прогресс бара «Прогресс бар для 1С 77» (//infostart.ru/public/14061/ ) от Gmix
Порядок установки:
1. Скачать с сайта www.1cpp.ru ВК 1с++ версии не ниже 2.5 и скопировать её в каталог ИБ.
2. Скачать с сайта http://dorex.ru/?projects&formex&download ВК FormEx версии не ниже 2.0.5 и скопировать её в каталог ИБ.
3. Скопировать в каталог ИБ файлы «defcls.prm» и «Общее.Форма.Привязка.ert»
4. В глобальный модуль в процедуру ПриНачалеРаботыСистемы вставить следующие строки:
ЗагрузитьВнешнююКомпоненту(«1cpp.dll»);
ЗагрузитьВнешнююКомпоненту(«formex.dll»);
5. Если у вас установлен Office XP, то поменяйте значение переменной «ВерсияОфис» на «10» в OLAP_ТЗ.ert (по умолчанию считается, что у вас стоит Office 2003)
6. В каталог ExtForms каталога ИБ скопировать OLAP_ТЗ.ert.
7. Опционально, скачать «Прогресс бар для 1С 77» (//infostart.ru/public/14061/ ) от Gmix и положить в каталог ExtForms каталога ИБ ProgressBar7-7.ert.
Использование:
1. Пример кода:
//*******************************************
Функция СоздатьТЗ(ТЗ)
ТЗ.НоваяКолонка(«Дата»,«Дата»);
ТЗ.НоваяКолонка(«Значение»,«Число»);
ТЗ.НоваяКолонка(«Измерение1»,«Строка»);
ТЗ.НоваяКолонка(«Измерение2»,«Строка»);
ТЗ.НоваяКолонка(«Измерение3»,«Строка»);
Для Сч = 1 По 100 Цикл
ТЗ.НоваяСтрока();
ТЗ.Дата = Дата(2012, 1 + Цел(Сч/10), 1);
ТЗ.Значение = Сч * 10;
ТЗ.Измерение1 = «Измерение1 — » + Строка(1 + Цел(Сч/10));
ТЗ.Измерение2 = «Измерение2 — » + Строка(1 + Цел(Сч/10));
ТЗ.Измерение3 = «Измерение3 — » + Строка(1 + Цел(Сч/10));
КонецЦикла;
Возврат ТЗ;
КонецФункции // СоздатьТЗ
//*******************************************
Процедура Сформировать()
ТЗ = СоздатьОбъект(«ТаблицаЗначений»);
ТЗ = СоздатьТЗ(ТЗ);
спПарам = СоздатьОбъект(«СписокЗначений»);
спПарам.ДобавитьЗначение(ТЗ, «ТЗ»);
спПарам.ДобавитьЗначение(«Тест ТЗ», «Заг»);
спПарам.ДобавитьЗначение(«Тест ТЗ», «ЗагСтр»);
ОткрытьФорму(«Обработка», спПарам, КаталогИБ()+«ExtFormsOLAP_ТЗ.ert»);
КонецПроцедуры // Сформировать
2. Если всё прошло успешно, то можете переходить на вкладки «Сводная таблица» или «диаграмма» и наслаждаться всеми прелестями Майкрософтовской сводной таблицы.
3. В диаграмме источник данных установлен равным сводной таблице, т.е., если вы меняете группировки, фильтры.. в сводной таблице, то в диаграмме они также будут изменяться. И наоборот: если вы меняете параметры диаграммы, автоматически меняются параметры и в сводной таблице.
Где пропадал ?
А мы уже на 1с8 перешли..
(1) Та, работа, дом и т.п.
Вы не поверите сколько еще используют 7.7;-) Но одно другому не мешает, восемь тоже буит;-)
А если офис старше 2003 как работать заставить?
(2)
Заголовок и начало прочитал, облизнулся уже, и тут увидел, что для 7.7. Если для 8 действительно будет — будет здорово. Посмотреть версию для 7.7 не могу, но плюс все-равно поставлю, в ожидании версии для 8.
(3) Можно и вообще без офиса, только поставить веб-компоненту Office, OWC11.EXE, ссылка в описании. Соответственно, попробуйте ее накатить, если стоит другой офис или вообще не стоит
(4) А что, СКД уже не хватает? Многие фишки СКД вполне позволяют говорить о ней как об R-ROLAP, и зачем изобретать велосипеды? Это вот на 7.7 да, тяжко.