Вниз
Скачать: CL | DM;

Вопрос по IBDataset   Найти похожие ветки 

← →
ksa2002   (2004-12-16 11:18) [0]

Есть несколько записей  который правяться в DBGrid ручками .
Можно ли сделать так, чтобы все изменения заносились в кэш Dataser а у ж потом вызвав метод ApplayUpdate они записывались в базу ?(По умолчанию в кыше храниться только последния редактируемая запись)


← →
Соловьев ©   (2004-12-16 11:25) [1]

CachedUpdates=true?


← →
ksa2002   (2004-12-16 11:27) [2]

по хелпу вроде оно ....проверим


← →
ksa2002   (2004-12-16 13:27) [3]

Ещё ворос по IBDataset.
Хочу чтобы обновление происходили с помщью ХП , но как её подставить в ModidfySQL ? (Пробывал через селект задать не вышло) .


← →
Соловьев ©   (2004-12-16 13:33) [4]

Пробывал через селект задать не вышло

И не выйдет, нужно exec procedure ... насколько я помню


← →
ksa2002   (2004-12-16 13:36) [5]

Но как это подставить в ModidfySQL?


← →
Zacho ©   (2004-12-16 13:41) [6]

EXECUTE PROCEDURE name [ param [, param …]]

Language Refrence читай.


← →
ksa2002   (2004-12-16 13:42) [7]

чёрт протупил :) .....усё понял ,щаз проверим!


← →
ksa2002   (2004-12-17 05:56) [8]

Подставил в ModifySQL вот такую вещь

EXECUTE PROCEDURE VOZVRAT_NAKLAD (:A_MAIN ,:TABLE1,:KOL,:PARAM_KOL)

как только вношу изменения и перемещаюсь на следующую строчку (т.е. данные скидываються в буфер) выскакивает ошибка
Empty SQL Statement.


← →
Zacho ©   (2004-12-17 06:47) [9]

CachedUpdates используешь ?

Если да, то отключи.


← →
ksa2002   (2004-12-17 06:55) [10]

не использую


← →
ksa2002   (2004-12-17 06:57) [11]

и ещё вопрос как забокировать возможность вставки новой записи в
Dataset ? (чтоб вообще не была доступна это возможность для пользователя)


← →
Zacho ©   (2004-12-17 07:19) [12]

Насчёт CachedUpdates я наврал. В TIBDataSet всё должно быть нормально, хоть с CachedUpdates, хоть без. Это в TIBQuery не получиться использовать ХП.
Так что показывай код, всё должно работать.

> и ещё вопрос как забокировать возможность вставки
>новой записи в
> Dataset ?

В BeforeInsert вызови Abort;


← →
ksa2002   (2004-12-17 08:16) [13]

в ModifySQL  написано
EXECUTE PROCEDURE VOZVRAT_NAKLAD (:A_MAIN ,:TABLE1,:KOL,:PARAM_KOL)

в гриде сответсвующие поля (:A_MAIN ,:TABLE1,:KOL,:PARAM_KOL)

вот если подставляю вместо переменых занчения то ошибки нет , но изменения всеравно не происходят


← →
Zacho ©   (2004-12-17 08:31) [14]

Ну не знаю. У меня всё работает. Попробуй поставить последний апдейт IBX.

> вот если подставляю вместо переменых занчения то
> ошибки нет , но изменения всеравно не происходят

Commit делаешь ?


← →
ksa2002   (2004-12-17 08:33) [15]

автоматом в тразакциях стоят , всё в dataset работает кроме того
случаю когда подставляю ХП в модификацию


← →
ЮЮ ©   (2004-12-17 08:34) [16]

А как, интересно, процедура может найти запись, которую изменили, по новым значениям полей? Где ключевое поле?


← →
ksa2002   (2004-12-17 08:38) [17]

тогда как связать его с ключевым полем ?


← →
ЮЮ ©   (2004-12-17 08:42) [18]

Это ты меня спрашиваешь? Я же не знаю, что у тебя за поля да таблицы? Я просто спрашиваю про логику твоей процедуры: "Она действительно зная только новые значения параметров может адекватно исправить необходимые таблмцы?"


← →
ksa2002   (2004-12-17 08:43) [19]

да ..первое значение это ключевое поле


← →
ЮЮ ©   (2004-12-17 08:46) [20]

Тогда почему оно в гриде?


← →
ЮЮ ©   (2004-12-17 08:49) [21]

В том смысле, что исправив его в гриде, на самом деле вызовешь процедуру фактически для другой строки :)


← →
ksa2002   (2004-12-17 08:49) [22]

какая разница ? пользователь не может его поменять как и увидеть


← →
ЮЮ ©   (2004-12-17 08:57) [23]

>в гриде сответсвующие поля (:A_MAIN ,:TABLE1,:KOL,:PARAM_KOL)

>но изменения всеравно не происходят
попробуй выполнить ModidfySQL "вручную". Ну не может же процедура не выполниться, не огрызнувшись. Или может процедура так и задумана? :)


← →
ksa2002   (2004-12-17 09:11) [24]

Вручню это как ? Через консоль процедура выполняеться


← →
ksa2002   (2004-12-17 09:27) [25]

Ну нафиг всё это . Сделал через Query и StoredProc


← →
Zacho ©   (2004-12-21 11:27) [26]

ksa2002   (17.12.04 9:27) [25]

Зря. Действительно зря. Лучше бы разобрался, почему у тебя не работает. У меня (и не только у меня) - работает, могу привести пример.


← →
msguns ©   (2004-12-21 11:54) [27]

У него SNAPSHOT в транзакции скорее всего.. И запрос не переоткрывается после апдейта.



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

Скачать: CL | DM;



Память: 0.5 MB
Время: 0.025 c
3-1103223045
Flagman
2004-12-16 21:50
2005.01.23
TQuery + Paradox + CD ?


14-1105010917
Чеширский_Кот
2005-01-06 14:28
2005.01.23
Футболисты - хулиганы?


3-1103534177
vvllaadd
2004-12-20 12:16
2005.01.23
Тип поля задан ALPHA, почему выдается такая ошибка


1-1105005604
AndreySoft
2005-01-06 13:00
2005.01.23
InputQuery и PasswordChar


14-1104865112
Andrewp
2005-01-04 21:58
2005.01.23
Эксклюзив.




   Наверх