Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / ADP:Форма журнала без ХП / 25 сообщений из 26, страница 1 из 2
28.01.2004, 15:04
    #32390934
Shark
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADP:Форма журнала без ХП
Без бейсика внутри формы.
Можно в ADP сделать форму с параметрами, не используя хранимую процедуру. Что нибудь типа:
RecordSource: select blablabla where fDate<@Param1
InputParameters:@param1 smaldatetime=МоякрутаяФункция()
Понятно,что
RecordSource: MyCoolProc
InputParameters:@param1 smaldatetime=МоякрутаяФункция()
работает
...
Рейтинг: 0 / 0
28.01.2004, 15:09
    #32390953
АлексейК
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADP:Форма журнала без ХП
вроде как то так:

RecordSource: select blablabla where fDate<?
InputParameters:?=МоякрутаяФункция()

только зачем если твоя крутая функция может заменять сам RecordSource целиком
...
Рейтинг: 0 / 0
28.01.2004, 15:25
    #32391007
Shark
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADP:Форма журнала без ХП
Так не работает. Эта собака выдает диалоговое окошко с "МояКрутаяФункция()".

Я не хочу целиком. Я хочу, чтоб без бейсика было понятно, откуда берутся записи.
...
Рейтинг: 0 / 0
28.01.2004, 15:27
    #32391013
АлексейК
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADP:Форма журнала без ХП
а твоя функция чем не бейсик?
...
Рейтинг: 0 / 0
28.01.2004, 15:30
    #32391016
Shark
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADP:Форма журнала без ХП
ЭЭЭЭ

Одно дело,она дату вернет, которую перед вызовом формы установили, другое- захреначит динамический SQL, который отлаживать неудобно и тд и тп. Хачу, блин.
Нельзя так нельзя, продолжу шлепать хапешки:-(
...
Рейтинг: 0 / 0
28.01.2004, 15:30
    #32391019
incold
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADP:Форма журнала без ХП
RecordSource: select blablabla where fDate<?
InputParameters:@param1 smaldatetime=МоякрутаяФункция()

МояКрутаяФункция() - должна быть в отдельном модуле и объявлена как Public
...
Рейтинг: 0 / 0
28.01.2004, 15:41
    #32391052
Shark
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADP:Форма журнала без ХП
>incold
обижаешь...:-)
Я же написал, для хапешки работает.
...
Рейтинг: 0 / 0
28.01.2004, 15:50
    #32391068
incold
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADP:Форма журнала без ХП
А кто вот это написал?
Так не работает. Эта собака выдает диалоговое окошко с "МояКрутаяФункция()".

АлексейК подсказал так InputParameters:?=МоякрутаяФункция()
Там стоит вопросик - вот и выдается диалоговое окно.
...
Рейтинг: 0 / 0
28.01.2004, 16:35
    #32391180
Shark
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADP:Форма журнала без ХП
>А кто вот это написал?
>Так не работает. Эта собака выдает диалоговое окошко с "МояКрутаяФункция()".

>АлексейК подсказал так InputParameters:?=МоякрутаяФункция()
>Там стоит вопросик - вот и выдается диалоговое окно.

Ни слова не понял. Я пробовал РАЗНЫЕ варианты. В их числе оба приведенные вами обоими. Если ты знаешь работающий вариант- в студию. Если нет - тоже хорошо:-)
...
Рейтинг: 0 / 0
28.01.2004, 17:25
    #32391322
incold
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADP:Форма журнала без ХП
сегодня, 15:30 [511032]

Рабочий код, по крайней мере у меня работает
...
Рейтинг: 0 / 0
29.01.2004, 07:17
    #32391697
Shark
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADP:Форма журнала без ХП
>incold
Напечатай, пожалуйста, полностью свойства. У меня если

recordsource:Select * From t2Trip where fDate<?
InputParameters:pDate smalldatetime=fnDateTo()

,то диалоговое окошко с fnDateTo(), а если

Recordsource:Select * From t2Trip where fDate<?
InputParameters:@pDate smalldatetime=fnDateTo()

,то открывается диалоговое окошко без подписи а после него вываливается в конструктор без сообщений
fnDateTo- публичная функция в несвязанном модуле, которая чудесно работает в окне отладки.
...
Рейтинг: 0 / 0
29.01.2004, 10:43
    #32391898
incold
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADP:Форма журнала без ХП
2 Shark

Сорри за дезу. Немного не такой у меня код.
На этой же форме есть поле (можно скрытое),
у которого источник
v_param= fnDateTo()

Тогда
Recordsource:Select * From t2Trip where fDate<?
InputParameters:@pDate smalldatetime=Forms!myform!v_param

Это в отчетах в InputParameters напрямую можно использовать функции.
А в формах либо через поля, либо в источнике ХП.
...
Рейтинг: 0 / 0
29.01.2004, 11:14
    #32391974
Shark
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADP:Форма журнала без ХП
Спасибо, попробую. А другой формы можно поле?
...
Рейтинг: 0 / 0
29.01.2004, 11:32
    #32392025
incold
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADP:Форма журнала без ХП
Другой формы даже лучше.
Потому как источник формы заполняется раньше чем источник поля, из-за чего после открытия формы нужно еще раз выполнять Requery.
...
Рейтинг: 0 / 0
29.01.2004, 12:37
    #32392178
Shark
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADP:Форма журнала без ХП
>incold

Ты меня снова пытался обмануть:-). С собакой не работает. Зато без собаки ПАШЕТ.

Как-то всеж коряво городить специальную форму для передачи параметров. И как передавать разные параметры для разных форм одновременно? Короче, некоторый геморрой. А нельзя как-нибудь без формы? Modules!blablabla или что-нибудь в этом духе?:-)
...
Рейтинг: 0 / 0
29.01.2004, 12:58
    #32392212
incold
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADP:Форма журнала без ХП
Ты лучше скажи чего хочешь сделать.
...
Рейтинг: 0 / 0
29.01.2004, 13:59
    #32392337
Shark
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADP:Форма журнала без ХП
Со слова здравствуйте:-)
Я хочу, чтобы у меня работал примерно такой код
fnSetParam "Форма1_Парам1","Значение1"
fnSetParam "Форма1_Парам2","Значение2"
DoCmd.OpenForm "Форма1"

И чтоб она у меня открылась с этими параметрами.
Счас у меня есть массивчик с параметрами, куда fnSetParam() пишет, а fnGetParam читает.

и всеб хорошо, только я задолбался на каждую форму рисовать хранимую процедуру. МНОГО процедур получается, блин. Дай, думаю, прям SQL в recordsource попробую затолкать.

И все получилось, только наличие формы для параметров мне немножко не нравится.

Целая исповедь:-)
Сам напросился:-)
...
Рейтинг: 0 / 0
29.01.2004, 14:32
    #32392393
incold
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADP:Форма журнала без ХП
имхо.
в таком случае проще будет написать функцию формирования источника

Как вариант
В форме в источник оставляешь пустой, а строку источника пишешь в Tag
В функции:
- открываешь форму (невидимую)
- формируешь строку InputParameters (из массива, или еще как-то)
- ставишь источник из Tag-а в RecordSource - при этом произойдет обновление данных
- делаешь форму видимой.
...
Рейтинг: 0 / 0
29.01.2004, 15:32
    #32392498
Shark
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADP:Форма журнала без ХП
Мы друг друга плохо понимай.
Если писать бейсик про формирование набора записей, проще всего в этом бейсике состряпать рекордсет и одеть его на форму. В том то и прикол, что мне хотелось бы, чтоб работало без бейсика, в конструкторе формы были поля, было видно набор записей и чтоб все было понятно.
...
Рейтинг: 0 / 0
29.01.2004, 15:55
    #32392537
incold
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADP:Форма журнала без ХП
Ага, ну наконец-то выяснили чего нужно.

Тогда или делать параметры на каждой форме (с учетом особенностей о которых я говорил), или держать всегда одну форму параметров для всех форм.

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

Других идей пока нет.
...
Рейтинг: 0 / 0
29.01.2004, 16:22
    #32392571
Shark
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADP:Форма журнала без ХП
Я тоже подумал про великую и ужасную невидимую форму параметров, где живут сотни динамически добавленных полей. Тошнит меня от этой формы ничуть не меньше, чем от сотен ХП или от динамического SQL на открытие. Блин, создавать CONTROL с миллионом методов и свойств для того, чтоб передать константу.
Кстати, а к просто свойству этой формы нельзя обратится? Счас попробую блин.

Чтоб я еще раз взялся ваять на эксес...
...
Рейтинг: 0 / 0
29.01.2004, 16:24
    #32392578
incold
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADP:Форма журнала без ХП
Кстати, а к просто свойству этой формы нельзя обратится? Счас попробую блин

Это о чем?
...
Рейтинг: 0 / 0
29.01.2004, 16:28
    #32392585
Shark
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADP:Форма журнала без ХП
Ну написать просто в форме
Public p1 as date

А потом юзать Forms!myForm!p1
...
Рейтинг: 0 / 0
29.01.2004, 16:37
    #32392599
Shark
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADP:Форма журнала без ХП
Пашет.
Только надо писать точку:
Forms!myForm.p1
...
Рейтинг: 0 / 0
30.01.2004, 08:31
    #32393036
Shark
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADP:Форма журнала без ХП
Резюме.
Не понравился мне синтаксис с вопросиками. А вдруг у меня параметр дважды используется. И вообще использовать форму для передачи параметров как то неправильно. И, наверное, Access наверняка перепутает эти вопросики.И решил я записывать параметры предварительно куда-нибудь на сервер, чтоб мои SQL выражения были без параметров. Конечно плохо, что мне приходится отправлять N команд на сервер вместо одной, но я решил, что лучше сэкономлю свои мозги, чем компьютерные:-)
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / ADP:Форма журнала без ХП / 25 сообщений из 26, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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