|
как сравнить дату ч/з SQL запрос ₽ |
☑ | ||
|---|---|---|---|---|
|
0
Neighbour
12.06.07
✎
19:10
|
архзадача - быстро снести все документы из базы раньше определенной даты (понимаю, ссылки, бла-бла-бла - это уже мои проблемы), но заткнулся на этом
Не отбираются записи по дате. перепробовал многое. Подскажите, кто сталкивался //******************************************* Процедура Сформировать() Path=путьДБФ; //Путь к папке с файлами DBF //Открываем соединение DBConn = CreateObject("ADODB.Connection"); DBConn.Open("Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=" + Path + ";" + "Extended Properties=""DBASE IV;"";"); //Делаем выборку Persons = DBConn.Execute("Select IDDOC,DATE from 1SJOURN.DBF AS m WHERE (m.DATE < 20070101 ) ORDER BY m.date DESC"); ш =1; //для ш =1 по 50 цикл Пока Persons.EOF=0 Цикл //Цикл по записям DBF ш = ш+1; Сообщить("Date = "+Persons.Fields("DaTE").value+" ID = "+ Persons.Fields("IDDOC").value); Persons.MoveNext(); //Переходим к след. записи DBF Если ш=50 тогда прервать; КонецЕсли; КонецЦикла; DBConn.Close(); //Закрываем соединение КонецПроцедуры |
|||
|
1
ТелепатБот
гуру
12.06.07
✎
19:10
|
||||
|
2
КонецЦикла
12.06.07
✎
19:19
|
'20070101'
|
|||
|
3
КонецЦикла
12.06.07
✎
19:20
|
А оно точно в формате именно такой даты, без времени и т.п.?
|
|||
|
4
КонецЦикла
12.06.07
✎
19:21
|
Тьху, это ДБФ
Там по-другому Посмотри что в таблице, может поможет DTOS(ДатаВТаблице) |
|||
|
5
toypaul
гуру
12.06.07
✎
19:40
|
||||
|
6
774816
13.06.07
✎
07:26
|
m.DATE < { d '2007-01-01' }
|
|||
|
7
Neighbour
13.06.07
✎
11:16
|
Persons = DBConn.Execute("Select IDDOC,DATE from 1SJOURN.DBF AS m WHERE (m.DATE < {d '2007-06-01'} ) ORDER BY m.date DESC");
{D:\EXTERNALREPORTS\SQL.ERT(19)}: Microsoft JET Database Engine: Неверно сформированный код GUID. в выражении запроса '(m.DATE < {d '2007-06-01'} )'. |
|||
|
8
Neighbour
13.06.07
✎
11:32
|
Ага, понял
Скачал дрова http://msdn2.microsoft.com/en-us/vfoxpro/bb190233.aspx Итоговый код такой Процедура Сформировать() Path=путьДБФ; //Путь к папке с файлами DBF DBConn = CreateObject("ADODB.Connection"); DBConn.Open("Driver=Microsoft Visual FoxPro Driver;SourceType=DBF;SourceDB="+Path+"; BackgroundFetch=No;"); //Делаем выборку Persons = DBConn.Execute("Select IDDOC,DATE from 1SJOURN.DBF AS m WHERE (m.DATE < {d '2007-06-01'} ) ORDER BY m.date DESC"); ш =1; //для ш =1 по 50 цикл Пока Persons.EOF=0 Цикл //Цикл по записям DBF ш = ш+1; Сообщить("Date = "+Persons.Fields("DaTE").value+" ID = "+ Persons.Fields("IDDOC").value); Persons.MoveNext(); //Переходим к след. записи DBF Если ш=50 тогда прервать; КонецЕсли; КонецЦикла; DBConn.Close(); //Закрываем соединение КонецПроцедуры |
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |