• Познакомьтесь с пентестом веб-приложений на практике в нашем новом бесплатном курсе

    «Анализ защищенности веб-приложений»

    🔥 Записаться бесплатно!

  • CTF с учебными материалами Codeby Games

    Обучение кибербезопасности в игровой форме. Более 200 заданий по Active Directory, OSINT, PWN, Веб, Стеганографии, Реверс-инжинирингу, Форензике и Криптографии. Школа CTF с бесплатными курсами по всем категориям.

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

  • Автор темы Адриан
  • Дата начала
А

Адриан

Помогите пожалуйста. есть поле дата/тайм. в нем можно выбрать только время. ТАк вот мне нужно чтоб выброное время небыло меньше чем текущая. Под кнопку что сохраняет документ написал следуюший код.[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

Green Team
20.07.2007
871
7
BIT
33
Код:
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

Что это ? :)
Green Team
10.12.2004
3 334
1
BIT
4
Имхо, в InputValidation проще сделать:
Код:
@If(@IsDocBeingSaved & (@IsNull(@ThisValue) | !@IsTime(@ThisValue) | @Time(@Now) > @Time(@ThisValue)); @Failure("!!!"); @Success)
 
А

Адриан

Имхо, в 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

Green Team
20.07.2007
871
7
BIT
33
Код:
	Dim datNow As New NotesDateTime(Now)

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

Medevic

Что это ? :)
Green Team
10.12.2004
3 334
1
BIT
4
Тада:
Код:
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 - это строка
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!