• 🔥 Бесплатный курс от Академии Кодебай: «Анализ защищенности веб-приложений»

    🛡 Научитесь находить и использовать уязвимости веб-приложений.
    🧠 Изучите SQLi, XSS, CSRF, IDOR и другие типовые атаки на практике.
    🧪 Погрузитесь в реальные лаборатории и взломайте свой первый сайт!
    🚀 Подходит новичкам — никаких сложных предварительных знаний не требуется.

    Доступ открыт прямо сейчас Записаться бесплатно

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

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

Guest

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

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

а Amount - цифровое поле??? если да то сравнивайте cDoc.GetItemValue("Amount")(0) <> "0" then
 
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 :(
 
Я вот не пойму.. У Вас эти поля текстовые или числовые?
 
Да уж, сравнивать число со строкой - немного странный способ установить истину )
 
Ну так зачем же вы в кавычки то 0.00 берете если это число?

Код:
if cDoc.GetItemValue("Amount")(0) <> "" then
if cDoc.GetItemValue("Amount")(0) = 0 then
msgbox "Amount равен нулю"
end if
end if

Сначала проверяйте на пустоту, птому как пустое числовое поле является текстовым, а если не пусто, тогда уже сравнивайте с числом...
 
Как добиться что бы по условию в Queryclose не сохранялись изменения?
Я в Queryclose поставил:
Код:
Doc.saveOptions = "0"
Call Doc .Save (False, False,True)
но не че не помогает, всеравно сохраняет изменения.
 
Сохранять в QueryClose очень плохая идея.
Doc.saveOptions = "0" только для UI сохранения.
Добавь условие перед Call Doc .Save (False, False,True).
 
Денис Кириченко
использовать условие QuerySave
 
Денис Кириченко
А зачем?
Вы можете на кнопку "Закрыть" писать какой-то флаг. Тоесть когда пользователь esc флага не будет, на квериклоузе проверяйте флаг и будете знать ка пользователь закрывает документ...
 
Денис Кириченко
А зачем?
Вы можете на кнопку "Закрыть" писать какой-то флаг. Тоесть когда пользователь esc флага не будет, на квериклоузе проверяйте флаг и будете знать ка пользователь закрывает документ...

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

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

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

А как насчет крестика вверху через который тоже можно выйти?
 
Денис Кириченко

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

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

Точно что-то не соображаю, спасибо за разъяснение :)
 
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab