Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Grid с запросом не обновляиться / 20 сообщений из 20, страница 1 из 1
20.09.2006, 10:03
    #33998650
Снифф
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Grid с запросом не обновляиться
HI всем
пробелма в следущем.
на форме Grid1: RecordSourceType= 4 и RecordSource='SELECT aaa,bbb FROM table1 INNER JOIN ... INTO CURSOR ...'
нажимаим командуню кнопку где в клике пропсано:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
INSERT INTO table1 (.....) VALUES (....)
THISFORM.grid1.RecordSourceType=  4  
THISFORM.RecordSource='SELECT aaa,bbb FROM table1 INNER JOIN ... INTO CURSOR ...'
THISFORM.grid1.column1.ControlSource='aaa'
THISFORM.grid1.column2.ControlSource='bbb'
THISFORM.grid1.REFRESH
THISFORM.grid1.column1.REFRESH
THISFORM.grid1.column2.REFRESH
а в гриде так и остаються старые данные. новые появляться тока с повторным запуском формы.
какже нам его обновлять?
...
Рейтинг: 0 / 0
20.09.2006, 10:59
    #33998876
-=AlexiS=-
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Grid с запросом не обновляиться
INSERT INTO table1 (.....) VALUES (....)

THISFORM.RecordSource=''

THISFORM.grid1.RecordSourceType= 4
THISFORM.RecordSource='SELECT aaa,bbb FROM table1 INNER JOIN ... INTO CURSOR ...'
THISFORM.grid1.column1.ControlSource='aaa'
THISFORM.grid1.column2.ControlSource='bbb'
THISFORM.grid1.REFRESH
THISFORM.grid1.column1.REFRESH
THISFORM.grid1.column2.REFRESH
...
Рейтинг: 0 / 0
20.09.2006, 12:49
    #33999454
Снифф
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Grid с запросом не обновляиться
To -=AlexiS=-
вставили в код строку thisform.RecordSource='' и запустили программму
результат по нажатии коммандрной конпки: Property RECORDSOURCE is not found
...
Рейтинг: 0 / 0
20.09.2006, 12:59
    #33999494
PaulWist
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Grid с запросом не обновляиться
THISFORM .GRD1. RecordSource=''
...
Рейтинг: 0 / 0
20.09.2006, 13:03
    #33999522
-=AlexiS=-
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Grid с запросом не обновляиться
Пардон - скопировал из Вашего поста, недосмотрев

THISFORM .Grid1. RecordSource=''

Кстати как-же тогда работает Снифф
Код: plaintext
1.
THISFORM.RecordSource='SELECT aaa,bbb FROM table1 INNER JOIN ... INTO CURSOR ...'
???
...
Рейтинг: 0 / 0
20.09.2006, 13:30
    #33999668
Снифф
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Grid с запросом не обновляиться
за пропущеный объект в коде извените, я для топика код нарезал т.к. полностью он былбы таким
thisform.pageframe_books.page_razdel.grid_rus.RecordSource=.......
да тоже невыходит. Я про ненайеный property отписался на форум и потом начал таксяк эту строку переделыват. и сам грид в нее проставлял (о чем вы сейчас и посоветовали), щас еще раз попробвал:
insert ....
thisform.pageframe_books.page_razdel.grid_rus.RecordSource=''
потом остальной код
грид остаеться пустым
...
Рейтинг: 0 / 0
20.09.2006, 13:39
    #33999703
-=AlexiS=-
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Grid с запросом не обновляиться
а курсор-то создаеться ?
может ошибка в Select - поэтому нет курсора , и грид пустой
попробуйте типа такого

sSql='Ваш Select'
&sSql

что выйдет ?
...
Рейтинг: 0 / 0
20.09.2006, 14:17
    #33999849
Снифф
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Grid с запросом не обновляиться
щас будите ругаться, но мы пережевем.
проставить эти две строки в коде? и что это даст?
в комманном окне sSQL='....' и &sSQL создают нормальный запрос. Правельный
а что с ними делать в коде? не пойму
...
Рейтинг: 0 / 0
20.09.2006, 14:45
    #33999987
-=AlexiS=-
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Grid с запросом не обновляиться
так уточняемся :
1.
если Grid - просто "белый квадрат" - то скорее всего не создался курсор.
Почему не создался курсор просто так не определишь .
Дело в том что строка
THISFORM.Grid1.RecordSource='SELECT aaa,bbb FROM table1 INNER JOIN ... INTO CURSOR ...'
заново выполняет этот селект и если в нем есть ошибка - курсор просто не создается без всяких сообщений.
если перед этой строкой
добавить
sSql='Тот-же селек что и для грида'
&sSql
произойдет выполнение этого запроса , но при наличие синтаксической ошибки - выскочит соответствующее сообщение.
2.
А ежели у вас просто невидно новых записей - так может у вас таблица буферизирована ?
Select записи из буферов не берет ...
(ну правда в 9 есть хинт в селесте WITH (BUFFERING = .t.) )
тогда вам нужно или tableupdate делать или select с хинтом.
...
Рейтинг: 0 / 0
20.09.2006, 15:38
    #34000278
Снифф
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Grid с запросом не обновляиться
нифига себе!!!!!
ни-че-го не понял
В LOAD этой формы прописана 5 буфрезация на таблицу Person.
INSERT в приведеном коде делается на таблицу Books и из Books делается SELECT для грида.
Для таблицы Books в проекте такая вот вещь = CURSORSETPROP('Buffering', 5, 'Books') отсутсвует. она и не предусматыривалась
значит таблица эта не должна быть буферезована? ведь так?
но я щас как вы посоветовали проставил в коде после INSERT строку (чисто от отчаинья)
TABLEUPDATE(.T.,.T.,"архив")
Грид стал обнавляться!!!!!!!!!!!!!!!!!!!!!!!!
ничего не пойму. Как табла оказалась буферезованной? CURSORSETPROP для нее не прописывался, проверено поиском во всех объектах формы
Во, щас Мумрик ко мне приковылял (мы с ним напару фокса грызем), воще обалдел
Ладно я балбес
а Мумрик светлая голова, хоть и с ДЦП родился.
Откуда взялась буферизация ну обьясните нам!!!!
И как проверить талицу на наличие буферезации
...
Рейтинг: 0 / 0
20.09.2006, 15:41
    #34000297
Снифф
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Grid с запросом не обновляиться
не бейте сильно
описался
нада читать
TABLEUPDATE(.T.,.T.,"books")
остальное все в вопросе написано правильна
...
Рейтинг: 0 / 0
20.09.2006, 17:06
    #34000687
-=AlexiS=-
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Grid с запросом не обновляиться
Если табличка в DE формы указывать буферизацию через CURSORSETPROP ненадо
1 - смотри свойство на таблице BufferModeOverride - это собственно то что устанавливается при открытии.
2 - что стоит в свойстве формы BufferMode - установка буферизации для формы

А проверить можно - CURSORGETPROP(('Buffering', 'Books')
...
Рейтинг: 0 / 0
21.09.2006, 13:02
    #34002778
Снифф
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Grid с запросом не обновляиться
Хочу разобраться как следует. Дело серьезное. С Help большая проблема, я учил французский, а английский только пытаюсь освоить.
BufferModeOverride таблицы Books выставлено по умолчанию 1, т.е. все зависит от формы. BufferMode формы выставлен Pessimistic. Означает ли это, что добавляя/изменяя данные в любой таблице в данном DE нужно делать каждый раз TABLEUPDATE( )?

За Сниффа
Снусмумрик
...
Рейтинг: 0 / 0
21.09.2006, 13:08
    #34002806
GoshaS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Grid с запросом не обновляиться
Код: plaintext
SET SQLBUFFERING ON
Specifies if data in a SQL - SELECT statement is based on buffered data or data written to disk.

ON
Specifies that the SQL - SELECT statement uses local buffered data if available. If data is not buffered, then data from disk is used.

OFF
(Default) Specifies that the SQL - SELECT statement uses data from disk.
...
Рейтинг: 0 / 0
21.09.2006, 13:41
    #34002978
-=AlexiS=-
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Grid с запросом не обновляиться
Если в таблице BufferModeOverride=1 - то все зависит от формы.
Для незнающих английского краткий пересказ хелпа :
BufferMode
0- никакой буферизации нет
1-Пессимистическая . Запись блокируется при начале редактирорвания и записывается когда сдвигается указатель записи.Для отката изменений текущей записи - можно использовать TABLEREVERT.
2-Оптимистическая.Для записи нужно использовать Tableupdate.

Чтобы не путаться -
Поставьте BufferMode формы в 0-None .
И рулите буферизацией по таблицам , либо выставляя BufferModeOverride таблицы в DE , либо через cursorsetproperty.
...
Рейтинг: 0 / 0
21.09.2006, 15:35
    #34003569
Снифф
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Grid с запросом не обновляиться
Отлично. Попробуем. Надо пересмотреть другие формы, переправить.
Спасибо

За Сниффа
Снусмумрик

P.S.
Код: plaintext
SET SQLBUFFERING ON
В 8 этого не нашел. Наверно 9 фокс?
...
Рейтинг: 0 / 0
21.09.2006, 16:28
    #34003870
-=AlexiS=-
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Grid с запросом не обновляиться
СниффP.S.
SET SQLBUFFERING ON
В 8 этого не нашел. Наверно 9 фокс?
ага - переходите на 9 и учите англицкий
...
Рейтинг: 0 / 0
25.09.2006, 09:49
    #34008860
Снифф
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Grid с запросом не обновляиться
Возник из всего этого вопрос. А считается ли недочетом программы, если в коде будет применяться строка типа TABLEUPDATE(.T.,.T.,"table3"), но получилось так, что в этой table3 никаких изменений не было?

За Сниффа
Снусмумрик
...
Рейтинг: 0 / 0
25.09.2006, 10:11
    #34008918
-=AlexiS=-
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Grid с запросом не обновляиться
если просто небыло , потому что их не сделал пользователь- то ничего "страшного".
А если просто их и быть не может - тоже как-бы не проблема - вот только зачем ?
...
Рейтинг: 0 / 0
25.09.2006, 12:40
    #34009432
Снифф
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Grid с запросом не обновляиться
-=AlexiS=-если просто небыло , потому что их не сделал пользователь- то ничего "страшного".
А если просто их и быть не может - тоже как-бы не проблема - вот только зачем ?
Ну вы даете! ))))))))))
Конечно пользователь! Он на одной форме может работать с данными из 2 таблиц, первую он может изменить, а вторая может остаться неизменной. Просто мы эти TABLEUPDATE на одну кнопку повесили.

За Сниффа
Снусмумрик
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Grid с запросом не обновляиться / 20 сообщений из 20, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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