четверг, 13 мая 2010 г.

1С 7.7 на Windows Vista и Windows 7


Все кто пробовал запустить 1С:Предприятие 7.7 на “новых” (нетрадиционных) операционных системах Microsoft Windows Vista и Windows 7 непременно наступал на грабли в виде ошибок “Порядок сортировки установленный для базы данных отличается от системного” и “Для доступа к базе данных требуется ODBC - драйвер для MS SQL Server версии 3.50.0303 или старше”.
Давайте попробуем разобраться, что делать с этими ошибками и как заставить 1С:Предприятие 7.7 работать на ОС Windows Vista и Windows 7.

1. Ошибка “Порядок сортировки установленный для базы данных отличается от системного”

К счастью, здесь все достаточно просто. Ввиду того, что Windows Vista и Windows 7 имеют отличия в системных кодировках перед Windows XP, а 1С:Предприятие 7.7 достаточно старый программный продукт, который уже не поддерживается разработчиками, на белый свет вылезла вышеозначенная ошибка. Совет тут прост, как две копейки: нужно использовать современные программные продукты, как то 1С:Предприятие 8. Но если все же очень хочется использовать 1С:Предприятие 7.7, то прошу обратить внимание на следующие два способа:
Внимание! Должна быть установлена платформа 1С:Предприятие 7.7 версии 7.70.027.
1 Способ
Шаг 1. Открыть нужную информационную базу в режиме Конфигуратор.
Шаг 2. Администрирование –> Кодовая страница ИБ
Шаг 3. В раскрывающемся списке выбрать Текущая системная установка и принять изменения.
Шаг 4. Разумеется, будет выполнена переиндексация базы и после сообщения об успешном завершении операции можно закрыть Конфигуратор и запустить нашу многострадальную информационную базу в режиме Предприятие.
Внимание! Теперь наша база сконфигурирована для работы на последних операционных системах Windows Vista и Windows 7. Для того чтобы запустить информационную базу на Windows XP нам потребуется обратная операция. По своему опыту настоятельно не рекомендую баловаться этой операцией и менять кодировку туда-сюда, частенько приводит к нехорошим и печальным последствиям.
Также этот способ не будет работать, если подопытная база сетевая и к ней подключаются клиенты с Windows Vista/7 и Windows XP одновременно. Разумеется, информационная база будет работать или на старых ОС или новых.
2 Способ
Этот способ более универсален и не имеет видимых ограничений и неприятных последствий для информационной базы и данных. Теоретически может неправильно происходить сортировка строк в отчете, однако на практике замечено этого не было и все работает стабильно и без проблем.
Суть способа заключается в создании файла ordnochk.prm и размещение его в папке BIN (папка программных файлов платформы 1С:Предприятие 7.7) или в папке с информационной базой, в зависимости от необходимого результата. Так находясь в папке BIN этот файл распространяет свое действие на все информационные базы запускаемые под этой платформой, а если он находится в папке с конкретной информационной базой, то его действие будет распространяться только на конкретную информационную базу.
Создаваемый файл поддерживается платформой 1С:Предприятие 7.7, начиная с версии 7.70.026. Наличие файла дает указание платформе 1С:Предприятие 7.7 не проверять порядок сортировки. Как уже говорилось выше, теоретически это может вызвать неправильную сортировку по алфавиту, например, в отчетах, однако практически такого эффекта не встретил ни разу.
Этот способ является единственным, который позволяет использовать информационную базу при сетевом доступе клиентов с операционными системами Windows Vista/7 и Windows XP.
Итак:
Шаг 1. Нужно создать пустой файл с именем ordnochk.prm. Для этого можно открыть блокнот, и сохранить пустое содержимое: Файл –>Сохранить –> Выбрать тип файла Все файлы и указать имя файлаordnochk.prm.
Шаг 2. Поместить свежесозданный файл в каталог BIN платформы 1С:Предприятие 7.7 и в каталог с базой, в зависимости от необходимого результата (как говорилось выше).
Шаг 3. Запустить информационную базу.

2. Ошибка “Для доступа к базе данных требуется ODBC - драйвер для MS SQL Server версии 3.50.0303 или старше”

Ошибка возникает при использовании версии платформы 1С:Предприятие 7.7 использующей клиент-серверный режим, то есть при хранении информационной базы с Microsoft SQL Server 2000. Причина ошибки в том, что начиная с Windows Vista в состав операционной системы стали входить ODBC-драйвера версии отличной от Windows XP. Именно эти ODBC-драйвера, входящие в состав операционной системы, и использует платформа 1С:Предприятие 7.7 для организации соединения с Microsft SQL Server 2000.
Решение чрезвычайно простое: нужно всего лишь заменить следующие файлы на Windows Vista/7 на их версии, взятые из Windows XP:
  • sqlsrv32.dll
  • sqlsrv32.rll
  • odbcbcp.dll
Файлы эти хранятся тут (и для Windows Vista/7, и для Windows XP):C:\Windows\System32
Важно! Поскольку Windows Vista/7 защищает свои системные файлы, скопировать вышеуказанные библиотеки в системную директорию сразу не получится. Для копирования ваша учетная запись должна иметь права на редактирование системных файлов в папке C:\Windows\System32.
Давать права своей учетной записи на запись на всю папку C:\Windows\System32не рационально из соображений безопасности. Поэтому нужно дать права только конкретным файлам, указанным выше:
Прежде всего нужно стать владельцем этого файла:
Шаг 1. Найти необходимый нам файл в папке Windows\System32, щелкнуть правой кнопкой мыши и выбрать Свойства.
Шаг 2. Перейти на вкладку Безопасность и нажать кнопку Дополнительно.
Шаг 3. Перейти на вкладку Владелец, нажать Изменить и выбрать свою учетную запись в качестве владельца.
Шаг 4. Принять изменения.
Теперь можно добавить права на изменение (или полные права) на этот файл:
Шаг 5. Найти необходимый нам файл в папке Windows\System32, щелкнуть правой кнопкой мыши и выбрать Свойства.
Шаг 6. Перейти на вкладку Безопасность и нажать кнопку Изменить.
Шаг 7. Добавить в список свою учетную запись и добавить, например, полные права.
Шаг 8. Применить все изменения.
После этого можно заменять файлы на Windows Vista/7 соответствующими файлами Windows XP.
Внимание! Если на компьютере есть программные продукты, которые используют данный ODBC-драйвер могут быть проблемы, но как правило их не возникает и все работает нормально.

Заключение

Истинная преданность программным продуктам это просто прекрасно! Однако, пожалуйста, идите в ногу со временем и пользуйтесь современными программными продуктами. Хотя бы потому, что у старых программных продуктов стоимость владения резко возрастает, то есть использовать их дорого и не эффективно (и небезопасно).  

Комментариев нет:

Отправить комментарий