powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / При удалении строки из курсора, курсор очищается
15 сообщений из 15, страница 1 из 1
При удалении строки из курсора, курсор очищается
    #35447547
Imperous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
При удалении строки из курсора, курсор очищается, делаю так:
delete from MainCur where id_maincur=3

по логике должна удалиться только одна запись, у меня же почему-то очищается весь курсор.
Что я не так делаю, или как правильно делать?
...
Рейтинг: 0 / 0
При удалении строки из курсора, курсор очищается
    #35447559
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так попробуй
Код: plaintext
delete in MainCur for id_maincur= 3 
...
Рейтинг: 0 / 0
При удалении строки из курсора, курсор очищается
    #35447581
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Поторопился немного. Думаю надо явно алиас указать.
Код: plaintext
delete from MainCur where MainCur.id_maincur= 3 
или
Код: plaintext
delete in MainCur for MainCur.id_maincur= 3 

А может у тебя все записи с id_maincur=3 ?
...
Рейтинг: 0 / 0
При удалении строки из курсора, курсор очищается
    #35447610
Imperous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima TПоторопился немного. Думаю надо явно алиас указать.
Код: plaintext
delete from MainCur where MainCur.id_maincur= 3 
или
Код: plaintext
delete in MainCur for MainCur.id_maincur= 3 

А может у тебя все записи с id_maincur=3 ?

Нет, одна!
Причем эта удаляемая строка является текущей строкой в курсоре.

Оба варианта не помогли, опять полная очистка
...
Рейтинг: 0 / 0
При удалении строки из курсора, курсор очищается
    #35447640
Imperous Dima TПоторопился немного. Думаю надо явно алиас указать.
Код: plaintext
delete from MainCur where MainCur.id_maincur= 3 
или
Код: plaintext
delete in MainCur for MainCur.id_maincur= 3 

А может у тебя все записи с id_maincur=3 ?

Нет, одна!
Причем эта удаляемая строка является текущей строкой в курсоре.

Оба варианта не помогли, опять полная очистка
Чудес не бывает. Код, демонстрирующий такое поведение, в студию.
...
Рейтинг: 0 / 0
При удалении строки из курсора, курсор очищается
    #35447642
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У меня работает:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
create Cursor MainCur (id_maincur int autoinc)
append Blank
append Blank
append Blank
append Blank
append Blank
delete from MainCur where MainCur.id_maincur= 3 
brow

Смотри код, возможно где-то еше удаление происходит.

Imperous Dima TА может у тебя все записи с id_maincur=3 ?

Нет, одна!
Причем эта удаляемая строка является текущей строкой в курсоре.
Если надо удаление текущей строки, то достаточно
Код: plaintext
delete in MainCur
...
Рейтинг: 0 / 0
При удалении строки из курсора, курсор очищается
    #35447684
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Возможно где-то в коде CREATE CURSOR повторно отрабатывает и он пустой заново создается.
...
Рейтинг: 0 / 0
При удалении строки из курсора, курсор очищается
    #35447867
Imperous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima TВозможно где-то в коде CREATE CURSOR повторно отрабатывает и он пустой заново создается.
неа, не создается
...
Рейтинг: 0 / 0
При удалении строки из курсора, курсор очищается
    #35447880
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Imperous Dima TВозможно где-то в коде CREATE CURSOR повторно отрабатывает и он пустой заново создается.
неа, не создается
Чудес не бывает ищи ошибку в коде.
Можешь свою строку "delete from MainCur where id_maincur=3" закоментировать и посмотреть что произойдет. Уверен на 200% что все равно удалится.
...
Рейтинг: 0 / 0
При удалении строки из курсора, курсор очищается
    #35447899
Imperous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
варианты которые не сработали (точнее после которых курсор очищался):

Код: plaintext
1.
2.
3.
4.
if port_ats_del(shport.id_port) then **возвращается true
   delete in shport **эта строка и есть текущая в shport
   thisform.grid1.refresh ()
   thisform.grid1.highlightstyle =  2 
endif


Код: plaintext
1.
2.
3.
4.
if port_ats_del(shport.id_port) then **возвращается true
  delete in shport for id_port=shport.id_port  **эта строка и есть текущая в shport
   thisform.grid1.refresh ()
   thisform.grid1.highlightstyle =  2 
endif


Код: plaintext
1.
2.
3.
4.
if port_ats_del(shport.id_port) then **возвращается true
   delete from shport where shport.id_port= shport.id_port**эта строка и есть текущая в shport
   thisform.grid1.refresh ()
   thisform.grid1.highlightstyle =  2 
endif

во всем shport в поле id_port значения не повторяются
...
Рейтинг: 0 / 0
При удалении строки из курсора, курсор очищается
    #35447935
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тут все правильно, только надо SKIP добавить чтобы из грида эта строчка исчезла.
Код: plaintext
1.
2.
3.
4.
5.
if port_ats_del(shport.id_port) then **возвращается true
   delete in shport **эта строка и есть текущая в shport
   SKIP  in shport
   thisform.grid1.refresh ()
   thisform.grid1.highlightstyle =  2 
endif

А вот это удаление всех записей
Код: plaintext
1.
  delete in shport for id_port=shport.id_port  **эта строка и есть текущая в shport
и это тоже
Код: plaintext
1.
   delete from shport where shport.id_port= shport.id_port**эта строка и есть текущая в shport
...
Рейтинг: 0 / 0
При удалении строки из курсора, курсор очищается
    #35448024
Imperous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima TТут все правильно, только надо SKIP добавить чтобы из грида эта строчка исчезла.
Код: plaintext
1.
2.
3.
4.
5.
if port_ats_del(shport.id_port) then **возвращается true
   delete in shport **эта строка и есть текущая в shport
   SKIP  in shport
   thisform.grid1.refresh ()
   thisform.grid1.highlightstyle =  2 
endif

а куда ж его там впихнуть?
...
Рейтинг: 0 / 0
При удалении строки из курсора, курсор очищается
    #35448518
Galyamov Rinat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> а куда ж его там впихнуть?
Можно просто goto record (recno('shport')) in shport
т.е. просто передернуть указатель записи в таблице.


Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
При удалении строки из курсора, курсор очищается
    #35448572
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Imperous Dima TТут все правильно, только надо SKIP добавить чтобы из грида эта строчка исчезла.
Код: plaintext
1.
2.
3.
4.
5.
if port_ats_del(shport.id_port) then **возвращается true
   delete in shport **эта строка и есть текущая в shport
   SKIP  in shport
   thisform.grid1.refresh ()
   thisform.grid1.highlightstyle =  2 
endif

а куда ж его там впихнуть?
Внимательней ответы читай.
...
Рейтинг: 0 / 0
При удалении строки из курсора, курсор очищается
    #35448730
Imperous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima T Imperous Dima TТут все правильно, только надо SKIP добавить чтобы из грида эта строчка исчезла.
Код: plaintext
1.
2.
3.
4.
5.
if port_ats_del(shport.id_port) then **возвращается true
   delete in shport **эта строка и есть текущая в shport
   SKIP  in shport
   thisform.grid1.refresh ()
   thisform.grid1.highlightstyle =  2 
endif

а куда ж его там впихнуть?
Внимательней ответы читай.

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


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