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

динамическая база   Найти похожие ветки 

← →
:: Hamster ::   (2002-08-30 08:16) [0]

Значит вопрос такой:
Три машины - Склад, Касса, Сервер
база лежит на сервере.
При списании с "Кассы" в базе делаются изменения.
Как сделать сделать update на складе.
Т.е Автообновление..
На кассе в конец процедуры списания можно просто дописать
ibdatabase.applyupdates;
Но как получить энти изменения на складе ?!
Создать таймер и каждые 5 минут делать ibdatabase.close; ibdatabase.open;..пока нечего умнее я не нашёл..


← →
Alexandr ©   (2002-08-30 08:39) [1]

примерно так и надо делать.
А вообще, надо на складе кнопку сделать "обновить позицию в справочнике".
Да еще и обновлять позицию каждый раз когда начинает работать с этой позицией.
Заметь, одну позицию, а не весь набор данных, поэтому это очень быстро будет.
Это refresh для IBX(с закладки Interbase)


← →
-=Sergeante=- ©   (2002-08-30 09:38) [2]

Делается это с помощью сообщений. Н-р:

CREATE TRIGGER AU_SKLAD FOR SKLAD
ACTIVE AFTER UPDATE POSITION 0
as
begin
post_event "SKLAD_update";
end


Клиентское приложение принимает сообщение от сервери IB (компонент IBAlert кажется) и делает нужные действия.


← →
Alexandr ©   (2002-08-30 09:52) [3]

а какие могут быть действия? только переоткрыть таблицу...


← →
int64 ©   (2002-08-30 11:26) [4]

Я сделал обновление локальных данных по реакции на post_event. Также внял чужому совету и перестраховался таймером на клиенте, который раз в 10 сек. считывает флаги с сервера.
Так вот, за пол года эксплуатации БД, таймер ни разу не инициировал обновлений. :)



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

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



Память: 0.45 MB
Время: 0.01 c
14-61280
Ev_genus
2002-08-21 19:26
2002.09.19
6th Day Soundtrack


14-61317
Esu
2002-08-22 14:40
2002.09.19
О наболевшем


7-61331
VictorT
2002-07-10 19:16
2002.09.19
Програмное получение имени пользаователя Виндовс.


1-61189
madburro
2002-09-08 14:05
2002.09.19
Очень интересно...


3-61023
Коля
2002-08-29 20:20
2002.09.19
Добавить запись в таблицу?




   Наверх