powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / опять проблема с grid
5 сообщений из 5, страница 1 из 1
опять проблема с grid
    #33553955
tem@
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в grid'e есть вложенный edit, при удалении записи
удаляется и edit, использую процедуру:

form1.Grid1.RecordSource = ""
DELETE
PACK
CLOSE TABLES
WITH form1.grid1
.RecordSourceType = 0
.RecordSource = "FULLBAZ"
.Refresh
endwith

при 1 использовании данной процедуры edit не
удаляется, а при следуюшем исчезает!!!!
...
Рейтинг: 0 / 0
опять проблема с grid
    #33554549
Doktor Gradus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Странный код...

Во-первых, 1-ая строка не нужна. Нет необходимости обнулять грид перед удалением записи.

Процедура PACK, если вам действительно она нужна, должна выполняться перед выходом из пакета, на крайний случай -- при закрытии формы. Наилучшим же решением (не всегда!) является написание отдельной административной программы, из которой PACK выполняется периодически. Дело в том, что для команды PACK необходимо монопольное использование таблицы, а это не всегда возможно.

Конструкцию WITH .. ENDWITH вы используете правильно. Незачем писать form1.grid1 по 3 раза.

Ваш код можно переписать гораздо короче:

Код: plaintext
1.
2.
delete record recno()
thisform.grid1.refresh()

Однако, я бы рекомендровал вставить месаджбокс с подтверждением удаления, а также процедуру проверки местонахождения указателя (а вдруг запись на удаление не выбрана)

Что-нибудь вроде этого:

local ln_Answer

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
select FULLBAZ

if !eof() or !bof()
  ln_Answer = messagebox( "Вы действительно хотите удалить запись?",  4  +  32  +  0 ,"Предупреждение!")
  if ln_Answer =  6 
    delete record recno()
    thisform.grid1.refresh()
  endif
endif

Однако интересно было бы услышать гуру.
...
Рейтинг: 0 / 0
опять проблема с grid
    #33554577
tem@
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Первая строка как раз нужна для того, чтоб Grid не сбрасывал
с себя все параметры, без этой строки при первых манипуляций с
базами Grid полностью сбрасывает настройки.

сама процедура работает нормально, но через несколько
удалений из таблицы, Grid всетаки сбрасывает настройки!!!!

спасибо за помощь.
...
Рейтинг: 0 / 0
опять проблема с grid
    #33562062
Igor Korolyov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hi tem@!

- Не надо паковать таблицу после удаления (достаточно SET DELETE ON)
- Не надо закрывать таблицу
- Не надо использовать ResordSourceType = 0 (достаточно 1 - Alias, а саму
таблицу открывать при запуске формы - через DE или в Form.Load)

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
опять проблема с grid
    #33569546
Zheka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Так он и сбрасывает настройки из-за PACK. Как уже писалось, достаточно:

Select <myTable>
Delete
...Grid.Refresh

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


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