public static function getDatetimeToDbFunction(\Bitrix\Main\Type\DateTime $value, $type = \Bitrix\Main\Type\DateTime::DATE_WITH_TIME) { $customOffset = $value->getValue()->getOffset(); $serverTime = new \Bitrix\Main\Type\DateTime(); $serverOffset = $serverTime->getValue()->getOffset(); $diff = $customOffset - $serverOffset; $valueTmp = clone $value; $valueTmp->getValue()->sub(new \DateInterval(sprintf("PT%sS", $diff))); $format = $type == \Bitrix\Main\Type\DateTime::DATE_WITHOUT_TIME ? "Y-m-d" : "Y-m-d H:i:s"; $date = "'" . $valueTmp->format($format) . "'"; return $date; }