powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Локализация формата даты в запросе
14 сообщений из 14, страница 1 из 1
Локализация формата даты в запросе
    #32517616
gorobets dima
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть запрос (фильтр по дате): "select .... where data = #" & mydata & "#;"
mydata - текстовое поле на форме. Запрос пишу в процедуре VBA.
Формат и маска ввода наши: 14.05.04 а понимает только американский: 05-14-04. В хелпе написано поменяй языки и стандарты в винде - пробовал не помогает.

Если создавать через конструктор запросов оно автоматом меняет. Может кто знает что делать, в падлу писать функцию конвертации.
...
Рейтинг: 0 / 0
Локализация формата даты в запросе
    #32517623
zz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mydata=format(mydata,"mm\/dd\/yy")
...
Рейтинг: 0 / 0
Локализация формата даты в запросе
    #32517877
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Если mydata - текстовое поле и при этом у него ControlSource отсутствует, то format(mydata,...) тоже может не сработать, потому что format форматирует только даты, но не стринги. Если заранее известно, что у стринга структура dd.mm.yyyy (то есть нам известно, а Аксесс-то этого не поймет), то надо писать что-то типа:

mid(mydata,4,2) & "/" & left(mydata,2) & "/" & right(mydata,4)
...
Рейтинг: 0 / 0
Локализация формата даты в запросе
    #32517965
Фотография kedzo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
Public Function MakeSQLDate(vDate As Variant) As String
' Format date for SQL-string
Dim s As String

  If Not IsDate(vDate) Then
    MakeSQLDate = ""
    Exit Function
  End If

  s = "#" & Month(vDate) & "/" & Day(vDate) & "/" & Year(vDate) & "#"

  MakeSQLDate = s

End Function
...
Рейтинг: 0 / 0
Локализация формата даты в запросе
    #32517995
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Вариант kedzo не будет работать по той же причине. Параметр функции описан как Variant, к нему применются функции, предназначенные для дат. Если вызвать эту функцию с параметром типа String, то он будет преобразован в дату самим Аксессом, и совершенно не факт, что Аксесс это сделает правильно.
...
Рейтинг: 0 / 0
Локализация формата даты в запросе
    #32518003
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
...
Рейтинг: 0 / 0
Локализация формата даты в запросе
    #32518013
zz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автор топикаФормат и маска ввода наши: 14.05.04
Это говорит о том, что используется поле формы с форматом даты. А значит, никаких стрингов.
...
Рейтинг: 0 / 0
Локализация формата даты в запросе
    #32518021
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Если ControlSource пустой, то Аксесс рассматрвает это значение не как дату, а как стринг. Тут где-то недавно обсуждалась такая проблема.
...
Рейтинг: 0 / 0
Локализация формата даты в запросе
    #32518022
Фотография kedzo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
хм....

Владимир Саныч, я не понял :(
...
Рейтинг: 0 / 0
Локализация формата даты в запросе
    #32518044
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
2 kedzo:

Если передать в качестве параметра такой стринг:
"01/02/03"
то он может быть понят 6 разными способами в зависимости от региональных настроек Виндов:
1 февраля 2003
1 марта 2002
2 января 2003
2 марта 2001
3 января 2002
3 февраля 2001
...
Рейтинг: 0 / 0
Локализация формата даты в запросе
    #32518064
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Нашел я это обсуждение.

/topic/88682#644786
...
Рейтинг: 0 / 0
Локализация формата даты в запросе
    #32518071
Фотография kedzo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ок. Спасибо.
А кстати, есть универсальное решение данной проблемы? Одно время я с этим мучился много-много.
Всех пришлось принуждать выставлять региональные настройки одинаковые :(
...
Рейтинг: 0 / 0
Локализация формата даты в запросе
    #32518079
Фотография kedzo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Прочел топик по ссылке и понял.
Спасибо.
...
Рейтинг: 0 / 0
Локализация формата даты в запросе
    #32518175
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Универсальное решение - см. мой пост от 12:51. :^)
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Локализация формата даты в запросе
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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