
Это должен знать каждый
пользователь "1С:Бухгалтерии 7.5", переходящий на нее
с предыдущих версий программы
Юрий Травин, "Астро Софт" Travin@astrosoft.spb.ru
Как показала практика, при переходе на "1С:Бухгалтерию 7.5" с более ранних версий у пользователей возникает ряд вопросов, связанных с недопониманием методики переноса структуры данных и самих данных из старой версии. Сегодня мы постараемся подробно осветить эту проблему.
Несколько иная ситуация сложилась с "1С:Бухгалтерией 7.5". Как известно, эта версия является одной из компонент системы "1С:Предприятие", совершенно нового продукта. Если рассмотреть любой из объектов "1С:Бухгалтерии 7.5" , то мы увидим, что практически нет ничего общего с предыдущими версиями. Например, структура организации данных в версии 7.5 коренным образом отличается от структуры данных всех предыдущих версий "1С:Бухгалтерии", мощный встроенный объектно-ориентированный язык программирования ничем не напоминает старый макроязык, а генератор печатных форм больше похож на электронную таблицу, чем на редактор форм предыдущих версий.
Однако, несмотря на все эти проблемы, разработчикам удалось оснастить новую версию программы конвертором, который успешно справляется практически со всеми перечисленными проблемами. Но для того, чтобы перенести данные в новую версию наиболее оптимальным способом, надо четко представлять себе, что происходит во время конвертации данных из предыдущих версий "1С:Бухгалтерии", какие существуют варианты переноса, и выбрать наиболее подходящий для себя способ переноса.
Положительным моментом здесь, безусловно, будет то, что пользователь без особого труда переходит на новую версию программы, сохраняя при этом не только все свои данные, но и все те особенности конфигурации, которые были в его предыдущей версии. Например, если ранее пользователем были созданы какие-то документы, константы, справочники или отчеты, то конвертор автоматически переведет их структуру в формат новой версии. При этом будет сделана попытка конвертировать все элементы этих объектов: формы диалогов, шаблоны печатных форм, модули формы, реквизиты объектов и т.д. Такой вариант автоматической конвертации дает возможность начать работу с новой версией программы как можно быстрее и, кроме того, сохранить сделанные ранее инвестиции в разработку конфигурации и обучение пользователей.
Однако за все надо платить. Логическим следствием такой конвертации является то, что вместо оригинальной конфигурации, поставляемой в комплекте "1С:Бухгалтерии 7.5", появится новая, преобразованная из старой версии. В результате этого пользователь лишится ряда возможностей, предусмотренных типовой конфигурацией (о них мы еще поговорим в одной из наших следующих статей). Полученная таким образом конфигурация не будет "родной" для версии 7.5 - это будет конфигурация от старой версии, но в формате версии 7.5 (потом она, конечно, всегда может быть доведена до соответствующего уровня).
Приведенные выше рассуждения необходимо иметь в виду перед началом перехода со старых версий "1С:Бухгалтерии" на новую.
Использование встроенного конвертора данных
Если вы решили использовать встроенный конвертор данных, то надо
иметь в виду, что хотя он и выполняет все операции автоматически, но для
оптимального выполнения этой работы ему необходимо задать несколько параметров.
Рассмотрим эти параметры и последовательность их установки.
Конвертирование рекомендуется производить в специально поставляемую конфигурацию для конвертора, указав это на вкладке "Конфигурация" диалога "Параметры конвертора" (рис.1).
РИСУНОК 1. В этом окне определяется, будет ли использоваться поставляемая конфигурация для конвертора
Данная конфигурация содержит некоторые диалоговые и печатные формы, соответствующие стандартным отчетам программы "1С:Бухгалтерия 6.0". Таким образом, во вновь создаваемой конфигурации обеспечивается преемственность свойств программы "1С:Бухгалтерия 6.0".
Далее необходимо правильно задать параметры конвертации констант (рис. 2). Здесь проблема состоит в том, что в старых версиях "1С:Бухгалтерии" все константы представляли собой строки с максимальной длиной 40 символов. Однако в процессе работы с программой, в зависимости от контекста обращения к значению константы и от ее содержания, она могла интерпретироваться также и как число или дата. Если включена опция "Анализировать тип", то конвертор будет анализировать фактическое содержание каждой константы, которая определена в настройке "1С:Бухгалтерии", и присвоит ей тип, соответствующий ее содержимому. Константам, имеющим пустое значение, конвертор будет присваивать тип, заданный группой управляющих элементов "Тип непроинициализ. константы".
РИСУНОК 2. Окно задания параметров конвертации констант
Аналогичным образом задаются и параметры конвертации субконто.
И, наконец, закладка "Документы" (рис. 3) позволит нам управлять процессом переноса документов в "1С:Бухгалтерию 7.5".
РИСУНОК 3. Настройка параметров конвертации документов
Здесь выводится список всех существующих документов старой версии. Для каждого документа можно поставить признак конвертации структуры документа (то есть, в терминах Конфигуратора: реквизитов документа, формы диалога документа, шаблона печатной формы документа, модулей формы документа и модуля документа), а также признак переноса самих документов данного вида. В противном случае сами документы переноситься не будут, а вместо каждого неперенесенного документа конвертор создаст документ предопределенного вида "Операция" и назначит ему все проводки, существующие для этого документа.
На этом подготовка к переносу данных заканчивается, и далее конвертор выполняет всю работу автоматически. Во время его работы в окне сообщений появляется соответствующая информация для контроля за ходом процесса конвертации.
После окончания работы конвертора, даже при отсутствии сообщений о возможно возникших ошибках, рекомендуется просмотреть сгенерированные тексты и, при необходимости, внести изменения в тексты модулей (как уже было сказано выше, из-за существенных различий старой и новой версий преобразование программных фрагментов не всегда может быть выполнено полностью корректно).
В этом варианте нам потребуется самостоятельно разработать механизм переноса. Но перед этим надо четко определить, какую информацию необходимо перенести. Конечно, первым желанием будет перенести абсолютно всю информацию, но для этого надо будет достаточно много потрудиться. Компромиссом здесь может быть вариант переноса той части информации, которая составляет наибольшую трудоемкость при ручном вводе. А наиболее трудоемкая часть работы, как известно, это ввод различных справочников - товаров, материалов, поставщиков, покупателей и т.д. Мало того, что эти справочники по количеству записей могут быть достаточно большими (до нескольких тысяч записей и более), но и для каждого элемента справочника может быть задано большое число параметров. И ручной ввод такого объема данных займет не только массу времени, но и, что не менее важно, неизбежно приведет к ошибкам ввода. Поэтому представляется разумным, в первую очередь, автоматизировать перенос именно справочников.
Из наиболее простых вариантов переноса можно рассмотреть следующие (надо сразу предупредить, что эти варианты требуют знания основ работы со встроенным языком "1С:Бухгалтерии 7.5" и не могут быть рекомендованы конечным пользователям, не владеющим азами программирования):
Вариант 1. В старой версии "1С:Бухгалтерии" создается отчет, который производит выгрузку требуемого справочника в текстовый файл, структуру которого необходимо заранее продумать. Далее на встроенном языке "1С:Бухгалтерии 7.5" пишется обработка, которая производит разборку этого файла по заранее известной его структуре и загружает из него всю информацию в соответствующий справочник.
Вариант 2. Вторым вариантом может быть загрузка напрямую из .DBF файлов старой версии "1С:Бухгалтерии" с помощью встроенного объекта "X-Base".
Вариант 3. И, наконец, третьим может быть комбинированный вариант. Сначала производится конвертация данных с помощью встроенного конвертора, а далее из этой базы производится перенос данных в чистую базу данных с оригинальной типовой конфигурацией. Преимущества такого метода заключаются в том, что при этом для передачи данных может быть использована технология OLE-Automation, что значительно расширяет возможности и упрощает процесс написания алгоритма переноса данных. В качестве образца может быть взят очень похожий пример из документации по использованию "1С:Бухгалтери 7.5" в качестве OLE-Automation сервера. Этот метод с успехом может применяться не только для конвертации данных из предыдущих версий "1С:Бухгалтерии", но для загрузки внешних данных из любого другого приложения, поддерживающего OLE-Automation, например, из MS Excel.
Как было сказано ранее, сначала предлагается перенести наиболее трудоемкую для ручного ввода часть информации - справочники (кстати, они являются и самыми простыми объектами для переноса), а остатки по ним потом ввести вручную, однако, нет никаких принципиальных ограничений и для конвертации документов - просто при этом написание алгоритмов переноса будет более трудоемким.
Тех, кто хочет поближе познакомиться с новой версией "1С:Бухгалтерии",
мы приглашаем в Астро Софт на бесплатные семинары по этой программе.
Семинары проводятся каждый вторник в 10-00.
Запись по тел. 327-44-00