Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / а казалось простая задача !? / 16 сообщений из 16, страница 1 из 1
28.06.2008, 23:20
    #35400548
Romario_rus
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
а казалось простая задача !?
Помогите, в таком моменте:

SELECT user
ZAP

Пишет :"Команду нельзя выдать для таблицы,курсоры которой действуют в буферизации таблицы."

Да, действительно в Data Inviroment создан курсор для этой таблицы, ну что теперь делать !???
Надо ее периодически очищать, чтобы записывать новые данные.


Спасибо.Роман.
...
Рейтинг: 0 / 0
28.06.2008, 23:27
    #35400552
Sergey Sizov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
а казалось простая задача !?
Как создается курсор? Как звучит оригинальное сообщение об ошибке? User - это курсор или таблица?
...
Рейтинг: 0 / 0
28.06.2008, 23:30
    #35400553
Romario_rus
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
а казалось простая задача !?
Пишет:"Файл должен быть открыт монопольно"
...
Рейтинг: 0 / 0
28.06.2008, 23:31
    #35400554
Romario_rus
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
а казалось простая задача !?
user это таблица, но и курсор с таким именем существует в DE создан из этой таблицы
...
Рейтинг: 0 / 0
28.06.2008, 23:46
    #35400562
Sergey Sizov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
а казалось простая задача !?
Romario_rususer это таблица, но и курсор с таким именем существует в DE создан из этой таблицы
Очень интересно. И как Вы их различаете?
...
Рейтинг: 0 / 0
28.06.2008, 23:47
    #35400563
Sergey Sizov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
а казалось простая задача !?
Уже два совершенно разных сообщения об ошибке. Так какое же оно на самом деле?
...
Рейтинг: 0 / 0
29.06.2008, 00:40
    #35400578
Romario_rus
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
а казалось простая задача !?
Сообщение :"Файл должен быть открыт монопольно:
Я просто уже запарился, предлагали несколько вариантов в предыдущей теме, пока все испробовал...

Насчет одинакового имени базы и курсора, на самом деле он сам создался когда я поместил в DE/
Как выйти из положения ?
Спасибо.Роман
...
Рейтинг: 0 / 0
29.06.2008, 10:22
    #35400666
Sergey Sizov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
а казалось простая задача !?
Romario_rusКак выйти из положения ?

Для начала неплохо было бы выложить сюда не туманные и противоречивые объяснения, а код формы, или, если форма небольшая, то саму форму. Пока что вот уже второй топик идут гадания и эксперименты по телепатии.
...
Рейтинг: 0 / 0
29.06.2008, 11:08
    #35400677
Владимир СА
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
а казалось простая задача !?
Romario_rusПомогите, в таком моменте:
SELECT user
ZAP
Romario_rusПишет:"Файл должен быть открыт монопольно"Сколько раз уже говорили, что ZAP лучше использовать либо при завершении проекта, а еще лучше вообще отдельно от проекта. И тогда, когда таблица открыта с опцией use <имя табл> exclusive
...
Рейтинг: 0 / 0
29.06.2008, 20:40
    #35401140
Romario_rus
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
а казалось простая задача !?
При двойном клике в List2 формы Form2 должна происходить очистка user.dbf

Вот ссылка по которой можно скачать проект http://ifolder.ru/7157107

Спасибо за помощь. Роман.
...
Рейтинг: 0 / 0
30.06.2008, 10:12
    #35401473
а казалось простая задача !?
Romario_rusВот ссылка по которой можно скачать проект http://ifolder.ru/7157107

Просили форму, а не весь проект, в котором еще и надо найти эту самую форму, а потом еще и ошибку в ней. Не слишком ли много требований к желающим помочь?
...
Рейтинг: 0 / 0
30.06.2008, 12:06
    #35401736
Romario_rus
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
а казалось простая задача !?
проходящий. Romario_rusВот ссылка по которой можно скачать проект http://ifolder.ru/7157107

Просили форму, а не весь проект, в котором еще и надо найти эту самую форму, а потом еще и ошибку в ней. Не слишком ли много требований к желающим помочь?

Я не прошу исправить всю программу.Вас много и ктото просит проект ктото форму, а некоторые говорят:"Я не хочу капаться"
Вот форма , но ведь Ты сейчас языком потрепал и в куста, а запись твоя о негативе осталась.
Вообще конкретная задача , очистить таблицу...
...
Рейтинг: 0 / 0
30.06.2008, 12:06
    #35401737
ВладимирМ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
а казалось простая задача !?
Romario_rusПомогите, в таком моменте:

SELECT user
ZAP

Пишет :"Команду нельзя выдать для таблицы,курсоры которой действуют в буферизации таблицы."
Собственно, уже все сказали. Но вкратце повторю.

Для удаления записей в таблице используют команды DELETE или DELETE-SQL. Физически, эти команды записи в таблице не удаляет, а лишь устанавливает специальные метки, которые означают что запись удалена.

Чтобы скрыть такие записи, помеченные как удаленные, используется специальная глобальная настройка

SET DELETED ON

Эту настройку надо делать один раз при старте приложения. Однако если Вы открываете форму в Private DataSession, то данную настройку надо повторить при открытии формы, поскольку в новой (Private) сессии данных не действуют некоторые настройки сделанные в основной (Default) сессии данных.

В результате, физически запись по прежнему есть в таблице, но ее не видит ни пользователь, ни команды FoxPro. Хотя есть специфические команды, которые способны "увидеть" такие записи.

Физическое удаление записей при помощи команд PACK или ZAP выносится в отдельные административные процедуры, которые запускаются вне зависимости от основной программы. Или, по крайней мере, когда с программой никто не работает через отдельные пункты меню. Частота запуска этих процедур определяется частотой удаления записей.

Romario_rusДа, действительно в Data Inviroment создан курсор для этой таблицы, ну что теперь делать !???
То, что отображено в DataEnvironment - это и есть таблица. НЕ курсор. Просто тот объект, который визуализирует таблицу называют "курсор".

"Курсор", в данном случае - это просто некий обобщающий термин. Физически под ним может пониматься как собственно таблица DBF, так и действительно курсор. А может быть Local View или CursorAdapter. Все зависит от источника данных этого "курсора".

Romario_rusНадо ее периодически очищать, чтобы записывать новые данные.
Если в процессе работы приложения некая таблица должна очищаться полностью, то вместо нее имеет смысл использовать курсор, создаваемый либо через команду Select-SQL, либо через CREATE CURSOR. Тогда удаление всех записей - это просто создание курсора заново.

Хотя, возможно, имеет смысл сделать Local View или CursorAdapter. Все зависит от того, что эта за таблица и для каких целей используется.
...
Рейтинг: 0 / 0
30.06.2008, 12:12
    #35401746
Romario_rus
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
а казалось простая задача !?
ВладимирМ Romario_rusПомогите, в таком моменте:

SELECT user
ZAP

Пишет :"Команду нельзя выдать для таблицы,курсоры которой действуют в буферизации таблицы."
Собственно, уже все сказали. Но вкратце повторю.

Для удаления записей в таблице используют команды DELETE или DELETE-SQL. Физически, эти команды записи в таблице не удаляет, а лишь устанавливает специальные метки, которые означают что запись удалена.

Чтобы скрыть такие записи, помеченные как удаленные, используется специальная глобальная настройка

SET DELETED ON

Эту настройку надо делать один раз при старте приложения. Однако если Вы открываете форму в Private DataSession, то данную настройку надо повторить при открытии формы, поскольку в новой (Private) сессии данных не действуют некоторые настройки сделанные в основной (Default) сессии данных.

В результате, физически запись по прежнему есть в таблице, но ее не видит ни пользователь, ни команды FoxPro. Хотя есть специфические команды, которые способны "увидеть" такие записи.

Физическое удаление записей при помощи команд PACK или ZAP выносится в отдельные административные процедуры, которые запускаются вне зависимости от основной программы. Или, по крайней мере, когда с программой никто не работает через отдельные пункты меню. Частота запуска этих процедур определяется частотой удаления записей.

Romario_rusДа, действительно в Data Inviroment создан курсор для этой таблицы, ну что теперь делать !???
То, что отображено в DataEnvironment - это и есть таблица. НЕ курсор. Просто тот объект, который визуализирует таблицу называют "курсор".

"Курсор", в данном случае - это просто некий обобщающий термин. Физически под ним может пониматься как собственно таблица DBF, так и действительно курсор. А может быть Local View или CursorAdapter. Все зависит от источника данных этого "курсора".

Romario_rusНадо ее периодически очищать, чтобы записывать новые данные.
Если в процессе работы приложения некая таблица должна очищаться полностью, то вместо нее имеет смысл использовать курсор, создаваемый либо через команду Select-SQL, либо через CREATE CURSOR. Тогда удаление всех записей - это просто создание курсора заново.

Хотя, возможно, имеет смысл сделать Local View или CursorAdapter. Все зависит от того, что эта за таблица и для каких целей используется.

Огромное спасибо. Все достаточно понятно, и есть варианты... Буду пробовать.
Уверен , что теперь все плучится.
ВладимирМ, еще раз, спасибо.
...
Рейтинг: 0 / 0
30.06.2008, 12:28
    #35401784
а казалось простая задача !?
Romario_rusЯ не прошу исправить всю программу.Вас много и ктото просит проект ктото форму, а некоторые говорят:"Я не хочу капаться"
Во-первых, много не нас, отвечающих, а вас, вопрошающих.
Во-вторых, если и просят проект, то минимальный, в котором оставлено только то, что действительно нужно для понимания проблемы. Копаться в нагромождениях чужого кода не хочется никому, просто на объявление этого не тратят время.
В-третьих, помощь нужна вопрошающим, а не отвечающим. Поэтому считается хорошим тоном помогать отвечающим, а не предъявлять им претензии, тем более что они вам ничем не обязаны.


Вот форма , но ведь Ты сейчас языком потрепал и в куста, а запись твоя о негативе осталась.

А тут кто-то гоняется за рейтингами? Кто с "казалось простой задачей" самостоятельно не может справиться? Я?

Вообще конкретная задача , очистить таблицу...
Это не задача, а неправильно выбранный способ выполнить несколько иную задачу.
...
Рейтинг: 0 / 0
30.06.2008, 13:18
    #35401883
Romario_rus
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
а казалось простая задача !?
Твой рейтинг, все выше ...
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / а казалось простая задача !? / 16 сообщений из 16, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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