поле дата/тайм

14.05.2008
16
0
#1
Помогите пожалуйста. есть поле дата/тайм. в нем можно выбрать только время. ТАк вот мне нужно чтоб выброное время небыло меньше чем текущая. Под кнопку что сохраняет документ написал следуюший код.[codebox]Dim sess As New NotesSession
Dim wks As New NotesUIWorkspace
Dim db As NotesDatabase
Dim uidoc As NotesUIDocument
Dim doc As NotesDocument
Dim dbposta As New NotesDatabase( "", "" )
Dim docmemo As NotesDocument
Dim rtitem As NotesRichTextItem
Dim datNow As New NotesDateTime("")
Dim timenow As New NotesTimer

Call datnow.SetNow
ttime$ = datnow.TimeOnly
If doc.starttime(0) < ttime$ Then
title$ = "невозможно выбрать время из прошлого"
Messagebox title$,, "Error "
continue = False
Exit Sub[/codebox]
так вот иногда работает, а чаще всего нет... иногда позволяет сохранять док даже если выброно время из прошлого... как можно это исправить?
 

Kizarek86

Lotus team
20.07.2007
864
4
#2
Код:
Dim datNow As New NotesDateTime("")
Dim timenow As New NotesTimer
Call datnow.SetNow

If Time(doc.starttime(0)) < Time(datnow.TimeOnly) Then
title$ = "невозможно выбрать время из прошлого"
Messagebox title$,, "Error "
continue = False
Exit Sub
 

Medevic

Что это ? :)
Lotus team
10.12.2004
3 346
1
#3
Имхо, в InputValidation проще сделать:
Код:
@If(@IsDocBeingSaved & (@IsNull(@ThisValue) | !@IsTime(@ThisValue) | @Time(@Now) > @Time(@ThisValue)); @Failure("!!!"); @Success)
 
14.05.2008
16
0
#4
Имхо, в InputValidation проще сделать:
Код:
@If(@IsDocBeingSaved & (@IsNull(@ThisValue) | !@IsTime(@ThisValue) | @Time(@Now) > @Time(@ThisValue)); @Failure("!!!"); @Success)
Спасибо но я етот вариант не могу импользовать. так как под кнопкой сидит еще код для отправки письма. и он все равно выполняется

Код:
Dim datNow As New NotesDateTime("")
Dim timenow As New NotesTimer
Call datnow.SetNow

If Time(doc.starttime(0)) < Time(datnow.TimeOnly) Then
title$ = "невозможно выбрать время из прошлого"
Messagebox title$,, "Error "
continue = False
Exit Sub
Выдает ощибку...wrong number or arguments for : TIME :(
 

Kizarek86

Lotus team
20.07.2007
864
4
#5
Код:
	Dim datNow As New NotesDateTime(Now)

If docST.starttime(0) < datnow.TimeOnly Then
title$ = "невозможно выбрать время из прошлого"
Messagebox title$,, "Error "
continue = False
End If
ну вот такая штука у меня работает...с Time я погорячился))
 

Medevic

Что это ? :)
Lotus team
10.12.2004
3 346
1
#6
Тада:
Код:
Dim t As Variant
t = doc.GetItemValue("starttim")(0)
If Timenumber(Hour(t), Minute(t), Second(t)) < Timenumber(Hour(Now), Minute(Now), Second(Now)) Then
Msgbox("!!!")
End If
kizarek, datnow.TimeOnly - это строка