Знатоки mssql подскажите
Имею базу 1с 7.7 на ms SQL 2012-11-0-6020 (server 2016 datacenter)
релиз 1С от https://infostart.ru/public/82018/ - Секретный релиз
После переезда с SQL 2005 (server 2008) база встает колом при попытке отмены или проведения документов из любых старых периодов.
После "вскрытия" выяснилось, что при процедурах вычисления следующего периода есть такая строка:
(@BeginOfPeriod - datetime)
которая срабатывает для дат больше 15го числа месяца. Для моего случая имею:
По логике код должен выдать дату начала следующего периода (у меня разбивка по 15 дней). НО! выдает сен 2 2017 12:00AM, хотя должен выдать 01/10/2017
а вот если сделать так:
В чем дело то?
п.с.
В хранимых процедурах поправил дату на датавремя, проблема с проведением и отменой проведения решилась
Имею базу 1с 7.7 на ms SQL 2012-11-0-6020 (server 2016 datacenter)
релиз 1С от https://infostart.ru/public/82018/ - Секретный релиз
После переезда с SQL 2005 (server 2008) база встает колом при попытке отмены или проведения документов из любых старых периодов.
После "вскрытия" выяснилось, что при процедурах вычисления следующего периода есть такая строка:
@NewDate=DATEADD(mm, DATEDIFF(mm, '1753-01-01', @BeginOfPeriod), '1753-02-01')
(@BeginOfPeriod - datetime)
которая срабатывает для дат больше 15го числа месяца. Для моего случая имею:
DATEADD(mm, DATEDIFF(mm, '1753-01-01', '2017-09-16T00:00:00'), '1753-02-01')
По логике код должен выдать дату начала следующего периода (у меня разбивка по 15 дней). НО! выдает сен 2 2017 12:00AM, хотя должен выдать 01/10/2017
а вот если сделать так:
DATEADD(mm, DATEDIFF(mm, '1753-01-01', '2017-09-16T00:00:00'), '1753-02-01T00:00:00')- то норма 01/10/2017
В чем дело то?
п.с.
В хранимых процедурах поправил дату на датавремя, проблема с проведением и отменой проведения решилась