Вниз
Скачать: CL | DM;

Позиционирование на контрол.   Найти похожие ветки 

 
NiGGa ©   (2006-09-01 17:01) [0]

Доброго времени суток.

Пишем клиента к БД. Нужно решать сдежующую задачу: пользователь заполняет некий дилог(точнеее диалог с некоторым количеством поддиалогов), по окончанию редактирования(т.е. когда пользователь жмет кнопку "Принять" ил "Сохранить"), с сервера зовется процедура, которой передаются значения заполненных пользователем полей диалога. Следственно серверная процедурка может ругнуться(механизм этого ругательства еще не определ, т.к. по суи зависит от задачи в целом) к примеру что поле не заполнено, или заполнено неправильно. В таком случае диалог не закрывается, пользователю показывается соответствующее сообщение, и курсор перемещается на контрол, который соответствует ошибочному полю.

Собственно хотелось услышать фозможные механизмы реализации такого случая, т.е. что должна вернуть серверная процедура, и каким образом по этому ответу вычислить нужный контрол и дать ему фокус.

В данный момент, такой механизм у нас есть, т.е. он был еще до меня, но там серверная процедура в прямую возвращала имя контрола, потом FindComponent и SetFocus. Но механизм не устраивает, хотя бы потому, что серверная процедура не должна иметь даже малейшего представления об названиях контролов клиента, я так считаю.


 
novill ©   (2006-09-01 17:08) [1]

продецедура возвращает код ошибки, клиент его анализирует.

Вариантов реализации дуром. ) Хоть через case, хоть через раздачу имен контролам в соответствии с именами полей :)


 
StriderMan ©   (2006-09-01 17:22) [2]


> NiGGa ©   (01.09.06 17:01)

а в таблице поля наверное соответствуют контролам на форме?
и названия наверное похожие.

тогда мне кажется существующий механизм вполне нормальный.


 
Ketmar ©   (2006-09-01 17:41) [3]

через ORB.
нет, лучше выкладывать на какой-от сайт, а потом с него качать.
нет, ещё лучше использовать ICMP-пакеты.
у меня ещё много идей. надо?


 
Sam Stone ©   (2006-09-01 19:12) [4]

Возвращать номер "кривого" параметра.
А вообще, на мой взгляд, лучше всякие проверки на невведеное значение или введеное коряво реализовать прямо на форме и не давать нажать кнопку "ОК", пока что-то не так.


 
NiGGa ©   (2006-09-03 13:46) [5]

2 Ketmar
Что есть ORB?
Бредовые идеи оставте при себе, или выскажете здесь, когда ветку в "потрепатся" перенесут.

2 Sam Stone
У нас этика такая, что основной функционал лежит на Оракле, на клиента только отображение информации, и дергание процедур, ничего более.

2 novill
Оно то так хорошо, но автоматизации в таком решении почти нет, буквально в лоб, к тому же с маштабируемостью такого решения плохо.


 
NiGGa ©   (2006-09-03 13:48) [6]

2 StriderMan
По моему описанию ожет он и кажется нормальным, но я видел реализацию, более ужасных вещей я сам не писал даже когда программировал еще на Васике в школе.


 
Ketmar ©   (2006-09-03 13:59) [7]

> [5] NiGGa ©   (03.09.06 13:46)
ваши бредовые советы можете оставить там же. а я овечаю на вопрос. как задан -- такой и ответ. а что есть ORB -- гугль расскажет.


 
Юрий Зотов ©   (2006-09-03 18:57) [8]

> NiGGa ©   (01.09.06 17:01)

Если процедура вернет ИМЯ_ТАБЛИЦЫ.ИМЯ_ПОЛЯ, то вычислить связанный с эти полем контрол тоже несложно. Зато достигается основная (насколько я понял) задача - разделение слоя данных и слоя отображения.


 
NiGGa ©   (2006-09-05 14:39) [9]

[8]
Есть такой вариант. Но с ним тоже есть ряд трудностей, к примеру полей с таким ориджином может быть несколько.


 
Ega23 ©   (2006-09-05 14:48) [10]

Вообще-то проверки нехило делать ПЕРЕД регистрацией.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.044 c
1-1155652862
sdf13
2006-08-15 18:41
2006.09.24
немецкий текст.


2-1157371407
Ефимыч
2006-09-04 16:03
2006.09.24
Подскажите, как сделать, чтоб jpeg не компилировался в exe-шник?


3-1153891644
Oalien
2006-07-26 09:27
2006.09.24
помагите help срочно


10-1122963978
alles
2005-08-02 10:26
2006.09.24
Юзера и сервер COM


2-1157551576
nordic3
2006-09-06 18:06
2006.09.24
Запуск проги по сети




   Наверх