Вычисленный случай столбца из другой базы данных - PullRequest
0 голосов
/ 13 марта 2019

Я пытаюсь выбрать определенное поле в моей базе данных (используя SQLserver), используя Access.Тип данных - это дата, и я хочу проверить, меньше ли разницы дат между выбранной датой и текущей датой меньше, чем 4 дня. Я пишу это в Access, так как именно там находится мое программное обеспечение.Я получаю сообщение об ошибке «Ошибка выполнения 13: несоответствие типов».Тип данных Дата в столбце, который я пытаюсь получить (ReleaseDate).

Dim SQLVerDate As Date
SQLVerDate = "SELECT ReleaseDate FROM tblVersionReleasesNew ORDER BY ReleaseDate DESC"
If DateDiff("d", Date, SQLVerDate) < 4 Then
    VerLbl.ForeColor = 0
Else
    VerLbl.ForeColor = 10
End If

1 Ответ

0 голосов
/ 13 марта 2019

Несколько способов сделать это.

Если вы просто хотите получить последнюю дату ReleaseDate в таблице, используйте функцию Max () в запросе:

Dim rs AS DAO.Recordset
Set rs = CurrentDb.OpenRecordset "SELECT Max(ReleaseDate) FROM tblVersionReleasesNew"
If Date() - rs!ReleaseDate < 4 Then
    VerLbl.ForeColor = 0
Else
    VerLbl.ForeColor = 10
End If

Или используйте функцию агрегирования домена:

If Date() - DMax("ReleaseDate","tblVersionReleasesNew") < 4 Then
    VerLbl.ForeColor = 0
Else
    VerLbl.ForeColor = 10
End If

Или вместо VBA и управления метками используйте текстовое поле и условное форматирование с выражением агрегирования домена в текстовом поле.

...