| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C++ Builder > DBGrid не входит в режим редактирования |
| Автор: ksili 27.3.2008, 14:08 | ||||
Связка
Никаких исключений не просходит, просто не редактируется |
| Автор: korian 27.3.2008, 14:18 |
| update sql заполнен? |
| Автор: ksili 27.3.2008, 14:23 | ||
Вот сейчас начал заполнять. И редактирование появилось!!! Заполняю так:
Причем вот эти =:P_LOGIN и :P_OUTPHONE от фонаря, потому что где то так видел. из-за этого после перехода на другую строку происходит исключение. Что именно надо писать вместо этих параметров? |
| Автор: korian 27.3.2008, 14:34 | ||
ммм, я не знаю как оно там у вас, под FireBird'ом примерно так:
я так понимаю, что :DATA - это название FieldName в программе с ":" |
| Автор: ksili 27.3.2008, 14:40 | ||
| Я тоже под FireBird'ом. Нашёл, что можно прописать в DataSet1->AutoUpdateOptions->ParamsToFieldLinks =
Исключения уже не происходит, но при изменении какого-нибудь поля LOGIN, логины всех записей в таблице просто заnullяются. при указании KeyField что-то ругается при компиляции, что не может сгенерировать RefreshSQL, т.к. нет полей для таблицы AuthOut |
| Автор: korian 27.3.2008, 14:44 |
| если под FireBird'ом, то там вообще проблем нету, он сам может генерировать Update, Delete, Refresh запросыы по Select запросу. в большинстве случаев, их чутка подправить (а иногда и править не надо) и все. |
| Автор: ksili 27.3.2008, 14:48 |
| Я пытался вызвать GenerateSQLs(), но возникает исключение Добавлено через 3 минуты и 32 секунды пишет unable to generate DeleteSQL because fields for "AuthOut" do not exists in dataset, хотя в датасет добавлены все поля таблицы и ещё два поля lookup Вообще здесь играет роль регистр, а то я привык, что в sql регистр неважен? |
| Автор: ksili 27.3.2008, 15:01 | ||||
SelectSQL:
таблица
Поле AUTHID в таблице не отображаю, вместо OUTPHONE и OUTANI пытаюсь приделать lookup'ы |
| Автор: korian 27.3.2008, 15:09 |
| я так понимаю надо полный SQL запрос писать (* - не катит). а лучше выбрать нужную таблицу и нажать Generate SQL потом переходим на TAB Generate modify SQLs, выбираем ID, выбираем изменяемые поля и Generate SQLs Добавлено через 2 минуты и 18 секунд хотя у меня генерирует и со *... Добавлено через 4 минуты и 30 секунд это вы делаете по средствам DBGrid'а? если по средствам DataSet - тогда все правильно, что нифига не работает |
| Автор: ksili 27.3.2008, 15:14 | ||
| Везде пишут нажать GenerateSQLs ))) Но я чота не нашёл такой кнопки Пока вручную пишу UpdateSQL:
предварительно прописав пееменные в DataSet1->AutoUpdateOptions->ParamsToFieldLinks. Исключений уже нету. Но в базе почему то не сохраняется, хотя в гриде сохраняется. попробую все поля прописать Добавлено через 4 минуты и 32 секунды сделал селект без звёздочки. Программно вызываю GenerateSQLs, теперь не взникает исключения (что он там генерит не проверял). Но в базе пока всё равно не сохраняется |
| Автор: korian 27.3.2008, 15:20 |
| магическая кнопка на рисунке |
| Автор: korian 27.3.2008, 15:22 |
| и еще одна магическая кнопка |
| Автор: ksili 27.3.2008, 15:26 |
| У меня такого окошка нигде нету. Наверно это фича Делфи Добавлено через 8 минут и 21 секунду После моего программного GenerateSQLs UpdateSQL не изменяется (свойства AutoRewriteSQLs и CanChangeSQLs установлены). Наверно это из-за того, что я не указал KeyFields. Но если его указать, то при GenerateSQLs возникает все та же ошибка unable to generate RefreshSQL because fields for "AuthOut" do not exists in dataset |
| Автор: ksili 27.3.2008, 16:04 |
| Стал сохранять, когда имя таблицы во всех местах привёл верхнему регистру |
| Автор: korian 27.3.2008, 16:17 |
нет, это фича компонентов FIBPlus вы TpFIBDataSet используете или что-то другое? |
| Автор: ksili 27.3.2008, 16:30 |
Да, я использую их. Куда надо кликнуть, чтобы появился это редактор SQL? |
| Автор: korian 27.3.2008, 16:38 |
| рисунок |
| Автор: ksili 27.3.2008, 16:42 |
| У меня этой кнопки нет. Версия FIBPlus 6.5.0 Да если б у меня это было, я бы уже давно нашёл. Все эти свойства я уже на миллион раз просмотрел и истыкал |
| Автор: korian 27.3.2008, 18:28 |
| ну не знаю... странно у меня FIBPLUS 6.25 |
| Автор: ksili 28.3.2008, 11:00 |
| А вы их регистрировали? Деньги за них платили? Я - нет |
| Автор: korian 28.3.2008, 13:23 |
неа, трил версия (выдается диалог при запуске .exe) |
| Автор: ksili 28.3.2008, 13:26 |
| Всё-таки мне кажется, что это особенность версии для Delphi. У них и в доке примеры и скриншоты для Delphi. |
| Автор: korian 28.3.2008, 13:42 | ||
ну у меня ж BCB6 =) так что делфи тут не при чем. |