Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Работа с Defined Function MS SQL в MS Access  [new]
Шкинев А.В.
Member

Откуда:
Сообщений: 29
Добрый день.
На MS SQL создана User Defined Function, содержащая несколько параметров и возвращающая таблицу.
В MS Access создан adp проект, в котором нужно вывести на экран таблицу, возвращаемую этой функцией в виде таблицы.
В момент вызова функции все параметры известны.
В проекте пишу код
stDocName = "Zakaz"
DoCmd.OpenFunction stDocName, acViewNormal, acEdit
При выполнение возникает окно для ввода параметров, что не устраивает, но после этого таблица отображается.
Нашел еще один вариант с использование Stored Procedures. Создал Stored Procedures: Proba, в ней перечислил параметры и сделал вызов функции
CREATE PROCEDURE [dbo].[proba] 
	@ZSclad VarChar(6),
	@ZGrup VarChar(5),
	@ZPeriod Decimal(16,2),
	@ZPostavka Decimal(16,2)
AS
Select * from dbo.Zakaz (@ZSclad,@ZGrup,'06/01/05','01/01/05',@ZPeriod,@ZPostavka)
GO
В проекте вызываю ее:
CurrentProject.Connection.Execute ("dbo.Proba @ZSclad='111',@ZGrup='00440',@ZPeriod=14,@ZPostavka=7")
В этом случае что-то происходит, но на экран ничего не выводится.

Подскажите в чем может быть ошибка или как лучше это реализовать..
1 июн 05, 04:05    [1586395]     Ответить | Цитировать Сообщить модератору
 Re: Работа с Defined Function MS SQL в MS Access  [new]
@ndrey
Member

Откуда: Novosibirsk
Сообщений: 343
CREATE PROCEDURE [dbo].[proba] 
	@ZSclad VarChar(6),
	@ZGrup VarChar(5),
	@ZPeriod Decimal(16,2),
	@ZPostavka Decimal(16,2)
AS
Set nocount ON
Select * from dbo.Zakaz (@ZSclad,@ZGrup,'06/01/05','01/01/05',@ZPeriod,@ZPostavka)
Set nocount OFF
GO
А так?
1 июн 05, 06:51    [1586438]     Ответить | Цитировать Сообщить модератору
 Re: Работа с Defined Function MS SQL в MS Access  [new]
@ndrey
Member

Откуда: Novosibirsk
Сообщений: 343
автор
При выполнение возникает окно для ввода параметров, что не устраивает

А почему бы вместо:
автор
stDocName = "Zakaz"
DoCmd.OpenFunction stDocName, acViewNormal, acEdit

Не использовать:
CurrentProject.Connection.Execute ("Select * from dbo.Zakaz ('" & ZSclad & "','" & ZGrup & "','06/01/05','01/01/05'," & ZPeriod & "," & ZPostavka &")")
1 июн 05, 06:58    [1586445]     Ответить | Цитировать Сообщить модератору
 Re: Работа с Defined Function MS SQL в MS Access  [new]
Шкинев А.В.
Member

Откуда:
Сообщений: 29
Можно сказать вопрос снят. Я создал табличную форму, сделал процедуру на открытие, в которой прописываю источник данных в виде
Select * from dbo.Zakaz ('" & ZSclad & "','" & ZGrup & "','06/01/05','01/01/05'," & ZPeriod & "," & ZPostavka &")
И после этого все заработало.
1 июн 05, 08:09    [1586497]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить