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

Вниз

Хранимая процедура   Найти похожие ветки 

 
kostet   (2005-09-30 11:54) [0]

Доброго всем времени суток! Вопрос такой, хранимая процедура возвращает некоторые данные в клиент. Здесь их нужно обработать по событию прихода данных из хранимой процедуры на сервере. Используется компонент ADOStoredProc. На какое событие нужно повесить обработку данных. По идее на событие возврата данных. Но такого события у ADOStoredProc нет. Может ещё какое событие можно использовать. Если нет, то может можно как-то написать слушатель...


 
ANB ©   (2005-09-30 12:00) [1]


> Вопрос такой, хранимая процедура возвращает некоторые данные
> в клиент.
- в виде дейтасета ? Синхронно по времени через ADO не получится, пока вся ХП не отработает.


 
Val ©   (2005-09-30 12:19) [2]

Проблема не ясна. Процедура возвращает сформированный набор данных, т.е. к ним можно обращаться после выполнения процедуры.


 
ANB ©   (2005-09-30 12:24) [3]

Можно попробовать через DBLIB, но много писать и результат не гарантирован. А через QA синхронно приезжают ?


 
Nikolay M. ©   (2005-09-30 12:40) [4]

Вопрос по аналогии: какое событие использовать для отлова окончания работы функции извлечения квадратного корня?

ПС
Тема асинхронности выполнения запроса не раскрыта.


 
Sergey13 ©   (2005-09-30 12:50) [5]

Я может чего не понимаю (с АДО не работал), но наверное у ADOStoredProc тоже есть метод Open (раз что-то возврашается). Наверное после него и можно обрабатывать.


 
Os ©   (2005-09-30 13:45) [6]

А почему нельзя использовать ADOQuery и запрос Select


 
Fay ©   (2005-09-30 17:06) [7]

2 Os ©   (30.09.05 13:45) [6]
Дело в том, что речь, как Вы заметили, идёт не о IB, а о MSSQL.

2 kostet   (30.09.05 11:54)
См. [5]


 
AlexWlad ©   (2005-09-30 19:42) [8]

Что такое "некоторые данные"? Если несколько значений переменных - то можно через OUTPUT-параметры. Если рекордсет - то кто запрещает пользовать Open?


 
kostet   (2005-10-01 21:26) [9]

Функция может возвращать одно единственное число-идентификатор или набор данных не суть важно. А запрос нельзя использовать потому что этот идентификатор приходит из другой программы, точнее кассы. Архитектура такая: есть две программы работающие с одной базой (вернее одна работает с ней постоянно, а другая через хранимую процедуру посылает второй программе необходимые данные, т.к. сама с базой на прямую работать не  может, для этого и была написана процедура на стороне сервера.) Дело в том, что обработка данных очень сложна, и функцианальности языка transact sql не хватает, поэтому решено написать обработку в отдельной программе, которая бы принимала данные с сервера. Ну а чтобы зря не пропадала процедура она параллельно делает выборку данных, который потом отображается в DBGrid.


 
Danilka ©   (2005-10-03 09:00) [10]

kostet   (01.10.05 21:26)
вернее одна работает с ней постоянно, а другая через хранимую процедуру посылает второй программе необходимые данные, т.к. сама с базой на прямую работать не  может, для этого и была написана процедура на стороне сервера.

Брр. объясни, плиз, на пальцах, а то мозгов понять не хватает.
1. какая не может работать с базой, та, которая работает с ней постоянно, или вторая, которая получает данные через "хранимую процедуру"?
2. как именно вторая получает данные через хранимую процедуру?

Дело в том, что обработка данных очень сложна, и функцианальности языка transact sql не хватает

Думаю, ты ошибаешься. При работе с кассами и прочее функциональности tsql не будет хватать только в одном случае - когда данных, необходимых для расчетов нет на сервере.


 
ANB ©   (2005-10-03 10:37) [11]


> функцианальности языка transact sql
- быть такого не могет. Язык, конечно, слегка птичий, но все, что нужно программисту в нем реализовано. Выкладывай, что не получалось на нем написать - подскажем как это сделать на T-SQL.
Имхо - такая связка - жуткий геморр. И очень неустойчиво будет.



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

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

Наверх




Память: 0.47 MB
Время: 0.037 c
14-1129964896
_WWW
2005-10-22 11:08
2005.11.13
Помогите разобраться


2-1130246477
syte_ser78
2005-10-25 17:21
2005.11.13
table.active


4-1126619198
Erik1
2005-09-13 17:46
2005.11.13
Как получить статус процесса?


14-1130129703
Ega23
2005-10-24 08:55
2005.11.13
С днем рождения! 24 октября


4-1124876130
Scordion
2005-08-24 13:35
2005.11.13
Как сделать форму поверх всех приложений?





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский