УДК 004.424.56
ПОДСИСТЕМА КОНСОЛИДАЦИИ ДАННЫХ В СИСТЕМУ 1С:ПРЕДПРИЯТИЕ
М.А. Сафронова
Рассмотрены задачи консолидации данных предприятия, расположенных в нескольких различных областях, в систему 1С'.Предприятие с использованием SQL-запросов.
Ключевые слова: данные, информация, консолидация данных, унификация данных, информационная система, SQL-запрос, предприятие.
В настоящее время все больше и больше отечественных предприятий проявляют свой интерес к информационным системам, которые позволяют автоматизировать процессы планирования, управления ресурсами предприятия, а также формирование бухгалтерской и налоговой отчетности. Особенно остро проблема автоматизации указанных процессов стоит для крупных и средних предприятий, ведь для них сохранение старых управленческих технологий грозит потерей эффективности управления, и как следствие, сокращением возможной прибыли, в достаточно быстро меняющихся условиях рыночной конкуренции.
Ценность и достоверность знаний, полученных в результате интеллектуального анализа бизнес-данных, зависит не только от эффективности используемых аналитических методов и алгоритмов, но и от того, насколько правильно подобраны и подготовлены исходные данные для анализа.
Руководителям проектов по бизнес-аналитике часто приходится сталкиваться со следующей ситуацией. Во-первых, данные на предприятии расположены в различных источниках самых разнообразных форматов и типов — в отдельных файлах офисных документов (Excel, Word, обычных текстовых файлах и др.), в учетных системах («Галактика», «Парус» и др.), в базах данных (Oracle, Access, dBase и др.). Во-вторых, данные могут быть избыточными или, наоборот, недостаточными. А в-третьих, данные являются «грязными», то есть содержат факторы, мешающие их правильной обработке и анализу (пропуски, аномальные значения, дубликаты и противоречия).
Консолидация данных — комплекс методов и процедур, направленных на извлечение данных из различных источников, обеспечение необходимого уровня их информативности и качества, преобразование в единый формат, в котором они могут быть загружены в хранилище данных или аналитическую систему.
В процессе консолидации решаются следующие задачи:
- выбор источников данных;
- разработка стратегии консолидации;
- оценка качества данных;
- обогащение;
- очистка;
- перенос в хранилище данных.
Объектом исследования являются данные, хранящиеся в системах управления технологическим процессом, проектно-сметной и финансовой документацией на предприятии.
Подсистема консолидации данных предназначена для объединения и передачи данных, находящихся в различных источниках на металлургическом предприятии в систему «1С: Предприятие» в унифицированном виде (рис.1).
ВХОДНАЯ ИНФОРМАЦИЯ
С БУ1 )
( VTfl )
( )
с MS )
с Web )
РЕЗУЛЬТАТ
-_ Управление
~ оце с с амп -
f } нпфнклцпя данных
- ОтчеТШКТЬ
Хранение БиЗНеС-
д ihhli xJ ф ян лов аНаЛВД
Унифицированные [_данные_
Рис. 1. Консолидация данных
Подсистема консолидации данных содержит следующие модули:
1) модуль идентификации и обработки данных (хранение данных);
2) модуль управления процессами;
3) модуль бизнес-анализа.
Консолидация данных с системой «1С:Предприятие» достигается путем создания сводной таблицы, которая формируется с помощью SQL- запросов. Рассмотрим консолидацию данных на примере данных промышленного предприятия. Тестовые данных для консолидации имеют характеристики, представленные в табл. 1.
Таблица 1
Тестовые данные
№ п/п Наименование Тип данных
1 № вагона Число
2 Вес тары вагона Число
3 Дата постановки вагона на учет Дата, время
4 Дата прибытия вагона Дата, время
5 № накладной Число
6 Дата отгрузки от поставщика Дата, время
7 Наименование сырья Текст
8 Вес нетто Число
9 Цена за тонну Денежный
10 ЖДЦ тариф Денежный
11 Наименование поставщика Текст
12 № договора с поставщиком Число
13 Валюта Текст
14 Условия оплаты Текст
15 Срок оплаты Дата, время
16 НДС Число
17 Дата начала действия договора Дата, время
18 Дата окончания действия договора Дата, время
19 Сухой вес (Вес с учета влажности) Число
20 № пробы Число
21 Дата результата Дата, время
22 № сертификата Число
23 № спецификации Число
24 Элемент проверки хим. анализа Число
Структура SQL-запроса представлена на рис. 2.
Связь 1 к 1
Связь 1 ко многим Связь многие ко многим
Рис. 2. Структура одного 80Ь-запроса для консолидации данных
Фрагменты SQL-запросов, формирующих сводную таблицу, представлены на рис. 3, 4.
select ti.vid as lpn_id, И Б ыБорха даннык
to_cliai^ti.™) es nome х, tijdatejnas DAIEPRIB, tibnas NAKI, ti jdate_out as DATEOTGE, tijoebs_nd as ITEM, tiweight_nfitto as VESNETTO, ti .price,
ti.taiifif_gd as TARIF, tijcode_oebs as SUPPLIERJD, ti.aid as CON_ID, ti .ало as CON_NAME, ti jdate_on as CON_BEG, ÙA&jfâx CON_END, 1 as EC VJTRANS AC ПОЫ_Ш, ti weight_diy as VES NEIDEY, ■N' as STATUS
from (sele ct ti.*, // E ыборха идентстф ихатороЕ
ia.oebs_rid, la.anjo^ ia.date_on, ia.date_of£
ti.weight_netto * ti.price as amount, cons_codje_oài s jcode_oeb s,
ti.weight_netto - (ti.weight_netto * li20_W 100) asweight_diy from (select ti.*,
SS Определение цены
(select poa.attr_valiie fm m pc_puichase_arder_attr poa wheie poa.poatid =15 and poa.poid = purchas e_id) as pnce._
Рис. 3. Фрагменты SQL-запросов, формирующего сводную таблицу при консолидации данных в систему «1С:Предприятие»
В команде select определяются следующие поля для дальнейшей загрузки в 1С: Предприятие:
- ti. vid - идентификатор вагона;
- ti.vn - номер вагона;
- ti.bn - номер железнодорожной накладной по прибытию;
- ti.date out-дата отгрузки от поставщика;
- ti.oebs rid - идентификатор позиции сырья на вагоне;
- ti.weight netto - вес нетто на вагоне;
- ti.price - цена за единицу сырья;
- ti. tariff gd - железнодорожный тариф за перевозку груза;
- ti. code oebs - идентификатор поставщика;
- ti.aid - идентификатор контракта с поставщиком;
- ti.ano - имя контракта с поставщиком;
- ti.date on - дата начала действия контракта;
- ti.date off - дата окончания действия контракта;
- ti.weight dry - вес сырья в сухом эквиваленте.
(select poi.attrjtey from рс _purc Ira е _orde r_attT poawheie poa.poatid - 8 and poa.poid. - puicliase_id) as cid, //Результат пробы
(select po±.attr_value fiompc_pmclia5e_aider_attrpaa vdiere poa-poatid - 15 and poapoid - purcha>e_id) as pnoa, mi((select maxselect pejelement_ralue fiom рс_рюЪе_е1е merit pe where pe.pid = p.pid and pe.etid = 153ВЩ)
fjDHipc_pambe p, pc_prob e_vanp\T wit к p.probe = 'CK1 and pv.vid. = ti.vid and p .pid = pv.pid
d-ate_out // Загруз ка с 1 С, статус
from (select та.*,
(select via. attr_key frompc_van_m_altr via wheie via.vatid = 2200 and чад.vid = u.vid) as status_lc,
Рис.. 4. Фрагменты SQL-запросов, формирующего сводную таблицу при консолидации данных в систему «1С:Предприятие»
Таким образом, выбрав все необходимые данные с помощью 8рЬ-запросов, формируется сводная таблица. Результат выполнения запроса по тестовым исходным данным представлен в табл. 2.
В ходе выполнения консолидации данных происходит загрузка данных в систему «1С:Предприятие». Результат работы подсистемы представлен на рис. 5.
ИИаШуйМ,
Журналы документов Отчеты Сервис Окы
D & в ■ © - ш | Ш
«Г
"Зй* м ? amv> ÜJ
м e % & ? п. а а а в ш а в в а в в в ! II» !» a i о «в з . |> » »а а
я щ щ щ, а % @г -в t
si а
17 НеотФг
Г Мегер»
Период с: |13.11.17 Ц по: |l7.11.17 Q ... | 1| В|Д| Отмечено документов: 1G9 Убрать во,
шв
ß
грузки Материал
Вое jjBce Л |Вое dlBce ^J|Boe ~||Все d|Bce
№... При Вагон Накя... jTrpii Материа ^- Н Поставщик ±1
V V 2 3 Ш -} - 550118 531775 ЭМ415 ' ЭМ415 ' 7.11 ill Рада мар Ряда мар анцевая- HI 8.75 -1
v: 5 14, 566895 ЭМ415 ' ill Рада мар анцевая 8.701 8.70
V 7 16 1 555467 ЭМ433 ' 7 11 Рада мар анцевая 8.35
* S 16 1 553235 ЭМ433 ' 7 11 Рада мар анцевая 9.50
V 141 555332 ЭМ415 ' 711 Рада мар анцевая 8.801 8.80
v: 3 141 556028 ЭМ415 ' 7 11 Рада мар анцевая 8.701 8.70
V 3 619192 эмббз: 2 11 Кокс до 25 км 8.001 5.60
„J Зекрыть |
I
I Пр-сп, |
0.00 НДС:
0.00 Печа1
ействия... I Г OeBS
-Ifllxl JSJXJ
Рис. 5. Результат консолидации тестовых данных в 1С .'Предприятие
15
Сводная таблица по тестовым данным
Таблица 2
о\
LPN I D NOM ER DATEPR1B NAK L DATEOT GR ITE M VESNET TO PR 1С E TARI F SUPPLIER Ш CON I D CON NA ME CON В EG CON E ND RCV TRANSACTION ID VESNETD RY STAT US
1212 65454 07.10.2016 22:12 KK2 71 01.09. 2017 88888 68,1 5,93 1127, 64 13 25 131/07 01.03. 2014 31.01. 2025 2 68,1 N
2323 78978 08.10.2016 22:22 KK2 72 02.09. 2017 88888 69,3 5,93 44750 13 25 131/07 02.03. 2014 31.01. 2025 2 68,94657 N
4233 65465 09.10.2016 22:32 KK2 73 03.09. 2017 88888 68,4 5,93 44750 13 25 131/07 03.03. 2014 31.01. 2025 2 68,05116 N
4512 85556 10.10.2016 22:42 KK2 74 04.09. 2017 88888 69,55 5,93 44750 13 25 131/07 04.03. 2014 31.01. 2025 2 69,195295 N
5615 45016 11.10.2016 22:52 KK2 75 05.09. 2017 88888 69 5,93 44750 13 25 131/07 05.03. 2014 31.01. 2025 2 68,6481 N
7748 10447 12.10.2016 22:02 KK2 76 06.09. 2017 88888 69 5,93 44750 13 25 131/07 06.03. 2014 31.01. 2025 2 68,6481 N
3213 56393 13.10.2016 21:52 KK2 77 07.09. 2017 88888 69,95 5,93 44750 13 25 131/07 07.03. 2014 31.01. 2025 2 69,593255 N
5544 02339 14.10.2016 20:52 KK2 78 08.09. 2017 88888 68,75 5,93 44750 13 25 131/07 08.03. 2014 31.01. 2025 2 68,399375 N
5465 48285 15.10.2016 19:52 KK2 79 09.09. 2017 88888 68,2 5,93 44750 13 25 131/07 09.03. 2014 31.01. 2025 2 67,85218 N
5487 94231 16.10.2016 18:52 KK2 80 10.09. 2017 88888 69,65 5,93 44750 13 25 131/07 10.03. 2014 31.01. 2025 2 69,294785 N
5456 40177 17.10.2016 17:52 KK2 81 11.09. 2017 88888 68,15 5,93 44750 13 25 131/07 11.03. 2014 31.01. 2025 2 67,802435 N
5465 46546 18.10.2016 18:52 KK2 82 12.09. 2017 88888 68,85 5,93 44750 13 25 131/07 12.03. 2014 31.01. 2025 2 68,498865 N
3437 31213 19.10.2016 15:52 KK2 83 13.09. 2017 88888 68,55 5,93 44750 13 25 131/07 13.03. 2014 31.01. 2025 2 68,200395 N
5456 68787 20.10.2016 14:52 KK2 84 14.09. 2017 88888 68,55 5,93 44750 13 25 131/07 14.03. 2014 31.01. 2025 2 68,200395 N
8789 23961 21.10.2016 16:52 KK2 85 15.09. 2017 88888 68,45 5,93 44750 13 25 131/07 15.03. 2014 31.01. 2025 2 68,100905 N
5465 45465 22.10.2016 22:52 KK2 86 16.09. 2017 88888 68,5 5,93 44750 13 25 131/07 16.03. 2014 31.01. 2025 2 68,15065 N
8878 34333 22.10.2016 11:52 KK2 87 17.09. 2017 88888 69 5,93 44750 13 25 131/07 17.03. 2014 31.01. 2025 2 68,6481 N
05 ГЪ О
g
f н
•X.
s; -с
Гй
О «
s;
s «
s;
Kj
о ^
to
Риск при консолидации корпоративных данных и их нарушением, конечно, существует. Однако, если созданная инфраструктура системы хранения не имеет слабых мест, аппаратные компоненты удовлетворяют всем требуемым спецификациям, данные имеют защиту от искажений и возможность их восстановления, то процесс консолидации не будет сопровождаться практически никаким риском.
Список литературы
1. Бобошко Д.Д. 1С: Предприятие 8.0. Программирование в примерах / ДГабец, А.П. Профессиональная разработка в системе 1С:Предприятие 8 / А.П. Габец [и др.]; под ред.М.Г.Радченко. М.: 1С-Паблишинг: Питер, 2007. 808 с.
2. Колесников С.Н. Планирование деятельности производственного предприятия. От промфинтехпланирования к MRP II и дальше. М.: 1С-Паблишинг, 2007. 382 с.
3. Радченко М.Г. 1С: Предприятие 8.1. Практическое пособие разработчика + CD. М.: 1С: Паблишинг; СПб: Питер, 2016. 512 c.
4. Рязанцева Наталья 1С: Предприятие 8.0. Управление производственным предприятием. Секреты работы / Наталья Рязанцева, Дмитрий Рязанцев. М.: БХВ-Петербург, 2012. 694 c.
5. СУБД. Язык SQL в примерах и задачах. [Текст] / В.М. Мельников, А.П. Тол-стобров, В.В. Фертиков И.Ф. Астахова. М.: ФИЗМАТЛИТ, 2007. 168 с.
6. 1С: Предприятие 8.1. Версия для обучения программированию (комплект из 4 книг и 3 CD-ROM). М.: Питер, 2015. 831 c.
Сафронова Марина Алексеевна, канд. техн. наук, доцент, safronovama@rambler. ru, Россия, Тула, Тульский государственный университет
SUBSYSTEM OF CONSOLIDA TION OF DA TA TO THE SYSTEM 1C: ENTERPRISE
M.A. Safronova
The tasks of consolidating enterprise data located in several different areas into a 1C: Enterprise system using SQL-queries are considered.
Key words: data, information, data consolidation, data unification, information system, SQL-query, enterprise.
Safronova Marina Alekseevna, candidate of technical sciences, docent, safronovama@rambler. ru, Russia, Tula, Tula State University