Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Как сделать правильнее?
|
|||
|---|---|---|---|
|
#18+
Доброго времени суток! Прошу помощи, чтобы разобраться в следующем вопросе: Имеется форма с Grid имеются кнопки "Новая" "Редактирование" Grid построен на основе курсора с опцией readwrite, используется табличная буферизация При нажатии кнопки "Новая" реализован следующий подход: - активизируется форма с с несколькими textbox контролами у которых в качестве источника данных Controlsourse подключены соотвествующие поля курсора, причем свойство Value = имеет пустое значение - производится контроль вводимых данных - при нажатии кнопки "Записать" делаю append blank - Tableupdate () - replace на введенные значения в исходной таблице - гашу texbox - активизирую Grid Вопрос собственно в следующем, если делать append blank при нажатии кнопки "Новая", то Grid нормально отображает значения новой записи (если в данном случае пользователь нажмет кнопку "Отмена" пустая запись останется в курсоре, поэтому вариант не подходит), если делать добавление при нажатии кнопки "Записать" - меняет значения для текущей строки Grida Как сделать правильнее, имея целью видеть добавленную запись в Grid, причем не засоряя курсор новыми записями, появившимися в случае кнопки "Отмена" пользователем - первый вариант или по второму варианту -втавка записи только, когда пользователь нажал кнопку "Записать" что в принципе на мой взгляд логичнее, только еще бы добавленную запись нормально в Gride отобразить ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.10.2004, 08:23 |
|
||
|
Как сделать правильнее?
|
|||
|---|---|---|---|
|
#18+
Sas_NДоброго времени суток! Прошу помощи, чтобы разобраться в следующем вопросе: Имеется форма с Grid имеются кнопки "Новая" "Редактирование" Grid построен на основе курсора с опцией readwrite, используется табличная буферизация При нажатии кнопки "Новая" реализован следующий подход: - активизируется форма с с несколькими textbox контролами у которых в качестве источника данных Controlsourse подключены соотвествующие поля курсора, причем свойство Value = имеет пустое значение - производится контроль вводимых данных - при нажатии кнопки "Записать" делаю append blank - Tableupdate () - replace на введенные значения в исходной таблице - гашу texbox - активизирую Grid Вопрос собственно в следующем, если делать append blank при нажатии кнопки "Новая", то Grid нормально отображает значения новой записи (если в данном случае пользователь нажмет кнопку "Отмена" пустая запись останется в курсоре, поэтому вариант не подходит), если делать добавление при нажатии кнопки "Записать" - меняет значения для текущей строки Grida Как сделать правильнее, имея целью видеть добавленную запись в Grid, причем не засоряя курсор новыми записями, появившимися в случае кнопки "Отмена" пользователем - первый вариант или по второму варианту -втавка записи только, когда пользователь нажал кнопку "Записать" что в принципе на мой взгляд логичнее, только еще бы добавленную запись нормально в Gride отобразить А зачем тебе использовать связи текст-боксов с курсором? Не проще ли сделать свободные текст-боксы. При нажатии кнопки "Записать" сделать что-то типа insert into ... (это, кстати, удобнее, чем делать append blank, а затем replace...) и перенести данные в таблицу/курсор. При нажатии же кнопки "Отмена" - не делать сохранения. При этом данные, введенные в текст-боксы, естественно, нигде не сохранятся и потеряются... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.10.2004, 08:51 |
|
||
|
Как сделать правильнее?
|
|||
|---|---|---|---|
|
#18+
Я использую следующий вариант: делаю одну форму, как уже было сказано, какбы со свободными контролами (тестовыми полями и пр.), в обработке события INIT прописываю параметр для передачи, например, tlEditFlag, который и передаю в форму при вызове режимов "Новая запись" и "Редактирование записи" - соотвественно .F. или .T.. Таким образом, я знаю, что я должен сделать в дальнейшем - толи append blank с последующием replace и tableupdate (insert into ...) для добавления новой записи или же просто replace (update ....) для режима редактировоания текущей записи - инифиализация соотвесвующих текстовых полей и пр. происходит соотвеснно в init в зависимости от tlEditFlag, значение этих же контролов и использую в replace (update)......Почему использую такой подход? - как правило, формы для редактирования (добавления новой записи) подразумевают редактирование (добавление) не конкретной записи из какой-дибо таблицы, а совокупности данных в разные таблицы, т.е. работы с конкретной сущностью проекта, документом......, а тут соотвеснно и отношения 1:M и доп. обработки данных на valid и пр.... С уважением duШes ....return ThisForm.exGrid1.p_oColumns("COLUMN1").M_AddHeader("header4",4) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.10.2004, 09:10 |
|
||
|
|

start [/forum/topic.php?fid=41&msg=32737417&tid=1595618]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
53ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
37ms |
get tp. blocked users: |
2ms |
| others: | 257ms |
| total: | 384ms |

| 0 / 0 |
