Обновлен дизайн сайта "Простой станок с ЧПУ на Ардуино" по адресу http://ecnc.ru
Разработан сайт "Свет православия" http://svet-pravoslaviya.ru
Открытый проект "Простой станок с ЧПУ на Ардуино" перенесён на http://ecnc.ru
Частный переводчик поможет провести переговоры, осуществит последовательный, синхронный, письменный переводы. http://tran.mdls.ru
Исключительно в образовательных целях расскажем Вам о том, как запустить 1С версии 7.7 релиз 27 на Microsoft SQL Server 2008. Для того, чтобы разобраться, каким образом добиться желаемого результата нам понадобились:
Посидев немного в профайлере (profiler) MS SQL Server 2008 и Soft ICE’е было обнаружено, что после запроса:
select 504,c.name,c.description,c.definition from master.dbo.syscharsets c where c.id = convert(tinyint, databasepropertyex ( db_name() , 'sqlcharset'))
приложение 1С отключается от базы данных с сообщением:
Требуется MS SQL Server 6.5 + Service Pack 5a или более старшая версия.
Оказалось, что результат выполнения строки запроса отличается для MS SQL Server 2000 и MS SQL Server 2008. Таким образом, для дальнейшей нормальной работы необходимо обойти проверку результата или каким-то образом её фальсифицировать. Разумеется, был выбран первый вариант, как наиболее быстрый в реализации. Тут нам помогли: Soft ICE, Hex Edit и Profiler MS SQL Server 2008. Следует заметить, что данная проверка осуществляется в двух различных местах: при запуске конфигуратора и при запуске 1С:предприятия.
То есть, условный переход необходимо исправить на безусловный в двух местах. Это делается следующим образом:
Кроме того, при сохранении MD файла 1С выполняет следующую команду:
DUMP TRANSACTION WITH TRUNCATE_ONLY.
Она не поддерживается в MS SQL Server 2008. Для корректной работы 1С необходимо заменить упомянутую команду на:
--MP TRANSACTION WITH TRUNCATE_ONLY
в любом текстовом редакторе (файл BkEnd.dll). И обрезание transaction log внести в регламент работы с базой данных 1С.
Внимание, не забудьте пользователю, под которым 1С заходит в базу данных, дать права process admin’а - это обеспечит возможность работы в многопользовательском режиме.
Коротаевский Андрей