11.07.2016 Михаил Чернышев 11705
Опыт переноса данных из нетиповых систем 1С:7...
 

Хочу поделиться опытом переноса большого объема данных из конфигураций на базе 1С:7.7, и дать пару советов, которые помогут в разработке переноса.

Для переноса между системами 1С почти всегда выбираю механизм конвертации данных (КД). Для меня он имеет ряд преимуществ перед другими технологиями:

  • Нет необходимости писать сервисные функции, обеспечивающие выгрузку и загрузку данных

  • Легко настраиваются методы сопоставления и поиска данных, преобразования типов

Другому программисту легче понять, как работает перенос. В КД плохо структурировать элементы переноса. Тогда как в самописном переносе часто читаемость кода очень низкая, поскольку пишется на один раз. 
 
 

В последнем моем переносе была задача по получению данных партионного учета. Архитектура системы не позволяла получить остатки партий, и требовалось собирать эти данные, анализируя несколько регистров и документов. В случае использования типовых средств 1С 7.7 для этого потребовалось бы получение нескольких коллекций данных, их перебор и преобразование. На большом объеме такие алгоритмы работают очень медленно.

За неимением альтернатив я вынужден был использовать внешнюю компоненту 1С++ (http://www.script-coding.com/1cpp.html). Она существенно расширяет язык 7.7, а для переноса добавляет возможность писать сложные запросы, что очень важно в данном случае. Фактически запросы пишутся на TSQL, а компонента позволяет оперировать именами метаданных, а не таблиц базы данных.

С появлением TSQL запросов получение остатка партионного учета было выполнено одним запросом, занимающим 5 минут.

За неимением альтернатив могу посоветовать использовать компоненту 1С++. 
 
 

В больших системах, таких как ERP, методы учета могут быть разнообразными, поэтому для клиента проводят моделирование его процессов, чтобы определить, как вести учет. Частью модели являются различные преднастроенные справочники, регистры, константы. Примеры таких настроек:

  • деление на виды номенклатуры в новой базе

  • изменение структуры подразделений в базе приемнике (слияние нескольких в одно или разделение 1 на несколько)

  • использование ордерных складов

  • учет взаиморасчетов по заказам, когда в базе источники только по договорам и др. 

 
  Перенос данных может существенно поменяться с изменением модели учета, и, в идеале, разработка переноса должна начинаться после окончания этапа моделирования. Но на практике часто бывает, что приходится делать параллельно. Раньше я решал эту проблему эталонным начальным образом базы, в которую необходимо переносить данные. Но модели меняются, приходится не забывать о постоянной смене образа, при этом выгрузки базы с образами копятся, иногда забываешь развернуть образ или разворачиваешь не тот… В итоге решил все данные модели создавать программно, код по их созданию сделать частью переноса. То есть при загрузке данных в новую базу первым делом проверяется ее соответствие модели, и в новой базе создаются необходимые данные модели, для которых писался перенос. Может показаться, что это усложняет разработку, но судя по моей практике, получается легче. Раньше, когда меня просили срочно протестировать промежуточный этап переноса, я в спешке переносил данные, и через час обнаруживал, что забыл заполнить какой-нибудь классификатор перед загрузкой, и его значение не проставилось в номенклатуре. Теперь я уверен, что данные перенесутся корректно в пустую базу. Создавать все нужные элементы непосредственно в переносе – второй совет при разработке.   
 

Используя эти подходы за 2,5 месяца, параллельно с разработкой модели учета, был создан перенос данных для компании ООО «Эскорт-Центр» (http://www.escort-center.ru, крупная монтажная организация интегрированных систем безопасности крупных объектов: московское метро, военные и ядерные объекты). Была перенесена вся необходимая нормативно-справочная информация и остатки по следующим разделам учета:

  • Складской учет

  • Обеспечение и закупки (перенесены действующие на момент переноса планы по закупкам и ожидаемые поставки)

  • Учет затрат (новая модель учета затрат в базе приемнике)

  • Бухгалтерский и кадровый учет

  • Учет производства (учет по серийным номерам, спецификации производства)

Учет взаиморасчетов (в новой базе изменился разрез учета: был по договорам, стал детальнее – по заказам) 
 
     
  Есть вопросы – обращайтесь!   
 

Михаил Чернышев,

консультант-аналитик компании ООО “Кодерлайн”

 
     
     

Наши проекты

ООО "НЦКТ"
ООО "НЦКТ"

Отрасль:
Профессиональные услуги

Внедренное типовое решение:
1С:Бухгалтерия 8 ПРОФ

Производственные операции
Автоматизация бизнес-процессов...

Автоматизация системы учета продаж газа на базе «1С:ERP Управление предприятием 2.0»
ООО «Эйр Продактс Газ»

Отрасль:
Производство промышленных газов

Внедренное типовое решение:
1С:ERP Управление предприятием 2.0

- Расчеты с контрагентами;
- Производственные операции;
- Управление скла...

Автоматизация документооборота в компании ООО "Ликард"
ООО «Ликард» (ОАО ЛУКОЙЛ)

Отрасль:
Нефтесервис

Внедренное типовое решение:
1С:Документооборот КОРП

- Отказ от бумажного документооборота, от громоздких систем на базе офисного...

Внедрение ПП "1С:Бухгалтерия 8 ПРОФ" в ООО Фирма «Бисер»
ООО фирма «Бисер»

Отрасль:
Производство

Внедренное типовое решение:
1С:Бухгалтерия 8 ПРОФ

Финансы, управленческий учет, мониторинг показателей:
- Налоговый учет...

ООО ХДМ Рус
ООО ХДМ Рус

Отрасль:
Торговля

Внедренное типовое решение:
1С:Управление торговлей

Управление цепочками поставок Оптовая торговля ...

ООО "Смена"
ООО "Смена"

Отрасль:
Торговля, склад, логистика, транспорт

Внедренное типовое решение:
1С:Комплексная автоматизация

Банк и касса
Расчеты с контрагентами
Торговые операции
Взаиморасчеты с...

Московский филиал ООО «Авиакомпания «Икар»
Московский филиал ООО «Авиакомпания «Икар»

Отрасль:
Авиаперевозки

Внедренное типовое решение:
1С:Зарплата и управление персоналом

Управление персоналом и кадровый учет (HRM) Кадровый учет Расчет зарплаты Рег...

1с-РАРУС МСК
1с-РАРУС МСК

Отрасль:
Разработка компьютерного программного обеспечения

Внедренное типовое решение:
1С:Управление корпоративными финансами

- Финансово-бухгалтерский блок
- Казначейство ...

Автоматизация складских операций на базе «1С:Предприятие 8. WMS Логистика. Управление складом»
ОАО «Фрейт Линк»

Отрасль:
Логистика и грузоперевозки

Внедренное типовое решение:
1С:Управление холдингом

Реализовали разработку уникального модуля «Интернет-магазины» на базе прог...

Автоматизация кадрового учета на базе «1С:ERP Управление предприятием 2.0»
Автопредприятие ПАО «Газпром»

Отрасль:
Транспорт

Внедренное типовое решение:
1С:ERP Управление предприятием 2.0

- Настройка подсистемы кадрового учета;
- Перенос персональных данных;
- З...

ООО ХДМ Рус
ООО ХДМ Рус

Отрасль:
Торговля

Внедренное типовое решение:
1С:Бухгалтерия ПРОФ

Бухгалтерский учет Банк и касса Расчеты с контрагентами Торговые операции ...

ООО «Фипар»
ООО «Фипар»

Отрасль:

Внедренное типовое решение:
1С:Предприятие 8. ERP Управление предприятием 2

Специалисты «Кодерлайн» внедрили «1С:ERP. Управление предприятием 2» и автомаÑ...

Наши соц. сети

Telegram-канал «Koderline 1С» Группа в Вконтакте «Кодерлайн КОРП» Rutube

Остались вопросы - обратитесь к нам!

Впишите свои Имя и Телефон, чтобы мы ответили на все интересующие Вас вопросы.
ФИО*
E-mail*
Телефон*
Сообщение