powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Подскажите, как работает Retrieve(argument)
7 сообщений из 7, страница 1 из 1
Подскажите, как работает Retrieve(argument)
    #36554688
Guf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PB 6.5 build 1326
Microsoft SQL Server 2000 - 8.00.2039 (Intel X86)

Создал user object с кнопкой и DW. DW завязано на процедуру с параметрами.
На clicked кнопки написал:
Код: plaintext
1.
dw.Retrieve("28.03.2010", "28.03.2010")
смотрю профайлер, он говорит:
Код: plaintext
1.
execute dbo.my_proc; 1  @date_db=null, @date_de=null
Почему?
...
Рейтинг: 0 / 0
Подскажите, как работает Retrieve(argument)
    #36554819
pand
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
GufPB 6.5 build 1326
Microsoft SQL Server 2000 - 8.00.2039 (Intel X86)

Создал user object с кнопкой и DW. DW завязано на процедуру с параметрами.
На clicked кнопки написал:
Код: plaintext
1.
dw.Retrieve("28.03.2010", "28.03.2010")
смотрю профайлер, он говорит:
Код: plaintext
1.
execute dbo.my_proc; 1  @date_db=null, @date_de=null
Почему?
Ты передаешь в запрос строковые параметры
а процедура , судя по названиям переменных, ждет даты
попробуй
dw.Retrieve(2010-03-08, 2010-03-08)
...
Рейтинг: 0 / 0
Подскажите, как работает Retrieve(argument)
    #36554833
AIS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Guf ,
а форматы параметров совпадают?
т.е. argument в кавычках - это текст, а у Вас в DW может быть - дата.
...
Рейтинг: 0 / 0
Подскажите, как работает Retrieve(argument)
    #36554872
Guf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не-не-не.
Процедура ждет именно строки, а уже внутри себя делает прывильный конверт.
Заменил в DW:
Код: plaintext
1.
execute dbo.my_proc; 1  @date_db = :date_db, @date_de = :date_de
На
Код: plaintext
1.
2.
3.
SELECT field1, field2, ... , fieldN
FROM my_table
WHERE date_field BETWEEN CONVERT(DATETIME, :date_db,  104 ) AND CONVERT(DATETIME, :date_de,  104 )
Отработало нормально. Получил тот вид, что хотел. И профайлер показал
Код: plaintext
1.
2.
3.
SELECT field1, field2, ... , fieldN
FROM my_table
WHERE date_field BETWEEN CONVERT(DATETIME, '28.03.2010',  104 ) AND CONVERT(DATETIME, '28.03.2010',  104 )
Но мне нужна именно процедура . Какие будут идеи?
...
Рейтинг: 0 / 0
Подскажите, как работает Retrieve(argument)
    #36555013
Локшин Марк
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Guf
Но мне нужна именно процедура . Какие будут идеи?
А DataWindow на основании какого источника было сделано? SQL Select или Stored Procedure?
...
Рейтинг: 0 / 0
Подскажите, как работает Retrieve(argument)
    #36555115
Guf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Локшин Марк,

*Посыпаю голову пепелом* Ты абсолютно прав.

Позже еще спрошу, как вызвать процедуру на каждую строку из ДВ. Но сначала сам помучаюсь :)
...
Рейтинг: 0 / 0
Подскажите, как работает Retrieve(argument)
    #36556332
Фотография spas2001
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Аргументы как объявил при вызове процедуры в DW?
-----------------------------------------------------------------------------
Главная деталь любой машины - голова ее владельца
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / Подскажите, как работает Retrieve(argument)
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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