Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Курсор и Грид!!! Просьба прояснить ситуацию!!!
|
|||
|---|---|---|---|
|
#18+
Хочу сделать SQL-запрос на MSSQL (select * from ...) с помощью SQLEXEC(nConnectionHandle, cSQLCommand, [CursorName]). Перед SQLEXEC делаю MyCursor=createobject("cursor"). Теперь что подставить в SQLEXEC - MyCursor, MyCursor.Name, MyCursor.Alias??? Как обратиться к курсору - sele (MyCursor), sele (MyCursor.Alias)??? Вообще в чем разница между MyCursor.Name и MyCursor.Alias??? Можно конечно в SQLEXEC подставить строку "MyCursor"в качестве [CursorName] и затем сделать sele MyCursor и т.д. ,но возникает проблема с Гридом - после обновления данных. Грид ломается. Написал процедуру, восстанавливающую Грид после обновления данных - все хорошо работает , - НО НЕУЖЕЛИ ВСЕ ТАК СЛОЖНО С КУРСОРОМ И ГРИДОМ?????????? Думаю Грид ломается из-за смены курсора. Вот и хочу сделать постоянный курсор для Грида, а как? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.03.2004, 13:54 |
|
||
|
Курсор и Грид!!! Просьба прояснить ситуацию!!!
|
|||
|---|---|---|---|
|
#18+
SQLEXEC(nConnectionHandle, cSQLCommand, [CursorName]) Здесь CursorName - это как-раз alias того курсора, в который попадет результат выборки на стороне FoxPro. Т.е. обращение будет вида: SQLEXEC(nConnectionHandle, cSQLCommand, "MyCursor") ?MyCursor.MyField Если имя курсора не указать явно, то FoxPro сам "придумает" ему имя. Скорее всего, это будет что-то вроде "Result" или "Query" Чтобы Grid не ломался, необходимо перед модификацией источника данных отключить Grid от этого источника: ThisForm.Grid1.RecordSource="" SQLEXEC(nConnectionHandle, cSQLCommand, "MyCursor") ThisForm.Grid1.RecordSource="MyCursor" ThisForm.Grid1.Column1.ControlSource="MyCursor.Field1" ThisForm.Grid1.Column2.ControlSource="MyCursor.Field2" ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2004, 10:02 |
|
||
|
Курсор и Грид!!! Просьба прояснить ситуацию!!!
|
|||
|---|---|---|---|
|
#18+
Я понял, что до SQLEXEC и после SQLEXEC - Grid ссылается на совершенно разные курсоры - хотя с одним и тем же именем. Курсор до SQLEXEC разрушается, и после SQLEXEC создается новый курсор (но с тем-же именем). В этом причина необходимости делать ThisForm.Grid1.RecordSource="" и затем ThisForm.Grid1.RecordSource="MyCursor" Получается вообще свойства курсора Alias,Name никак не применяются. Берется строка varMyCursor="MyCursor" или даже MyCursor="ARF2TTFsdsd6783" и работаешь с именем этой строки. Где там сам объект-курсор, какое у него Name, Alias - это никого не волнует и никому не надо. Главное делай вовремя ThisForm.Grid1.RecordSource="" и затем ThisForm.Grid1.RecordSource=MyCursor и все будет Окей. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2004, 11:07 |
|
||
|
Курсор и Грид!!! Просьба прояснить ситуацию!!!
|
|||
|---|---|---|---|
|
#18+
Почитай здесь http://www.foxclub.ru/kb/index.php?sid=24056&aktion=artikel&rubrik=001&id=6&lang=ru#Cursor Что в FoxPro понимается под термином "Курсор" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.03.2004, 12:08 |
|
||
|
|

start [/forum/topic.php?fid=41&msg=32460396&tid=1596910]: |
0ms |
get settings: |
8ms |
get forum list: |
17ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
58ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
56ms |
get tp. blocked users: |
2ms |
| others: | 230ms |
| total: | 393ms |

| 0 / 0 |
