DTOC — различия между версиями
Материал из Фабиус wiki
Hisava (обсуждение | вклад) м (→AdsSetEpoch) |
Hisava (обсуждение | вклад) м (→Примеры) |
||
(не показаны 2 промежуточные версии этого же участника) | |||
Строка 1: | Строка 1: | ||
[[DTOC]] - это функция | [[DTOC]] - это функция | ||
− | Преобразование даты в строку символов в формате дд | + | Преобразование даты в строку символов в формате дд.мм.гг |
− | = | + | = Примеры = |
− | [[DTOC]]( [[ | + | [[DTOC]]( [[DATE]](), true ) |
+ | [[Файл:2018-05-23 14-55-02.png]] | ||
+ | [[DTOC]]( [[DATE]]() ) | ||
[[Файл:22-08-2016 13-32-48.png]] | [[Файл:22-08-2016 13-32-48.png]] | ||
+ | |||
= AdsSetEpoch = | = AdsSetEpoch = | ||
В случае использования функции [[DTOC]] в SQL запросах могут быть проблемы | В случае использования функции [[DTOC]] в SQL запросах могут быть проблемы |
Текущая версия на 14:55, 23 мая 2018
DTOC - это функция
Преобразование даты в строку символов в формате дд.мм.гг
Примеры
DTOC( DATE(), true )
DTOC( DATE() )
AdsSetEpoch
В случае использования функции DTOC в SQL запросах могут быть проблемы
Например, запрос
SELECT * FROM DOCZ0117 WHERE DATDOC = '01.01.17'
воспринимается ADS-сом как
SELECT * FROM DOCZ0117 WHERE DATDOC = '01.01.1917'
что не может не радовать
Для изменения эпохи надо в файле UserType.pas установить переменную D_EPOCH
В приведенном примере переменная была равна 1917, в настоящее время она равна 1930
Далее в OpenData.pas написано
Ace.AdsSetEpoch( D_EPOCH );
ACE в свою очередь это Advantage Client Engine ( ace.pas )