поиск дока & Searchformula

  • Автор темы lotsman
  • Дата начала
L

lotsman

#1
добрый день. имеется проблема с поиском документа.
форма sale имеет поля fil, sdata (дата/время без флага время), при просмотре дебагером
видно что значение поля расширенное - типа "01.03.2011 00:00:00 ZE3"

dt=Trim(Strrightback(code_dat$,"ДАТА="))
dtsm=Format(Cdat(dt),"dd.mm.yyyy")
Dim dbf As NotesDatabase
Set dbf = session.CurrentDatabase
Dim collf As NotesDocumentCollection
Dim sdocf As NotesDocument
Dim searchFormula3 As String
searchFormula3 = {Form = "sale"&fil="}+code_fil +{"}+{&(@text(@Date(sdata);S0))="}+dtsm+{"}
Set collf = dbf.Search(searchFormula3,Nothing,0)
Print searchFormula3
If collf.Count >0 Then .....

Попытка в поиске перевести поле "sdata" на тип "01.03.2011" результата не дало.
Скорее всего я накосячил в "(@text(@Date(sdata));D0)" - но ошибки в дебагере не показывает. ((
Какой вариант еще существует чтобы корректно задать условия поиска при наличии поля "sdata" = "01.03.2011 00:00:00 ZE3" и значением для сравнения "dtsm" = "01.03.2011", т.е. как правильно перевести вид поля дата/время из полного в удобный формат дд.мм.гггг?

Спасибо
 
L

lotsman

#3
@Date(sdata) = [01.03.2011] - так должно работать
т.е. в в квадр.скобках постоянное значение? у меня - величина переменная "dtsm".
пробовал вариант если "sdata" имеет такой же формат (01.03.2011) - поиск не работает(
пробовал ... +{&(@Date(sdata))="}+dtsm+{"} ... - тоже (
 

ToxaRat

Чёрный маг
Lotus team
06.11.2007
3 233
18
#5
лучше наоборот, перевести всё к формуле
Data1<=@Date(yy;mm;dd;hh;nn;ss) - так будет правильней