Всем кто сидит на MSSQL и кому нужно исправление дней рождения:
bitrix\modules\main\classes\mssql\user.php
$sSelect = "
U.ID,
".$DB->DateToCharFunction("U.TIMESTAMP_X")." TIMESTAMP_X,
U.LOGIN,
U.\"PASSWORD\",
U.CHECKWORD,
U.ACTIVE,
U.NAME,
U.LAST_NAME,
U.EMAIL,
".$DB->DateToCharFunction("U.LAST_LOGIN")." LAST_LOGIN,
".$DB->DateToCharFunction("U.DATE_REGISTER")." DATE_REGISTER,
U.LID,
U.PERSONAL_PROFESSION,
U.PERSONAL_WWW,
U.PERSONAL_ICQ,
U.PERSONAL_GENDER,
U.PERSONAL_BIRTHDATE,
U.PERSONAL_PHOTO,
U.PERSONAL_PHONE,
U.PERSONAL_FAX,
U.PERSONAL_MOBILE,
U.PERSONAL_PAGER,
U.PERSONAL_STREET,
U.PERSONAL_MAILBOX,
U.PERSONAL_CITY,
U.PERSONAL_STATE,
U.PERSONAL_ZIP,
U.PERSONAL_COUNTRY,
U.PERSONAL_NOTES,
U.WORK_COMPANY,
U.WORK_DEPARTMENT,
U.WORK_POSITION,
U.WORK_WWW,
U.WORK_PHONE,
U.WORK_FAX,
U.WORK_PAGER,
U.WORK_STREET,
U.WORK_MAILBOX,
U.WORK_CITY,
U.WORK_STATE,
U.WORK_ZIP,
U.WORK_COUNTRY,
U.WORK_PROFILE,
U.WORK_LOGO,
U.WORK_NOTES,
U.ADMIN_NOTES,
U.STORED_HASH,
U.XML_ID,
U.CONFIRM_CODE,
".$DB->DateToCharFunction("U.PERSONAL_BIRTHDAY", "SHORT")." PERSONAL_BIRTHDAY,
".($by == "CURRENT_BIRTHDAY"? "
case
when U.PERSONAL_BIRTHDAY is null
then '9999-99-99'
when
'".$cur_year."-'+
REPLICATE('0',2-LEN(DATEPART(mm, U.PERSONAL_BIRTHDAY)))+CONVERT(varchar(2),DATEPART(mm, U.PERSONAL_BIRTHDAY))+'-'+
REPLICATE('0',2-LEN(DATEPART(dd, U.PERSONAL_BIRTHDAY)))+CONVERT(varchar(2),DATEPART(dd, U.PERSONAL_BIRTHDAY))
<
cast(year(getdate()) as varchar(4)) + '-' +
REPLICATE('0',2-LEN(cast(month(getdate()) as varchar(2))))+cast(month(getdate()) as varchar(2)) + '-' +
REPLICATE('0',2-LEN(cast(day(getdate()) as varchar(2))))+cast(day(getdate()) as varchar(2))
then