Сравнить значение поля с ""

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

Гость
#1
Как правильно сравнивать значения поля
Код:
Dim cDoc As NotesDocument
Set cDoc = Source.Document

If (cDoc.Amount <> "0.00") Then 
...
End If
если я пытаюсь напрямую сравнивать, то выводит ошибку - Type mismatch.
 

Гость
#3
If (cDoc.Amount(0) <> "0.00") Then

а Amount - цифровое поле??? если да то сравнивайте cDoc.GetItemValue("Amount")(0) <> "0" then
А почему, если цифровое, то сравнивать cDoc.GetItemValue("Amount")(0), оно и так - cDoc.Amount(0), сравнивается хорошо :)

If (cDoc.Amount(0) <> "0.00") Then

а Amount - цифровое поле??? если да то сравнивайте cDoc.GetItemValue("Amount")(0) <> "0" then
а почему когда поле скрытое cDoc.GetItemValue("Amount")(0) <> "0" и cDoc.Amount(0) <> "0.00" не работают. Пишет мол значение > 0 :(
 
S

Sandr

Гость
#4
Я вот не пойму.. У Вас эти поля текстовые или числовые?
 

Гость
#5
Да уж, сравнивать число со строкой - немного странный способ установить истину )
 
S

Sandr

Гость
#7
Ну так зачем же вы в кавычки то 0.00 берете если это число?

Код:
if cDoc.GetItemValue("Amount")(0) <> "" then
if cDoc.GetItemValue("Amount")(0) = 0 then
msgbox "Amount равен нулю"
end if
end if
Сначала проверяйте на пустоту, птому как пустое числовое поле является текстовым, а если не пусто, тогда уже сравнивайте с числом...
 

Гость
#8
Как добиться что бы по условию в Queryclose не сохранялись изменения?
Я в Queryclose поставил:
Код:
Doc.saveOptions = "0"
Call Doc .Save (False, False,True)
но не че не помогает, всеравно сохраняет изменения.
 

Medevic

Что это ? :)
Lotus team
10.12.2004
3 346
2
36
Россия, Калуга
#9
Сохранять в QueryClose очень плохая идея.
Doc.saveOptions = "0" только для UI сохранения.
Добавь условие перед Call Doc .Save (False, False,True).
 
S

Sandr

Гость
#12
Денис Кириченко
А зачем?
Вы можете на кнопку "Закрыть" писать какой-то флаг. Тоесть когда пользователь esc флага не будет, на квериклоузе проверяйте флаг и будете знать ка пользователь закрывает документ...
 

Гость
#13
Денис Кириченко
А зачем?
Вы можете на кнопку "Закрыть" писать какой-то флаг. Тоесть когда пользователь esc флага не будет, на квериклоузе проверяйте флаг и будете знать ка пользователь закрывает документ...
Sandr, что Вы имеете ввиду сделать кнопку Закрыть и если пользователь не через нее вышел то значит через Esc
 
S

Sandr

Гость
#14
Денис Кириченко
На кнопке "Закрыть" (или как она там у Вас называется) в какое-нить поле пишите значение "1".
На квериклоузе сравнивайте значение этого поля с "1", если равно "1", значит пользователь нажал на кнопку, если нет - значит вышел через Esc.

Только поле не храните в дкоументе, пусть оно будет CFD.
 

Гость
#15
Денис Кириченко
На кнопке "Закрыть" (или как она там у Вас называется) в какое-нить поле пишите значение "1".
На квериклоузе сравнивайте значение этого поля с "1", если равно "1", значит пользователь нажал на кнопку, если нет - значит вышел через Esc.

Только поле не храните в дкоументе, пусть оно будет CFD.
А как насчет крестика вверху через который тоже можно выйти?
 
S

Sandr

Гость
#16
Денис Кириченко

крести делает то же самое что и Esc.
Зачем Вам все это? Я так понимаю, что если человек спрашивает такое, то ему нужно, что бы пользователь выходит только по нажатию кнопки "Выход", не используя альтернативные способы закрытия документа...
 

Гость
#17
Денис Кириченко

крести делает то же самое что и Esc.
Зачем Вам все это? Я так понимаю, что если человек спрашивает такое, то ему нужно, что бы пользователь выходит только по нажатию кнопки "Выход", не используя альтернативные способы закрытия документа...
Точно что-то не соображаю, спасибо за разъяснение :)