11.07.2016 Михаил Чернышев 11580
Опыт переноса данных из нетиповых систем 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С:Управление строительной организацией»
ЗАО «Стройтрансгаз»

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

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

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

АО «Аэроклуб»
АО «Аэроклуб»

Отрасль:
Услуги в области делового туризма

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

Проведение серии интервью с руководством и ключевыми специалистами Разраб...

Внедрение ПП «1С:Предприятие 8. Аренда и управление недвижимостью на базе "1С:Бухгалтерия 8"» в компании «Бутово Молл»
ООО «Бутово Молл»

Отрасль:
Недвижимость

Внедренное типовое решение:
1С:Аренда и управление недвижимостью на базе «1С:Бухгалтерия 8»

Управление продажами, логистикой и транспортом (SFM, WMS, TMS):
- Оформление зак...

ООО "ЛИКАРД" (Лукойл)
ООО "ЛИКАРД" (Лукойл)

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

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

Делопроизводство
• Учет и контроль исполнения поручений
Учет и хранение...

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

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

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

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

Внедрение блока бухгалтерского учета «1С:Управление производственным предприятием»
ОАО «Издательство «Просвещение»

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

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

Бухгалтерский учет:
- Завершение периода;
- Регламентированная отчетнос...

ПЭК
ПЭК

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

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

- Создание прототипа SRM-системы на базе «1С: Управление торговлей»
- Автомат...

Компания IBS
Компания IBS

Отрасль:
Системный интегратор

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

- Интеграция систем – АСУП и «1С:Управление производственным предприятием»...

ООО «Солви Пак»
ООО «Солви Пак»

Отрасль:
Торговля. Производство печати на рулонных материалах

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

Управление отношениями с клиентами (CRM) ...

ЗАО «Инвестгеосервис»
ЗАО «Инвестгеосервис»

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

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

Объемно-календарное планирование производства Автоматизация бизнес-проце...

ООО «ПраксисКом»
ООО «ПраксисКом»

Отрасль:
Аутсорсинг бухгалтерских услуг

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

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

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

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

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

Документооборот (ECM):
- Учет рабочего времени;
Управление персоналом и ка...

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

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

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

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