powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / [игнор отключен] [закрыт для гостей] / 1C 8.2 БП2.0 хранение дат в SQL srv БД
8 сообщений из 8, страница 1 из 1
1C 8.2 БП2.0 хранение дат в SQL srv БД
    #37224562
VladimirKr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Доборого дня!

После перехода 8.1БП 1.6-8.2БП1.6-8.2БП2.0 (переход делался без моего участия) произошло следующее:
поля, содержащие Даты документов (и соответственно регистров) теперь имеют содержимое на 2000 лет больше актуального,
то есть, например, дата документа, отображаемая в 1С как 2011.04.20 теперь хранится в SQL как 4011.04.20. Это создает неудобства при прямом доступе к данным.

Вопрос: А возможно ли это как нибудь изменить и привести даты к нормальному виду?
...
Рейтинг: 0 / 0
1C 8.2 БП2.0 хранение дат в SQL srv БД
    #37224588
Господин ПЖ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VladimirKrДоборого дня!

После перехода 8.1БП 1.6-8.2БП1.6-8.2БП2.0 (переход делался без моего участия) произошло следующее:
поля, содержащие Даты документов (и соответственно регистров) теперь имеют содержимое на 2000 лет больше актуального,
то есть, например, дата документа, отображаемая в 1С как 2011.04.20 теперь хранится в SQL как 4011.04.20. Это создает неудобства при прямом доступе к данным.

Вопрос: А возможно ли это как нибудь изменить и привести даты к нормальному виду?

кто-то шибко умный поставил галку "смещение дат" при создании БД из консоли сервера приложения 1С...
...
Рейтинг: 0 / 0
1C 8.2 БП2.0 хранение дат в SQL srv БД
    #37224856
Фотография Shuhard
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VladimirKr Вопрос: А возможно ли это как нибудь изменить и привести даты к нормальному виду?
привести можно,
при этом 1С начнет падать
...
Рейтинг: 0 / 0
1C 8.2 БП2.0 хранение дат в SQL srv БД
    #37224883
VladimirKr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Господин ПЖVladimirKrДоборого дня!

После перехода 8.1БП 1.6-8.2БП1.6-8.2БП2.0 (переход делался без моего участия) произошло следующее:
поля, содержащие Даты документов (и соответственно регистров) теперь имеют содержимое на 2000 лет больше актуального,
то есть, например, дата документа, отображаемая в 1С как 2011.04.20 теперь хранится в SQL как 4011.04.20. Это создает неудобства при прямом доступе к данным.

Вопрос: А возможно ли это как нибудь изменить и привести даты к нормальному виду?

кто-то шибко умный поставил галку "смещение дат" при создании БД из консоли сервера приложения 1С...

Тогда вопрос: а загрузкой-выгрузкой данных в новую БД можно привести к нормальному состоянию?
...
Рейтинг: 0 / 0
1C 8.2 БП2.0 хранение дат в SQL srv БД
    #37225117
Господин ПЖ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VladimirKrГосподин ПЖпропущено...


кто-то шибко умный поставил галку "смещение дат" при создании БД из консоли сервера приложения 1С...

Тогда вопрос: а загрузкой-выгрузкой данных в новую БД можно привести к нормальному состоянию?

не пробовал, не знаю. главное сделайте бэкап... или сделайте выгрузку (dt), а ее в другую базу загружайте.
...
Рейтинг: 0 / 0
1C 8.2 БП2.0 хранение дат в SQL srv БД
    #37225302
VladimirKr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Господин ПЖVladimirKrпропущено...


Тогда вопрос: а загрузкой-выгрузкой данных в новую БД можно привести к нормальному состоянию?

не пробовал, не знаю. главное сделайте бэкап... или сделайте выгрузку (dt), а ее в другую базу загружайте.
Выгрузкой-загрузкой не прокатило... Восстанавливается смещение дат из файла .dt видимо...

Пришлось делать операцию на мозге с помощью бензопилы: доработал код, найденный в сети (идея-то простая, но делать было страшно даже на специальной копии базы). Может кому-то пригодится...
Господин ПЖ...главное сделайте бэкап... или сделайте выгрузку (dt)...
+1024

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
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 + ' = dateAdd(year,-2000,'+@ColumnName+')
    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
update dbo._YearOffset set Offset= 0 
...
Рейтинг: 0 / 0
1C 8.2 БП2.0 хранение дат в SQL srv БД
    #37229261
AHDP
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Выгрузкой загрузкой лечится, но только при "ручном" изменении значения смещения дат в базе между выгрузкой-загрузкой. Смещение задаётся для базы при её создании на сервере в таблице _YearOffSet.
В бухгалтерии косяков из-за смещения дат не наблюдается, а вот в ЗиУПе их достаточно из-за непомерного увлечения 1С рассчётами всего и вся через запросы на сервере.
...
Рейтинг: 0 / 0
1C 8.2 БП2.0 хранение дат в SQL srv БД
    #37691305
speterburger
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
VladimirKr,

если обнулить смещение могут возникнуть проблемы:

http://infostart.ru/public/58505/
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / [игнор отключен] [закрыт для гостей] / 1C 8.2 БП2.0 хранение дат в SQL srv БД
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]