
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
07.07.2004, 17:22:28
|
|||
|---|---|---|---|
|
|||
Создание Recordset-a на базе имеющегося |
|||
|
#18+
Возникла такая проблема, беру recordset (из формы скажем), хочу на его базе создать второй, выбрав только нужные записи. После чего применить этот новый Recordset к отчету. Делаю примерно так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. В отчете полям присвоены источники данных ID и AppName. В результате всего отображается правильное количество строк, но нет самих значений! Проверяю новый Recordset, все в порядке, данные есть... Где грабли? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
07.07.2004, 17:24:32
|
|||
|---|---|---|---|
|
|||
Создание Recordset-a на базе имеющегося |
|||
|
#18+
небольшая поправочка Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
07.07.2004, 17:49:36
|
|||
|---|---|---|---|
Создание Recordset-a на базе имеющегося |
|||
|
#18+
глюкавой дорожкой идешь.... в ADP вообще бардак с рекордсетом отчета... когда мне нужно было подобное решил следующим образом: из формы собрал в строку через запятую идентификаторы нужных записей строка типа : STR_LIST_IDS = "1,22,34,65,2333,33" в рекордсоурс отчета собираешь строку "Select * from anytable where ID in ( " & STR_LIST_IDS & ") " ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
07.07.2004, 18:05:34
|
|||
|---|---|---|---|
Создание Recordset-a на базе имеющегося |
|||
|
#18+
То же что и предложил АлексейК , только с использованием функции на стороне сервера Тогда строку можно будет передавать в виде параметра и не завязываться на динамический SQL (если это противоречит правилам безопасности - т.е. нет прямого доступа к данным, а есть доступ только через ХП и UDF) Сама функция здесь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
07.07.2004, 18:06:43
|
|||
|---|---|---|---|
|
|||
Создание Recordset-a на базе имеющегося |
|||
|
#18+
Самое инетерсное, что это почему-то в отношении нового (руками созданного). Если беру родительский Recordset (полученный из вормы) и применяю его, все ок! В моем случае (требуется просто список), можно вообще нарисовать поле-список и туда запихать нужные строки. Но хотелось бы все же добить этот метод. Пригодится ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
07.07.2004, 18:09:20
|
|||
|---|---|---|---|
|
|||
Создание Recordset-a на базе имеющегося |
|||
|
#18+
Есть конечно методы, поудалять из копии старого ненужное, или применить фильтр. Но все как-то в обход... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
07.07.2004, 18:11:10
|
|||
|---|---|---|---|
Создание Recordset-a на базе имеющегося |
|||
|
#18+
AlexSVЕсть конечно методы, поудалять из копии старого ненужное, или применить фильтр. Но все как-то в обход...А чем тебе не нравиться метод подмены RecordSource, а не RecordSet? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
07.07.2004, 18:14:43
|
|||
|---|---|---|---|
Создание Recordset-a на базе имеющегося |
|||
|
#18+
Наверное, даже вот эта функция http://www.sql.ru/articles/mssql/03060701ArraysAndListsInSQLServer.shtml#iter-list-of-integers ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
07.07.2004, 18:15:38
|
|||
|---|---|---|---|
Создание Recordset-a на базе имеющегося |
|||
|
#18+
ЗЫ: Что бы отдельную таблицу с цифирками не заводить :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
07.07.2004, 18:22:23
|
|||
|---|---|---|---|
Создание Recordset-a на базе имеющегося |
|||
|
#18+
Попробуй, вместо oRS.Update поставь oRS.UpdateBatch Но всё же лучше избегать такой методики формирования источника данных. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
08.07.2004, 08:19:04
|
|||
|---|---|---|---|
Создание Recordset-a на базе имеющегося |
|||
|
#18+
Попробуй подставить так: Dim oRS As ADODB.Recordset Set oRS = New ADODB.Recordset ' oRS.Fields.Append "AppName", adVarChar, 100, adFldMayBeNull oRS.Fields.Append "ID", adBigInt, , adFldMayBeNull ' oRS.LockType = adLockOptimistic oRS.open ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
08.07.2004, 08:21:26
|
|||
|---|---|---|---|
Создание Recordset-a на базе имеющегося |
|||
|
#18+
И еще я не вижу oRS.CursorLocation = adUseClient ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=45&mobile=1&tid=1673341]: |
0ms |
get settings: |
8ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
71ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
45ms |
get tp. blocked users: |
1ms |
| others: | 232ms |
| total: | 391ms |

| 0 / 0 |
