|
|
|
Recordset глючит
|
|||
|---|---|---|---|
|
#18+
Set rst = CurrentDb.OpenRecordset("RealizationPay") возвращает ошибку 3061. Слишком мало параметров. Требуется 3. Я всегда заполнял 2 переметра (хотя обязательный один). ПОМОГИТЕ.... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2004, 12:57:17 |
|
||
|
Recordset глючит
|
|||
|---|---|---|---|
|
#18+
RealizationPay - это таблица, запрос? Что это? Если запрос, то требует ли он параметры из функции или из формы? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2004, 12:59:41 |
|
||
|
Recordset глючит
|
|||
|---|---|---|---|
|
#18+
Это запрос, параметры из формы он требует (даты с и по ), форма открыта. Хотя я пробовал и через VBA (типа запрос.parameters... и так далее). Одна фигня. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2004, 13:02:57 |
|
||
|
Recordset глючит
|
|||
|---|---|---|---|
|
#18+
S. FedorenkoЭто запрос, параметры из формы он требует (даты с и по ), форма открыта. Хотя я пробовал и через VBA (типа запрос.parameters... и так далее). Одна фигня. Фигня искать на конфе ответ без текстов запросов! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2004, 13:04:58 |
|
||
|
Recordset глючит
|
|||
|---|---|---|---|
|
#18+
Запрос в студию. Знатоки посмотрят на него орлиным взором ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2004, 13:05:44 |
|
||
|
Recordset глючит
|
|||
|---|---|---|---|
|
#18+
Т.е. если при открытой форме запускаем запрос, то данные он возвращает? А если пытаемся по нему открыть рекордсет (при открытой форме), то данные не получаем? Dim rs As Recordset Dim db As Database Set db = CurrentDb Set rs = db.OpenRecordset("RealizationPay") ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2004, 13:05:58 |
|
||
|
Recordset глючит
|
|||
|---|---|---|---|
|
#18+
я думаю, надо зайти в ссылки и проверить галку напротив DAO ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2004, 13:09:28 |
|
||
|
Recordset глючит
|
|||
|---|---|---|---|
|
#18+
HummerТ.е. если при открытой форме запускаем запрос, то данные он возвращает? А если пытаемся по нему открыть рекордсет (при открытой форме), то данные не получаем? Dim rs As Recordset Dim db As Database Set db = CurrentDb Set rs = db.OpenRecordset("RealizationPay") Именно так. Просто не желает открывать recordset Вот вам запрос: Код: plaintext 1. 2. 3. 4. Тупая байда. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2004, 13:10:01 |
|
||
|
Recordset глючит
|
|||
|---|---|---|---|
|
#18+
kedzoя думаю, надо зайти в ссылки и проверить галку напротив DAO Я не маленький мальчик. В соседней процедуре всё работает. С DAO проблем не имею ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2004, 13:11:15 |
|
||
|
Recordset глючит
|
|||
|---|---|---|---|
|
#18+
S. Fedorenko kedzoя думаю, надо зайти в ссылки и проверить галку напротив DAO Я не маленький мальчик. В соседней процедуре всё работает. С DAO проблем не имею я где-то намекал на Ваш возраст? Время? Место? у меня такая ошибка возникала, когда слетела связь с библиотекой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2004, 13:14:09 |
|
||
|
Recordset глючит
|
|||
|---|---|---|---|
|
#18+
2 S. Fedorenko Уважаемый, нормально дату передавайте в запрос, проблем не будет. Используем в запросе #. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2004, 13:14:14 |
|
||
|
Recordset глючит
|
|||
|---|---|---|---|
|
#18+
kedzo S. Fedorenko kedzoя думаю, надо зайти в ссылки и проверить галку напротив DAO Я не маленький мальчик. В соседней процедуре всё работает. С DAO проблем не имею я где-то намекал на Ваш возраст? Время? Место? у меня такая ошибка возникала, когда слетела связь с библиотекой. Прошу прощения за грубость. Я по доброму отвечал. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2004, 13:18:03 |
|
||
|
Recordset глючит
|
|||
|---|---|---|---|
|
#18+
Hummer2 S. Fedorenko Уважаемый, нормально дату передавайте в запрос, проблем не будет. Используем в запросе #. У меня в параметре отбора написано Between [Forms]![SelectRealization]![Date1] And [Forms]![SelectRealization]![Date2] а не Between #01.05.06# and #31.05.06# ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2004, 13:19:23 |
|
||
|
Recordset глючит
|
|||
|---|---|---|---|
|
#18+
выдели sql-стринг отдельно и сделай debug.print гадить может и дата и Set db = CurrentDb - лучше отвязать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2004, 13:21:24 |
|
||
|
Recordset глючит
|
|||
|---|---|---|---|
|
#18+
2 Shuhard У него про set db ничего и не написано. Я так давно писал, когда в 97 работал. Глюков не было, так что почему лучше отвязать, не очень понял. 2 S. Fedorenko Разнится интерпритация строки при выполнении запроса и открытии по нему рекордсета. Для проверки, окройте рекордсет по строке. которую привели. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2004, 13:25:30 |
|
||
|
Recordset глючит
|
|||
|---|---|---|---|
|
#18+
Hummer2 Shuhard У него про set db ничего и не написано. Я так давно писал, когда в 97 работал. Глюков не было, так что почему лучше отвязать, не очень понял. Бывают чудеса при повторном обращении к CurrentDb,писал об этом кто-то из мэтров. Я сам попадал при работе с семейством Properties-без set db не работало. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2004, 14:04:30 |
|
||
|
Recordset глючит
|
|||
|---|---|---|---|
|
#18+
А что есть MainPay. Таблица или, м.б., запрос со СВОИМИ параметрами? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2004, 15:51:16 |
|
||
|
Recordset глючит
|
|||
|---|---|---|---|
|
#18+
Акс в ркордсете требует действительные данные, а не ссылку на них. Такая конструкция будет работать: Код: plaintext 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2004, 16:20:35 |
|
||
|
Recordset глючит
|
|||
|---|---|---|---|
|
#18+
К автору топика: А если что-то типа этого попробовать Код: plaintext 1. Set rs=db.OpenRecordset("RealizationPay", dbOpenDynaset) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2004, 16:23:18 |
|
||
|
Recordset глючит
|
|||
|---|---|---|---|
|
#18+
MainPay - это таблица. Проблему я решил. Заключалась она в том, что при запуске процедуры запрос не видел (почему-то) поля Date1 и Date2 на открытой форме. Пришлось создать функцию которая возвращает в запрос значения этих поле. Код: plaintext 1. 2. 3. Я знаю, бред. Но это, единственное, что работает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2004, 16:24:38 |
|
||
|
Recordset глючит
|
|||
|---|---|---|---|
|
#18+
Если не поможет, попробуй так Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2004, 16:25:30 |
|
||
|
Recordset глючит
|
|||
|---|---|---|---|
|
#18+
Нет, дело не в параметрах openrecordset. Если я в запрос добавлю другие параметры отбора, то количество требуемых параметров в сообщениее об ошибке возрастает. Т.Е. если я отбираю по одной дате, он мне говорит: мало параметров. Требуется 1. Если отбираю по временному периоду (дата с/по), то он требует 2 параметра, и т.д. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2004, 16:30:20 |
|
||
|
Recordset глючит
|
|||
|---|---|---|---|
|
#18+
И неважно, по дате я отбираю, по целому числу (PIN - другой столбец) или по тексту. Принчипиально с параметрическим запросом не дружит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2004, 16:32:00 |
|
||
|
Recordset глючит
|
|||
|---|---|---|---|
|
#18+
S. FedorenkoИ неважно, по дате я отбираю, по целому числу (PIN - другой столбец) или по тексту. Принчипиально с параметрическим запросом не дружит. а строка через debug.print выглядет нормально и в качестве запроса(будучи сохранена) выполняется ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2004, 16:36:50 |
|
||
|
Recordset глючит
|
|||
|---|---|---|---|
|
#18+
а може справочку почитаем? Dim db As DAO.Database Dim qdf As DAO.QueryDef Dim prm As DAO.Parameter Dim rst As DAO.Recordset Set db = CurrentDb() Set qdf = db.QueryDefs("qrySomeQuery") For Each prm In qdf.Parameters prm.Value = Eval(prm.Name) Next prm Set rst = qdf.OpenRecordset(dbOpenDynaset) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2004, 16:49:19 |
|
||
|
Recordset глючит
|
|||
|---|---|---|---|
|
#18+
Shuhardвыдели sql-стринг отдельно и сделай debug.print гадить может и дата и Set db = CurrentDb - лучше отвязать Я ещё тогда проверил. Всё нормально было. Да и когда просто запрос открывал, всё показывало. Проблема - рекордсет не открывался. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2004, 16:50:40 |
|
||
|
Recordset глючит
|
|||
|---|---|---|---|
|
#18+
Еще раз повторюсь. Этот вопрос нужно выносить в ФАК. Потому что довольно часто стал повторяться. Решение все равно одно (с ищ стало 2. Только у него грамотнее) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2004, 17:33:53 |
|
||
|
Recordset глючит
|
|||
|---|---|---|---|
|
#18+
Ну раз так всё плохо - можно генерить sql строку и динамически: в строку сядут конкретные значения дат(можешь сделать формат/#). Это должно устроить-поскольку после открытия RecordSetа их изменения тебе не важны. Код: plaintext 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2004, 17:38:45 |
|
||
|
Recordset глючит
|
|||
|---|---|---|---|
|
#18+
ищ Set rst = qdf.OpenRecordset(dbOpenDynaset) Так херь ведь в том, что у меня последняя строка не работает. Зачем мне цикл? У меня 2 параметра. Код: plaintext 1. 2. 3. 4. 5. 6. Ну ни фига не работает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2004, 17:40:25 |
|
||
|
Recordset глючит
|
|||
|---|---|---|---|
|
#18+
Ларчик открывается до офигения просто: Код: plaintext 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2004, 18:51:43 |
|
||
|
Recordset глючит
|
|||
|---|---|---|---|
|
#18+
а не перебор - в ADODB уже нету! Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2004, 19:11:53 |
|
||
|
Recordset глючит
|
|||
|---|---|---|---|
|
#18+
Может быть перебор. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2004, 20:22:07 |
|
||
|
Recordset глючит
|
|||
|---|---|---|---|
|
#18+
Уж и не знаю как войти в дисскусию потише... Вот здесь задавал похожий вопрос. Т.е. пока в запрос не передаю параметры из формы, для отбора записей, все нормально... Как передал все кирдык... чего то ему (Аксу) мало :( Я конечно понимаю, руки кривые, но всеж... Будет интересно чем тут закончится :( PS S. Fedorenko прошу прощения за офтоп..., но для меня вопрос до сих пор не решен... Поправьте если не в тему... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2004, 21:17:23 |
|
||
|
Recordset глючит
|
|||
|---|---|---|---|
|
#18+
S. Fedorenko Код: plaintext 1. 2. 3. 4. 5. Ну ни фига не работает. Господа! Так сказать, здрасте. Это я со своими глупыми вопросами. Вопрос номер раз. Что значит не работает? На этот раз, как я понимаю, сообщение о недостатке параметров уже не выдается? Ну так мы в шаге от цели. Не работает, если я правильно телепячу, на этот раз только в том смысле, что работает неправильно. По этому поводу вопрос номер два. Что такое me.date1 и me.date2? Это ведь, наверно, текстбоксы, у которых отсутствует ControlSource. Таким образом, Аксесс понимает их значения как стринги, а не как даты. Где гарантия, что строка q.Parameters(0) = me.date1 занесет в параметр правильную дату? 02/03/04 - это 3 февраля или 4 марта? Надо писать что-то типа такого: q.Parameters(0) = DateSerial(Mid(me.date1, ..., ...), Mid(me.date1, ..., ...), Mid(me.date1, ..., ...)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2004, 21:31:08 |
|
||
|
Recordset глючит
|
|||
|---|---|---|---|
|
#18+
Вот похожий случай: /topic/88682 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.07.2004, 22:04:06 |
|
||
|
Recordset глючит
|
|||
|---|---|---|---|
|
#18+
Саныч, проблема была в данном случае в другом. RecordSet описывался по умолчанию не DAO. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2004, 02:37:34 |
|
||
|
Recordset глючит
|
|||
|---|---|---|---|
|
#18+
Владимир Саныч S. Fedorenko Код: plaintext 1. 2. 3. 4. 5. Ну ни фига не работает. Господа! Так сказать, здрасте. Это я со своими глупыми вопросами. Вопрос номер раз. Что значит не работает? На этот раз, как я понимаю, сообщение о недостатке параметров уже не выдается? Ну так мы в шаге от цели. Не работает, если я правильно телепячу, на этот раз только в том смысле, что работает неправильно. По этому поводу вопрос номер два. Что такое me.date1 и me.date2? Это ведь, наверно, текстбоксы, у которых отсутствует ControlSource. Таким образом, Аксесс понимает их значения как стринги, а не как даты. Где гарантия, что строка q.Parameters(0) = me.date1 занесет в параметр правильную дату? 02/03/04 - это 3 февраля или 4 марта? Надо писать что-то типа такого: q.Parameters(0) = DateSerial(Mid(me.date1, ..., ...), Mid(me.date1, ..., ...), Mid(me.date1, ..., ...)) Ага, особенно если эти 2 поля формата "Длинный формат даты" с маской ввода 00.00.00 авторСаныч, проблема была в данном случае в другом. RecordSet описывался по умолчанию не DAO. Нифига не помогает. Запрос не видит полей формы. НИ ДАТЫ, НИ ЧИСЛА. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2004, 10:01:18 |
|
||
|
Recordset глючит
|
|||
|---|---|---|---|
|
#18+
Проблема решена следующим образом: запрос: Код: plaintext 1. 2. 3. Функция RealizationDate() забирает значения полей в запрос Код: plaintext 1. 2. ПРоцедура: Код: plaintext 1. 2. 3. Можно и не использовать q. да, надо убрать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2004, 10:08:15 |
|
||
|
Recordset глючит
|
|||
|---|---|---|---|
|
#18+
S. FedorenkoАга, особенно если эти 2 поля формата "Длинный формат даты" с маской ввода 00.00.00 Формат - это не тип данных. Их вечно путают, и это никогда добром не кончалось. Хотя я и понял, что проблема не в этом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.07.2004, 17:08:39 |
|
||
|
|

start [/forum/topic.php?all=1&fid=45&tid=1673236]: |
0ms |
get settings: |
7ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
44ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
42ms |
get tp. blocked users: |
1ms |
| others: | 198ms |
| total: | 322ms |

| 0 / 0 |
