Если не знаете смещение у существующей базы, используйте скрипт
SEL ECT TOP 1 Offset FROM _YearOffset
О том, что в 1с v8.1 можно избежать проблему неуникальных индексов при наличии проблемных дат уже писал. Но нет, периодически возникают сомнения у новичков: а правда ли это.
Почитайте партнерский форум (проблемы) :
1. Это проблема присуща толко MS SQL Server ( например на DB2 такой заморочки нет вообще). Изначально смещение — это формат хранения дат в субд.
2. Короткий пересказ мыслей разработчиков » Литерал ДАТАВРЕМЯ(1, 1, 1) адекватно представляется на всех СУБД и считается нулевой датой. Даты от ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0) до ДАТАВРЕМЯ(1, 1, 1, 23, 59, 59) считаются временем без даты и тоже адекватно интерпретируются на всех СУБД. Различное поведение возможно для дат из диапазона с ДАТАВРЕМЯ(1, 1, 2) по ДАТАВРЕМЯ(1752, 12, 31, 23, 59, 59). Эти даты не могут быть представлены на MS SQL Server с нулевым смещением дат и могут интерпретироваться либо как нулевые даты, либо вызывать ошибку операций над данными.
В результате можно получить ошибку вроде Microsoft OLE DB Provider for SQL Server: Adding a value to a ‘datetime’ column caused overflow. HRESULT=80040E07, SQLSrvr: Error state=1, Severity=10, native=517, line=1
3. И хотя официальная позиция 1С туманна :), не стоит искать приключения …
Выбирайте смещение 2000.
А есть способ найти документ или элемент в котором есть реквизиты с «плохими датами» ?
(1) смотрите мою обработку, она ищет все такие документы, правда могут быть системные таблицы…
(0) А можо поменять смещение у существующей базы. и как задать смещение при создании базы?
(2) motherf,
1) выгрузи базу в *.dt (Конфигуратор — Администрирование — Выгрузить информационную базу)
2) создай Пустую базу на SQL сервере
3) подключи её к серверу предприятия, указав смещение 2000
4) загрузи базу из ранее выгруженного *.dt (Конфигуратор — Администрирование — Загрузить информационную базу)
5) пользуйся
Разве не проще переподключить базу и всё?
А меня спасла вот эта обработка.
http://infostart.ru/public/146633/
Просто командный пересчет итогов видимо.
А еще смещение датможно поменять без перезаливки DT
Для 8.3.8 актуально?