Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » InterBase и FireBird: вопросы по работе и их решение

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104

Открыть новую тему     Написать ответ в эту тему

AlexCoRu

BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
надо будет изучить вопрос
Просто как возможность. В плане обмена событиями, как припарка.

Всего записей: 911 | Зарегистр. 04-09-2003 | Отправлено: 16:05 02-07-2012
miwa

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Цитата:
Из справки IBDAC ... Call the SendEvent procedure to send an event with Name
 
надо будет изучить вопрос, не был в курсе такого...  

 
Из любых компонент доступа можно выполнить код типа

Код:
 
execute block as
begin
  post_event('event_name');
end
 

и все всё правильно обработают.
 
Добавлено:
AlexCoRu

Цитата:
Просто как возможность. В плане обмена событиями, как припарка.

Зависит от частоты наступления собый. Я ведь выше не зря уточнял о предметной области. Если частота - раз в секунду или меньше, тогда в чем проблема?

Всего записей: 455 | Зарегистр. 10-10-2004 | Отправлено: 21:42 02-07-2012
ant0ni02004

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
AlexCoRu
miwa
аааа, ну если всем отсылать event тогда понятно. я-то подумал что вдруг можна серверу отсылать что-нибудь а он отреагирует

Всего записей: 442 | Зарегистр. 26-10-2004 | Отправлено: 23:25 02-07-2012
miwa

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ant0ni02004
Неа, все, что он может нареагировать - это разослать сообщение всем подписанным клиентам по окончанию транзакции
 
Другое дело, что никто не мешает рядом з firebird-ом запустить какой-то процесс, подписать его на нужные сообщения и соответствующим образом реагировать, если надо.

Всего записей: 455 | Зарегистр. 10-10-2004 | Отправлено: 23:32 02-07-2012
delover

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
miwa

Цитата:
соответствующим образом реагировать

1)не советую без особой необходимости.  
2) Я бы тоже не чистил, если таблица без индексов.
3) Реагировать каким-то процессом - ну либо маньячество ИМХО, либо третья педаль велосипеду, ещё раз ИМХО.
 
ant0ni02004
Что послано???? Извините туплю иногда, вся пачка эвентов приходит к Вам только когда транзакция типа того, - комит, а до этого увы - как в танке - алертер молчит.
 
зы
Сори, пока биш увлёкся историей датасурсов. (Да правильно написал - DataSource, кроме родных D, есть ещё варианты)
 
Добавлено:
miwa
2)+ Не,... генератор то пусть молотит, цифирька не помешает потом при разборах информации для анализа...

Всего записей: 1395 | Зарегистр. 25-06-2007 | Отправлено: 19:33 05-07-2012 | Исправлено: delover, 19:49 25-07-2012
miwa

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
delover
 

Цитата:
1) Достаточно шаблонный 2 триггер бефо апдейт афтр инсерт (надеюсь по русски) на основные таблицы типа юзверь-коннект которые копируют в табленаме_лог заставляют волосы вставать дыбом.  
 

Если программиста пугают шаблонные тригеры, может сменить профессию?

Цитата:
 
Так что не советую без особой необходимости. Хотя тут же АБЦ анализ на хранимых процедурах, который ещё и работает шустро! Кто может не в курсе - это очень сложная для понимания посторонних людей математика, и полностью в SQL.  
 

Довольно-таки простая математика, если честно. Которую по большому счету все равно на чем писать, если руки прямые.

Цитата:
 
2) Я бы тоже не чистил если таблица без индексов.  
 

При чем здесь индексы?

Цитата:
 
3) Реагировать какимто процессом - ну либо маньячество ИМХО либо третья педаль велосипеду ещё раз ИМХО.  
 

Обе имхи не в тему.
 

Цитата:
 
Добавлено:  
miwa  
2)+ Не генератор пусть молотит...

Генератор ничего не скажет о смысле отправленных сообщений, так что опять не в тему.

Всего записей: 455 | Зарегистр. 10-10-2004 | Отправлено: 19:49 05-07-2012
ant0ni02004

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
delover

Цитата:
Что послано?

Цитата:
вся пачка эвентов приходит к Вам только когда транзакция типа того, - комит

рассматривался вариант отправки событий (не event-ов ФБ) через UDF, и тут уже коммит не рулил

Всего записей: 442 | Зарегистр. 26-10-2004 | Отправлено: 21:53 05-07-2012
delover

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ant0ni02004
ну тогда, не знаю как в ФБ, но в MS есть текущяя транзакция её стэйты и связи с DBO и привилегиями. просто слать месаджи которые будет читать любое приложение, мне кажется не совсем корректно и в 10 раз более некорректно если тематика базы подразумевает работу с баблом. Ну нажал кнопку юзер, а потом решил отказаться, если я захочу увидеть метания пользователя, то р-админ какой нибудь поставлю.

Всего записей: 1395 | Зарегистр. 25-06-2007 | Отправлено: 11:01 06-07-2012 | Исправлено: delover, 19:52 25-07-2012
miwa

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
delover

Цитата:
просто слать месаджи которые будет читать любое приложение, мне кажется не совсем корректно и в 10 раз более некорректно если тематика базы подразумевает работу с баблом.
 

Разговор вообще не об этом, как ни странно. «Сообщения» в данном контексте - это некие уведомления о происходящих событиях. Много узнает "любое приложение" из текстов типа "invoice_changed", "order_closed" и т.д.? При том что для того, чтобы получить эти сообщения, приложению надо знать параметры доступа к базе данных и точные тексты собственно сообщений.
 

Цитата:
 
Ну нажал кнопку юзер, а потом решил отказаться, если я захочу увидеть метания пользователя, то р-админ какой нибудь поставлю.  
 

Опять мимо кассы. «Метания» нужны операторам. Например для того, чтобы видеть изменения остатков. Тоесть если Вася уже продал последний ящик гвоздей, то чтобы Коля это увидел и не пытался продать то, чего нету.

Всего записей: 455 | Зарегистр. 10-10-2004 | Отправлено: 11:34 06-07-2012
delover

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
miwa

Цитата:
то чтобы Коля это увидел и не пытался продать то, чего нету.


Цитата:
чтобы видеть изменения остатков.

Остатки - это наличие ящиков гвоздей. Оно меняется только тогда когда прошла операция по безналику, после этого напечатали чек и если всё есть гуд - изменяется наличие. Но есть резерв - это второе поле которое должно содержать максимальное количество затребованное Васей при всех его метаниях которое было разрешено занять. Это поле чистится после "коммитов/ролбеков" уровня 1 (первый уровень лучше организовать не за счёт транзакций, ну да Бог с ним). Но это поле - резерв всегда коммитится на уровне 2. По этой причине остаток в моём понимании это наличие - резерв (резерв всегда актуален). Если мне подкинут халтурку все параметры будут известны, а мессаги окажут дополнительную помощь просто как напоминание. Иногда понять все, - бывает труд-о-затратно, а хочется чтоб не глючило.
 

Цитата:
Много узнает "любое приложение" из текстов типа "invoice_changed", "order_closed" и т.д.?

Если учесть, что не все программеры знакомые с прогой подобной WinSight32, перестали программировать, то очень много. Толку слать на локальном компе локальные месаджи в принципе нет никакого. Даже UDF легко может открыть TCP IP Server Port если на забанят админы. Что там будет разузнать гораздо сложнее, а пользы гораздо больше. Хотя обходимся и без этого, вообще без алертеров.  
 

Цитата:
приложению надо знать параметры доступа к базе данных и точные тексты собственно сообщений.

Угу...

Всего записей: 1395 | Зарегистр. 25-06-2007 | Отправлено: 10:08 10-07-2012 | Исправлено: delover, 20:09 26-07-2012
miwa

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
delover
Блин, это определенно талант. Так много написать, включая цитатами мои сообщения, и при этом ничего не сказать по обсуждаемой теме... Талантище.
 
Вы, случаем, политикой на досуге не занимаетесь?

Всего записей: 455 | Зарегистр. 10-10-2004 | Отправлено: 18:24 10-07-2012
delover

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
miwa
Извините, я вообще понял что не уловил начало темы, по этому отвечал на то что вижу. Не сказал ничего - жаль, я естественно не в обиде. Мой пост был недавно о том что Fib алертеры научились ловить любые сообщения а не те под которые подписаны. Типо алертеры стали понимать не только TForm но ещё и TForm1 и т.д. А потом была Ваша тема, сути которой я не уловил...

Всего записей: 1395 | Зарегистр. 25-06-2007 | Отправлено: 18:47 10-07-2012
AlexCoRu

BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Если мне подкинут халтурку
Сомневаюсь, что подкинут. Поэтому давай уж здесь про
Цитата:
все параметры будут известны, а мессаги окажут дополнительную помощь просто как напоминание
делись. Не закапывай свои знания.
 
Добавлено:
delover, а Вы и в самом деле считаете, что
Цитата:
Fib алертеры научились ловить любые сообщения а не те под которые подписаны
и из этого исходите во всех своих последующих умозаключениях?
 
 
 
Добавлено:
Вообще-то тема началась с моего вопроса:
Цитата:
При изменении таблицы генерируется событие (POST_EVENT), его плучают все подписавшиеся клиенты в т.ч. и тот который изменение сделал. Как можно сделать, что б клиент, сделавший изменение, сообщение не получал? На ум пришло только: отписаться, сделать изменение, подписаться.

 
 
Добавлено:
Кстати, отписаться, сделать изменение, подписаться накладок не вызывает, в смысле сообщения не теряются.

Всего записей: 911 | Зарегистр. 04-09-2003 | Отправлено: 19:00 10-07-2012 | Исправлено: AlexCoRu, 19:01 10-07-2012
miwa

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
delover

Цитата:
Извините, я вообще понял что не уловил начало темы, по этому отвечал на то что вижу.

Ну вот. А может все же стоило хотя бы в контекст вникнуть? AlexCoRu выше уже объяснил насчет начала темы, повторяться не буду, разве что напомню - вы вообще-то хотели radmin ставить чтобы видеть метания пользователя. И я привел пример с остатками. Вы тут же бросились мне рассказывать, что же такое, эти остатки, быстренько «не уловив» свои же слова об radmin и меседжах.
Мда.  
 

Цитата:
Не сказал ничего - жаль, я естественно не в обиде.  

«Ничего не сказал» - это вообще-то флуд, и он запрещен правилами форума. Потому что в обиде могут быть те, кто сюда приходит пообщаться на интересные ему технические темы, а не читать излияния мыслей человека, который даже не соизволил уловить, о чем тут общаются.
 

Цитата:
Мой пост был недавно о том что Fib алертеры научились ловить любые сообщения а не те под которые подписаны

И вам тут же ответили, что это ложь; после чего более квалифицированные люди обсуждали тему алертов и возможности рассылки сообщений средствами ФБ.

Всего записей: 455 | Зарегистр. 10-10-2004 | Отправлено: 09:52 11-07-2012
delover

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
miwa
Не хотел отвечать сейчас. Ммда. Жаль вы не заметили как миллион евро стал дешевле копейки.
 
AlexCoRu

Цитата:
Кстати, отписаться, сделать изменение,

Прошу не надо меня убивать морально, сто раз убивали. Шутка. Знаю - тяжела и неказиста...  
 

Цитата:
а Вы и в самом деле считаете, что
Цитата:
Fib алертеры научились ловить любые сообщения а не те под которые подписаны

Да считаю, как пророк который увидел то что произойдёт через тысячу лет. Шутка.
 
(удалено правообладателем)
 

Цитата:
delover, а Вы и в самом деле считаете, что

Своим умом фибы больше чем сервер созрели...
 
Добавлено:
miwa
Теперь моя непонятная фраза про первый уровень транзакций. Это обычные таблички с приставкой TMP. Реальный TMP который уже сделали о котором я мечтал, я даже не видел. Я так же мечтаю найти время и научиться использовать механизм тэмповых таблиц. Но пока чистим сами и не всегда правильно.  
 

Цитата:
И вам тут же ответили, что это ложь;

Фантазии и стёб уже научились называть ложью без критики снизу?
 

Цитата:
быстренько «не уловив» свои же слова об radmin и меседжах.

Ну торможу, я же сказал что не в обиде. Вы привыкли на форуме видеть только молодёж, я по Вашим меркам старик. Тут только следующий абзац который топором не вырубить.
 
 
 
Ктото скажет что общая память DLL это не сложная тема, всё едино EXE DLL и BMP. Правильное утверждение, но я бы в другую сторону хотел мысль продвинуть. Я настолько привык, что мне было бы удобнее вместо шаремем использовать Embeded, чей бы вы думали? Ну теперь всё тупо.
 
create procedure DrobAllTables_AndAlertMessage
rdb for select...
post_event TForm
 
create procedure DrobAllTables_AndAlertMessageEx
rdb for select...
post_event TForm1
 
Теперь, - почему фигово на душе? А потому что приложение которое я компилил когдато, - уже не работает...
 
Это для miwa который думает что Turbo Pascal который был на компьютере Роботрон знал об флоат поинт регистрах. Нет в регистрах Зилок не было таких регистров.

Всего записей: 1395 | Зарегистр. 25-06-2007 | Отправлено: 21:01 11-07-2012 | Исправлено: delover, 20:04 25-07-2012
delover

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Про квалификацию, - я даже и не видел смысла обсуждать возможность открыть порт 3052 и всё сделать самостоятельно. В реальности это не особо сложно, но изначально криво. Ай. Криво, если это будет делать я, так как сделать это я сделаю, даже компонент сделаю (хоть на винсокет хоть на tcp, хотя квалифицированные специалисты чаще всего утверждают что винсокеты сделаны на основе tcp а не наобарот), только сопровождать сделанное не буду.
 
Добавлю
Мне очень помогали алертеры в своё время, давно, когда я ещё не знал других стилей строить приложения. Но потом узнал и уже долгое время не связываюсь с алертерами. Я даже не помню синтаксис как их вызывать. В общем нет надобности вообще. Это уже если Вам нужно, а у нас просто была речь с сотрудником, опять вспомнить молодость, мы подумали - и отказались.
 
Ну и закрываю свой вопрос
Никто же не отменял самый очевидный способ слать любые сообщения - такой - есть таблица сообщений где около 50 полей на каждый домен, а сообщение шлётся одно - обновилося табличка сообщений.

Всего записей: 1395 | Зарегистр. 25-06-2007 | Отправлено: 07:32 12-07-2012 | Исправлено: delover, 09:51 12-07-2012
AlexCoRu

BANNED
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
delover

Цитата:
Фантазии и стёб уже научились называть ложью без критики снизу?
И над кем стебёшся?

Всего записей: 911 | Зарегистр. 04-09-2003 | Отправлено: 10:44 12-07-2012
miwa

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
delover

Цитата:
Вы привыкли на форуме видеть только молодёж, я по Вашим меркам старик.  

По моим меркам вы - учащийся старшых классов весьма средней школы, уж простите за прямоту. Не можете толком выразить ни ону мысль, прыгаете с темы на тему без какой-либо связи и предпосылок; если иногда проговариваетесь о чем-то на технические темы, ушы полного непонимания торчат изо всех щелей и так далее.
 
Вот примеры ниже
 

Цитата:
 Жаль вы не заметили как миллион евро стал дешевле копейки.


Цитата:
Сори тема лукопов связана всегда с падениями самолётов в странах третьего мира


Цитата:
Это для miwa который думает что Turbo Pascal который был на компьютере Роботрон знал об флоат поинт регистрах. Нет в регистрах Зилок не было таких регистров.  

 
При чем тут регистры роботрона, самолеты третьего мира и милилоны евро?
 

Цитата:
create procedure DrobAllTables_AndAlertMessage  
rdb for select...  
post_event TForm  
 

А этот «псевдокод» не имеет ни малейшего смысла, как его не верти.

Всего записей: 455 | Зарегистр. 10-10-2004 | Отправлено: 11:00 12-07-2012
Maximus777

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Люди добрые, помогите советом. Вопрос может сильно чайниковский, но уж простите, срочно надо. Можно ли в запрос:

Код:
INSERT трали-вали ...

включить имя пользователя, который этот запрос посылает? И если да, то как это выглядит?

Всего записей: 674 | Зарегистр. 27-07-2007 | Отправлено: 13:57 12-07-2012 | Исправлено: Maximus777, 13:57 12-07-2012
miwa

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Maximus777
Нельзя.  
Для того, чтобы на стороне сервера узнать, кто выполняет конкретный запрос, надо использовать контекстные переменные, среди которых есть CURRENT_USER:
 
insert into talbename (f1, f2, f_user) values ('трали', 'вали', (select current_user from rdb$database))
 

Всего записей: 455 | Зарегистр. 10-10-2004 | Отправлено: 15:11 12-07-2012
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » InterBase и FireBird: вопросы по работе и их решение


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru