Документ Lotus Notes сохранен с пропущенным обязательным полем - PullRequest
2 голосов
/ 20 августа 2011

Вот определение моей проблемы. У меня есть приложение Notes, которое открывает форму, используя формулу @DialogBox. В этой форме у меня есть поле, которое является обязательным при проверке входных данных, используя следующую формулу:

@If(NotificationTitle = ""; @Failure("The Title field is mandatory...") ; @Success)

Довольно просто, а? Теперь проблема в том, что SOMEHOW, SOMEONE сделали что-то и сохранили этот документ с пустым значением. У кого-нибудь есть идея, как он мог это сделать? Я знаю эту замечательную фразу, которая гласит: «90% клиентов - идиоты», но как сохранить документ с пустыми обязательными полями? Проблема заключается в том, что это пустое поле отключило все веб-приложение. Мы не хотим, чтобы это повторилось, поэтому мы, вероятно, наложим условие на столбец представления, чтобы показать что-то, когда оно пустое, но мне было интересно, как оно могло быть пустым.

Есть идеи?

Ответы [ 2 ]

1 голос
/ 20 августа 2011

Вы говорите, что это веб-приложение. Проверка ввода работает только на стороне клиента. Возможно, плохая ценность была добавлена ​​на веб-стороне?

Кроме того, существует множество способов добавить значения в документ Notes, не подвергаясь проверке ввода, которая срабатывает только при открытой форме. Примечания Агенты могут изменять значения элемента. Также умные иконки формул можно настроить для изменения значений полей. Есть ли шанс увидеть, кто внес изменения? Это поможет сузить его.

0 голосов
/ 22 августа 2011

По номинальной стоимости предоставленной вами информации это звучит так, будто данные вводятся исключительно через клиент Notes? Если это так, попробуйте повторно протестировать приложение и оставьте пустое место в обязательном поле. Я подозреваю, что это пройдет и сохранит детали, потому что это не совсем пусто, пробел все еще символ. Чтобы проверить "настоящие" пустые поля, попробуйте это

@ If (@trim (NotificationTitle) = ""; @Failure («Поле заголовка является обязательным ...»); @Success)

Обратите внимание на формулу @ trim в тесте условий, это очистит поле избыточных конечных и ведущих пробелов при выполнении проверки. Вам необходимо четко указать пустые поля.

Если, однако, пользователь вводит данные через Интернет, вам потребуется добавить javascript, чтобы проверить это на стороне клиента, и вы можете использовать агент «webquerysave» для тестирования на сервере перед сохранением данных. В Интернете довольно много информации об использовании агентов веб-запросов, некоторые хорошие источники можно найти здесь и здесь .

Наконец, проверьте свойство AutoReload и метод перезагрузки из NotesUIdocument , так как есть некоторое неинтуитивное поведение для него как хорошо.

...