Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2002.04.11;
Скачать: [xml.tar.bz2];

Вниз

Удаление текущей записи из Dataset a   Найти похожие ветки 

 
onix   (2002-03-21 13:24) [0]

Доброго здоровья всем. Ув. коллеги подскажите пожалуйста решение данной проблемы. При помощи TIBQuery получаю набор данных о продажах товаров за некий период времени и связываю его с компонентом TDBGridEh. Так вот пробегая по всем записям нахожу одинаковые записи с наим.товаров и складываю кол-во проданных. Нужно, удалить из НД обработанную запись. Пытаюсь сделать Delete, а в ответ получаю "Cannot delete from dataset. (No delete query)".


 
Turalyon   (2002-03-21 13:31) [1]

У тебя в IBQuery выборка делается из одной таблицы? Если да, то можно воспользоваться IBUpdeteSQL и в нем прописать все SQL запросы к базе (вставка, удаление,...) Если выборка из разных баз, то можно завести еще один Query в котором исполнять нужные тебе запросы....


 
OlegE   (2002-03-21 13:34) [2]

Ты подумай хорошенько: нужно-ли тебе удалять обработанную запись, ее ведь не восстановишь?! И если удалять, то зачем ее обрабатывать.
Извини за сарказм, но наверное, задача сформулирована не совсем корректо.


 
Onix   (2002-03-21 13:47) [3]

Ee нужно удалить только из полученног НД, а не из таблицы. Мне нужно полученный НД распечатать. Для этих целей использую EhLib (по моему очень удобно.)


 
fnatali   (2002-03-21 13:51) [4]

>Так вот пробегая по всем записям нахожу одинаковые записи с >наим.товаров и складываю кол-во проданных.
А прямо в запросе нельзя сразу сложение одинаковых товаров сделать?
select tovar,sum(kolich) from table1 group by tovar


 
Alexandr   (2002-03-21 14:00) [5]

ну так тогда исключение это "Cannot delete from dataset. (No delete query)" просто загаси


 
Onix   (2002-03-21 14:02) [6]

>Alexandr ©
Это как? А что произойдет с записью?


 
Alexandr   (2002-03-22 06:49) [7]

да ничего не случится : в базе останется, у тебя в гриде исчезнет

try
...
except
end


 
onix   (2002-03-22 07:33) [8]

>Alexandr ©
В этом случае программа просто циклится.


 
Alexandr   (2002-03-22 07:55) [9]

почему?
в локальном датасете запись удалится, а на сервере останется. Разве не это тебе надо?



 
onix   (2002-03-22 08:35) [10]

Именно это, но найдя две одинаковые записи они бесконечно складываются.


 
Alexandr   (2002-03-22 08:44) [11]

не понял.


 
onix   (2002-03-22 08:51) [12]

Мне думается, что при возникновении исключения операция Delete отменяется и никакого удаления не происходит, а соответственно и перехода на другую запись, вот программа и циклится.


 
fomstas   (2002-03-22 09:47) [13]

А ты делай Delete отдельным Query
а потом транзакцию RollBack; И все


 
onix   (2002-03-22 09:56) [14]

>fomstas
Теперь и я не понял. Можно подробней?


 
Alexandr   (2002-03-22 11:09) [15]

2fomstas: ему изменения в базе ненадо делать, ему локально надо.
2onix: Chached Updates включи, а вообще, тебе кажется или на самом деле так происходит


 
onix   (2002-03-22 12:28) [16]

>Alexandr ©
Нет не кажется, весь этот "беспредел" видно на мониторе.
Послушай, а может я зря стараюсь. Прочел в книге, что это работает если select был из одной таблицы, а у меня из двух.
А вот вопрос, если проделать все это через StringGrid, можно ли затем полученный StringGrid поместить в DBGridEh чтоб распечатать ?


 
Alexandr   (2002-03-22 12:37) [17]

тогда уж через компонент TMemTable кажется так он называется...



 
onix   (2002-03-22 12:59) [18]

>Alexandr ©
Who is it ?


 
Fareader   (2002-03-22 13:05) [19]

Почему не попробовать такой вариант:
Берем Query, включаем у него кеш, подключаем к нему UpdateSQL,
удаляем все что нам нужно, а вот Apply не делаем. В таком случае локально Query этих записей видеть не будет, потому что с его точки зрения они удалены, а вот на сервере все в целости и сохранности.


 
Alexandr   (2002-03-22 13:09) [20]

2Fareader: вот это я ему и объясняю... Наверное непонятно.
2onix:а что по названию тяжело догадаться?



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2002.04.11;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.006 c
7-32996
Сергей Чурсин
2002-01-16 16:02
2002.04.11
Как убрать записи о неверных P&P устройствах ?


1-32893
Alx2
2002-03-29 17:19
2002.04.11
Чего-то я не улавливаю :(


1-32861
Vova33
2002-03-29 10:39
2002.04.11
Разработка DLL


14-32967
limon
2002-03-03 22:03
2002.04.11
Числа Фибоначчи как основа компьютерной логики


6-32918
Лёша
2002-01-27 03:05
2002.04.11
Как изменить настройки у TWebBrowser?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский