Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
ssa774 Профи
Вступление в Клуб: 30.11.2007
|
Чт Июн 24, 2010 06:48  Валидация колонок грида |
|
Полезность: Нет оценки
|
На форме есть грид. Первая колонка заполняется автоматом, а другие можно менять, причем значение одной из колонок зависит от значения изменяемой. Допустим, в колонку вводим 1, соседняя колонка становится 2.
Как при валидации определить, какую колонку грида изменили и какую строчку грида изменили? Поставила на всё проверку введенного значения, вывела P_INFO в лог, но выводится просто имя грида  |
|
 |
Alex2019 Профи
Вступление в Клуб: 02.07.2007
|
Чт Июн 24, 2010 09:33  Re: Валидация колонок грида |
|
Полезность: 4
|
ssa774 пишет: | Как при валидации определить, какую колонку грида изменили и какую строчку грида изменили? Поставила на всё проверку введенного значения, вывела P_INFO в лог, но выводится просто имя грида  | Проверка введенного значения на ЭФО должна быть установлена не только на сам грид, но и на те колонки, которые предполагается редактировать. Посмотрите возвращаемое p_info, его структура <имя грида>.<имя колонки>[номер строки]. В секции VALIDATE определяем строку как Код: | id := substr(p_info, instr(p_info, '[')+1, instr(p_info, ']') - instr(p_info, '[') - 1) | и, используя id как индекс массива, изменяем значение в другой колонке |
|
 |
kit83rd Участник со стажем
Вступление в Клуб: 05.02.2010
|
Пн Июн 28, 2010 05:45   |
|
Полезность: 1
|
Все делаем на клиенте.
У Грида есть метод ValidateEdit
Пример
Код: |
Public Sub Grid_ValidateEdit(Row, Col, Cancel)
edit = Grid.EditText ' запомнили введенное в ячейку (Row, Col) значение
Grid.Value(Row, Col+1) = edit + 1 ' Соседней ячейке присвоили значение
Grid.Value(Row, Col) = edit ' Во избежание недоразумений обратно присваеваем введенное значение редактируемой ячейке.
end Sub
|
Можно проверить введенное значение и отвергнуть изменение установив параметр Cancel = true |
|
 |
|
|
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах
|
|