|
|
|
Как забиндить текстовое поле для правки записей ?
|
|||
|---|---|---|---|
|
#18+
у меня всё работает на движке АДО , вб 6 на форме лежит контрол ФлексГрид , в качестве датасорса АДОРекордсет я так понимаю надо еще и забиндить сам флексгрид , чтобы при двойном клике на гриде открывалась форма редактирования с полями где просто меняем и закрываем ... и паралельно еще вопрос , как сделать откат изменений в этих забинденных полях ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2005, 08:59:36 |
|
||
|
Как забиндить текстовое поле для правки записей ?
|
|||
|---|---|---|---|
|
#18+
I.Текстовое поле проще всего напрямую привязать к рекордсету. Но лучше использовать BindingCollection. II.Такую схему "Форма с набором записей в виде таблицы" - "Форма редатктирования единиченой записи" можно реализовать двумя способами: 1. На общем рекордсете - источнике записей грида и формы единичной записи. Тогда последняя должна содержать рекордсет - клон рекордсета грида (ссылку на rs грида она получает при вызове). Его надо установить на нужную запись - клоны имеют свои букмарки (а также фильтры и сортировки). 2. Форма единичной записи открывает свой рекордсет и получает при вызове только код записи. После сохранения изменений форма с гридом переоткрывает свой рекордсет для отражения изменений (и конечно ищет ту запись). Второй способ универсальнее т.к. позволяет использовать любой даже нередактируемый запрос в основе грида. С комбобоксами, своими гридами, даблклик по которым вызывает в свою очередь другие формы. III. Откат изменений можно реализовать до возврата значений в БД если использовать BatchOptimistic блокировку. Тогда просто не делаем rs.UpdateBatch. Можно конечено ч/з транзакцию коннекшена, но тут скорее не будет особых достоинств перед использованием BatchOpimistic. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2005, 09:43:39 |
|
||
|
Как забиндить текстовое поле для правки записей ?
|
|||
|---|---|---|---|
|
#18+
ну никто что ли незнает? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2005, 09:43:46 |
|
||
|
Как забиндить текстовое поле для правки записей ?
|
|||
|---|---|---|---|
|
#18+
WorobjoffI.Текстовое поле проще всего напрямую привязать к рекордсету. Но лучше использовать BindingCollection. II.Такую схему "Форма с набором записей в виде таблицы" - "Форма редатктирования единиченой записи" можно реализовать двумя способами: 1. На общем рекордсете - источнике записей грида и формы единичной записи. Тогда последняя должна содержать рекордсет - клон рекордсета грида (ссылку на rs грида она получает при вызове). Его надо установить на нужную запись - клоны имеют свои букмарки (а также фильтры и сортировки). 2. Форма единичной записи открывает свой рекордсет и получает при вызове только код записи. После сохранения изменений форма с гридом переоткрывает свой рекордсет для отражения изменений (и конечно ищет ту запись). Второй способ универсальнее т.к. позволяет использовать любой даже нередактируемый запрос в основе грида. С комбобоксами, своими гридами, даблклик по которым вызывает в свою очередь другие формы. III. Откат изменений можно реализовать до возврата значений в БД если использовать BatchOptimistic блокировку. Тогда просто не делаем rs.UpdateBatch. Можно конечено ч/з транзакцию коннекшена, но тут скорее не будет особых достоинств перед использованием BatchOpimistic. спасибо за замечания ... большое ... вопрос 1 уважаемый ! кодом мне не поможешь ... набросать просто биндинг вторым способом ... у меня пока сделано вот как ... при 2 щелчке в гриде считываю id ключевого поля и использую метод Find рекордсета , перехожу на эту запись и гружу из этой текущей записи в текстовые поля ... ну а потом делаю апдейт ... но проблема в том , что я чо тут запарился , никак не могу отследить ошибку когда юзер в поле вводит id существующий ... мне кажется биндингом будет надёжней и проще ... приведи небольшой кусок кода если не сложно , я допру быстро ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2005, 10:08:48 |
|
||
|
Как забиндить текстовое поле для правки записей ?
|
|||
|---|---|---|---|
|
#18+
Уже бросал сюда пример. Кое что есть полежное и для вас. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2005, 11:39:26 |
|
||
|
Как забиндить текстовое поле для правки записей ?
|
|||
|---|---|---|---|
|
#18+
Раздача бесплатных примеров. )))) Стандартная Microsoft Binding Collection временами глючит, несколько лет назад написал свою, пользую до сих пор. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.09.2005, 12:20:25 |
|
||
|
|

start [/forum/topic.php?fid=60&msg=33292432&tid=2167111]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
35ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
31ms |
get tp. blocked users: |
1ms |
| others: | 238ms |
| total: | 339ms |

| 0 / 0 |
