powered by simpleCommunicator - 2.0.41     © 2025 Programmizd 02
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как назначить формат числа при вызове процедуры?
17 сообщений из 67, страница 3 из 3
Как назначить формат числа при вызове процедуры?
    #33027861
Ольга_Т
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlexeiKа где тогда в вашей процедуре объявление выходного параметра?
мож все таки код сюда и код сп тоже. а то вы создаете какие-то тупиковые ситуации,мне так кажеться. Было опущено за очевидностью.
Вот так все работает:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
    cnn.Open
    
    Set cmd.ActiveConnection = cnn
    cmd.CommandText = "MakeInvNP_new"
    cmd.CommandType = adCmdStoredProc
  
    Set prm = cmd.CreateParameter("Return", adInteger, adParamReturnValue)
    cmd.Parameters.Append prm
    Set prm = cmd.CreateParameter("pDepID", adInteger, adParamInput, adEmpty, pDepID)
    cmd.Parameters.Append prm
    Set prm = cmd.CreateParameter("pInvTypeID", adInteger, adParamInput, adEmpty, pInvTypeID)
    cmd.Parameters.Append prm
    Set prm = cmd.CreateParameter("pStoreID", adInteger, adParamInput, adEmpty, varStoreID)
    cmd.Parameters.Append prm
    Set prm = cmd.CreateParameter("AlongOperationID", adDouble, adParamInput, adEmpty, varAlongOperationID)
    cmd.Parameters.Append prm
    cmd.Execute
Причем, что писать в кавычках, совершенно неважно.
...
Рейтинг: 0 / 0
Как назначить формат числа при вызове процедуры?
    #33027874
Ольга_Т
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Лох Позорный Ольга_ТПохоже, SQL'ю глубоко по барабану, с каким именем идет параметр из mdb, он их принимает по типу и по порядку.
Угу. По крайней мере в старых версиях ADO так и было. Кстати, а ADODB какое используется?"У вас мигрень бывает?" - "Ах, у нас никто не бывает!"
Понятия не имею. Первый раз слышу, что там есть версии)))
...
Рейтинг: 0 / 0
Как назначить формат числа при вызове процедуры?
    #33027908
(c)VIG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ольга_ТПохоже, SQL'ю глубоко по барабану, с каким именем идет параметр из mdb, он их принимает по типу и по порядку.
Это Вам так кажется :)
И происходит это именно потому, что имена ваших параметров в АДО не соответствуют именам в ХП
...
Рейтинг: 0 / 0
Как назначить формат числа при вызове процедуры?
    #33027915
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
(c)VIG Ольга_ТПохоже, SQL'ю глубоко по барабану, с каким именем идет параметр из mdb, он их принимает по типу и по порядку.
Это Вам так кажется :)
И происходит это именно потому, что имена ваших параметров в АДО не соответствуют именам в ХП
Нет, VIG, ты не прав.
...
Рейтинг: 0 / 0
Как назначить формат числа при вызове процедуры?
    #33027932
(c)VIG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Лох Позорный (c)VIG Ольга_ТПохоже, SQL'ю глубоко по барабану, с каким именем идет параметр из mdb, он их принимает по типу и по порядку.
Это Вам так кажется :)
И происходит это именно потому, что имена ваших параметров в АДО не соответствуют именам в ХП
Нет, VIG, ты не прав.
Ну, незнаю. Может быть у меня АДО неправильный
...
Рейтинг: 0 / 0
Как назначить формат числа при вызове процедуры?
    #33027955
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
(c)VIGНу, незнаю. Может быть у меня АДО неправильный
Код: plaintext
1.
2.
CREATE PROCEDURE dbo.sp1 (@prm1 int, @prm2 int)
AS 
SELECT @prm1 AS Expr1
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
Public Function test()
    Dim cmd As ADODB.Command
    Set cmd = New ADODB.Command
    Set cmd.ActiveConnection = CurrentProject.Connection
    cmd.CommandText = "sp1"
    cmd.CommandType = adCmdStoredProc

    ' Меняем следующие две строчки местами и смотрим на результат
    cmd.Parameters.Append cmd.CreateParameter("@prm1", adInteger, adParamInput,  4 ,  1 )
    cmd.Parameters.Append cmd.CreateParameter("@prm2", adInteger, adParamInput,  4 ,  2 )

    Debug.Print cmd.Execute()( 0 )

End Function
...
Рейтинг: 0 / 0
Как назначить формат числа при вызове процедуры?
    #33028101
(c)VIG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И все-таки она вертится!
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
Public Function test()
    Dim cmd As ADODB.Command
    Set cmd = New ADODB.Command
    Set cmd.ActiveConnection = CurrentProject.Connection
    cmd.CommandText = "sp1"
    cmd.CommandType = adCmdStoredProc
    cmd.NamedParameters = True

    ' Меняем следующие две строчки местами и смотрим на результат
  
cmd.Parameters.Append cmd.CreateParameter("@prm1", adInteger, adParamInput,  4 ,  1 )
    cmd.Parameters.Append cmd.CreateParameter("@prm2", adInteger, adParamInput,  4 ,  2 )

    Debug.Print cmd.Execute()( 0 )

End Function
...
Рейтинг: 0 / 0
Как назначить формат числа при вызове процедуры?
    #33028143
AlexeiK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
adEmpty=0 а надо указать размер в байтах adInteger вот этого типа данных.
integer занимает 4 байта, и указать надо 4. или лучше опустить параметр, ADO сама все прекрасно знает и без вашей помощи :)
в кавычках писать надо имя параметра это факт.

хоорошо допишу через refresh....
..........
cmd.execute
debug.print cmd.parametrs("return_value")

вот в этом параметре через refresh возвращаеться RETURN из СП.
...
Рейтинг: 0 / 0
Как назначить формат числа при вызове процедуры?
    #33028153
ЛП
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
(c)VIGИ все-таки она вертится!
Код: plaintext
1.
    cmd.NamedParameters = True

Ну я же не зря упомянул про версии
Сиё св-во только начиная с 2.6 появилось
...
Рейтинг: 0 / 0
Как назначить формат числа при вызове процедуры?
    #33028170
(c)VIG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ЛП (c)VIGИ все-таки она вертится!
Код: plaintext
1.
    cmd.NamedParameters = True

Ну я же не зря упомянул про версии
Сиё св-во только начиная с 2.6 появилось
Ну я же сказал что у меня АДО неправильный :)
А что, есть ниже?
...
Рейтинг: 0 / 0
Как назначить формат числа при вызове процедуры?
    #33028619
Ольга_Т
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это значит, у меня ниже?
...
Рейтинг: 0 / 0
Как назначить формат числа при вызове процедуры?
    #33028659
ЛП
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ольга_ТЭто значит, у меня ниже?
Угу.
Вообще аксес начиная с 2002-го по умолчанию версию 2.5 цепляет. Но это тоже не лечит, потому как лучше 2.8 использовать.
...
Рейтинг: 0 / 0
Как назначить формат числа при вызове процедуры?
    #33028675
ддд
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
авторЭто значит, у меня ниже?

не значит.
эта линейка отмеряет не высоту, а уровень (совместимости).

Вы можете узнать, какая у вас на самом деле версия,
спросив об этом объект Connection.

Dim cNN as ADODB.Connection
Set cNN = NEW ADODB.Connection

Debug.Print cNN.Version
...
Рейтинг: 0 / 0
Как назначить формат числа при вызове процедуры?
    #33028681
ддд
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ЛП Ольга_ТЭто значит, у меня ниже?
Угу.
Вообще аксес начиная с 2002-го по умолчанию версию 2.5 цепляет. Но это тоже не лечит, потому как лучше 2.8 использовать.
что угу и кто кого не лечит?
...
Рейтинг: 0 / 0
Как назначить формат числа при вызове процедуры?
    #33028691
ЛП
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 ддд
не значит.
эта линейка отмеряет не высоту, а уровень (совместимости).

Да, был неправ.
...
Рейтинг: 0 / 0
Как назначить формат числа при вызове процедуры?
    #33028708
ддд
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ЛП2 ддд
не значит.
эта линейка отмеряет не высоту, а уровень (совместимости).

Да, был неправ.
:))
вот доложьте нам теперь - хто такой варварский код и почему случай не тот?

:)
...
Рейтинг: 0 / 0
Как назначить формат числа при вызове процедуры?
    #33028720
ЛП
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
не понял?
...
Рейтинг: 0 / 0
17 сообщений из 67, страница 3 из 3
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как назначить формат числа при вызове процедуры?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]