11.07.2016 Михаил Чернышев 10711
Опыт переноса данных из нетиповых систем 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С:Бухгалтерия ПРОФ

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

ООО «ЛукБелОйл»
ООО «ЛукБелОйл»

Отрасль:
Нефтегазовая отрасль

Внедренное типовое решение:

- Обследовании бизнес-процессов «Документооборот», «Казначейство и Бюджетирование», «Управление закупками»
- Подбор и обоснование оптима...

Доработка конфигурации Заказчика «1С:Управление строительной организацией»
ЗАО «Стройтрансгаз»

Отрасль:
Проектирование

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

Взаиморасчеты с поставщиками;
- Оформление заказов поставщикам;
- Склад и логистика;
- Транспорт;
- Планирование расхода ГС...

Установка программного продукта БИТ.Финанс для 1С:Бухгалтерия 8
ООО «Джи Эй Си Шиппинг энд Лоджистикс»

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

Внедренное типовое решение:
БИТ.Финанс

Построение единого информационного пространства финансовой службы;
Учет бухгалтерский, налоговый, бюджетный, включая регламентированную ...

ООО «Стейдж Энтертейнмент Россия»
ООО «Стейдж Энтертейнмент Россия»

Отрасль:
Театральная деятельность

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

Реализован процесс трансформации данных бухгалтерского учета по РСБУ в данные международного учета (ГААП) на платформе «1С:Предприятие 8»:...

Автоматизации бизнес-процессов учета и планирования на базе «1С:ERP Управление предприятием 2.0»
ООО «Буровая сервисная компания «ГРАНД»

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

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

- Создание полноценной управленческой системы взамен существующих
- Внедрением подсистем «Нормативное планирования», «Мобильное АРМ», «Ре...

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

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

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

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

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

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

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

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

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

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

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

– Оформление заказов поставщикам;
– Управление отношениями с поставщиками;
– Взаиморасчеты с поставщиками. ...

АО "Нижегородский водоканал"
АО "Нижегородский водоканал"

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

Внедренное типовое решение:
1С:Зарплата и управление персоналом 8. КОРП

-Кадровый учет
-Расчет зарплаты
-Регламентированная отчетность
-Подбор кадров
-Анализ кадрового состава
-Учет рабочего времен...

ФГОУ ВПО «Горский государственный аграрный университет»
ФГОУ ВПО «Горский государственный аграрный университет»

Отрасль:
Образование

Внедренное типовое решение:
1С:Колледж ПРОФ

- Управление персоналом и кадровый учет (HRM):
Кадровый учет
Управление обучением и повышением квалификации
- Финансы, управлен...

Автоматизация кадрового учета на базе ПП "1С:Зарплата и управление персоналом" в ТД НМК
ООО «Торговый дом Нальчикский молочный комбинат»

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

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

- Кадровый учет;
- Расчет зарплаты;
- Регламентированная отчетность;
- Анализ кадрового состава;
- Учет рабочего времени; ...

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

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

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

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