Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Неназначенных незавершенных заказов: 2, свеженьких 1
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Вход | Зарегистрироваться )



> Как поменять смещение даты с 0 на 2000          
Vofka Подменю пользователя
сообщение 24.04.14, 16:55
Сообщение #1

У нас здесь своя атмосфера...
***********
Группа: Основатель
Сообщений: 13955
Из: Киев
Спасибо сказали: 4519 раз
Рейтинг: 3641.2

Вариант гуманный ([необходимо зарегистрироваться для просмотра ссылки]).



Суть проблемы в чем.. Если Вы случайно развернули базу на сервере SQL со «смещением даты» 0 то возникла проблема, когда в базе встречается реквизит с типом ВРЕМЯ т.е.в этот реквизит ставится 01.01.0001 10:30:00 или дата записалась пустой 01.01.0001 00:00:00. При записи такого реквизита не происходит его запись.
В интернете предлагают создать новую базу со смещением 2000.
Но новую базу создавать не очень хотелось. И менять у всех пользователях путь к базе.
Тогда я пошел по пути, а где ж хранится это значение в SQL-е. Нашел и поменял на 2000 и все стало ок..
А теперь по шагово, где поменять.

Выгнать всех пользователей.

ВНИМАНИЕ!!!

1. Сначала сделайте резервную копию средствами 1С т.е. выгрузите ее в *.dt
Это нужно делать до того как поменяете «смещение»
Если этого не сделать то во всей вашей базе спр., док, и т.д.
где есть есть реквизит дата будет стоять допустим 02.10.0009
ЧТО НЕ ДОПУСТИМО….
Итак Вы сделали выгрузку в *.dt

2. Заходим в SQL Server Management Studio
Находим Вашу базу в списку нажимаем плюсик.
Находи там папочку «Таблицы» и раскрываем ее.
Откроется куча таблиц, идем в самый низ, находим таблицу
_YearOffset, становимся на нее и правой клавишей выбираем пункт «Открыть таблицу» см. рис.1
Меняем значение 0 на 2000
Закрываем SQL Server Management Studio

3. Заходим в конфигуратор и загружаем ранее сохраненную базу.

Если это не сделать, то все даты будут с годом 0009.
После того как база загрузилась… Можно зайти в 1С и удостоверится что даты нормальные.
Результат мы поменяли «смещение дата с 0 на 2000»

Иногда бывает так, что этот вариант использовать не получается по тем или иным причинам. Тогда есть более хардкорный вариант ([необходимо зарегистрироваться для просмотра ссылки]):

SQL
Declare TablesAndFields cursor for

SELECT objects.name as Tablename, columns.name as columnname
FROM dbo.sysobjects as objects
left join dbo.syscolumns as columns on objects.id = columns.id
where objects.xtype = 'U' and columns.xtype = 61

open TablesAndFields

Declare @TableName as varchar(100)
Declare @ColumnName as varchar(100)

FETCH NEXT FROM TablesAndFields into @TableName, @ColumnName

WHILE @@FETCH_STATUS = 0
BEGIN Exec ('update ' + @TableName + '
set ' + @ColumnName + ' = ''2000-01-01 00:00:00''
where ' + @ColumnName + ' > ''3999-12-31 23:59:59''')

-- This is executed as long as the previous fetch succeeds.
FETCH NEXT FROM TablesAndFields into @TableName, @ColumnName
END

close TablesAndFields
deallocate TablesAndFields
go


Перед любыми манипуляциями не забывайте делать копии баз данных!

alex040269 Подменю пользователя
сообщение 25.04.14, 10:52
Сообщение #2

Крутой
Иконка группы
Группа: Местный
Сообщений: 1626
Из: Гуляйполе
Спасибо сказали: 236 раз
Рейтинг: 0

не понятно чем это все отличается от:
1) выгрузить
2) грохнуть базу на сервере
3) создать правильно базу на сервере
4) загрузить


Signature
Никогда не бойся делать то, что не умеешь, помни - Ноев ковчег был построен любителем, профессионалы построили Титаник.
ЗиУП

Vofka Подменю пользователя
сообщение 25.04.14, 11:48
Сообщение #3

У нас здесь своя атмосфера...
***********
Группа: Основатель
Сообщений: 13955
Из: Киев
Спасибо сказали: 4519 раз
Рейтинг: 3641.2

alex040269, тогда вроде какая-то беда с журналом регистрации случается, он теряется. Но я лично не проверял.

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


Ответить Новая тема
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия Сейчас: 19.04.24, 3:14
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!