Форум: "Базы";
Текущий архив: 2002.02.21;
Скачать: [xml.tar.bz2];
ВнизУдаление строки в stringgrid, разные кодировки и временные файлы запросов. Найти похожие ветки
← →
Rash (2002-01-28 12:15) [0]Подскажите, пожалуйста:
if (key=VK_DELETE)
then if (shift = ([ssCtrl]))
then begin
grid.rows[grid.row].delete(grid.row)
end
else grid.Cells[grid.col,grid.row]:="";
По ctrl-Del выдается ошибка - нельзя удалить колонку или строку.
Как здесь нужно использовать Delete? Или проще переприсвоить значения в таблице? (Сетка используется для ввода перечня деталей в заказе).
И еще: могут ли быть глюки, если таблицы в разных кодировках? И как и чем можно переделать кодировку?
И третий вопрос: по выполнению запросов на отбор в каталоге создаются (иногда) временные файлы, почему они создаются и как от них можно избавиться?
Большое спасибо, если ответите.
← →
Rash (2002-01-28 12:34) [1]Удалено модератором
← →
Desdechado (2002-01-28 20:54) [2]1. попробуй DBGrid. не панацея, конечно, но проще работать с данными. там можно удалять из подлежащего датасета, а грид сам себя перерисует
2. глюки могут быть везде. Используй языковые настройки драйвера для своего алиаса
3. их создает БДЕ, он же и удаляет при нормальной работе. при аварийной - ручками
← →
Rash (2002-01-28 21:44) [3]1. У меня с претензиями на независимость от базы во время редактирования... DBGrid, мне кажется, не очень удобен, потому что заранее неизвестно, сколько будет подчиненных записей у заказа. А записывается по нажатию одной кнопки. А по нажатию отмены - как тогда, удалять все уже введенные записи? Вообще, мне немного непонятно, как люди обычно это пишут. В бухгалтерских программах такой механизм. Но там для каждой подчиненной записи - новое окно. Где они детали хранят, пока не записана родительская запись, во временной таблице?
2. Просто у меня мои таблицы - ansi а импортированные справочники получились cpp866. Можно ли так оставить для серьезной базы?
3. А какие могут быть аварийные ситуации? запросы выполяются нормально, вроде...
← →
kig (2002-01-28 22:42) [4]Ну используйте TClientDataset или TADODataset исключительно в памяти как временный кэш. Без привязки к какой-то БД. И используйте DBGrid и другие DBAware контролы, как Вам посоветовал Desdechado.
← →
Desdechado (2002-01-29 12:13) [5]1. CachedUpdates=true + UpdateSQL
сохранение - по одной кнопке :)) отмена - откатит изменения до предыдущего сохранения всего датасета или текущей записи (как запрограммируешь)
2. различие кодировок внесет доп. трудности в настройке и поддержании работоспособности. если код пишешь внимательно, глюков не будет, но мороки больше :))
3. аварии - НП: программа выпала по Exception или резет нажал
← →
Rash (2002-01-29 20:43) [6]1. Спасибо за советы, приблизительно поняла, но уже жалко переделывать, все настройки сделала - осталось только удаление записей.
2. В том-то и дело, что прекрасно все работает, мне даже ничего не пришлось писать. Но мало ли что. А есть какие-нибудь программы, чтобы переделать кодировку? и вообще что-то получше, чем Database Desktop?
3. У меня даже при нормальной работе они возникают постоянно. И еще момент - по нажатию кнопки запрос работает нормально, по нажатию enter (та же процедура) пищит динамик. Причем именно при исполнении запроса (на другие события так не реагирует). Может это.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2002.02.21;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.004 c