Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
А как обновить CURSOR без его перезагрузки?
|
|||
|---|---|---|---|
|
#18+
Создаю курсор: select * from t1 into cursor c1 Затем нужно обновить курсор без его перезагрузки, а то Grid разрушается. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2004, 17:40 |
|
||
|
А как обновить CURSOR без его перезагрузки?
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2004, 17:51 |
|
||
|
А как обновить CURSOR без его перезагрузки?
|
|||
|---|---|---|---|
|
#18+
ofrm.grid1.RecordSource='' SELECT * FROM labels INTO CURSOR c1 ofrm.grid1.RecordSource='c1' ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2004, 17:51 |
|
||
|
А как обновить CURSOR без его перезагрузки?
|
|||
|---|---|---|---|
|
#18+
Я делаю также: grid1.recordsource = "" i = 1..(grid1.ColumnCount=5) : columns(i).comments = columns(i).ControlSource select * from t1 into cursor c1 grid1.recordsource = "c1" i = 1..(grid1.ColumnCount=11) : columns(i).ControlSource = columns(i).comments Получается, что грид все-таки перестраивается. Что я делаю не так? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2004, 18:20 |
|
||
|
А как обновить CURSOR без его перезагрузки?
|
|||
|---|---|---|---|
|
#18+
Изначально в дезайнер в качестве Grid.RecordSource должно стоять (None), причем это (None) должно быть выделено жирным шрифтом. Ни в коем случае нельзя сбрасывать его через "Reset At Default" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.07.2004, 18:34 |
|
||
|
А как обновить CURSOR без его перезагрузки?
|
|||
|---|---|---|---|
|
#18+
Ну ребята, либо я не понял, либо вы бредите... =requer() и ничего больше не нужно... вы о чем говорили господа??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2004, 02:18 |
|
||
|
А как обновить CURSOR без его перезагрузки?
|
|||
|---|---|---|---|
|
#18+
to fox_kiv Не вводите в заблуждение аудиторию: select * from t1 into cursor c1 =requery('c1') и смотрите, как ругнется Fox. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2004, 08:22 |
|
||
|
А как обновить CURSOR без его перезагрузки?
|
|||
|---|---|---|---|
|
#18+
я и не ввожу, считаю глупо курсор пихать в грид если есть view, зачем нужен допотопный селект, если можно использовать представление, тогда: =requ() thisform.refresh и вся прога, два опреатора... а вы там городите огород в чистом поле и блудите в трех березах... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2004, 08:39 |
|
||
|
А как обновить CURSOR без его перезагрузки?
|
|||
|---|---|---|---|
|
#18+
А если так? i = 1..(grid1.ColumnCount=5) : columns(i).comments = columns(i).ControlSource grid1.recordsource = "" select * from t1 into cursor c1 grid1.recordsource = "c1" i = 1..(grid1.ColumnCount=11) : columns(i).ControlSource = columns(i).comments ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2004, 09:08 |
|
||
|
А как обновить CURSOR без его перезагрузки?
|
|||
|---|---|---|---|
|
#18+
Чтобы не переопределять грид для vfp8 работает Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. .... и только время боится пирамид! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2004, 09:09 |
|
||
|
А как обновить CURSOR без его перезагрузки?
|
|||
|---|---|---|---|
|
#18+
бред какой-то мнда, хотя у павла есть некий просвет в темном царстве только токда уж не : if used('c1') select c1 zap in c1 insert into c1 select * from t1 else **** срабатывает при первом запуске select * from t1 into cursor c1 readwrite endif а : (use in c1 select * from и т.д.) и вся прога, а то любите вы городить и усложнять, наслаивать и заворачивать... выворачивая все наизнанку. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2004, 09:20 |
|
||
|
А как обновить CURSOR без его перезагрузки?
|
|||
|---|---|---|---|
|
#18+
fox_kivбред какой-то мнда, хотя у павла есть некий просвет в темном царстве только токда уж не : if used('c1') select c1 zap in c1 insert into c1 select * from t1 else **** срабатывает при первом запуске select * from t1 into cursor c1 readwrite endif а : (use in c1 select * from и т.д.) и вся прога, а то любите вы городить и усложнять, наслаивать и заворачивать... выворачивая все наизнанку. Похоже, что именно use in c1 Pavel_t и хотел избежать, т.к. при выполнении этой команды курсор закроется и Grid сбросит все настройки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2004, 11:58 |
|
||
|
А как обновить CURSOR без его перезагрузки?
|
|||
|---|---|---|---|
|
#18+
to fox_kiv Скажите мне, есть ли в данном случае принципиальное отличие локальной вьюшки от курсора? думаю нет. Спасибо, Pavel_t, пример работает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.07.2004, 12:28 |
|
||
|
А как обновить CURSOR без его перезагрузки?
|
|||
|---|---|---|---|
|
#18+
[quot __GUEST]to fox_kiv Скажите мне, есть ли в данном случае принципиальное отличие локальной вьюшки от курсора? думаю нет. есть, есть принципиальная разница, вью более мобилен и перемещаем, он может быть как удаленным так и локальным, много и других у него преимуществ. А запрос - это первое, что сделал фокс по SQL , помнится году в 91 мы активно их (запросы) использовали, тогда на фоксе делалось много, например заработная плата, ОК, ОТиЗ, учет материалов и т.д. базы обрабатывались огромные, учитывая что это делалось на XT, фокс обеспечивал приемлемую скорость обработки, в том числе и через запросы. Сегодня вью занял свою позицию, запрос отошел в сторону, поэтому я вам настоятельно рекомендую разобраться с вью, и использовать в большей мере их. Преимуществ много, например параметрический вью, возможно ли это в запросе? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.07.2004, 03:00 |
|
||
|
А как обновить CURSOR без его перезагрузки?
|
|||
|---|---|---|---|
|
#18+
fox_kiv У Вас неправильное понимание того, что такое View. View - это тот же самый SQL-запрос, но при определенных настройках его можно сделать обновляемым. Т.е. изменения внесенные в результирующую выборку попадут в исходные таблицы. Однако при желании, то же самое можно сделать и с обычным курсором, полученным по команде Select-SQL используя настройки CursorSetProp(). Просто View сделает эти настройки автоматически. Не надо будет писать собственную процедуру установки этих настроек. Еще одно преимущество View - это специальные команды по его обновлению. Для Select-SQL как уже показали выше надо писать дополнительный код В общем, View - это Select-SQL + немного кода. Это самое "немного кода" View выполняет автоматически, а для Select-SQL придется писать ручками. Преимущества View именно в этой автоматизации. Но в ней же и недостатки. Дело в том, что любой автомат рассчитан на определенные условия функционирования. Как следствие, далеко не каждый Select-SQL можно перевести во View. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.07.2004, 10:01 |
|
||
|
А как обновить CURSOR без его перезагрузки?
|
|||
|---|---|---|---|
|
#18+
[quot ВладимирМ] fox_kiv У Вас неправильное понимание того, что такое View. Ну и чего не правильного? прокоментировали мое мнение и вывод - неправильное понимание.... чего понимание... понимание пониманию понимания? праметризированный вью покрывает все недостатки... кроме того хранить базу в фокс анахранизм, базу нужно держать в оракле или в сиквеле на худой конец, а тут уж без remote view никак... ну вообще-то дело вкуса, нравится писать запросы - пишите, мне проще вьюхи городить... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.07.2004, 10:51 |
|
||
|
А как обновить CURSOR без его перезагрузки?
|
|||
|---|---|---|---|
|
#18+
fox_kivНу и чего не правильного? Принципиальное непонимание того, что View и Select-SQL для FoxPro - по сути одно и то же. Вы их почему-то противопоставляете. Просто View автоматизирует некоторые процессы. fox_kivпраметризированный вью покрывает все недостатки... Не все. Кроме того, имеет собственные недостатки. fox_kivкроме того хранить базу в фокс анахранизм, Почему собственно? Это зависит от конкретной решаемой задачи. fox_kivбазу нужно держать в оракле или в сиквеле на худой конец, а тут уж без remote view никак... М-да. Живут же люди... Оракл для них купить не проблема. Специально, чтобы хранить базу данных на 50 таблиц и пару миллионов записей fox_kivну вообще-то дело вкуса, нравится писать запросы - пишите, мне проще вьюхи городить... Вопрос не в том "нравится/не нравится", а в том, "можно/нельзя". Далеко не все можно решить через View ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.07.2004, 12:08 |
|
||
|
А как обновить CURSOR без его перезагрузки?
|
|||
|---|---|---|---|
|
#18+
1. Не противопоставляю, а выбираю, выбор всегда есть... "принципиального непонимания" быть не может, 15 лет с фоксом(работа) + 4 года преподавания в вузе: теория субд, V.FoxPro, теория отношений и др. это у вас не понимание, и ответы на ваше же непонимание.... 2. Какие недостатки? Перечислите пожалуйста... 3.Конкретные решаемые задачи на тридцать записей можно сделать в екселе или аксесе на Худой Конец... 4. М-да, задачи бывают разные... 5. Далеко... далеко не все можно решать в принципе, и через вью в том числе... такова жизнь... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.07.2004, 12:22 |
|
||
|
А как обновить CURSOR без его перезагрузки?
|
|||
|---|---|---|---|
|
#18+
fox_kiv1. Не противопоставляю, а выбираю, выбор всегда есть... "принципиального непонимания" быть не может, 15 лет с фоксом(работа) + 4 года преподавания в вузе: теория субд, V.FoxPro, теория отношений и др. это у вас не понимание, и ответы на ваше же непонимание.... Из Ваших первых постов я понял, что Вы именно противопостовляете View и Select-SQL. fox_kiv считаю глупо курсор пихать в грид если есть view, зачем нужен допотопный селект, если можно использовать представление, Сегодня вью занял свою позицию, запрос отошел в сторону Для конкретного запроса, послужившего темой данного топика это справедливо. Но в более общем случае я с этим не согласен. Отсюда и мои попытки объяснить. Извините, если Вы и так все это знаете. fox_kiv2. Какие недостатки? Перечислите пожалуйста... В принципе, в более старших версиях FoxPro исправлены некоторые чисто технические проблемы с использованием View. Поэтому остановлюсь на проблемах, связанных собственно с самой логикой View -) Сброс изменений из View созданных на базе нескольких связанных таблиц при одновременном добавлении записей в несколько таблиц-источников -) Формирование View с неопределенной структурой. В стандартном Select-SQL это решается макроподстановками. Для View - это неразрешимая проблема (частично решаемая разными "фокусами") -) UNION fox_kiv3.Конкретные решаемые задачи на тридцать записей можно сделать в екселе или аксесе на Худой Конец... 4. М-да, задачи бывают разные... Это сразу и вопрос и ответ. Думаю, в пояснениях не нуждается. fox_kiv5. Далеко... далеко не все можно решать в принципе, и через вью в том числе... такова жизнь... Согласен. Я просто хотел сказать, что View - это своеобразная "надстройка" над Select-SQL. Как следствие, пришлось пожертвовать некоторыми возможностями Select-SQL. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.07.2004, 13:28 |
|
||
|
А как обновить CURSOR без его перезагрузки?
|
|||
|---|---|---|---|
|
#18+
Кстати, хотел спросить а имеет ли смысл включать для курсора буффиризацию ? Ведь с курсором работает только один пользователь. С вьюшко все понятно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.07.2004, 09:12 |
|
||
|
А как обновить CURSOR без его перезагрузки?
|
|||
|---|---|---|---|
|
#18+
__GUESTКстати, хотел спросить а имеет ли смысл включать для курсора буффиризацию ? Ведь с курсором работает только один пользователь. С вьюшко все понятно. Это зависит от конкретной задачи. Иногда нужно и такое чудо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.07.2004, 10:51 |
|
||
|
А как обновить CURSOR без его перезагрузки?
|
|||
|---|---|---|---|
|
#18+
ВладимирМ, а можете привести пример, когда нужно делать буфферизацию курсора (т.б. врем. таблицы) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.07.2004, 11:40 |
|
||
|
А как обновить CURSOR без его перезагрузки?
|
|||
|---|---|---|---|
|
#18+
ВладимирМ[quot fox_kiv]Согласен. Я просто хотел сказать, что View - это своеобразная "надстройка" над Select-SQL. Как следствие, пришлось пожертвовать некоторыми возможностями Select-SQL. а если вы пойдете дальше и заглянете в MS-SQL или в ORACLE к своему удивлению обнаружите что эта "своеобразная" надстройка не только существует вне FoxPro но и живет и процветает, порой беря на себя тяжести обработки мощных массивов информации. Более того, когда в Foxe появился select, многие программисты не знакомые с понятием запросов не восприняли это чудо и продолжали по старинке ставить фильтра, искать через sort, find и т.д. А было это все в том же 91м году... История нас рассудила, и сегодня я участвую в дискуссии уже не защищая select, что отрадно самим фактом продвижения вперед программистической мысли.... пожертвовали или нет "некоторыми возможностями" select? может быть... но дело это поправимое, надеюсь фокс не помрет и будет развиваться далее в ногу с такими продуктами как INFORMIX, ORACLE, PROGRESS и др. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.07.2004, 11:43 |
|
||
|
А как обновить CURSOR без его перезагрузки?
|
|||
|---|---|---|---|
|
#18+
__GUESTа можете привести пример, когда нужно делать буфферизацию курсора (т.б. врем. таблицы) -) Если требуется определить какие данные в курсоре были изменены -) Если время на создание курсора относительно велико. В этом случае дешевле сделать откат буфера, чем заново создавать курсор -) Если курсор делается обновляемым. Аналог View, только создается программно через CursorSetProp() ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.07.2004, 12:09 |
|
||
|
|

start [/forum/topic.php?fid=41&fpage=367&tid=1596070]: |
0ms |
get settings: |
12ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
29ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
58ms |
get tp. blocked users: |
2ms |
| others: | 230ms |
| total: | 368ms |

| 0 / 0 |
