powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Заполнение и перезаполненные Grid из курсора.
26 сообщений из 26, показаны все 2 страниц
Заполнение и перезаполненные Grid из курсора.
    #37628769
Allkay
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем привет.
Есть форма, на форме расположен компонент Grid1. Grid1 заполняется из курсора по средствам команды
Код: sql
1.
Thisform.grdSomeTable.RecordSource=[lvAbonent]


Мне нужно было сделать сортировку ( по возрастанию и по убыванию ), при нажатии на нужное поле компонента Grid1.
Я придумал такую вещь (Сортировка по первому полю):

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
ThisForm.grdSomeTable.RecordSource=[]
IF USED('viewabonkod')
  WAIT WINDOW "Выполняется сортировка. Ждите..." NOWAIT NOCLEAR AT SROWS()/2, SCOLS()/2 
    SELECT * FROM lvAbonent ORDER BY 1 ASC INTO CURSOR viewabonkod
    SELECT * FROM lvAbonent ORDER BY 1 DESC INTO CURSOR viewabonkod2
    Thisform.grdSomeTable.RecordSource=[viewabonkod2]
    SELECT viewabonkod
    USE
  WAIT CLEAR
ELSE  
  WAIT WINDOW "Выполняется сортировка. Ждите..." NOWAIT NOCLEAR AT SROWS()/2, SCOLS()/2 
    SELECT * FROM lvAbonent ORDER BY 1 DESC INTO CURSOR viewabonkod2
    SELECT * FROM lvAbonent ORDER BY 1 ASC INTO CURSOR viewabonkod
    Thisform.grdSomeTable.RecordSource=[viewabonkod]
    SELECT viewabonkod2
    USE
  WAIT CLEAR    
ENDIF



Но так она в автомате не работает (код правильный на других формах испытана).
А так работает:

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
ThisForm.grdSomeTable.RecordSource=[]
IF USED('viewabonkod')
  WAIT WINDOW "Выполняется сортировка. Ждите..." NOWAIT NOCLEAR AT SROWS()/2, SCOLS()/2 
    SELECT * FROM lvAbonent ORDER BY 1 ASC INTO CURSOR viewabonkod
    SELECT * FROM lvAbonent ORDER BY 1 DESC INTO CURSOR viewabonkod2
    Thisform.grdSomeTable.RecordSource=[viewabonkod2]
BROWSE
    SELECT viewabonkod
    USE
  WAIT CLEAR
ELSE  
  WAIT WINDOW "Выполняется сортировка. Ждите..." NOWAIT NOCLEAR AT SROWS()/2, SCOLS()/2 
    SELECT * FROM lvAbonent ORDER BY 1 DESC INTO CURSOR viewabonkod2
    SELECT * FROM lvAbonent ORDER BY 1 ASC INTO CURSOR viewabonkod
    Thisform.grdSomeTable.RecordSource=[viewabonkod]
BROWSE
    SELECT viewabonkod2
    USE
  WAIT CLEAR    
ENDIF



Почему при добавлении BROWSE оно работает?
(На форме используются классы. На формах где испытывался этот код, классов не было!)
...
Рейтинг: 0 / 0
Заполнение и перезаполненные Grid из курсора.
    #37628840
IgorNG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Allkay,

А зачем делать два запроса, а потом один из них закрывать?
По каманде селект данный запрос будет в текущей рабочей области, а после закрытия без выбора другой рабочей области - текущей будет неопределенная. После USE сделай SELECT нужной таблицы
...
Рейтинг: 0 / 0
Заполнение и перезаполненные Grid из курсора.
    #37628862
Sergey Sizov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AllkayВсем привет.
Есть форма, на форме расположен компонент Grid1. Grid1 заполняется из курсора по средствам команды
Код: sql
1.
Thisform.grdSomeTable.RecordSource=[lvAbonent]

Грид не может заполняться, он может привязываться к курсору.
Мне нужно было сделать сортировку ( по возрастанию и по убыванию ), при нажатии на нужное поле компонента Grid1.
Я придумал такую вещь (Сортировка по первому полю):

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
ThisForm.grdSomeTable.RecordSource=[]
IF USED('viewabonkod')
  WAIT WINDOW "Выполняется сортировка. Ждите..." NOWAIT NOCLEAR AT SROWS()/2, SCOLS()/2 
    SELECT * FROM lvAbonent ORDER BY 1 ASC INTO CURSOR viewabonkod
    SELECT * FROM lvAbonent ORDER BY 1 DESC INTO CURSOR viewabonkod2
    Thisform.grdSomeTable.RecordSource=[viewabonkod2]
    SELECT viewabonkod
    USE
  WAIT CLEAR
ELSE  
  WAIT WINDOW "Выполняется сортировка. Ждите..." NOWAIT NOCLEAR AT SROWS()/2, SCOLS()/2 
    SELECT * FROM lvAbonent ORDER BY 1 DESC INTO CURSOR viewabonkod2
    SELECT * FROM lvAbonent ORDER BY 1 ASC INTO CURSOR viewabonkod
    Thisform.grdSomeTable.RecordSource=[viewabonkod]
    SELECT viewabonkod2
    USE
  WAIT CLEAR    
ENDIF



Но так она в автомате не работает (код правильный на других формах испытана).Зачем по два курсора? Зачем второй курсор если он закрывается? Зачем два раза Wait? Один раз нельзя? Компу делать нечего? Платят за количество строк кода?А так работает:

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
ThisForm.grdSomeTable.RecordSource=[]
IF USED('viewabonkod')
  WAIT WINDOW "Выполняется сортировка. Ждите..." NOWAIT NOCLEAR AT SROWS()/2, SCOLS()/2 
    SELECT * FROM lvAbonent ORDER BY 1 ASC INTO CURSOR viewabonkod
    SELECT * FROM lvAbonent ORDER BY 1 DESC INTO CURSOR viewabonkod2
    Thisform.grdSomeTable.RecordSource=[viewabonkod2]
BROWSE
    SELECT viewabonkod
    USE
  WAIT CLEAR
ELSE  
  WAIT WINDOW "Выполняется сортировка. Ждите..." NOWAIT NOCLEAR AT SROWS()/2, SCOLS()/2 
    SELECT * FROM lvAbonent ORDER BY 1 DESC INTO CURSOR viewabonkod2
    SELECT * FROM lvAbonent ORDER BY 1 ASC INTO CURSOR viewabonkod
    Thisform.grdSomeTable.RecordSource=[viewabonkod]
BROWSE
    SELECT viewabonkod2
    USE
  WAIT CLEAR    
ENDIF



Почему при добавлении BROWSE оно работает?Потому, что эта команда вызывает обновление экрана. Сделайте так:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
ThisForm.grdSomeTable.RecordSource=[]
WAIT WINDOW "Выполняется сортировка. Ждите..." NOWAIT NOCLEAR AT SROWS()/2, SCOLS()/2 
IF USED('viewabonkod')
    SELECT * FROM lvAbonent ORDER BY 1 DESC INTO CURSOR viewabonkod
ELSE  
    SELECT * FROM lvAbonent ORDER BY 1 ASC INTO CURSOR viewabonkod
ENDIF
Thisform.grdSomeTable.RecordSource=[viewabonkod]
Thisform.grdSomeTable.Refresh()
WAIT CLEAR    


(На форме используются классы. На формах где испытывался этот код, классов не было!)Не надо искать черную кошку там, где ее нет.
...
Рейтинг: 0 / 0
Заполнение и перезаполненные Grid из курсора.
    #37628870
прошелмимо
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sergey Sizov Сделайте так:


зачем?

просто создать индекс по нужному столбцу не?
нужно обязательно переливать в новый курсор?
не по феншую?
...
Рейтинг: 0 / 0
Заполнение и перезаполненные Grid из курсора.
    #37628881
Allkay
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IgorNG,

Это для того что бы SELECT не повторялся.
IF определяет открыт (в текущей рабочей области) курсор или нет, в зависимости от результата он выбирает Select. При повторном нажатии на поле Grid, снова идет проверка открытого (в текущей рабочей области) курсора, и если курсор в текущей рабочей области то он выбирает и заполняет Grid другим курсором, и так каждый раз они меняются. А два Select потому что при первом нажатии на поле Grid что бы закрыть курсор в текущей рабочей области его надо выбрать, если не выберешь он не закроет а выдаст ошибку.
...
Рейтинг: 0 / 0
Заполнение и перезаполненные Grid из курсора.
    #37628908
Allkay
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sergey Sizov,

Да, вот еще забыл добавить: Невозможно понять работает код или нет (я написал нет, потому что, нет результата), после запуска, вот этого кода, приложение зависает, выдает сообщение и все, висит.
И твой код точно также:
...
Рейтинг: 0 / 0
Заполнение и перезаполненные Grid из курсора.
    #37628915
Allkay
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sergey Sizov,

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
ThisForm.grdSomeTable.RecordSource=[]
WAIT WINDOW "Выполняется сортировка. Ждите..." NOWAIT NOCLEAR AT SROWS()/2, SCOLS()/2 
IF USED('viewabonkod')
    SELECT * FROM lvAbonent ORDER BY 1 DESC INTO CURSOR viewabonkod
    BROWSE 
ELSE  
    SELECT * FROM lvAbonent ORDER BY 1 ASC INTO CURSOR viewabonkod
    BROWSE 
ENDIF
Thisform.grdSomeTable.RecordSource=[viewabonkod]
Thisform.grdSomeTable.Refresh()
WAIT CLEAR   



Вот так РАБОТАЕТ!
А без BROWSE только выдает сообщение и висит
...
Рейтинг: 0 / 0
Заполнение и перезаполненные Grid из курсора.
    #37628941
Sergey Sizov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
прошелмимоSergey Sizov Сделайте так:


зачем?

просто создать индекс по нужному столбцу не?
нужно обязательно переливать в новый курсор?
не по феншую?Если сразу выдать окончательное решение может и не понять
...
Рейтинг: 0 / 0
Заполнение и перезаполненные Grid из курсора.
    #37628953
Sergey Sizov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AllkaySergey Sizov,

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
ThisForm.grdSomeTable.RecordSource=[]
WAIT WINDOW "Выполняется сортировка. Ждите..." NOWAIT NOCLEAR AT SROWS()/2, SCOLS()/2 
IF USED('viewabonkod')
    SELECT * FROM lvAbonent ORDER BY 1 DESC INTO CURSOR viewabonkod
    BROWSE 
ELSE  
    SELECT * FROM lvAbonent ORDER BY 1 ASC INTO CURSOR viewabonkod
    BROWSE 
ENDIF
Thisform.grdSomeTable.RecordSource=[viewabonkod]
Thisform.grdSomeTable.Refresh()
WAIT CLEAR   



Вот так РАБОТАЕТ!
А без BROWSE только выдает сообщение и виситЕще раз - зачем повторы? Нельзя Browse поставить после endif? У тебя точно в Thisform.grdSomeTable.Refresh() ничего нет? А если wait clear поставить сразу после endif, окно wait исчезает?
...
Рейтинг: 0 / 0
Заполнение и перезаполненные Grid из курсора.
    #37628961
IgorNG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[quot Allkay]Sergey Sizov,

А так?

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
ThisForm.grdSomeTable.RecordSource=[]
WAIT WINDOW "Выполняется сортировка. Ждите..." NOWAIT NOCLEAR AT SROWS()/2, SCOLS()/2 
IF USED('viewabonkod')
    SELECT * FROM lvAbonent ORDER BY 1 DESC INTO CURSOR viewabonkod
ELSE  
    SELECT * FROM lvAbonent ORDER BY 1 ASC INTO CURSOR viewabonkod
ENDIF
[color=red]SELECT viewabonkod[/color]
Thisform.grdSomeTable.RecordSource=[viewabonkod]
Thisform.grdSomeTable.Refresh()
[color=red]WAIT WINDOW TIMEOUT 0.01   [/color]
...
Рейтинг: 0 / 0
Заполнение и перезаполненные Grid из курсора.
    #37628977
Allkay
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sergey Sizov,

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
ThisForm.grdSomeTable.RecordSource=[]
WAIT WINDOW "Выполняется сортировка. Ждите..." NOWAIT NOCLEAR AT SROWS()/2, SCOLS()/2 
IF USED('viewabonkod')
    SELECT * FROM lvAbonent ORDER BY 1 DESC INTO CURSOR viewabonkod
*    BROWSE
WAIT CLEAR     
ELSE  
    SELECT * FROM lvAbonent ORDER BY 1 ASC INTO CURSOR viewabonkod
*    BROWSE 
WAIT CLEAR
ENDIF
WAIT CLEAR
Thisform.grdSomeTable.RecordSource=[viewabonkod]
Thisform.grdSomeTable.Refresh()



Вот так поставил, сообщение появилось и не исчезло и ни каких действий !
...
Рейтинг: 0 / 0
Заполнение и перезаполненные Grid из курсора.
    #37628984
Allkay
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IgorNG,
...
Рейтинг: 0 / 0
Заполнение и перезаполненные Grid из курсора.
    #37628986
прошелмимо
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sergey Sizovпрошелмимопропущено...


зачем?

просто создать индекс по нужному столбцу не?
нужно обязательно переливать в новый курсор?
не по феншую?Если сразу выдать окончательное решение может и не понять

ну тогда заколебите его.
пусть пишет километры кода.
...
Рейтинг: 0 / 0
Заполнение и перезаполненные Grid из курсора.
    #37628998
IgorNG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AllkayIgorNG,
Ну что же ты тупо копируешь-то. Квадратные скобки убери и все, что в них
...
Рейтинг: 0 / 0
Заполнение и перезаполненные Grid из курсора.
    #37629057
Allkay
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IgorNG,

Сообщение которое в верху в уголке, оно горит не постоянно, оно появляется если несколько раз щелкать па кнопке выполнения. Я его дорисовал для наглядности. И также висит ни чего не делает.
...
Рейтинг: 0 / 0
Заполнение и перезаполненные Grid из курсора.
    #37629059
Sergey Sizov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AllkaySergey Sizov,

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
ThisForm.grdSomeTable.RecordSource=[]
WAIT WINDOW "Выполняется сортировка. Ждите..." NOWAIT NOCLEAR AT SROWS()/2, SCOLS()/2 
IF USED('viewabonkod')
    SELECT * FROM lvAbonent ORDER BY 1 DESC INTO CURSOR viewabonkod
*    BROWSE
WAIT CLEAR     
ELSE  
    SELECT * FROM lvAbonent ORDER BY 1 ASC INTO CURSOR viewabonkod
*    BROWSE 
WAIT CLEAR
ENDIF
WAIT CLEAR
Thisform.grdSomeTable.RecordSource=[viewabonkod]
Thisform.grdSomeTable.Refresh()



Вот так поставил, сообщение появилось и не исчезло и ни каких действий !Что-то ты тут какие-то сказки рассказываешь. Отладчиком тут проходил? Или давай код, который можно запустить и посмотреть результат своими глазами.
...
Рейтинг: 0 / 0
Заполнение и перезаполненные Grid из курсора.
    #37629063
Sergey Sizov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Allkay,
и еще я задавал вопрос про пустоту Refresh() грида.
...
Рейтинг: 0 / 0
Заполнение и перезаполненные Grid из курсора.
    #37629073
IgorNG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Allkay,

Press any key - это результат твоих команд WAIT CLEAR.
...
Рейтинг: 0 / 0
Заполнение и перезаполненные Grid из курсора.
    #37629111
Sergey Sizov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IgorNGAllkay,

Press any key - это результат твоих команд WAIT CLEAR.Которые и должны были убирать это сообщение? Нет, это результат Wait window. Но вот есть большое подозрение, что топикстартер чего-то не видит/утаивает/путает.
...
Рейтинг: 0 / 0
Заполнение и перезаполненные Grid из курсора.
    #37629118
IgorNG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Allkay,

Кстати, в каком событии у тебя всё это безобразие происходит?
...
Рейтинг: 0 / 0
Заполнение и перезаполненные Grid из курсора.
    #37629184
Allkay
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
IgorNG,

Событие происходит Headr1.Click
Если прогонять отладчиком, то первый раз он проходит по этому пути, и вроде как все работает, выбирает и заполняет grdSomeTable.

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
SET STEP ON 
ThisForm.grdSomeTable.RecordSource=[]
WAIT WINDOW "Выполняется сортировка. Ждите..." NOWAIT NOCLEAR AT SROWS()/2, SCOLS()/2 
IF USED('viewabonkod')
    SELECT * FROM lvAbonent ORDER BY 1 DESC INTO CURSOR viewabonkod
ELSE  
    SELECT * FROM lvAbonent ORDER BY 1 ASC INTO CURSOR viewabonkod
ENDIF
SELECT viewabonkod
Thisform.grdSomeTable.RecordSource=[viewabonkod]
Thisform.grdSomeTable.Refresh()
WAIT WINDOW TIMEOUT 0.01  



Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
DO WHILE .T.
	
	READ EVENTS  && здесь курсор останавливается! 
	IF THIS.Cleanup()
		THIS.Cleanup2
		EXIT
	ENDIF
ENDDO


При повторном нажатии он лезет в классы, и проходит по ним, и до конца не доходит.
Вот этот класс в методе Viewabon.Activate
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
IF ThisForm.lll = .t.
	ThisForm.Release
ENDIF
LOCAL lcAlias
*-- Гарантирует, что соответствующтй псевдоним выбран всякий раз , 
*-- когда форма активизируется
IF TYPE("thisform.DataEnvironment") =='O'
lcAlias = thisform.DataEnvironment.InitialSelectedAlias
 ThisForm.cActiveAlias=lcAlias  &&EON
IF !EMPTY(lcAlias)
 SELECT (lcAlias)
ENDIF
ENDIF
*-- Если форма использует панель управления, она обновляется
IF !EMPTY(thisform.cClassToolBar) AND ;
    TYPE("oPers.oToolbar") == "O"
  oPers.oToolbar.Refresh()
ENDIF
*-- Обновление меню
*ACTIVATE MENU _MSYSMENU NOWAIT
*-- Перезапись стусной строки
SET MESSAGE TO thisform.Caption



Bctbredit.Refrech

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
LPARAMETERS tcCondition
LOCAL llBOF, ;
      llEOF, ;
      llEdit, ;
      llAppend, ;
      llReread,;
      llDelete,;	
      llSavRec,;
      llRevRec,;
	llClosable,;
      llCut,;
      llCopy,;
      llPaste,;
	llNavClndr,; 
	llReports,;
      nControlCount      
IF PARAMETERS() = 0
  tcCondition = ""
ENDIF
IF FormIsObject() 
This.DataSessionId=_screen.ActiveForm.DataSessionId  &&EON для приватных сессий данных
IF ! _screen.ActiveForm.lEnabledToolbar  &&отключить панель
*****
	LOCAL i
	FOR i=1 TO This.ControlCount
		IF UPPER(This.Controls(i).Name)=[CMD]
			This.Controls(i).Enabled=.F.
		ENDIF
	ENDFOR		
*	this.cmdExit.Enabled=.T.
	this.cmdExit.Enabled=.F.
ELSE
*!*	***добавление в подпись кнопки отчета имени отчета
PRIVATE ttt
ttt='Печать (Ctrl+P)'
oPers.oToolBar.cmdPrint.tooltiptext=ttt+IIF( !EMPTY(_screen.ActiveForm.cReportName),IIF( !EMPTY(_screen.ActiveForm.cPrintToolTip)," '"+_screen.ActiveForm.cPrintToolTip+"'",""),"")    
IF _screen.ActiveForm.lNavigate
llNavClndr=_screen.ActiveForm.lNavClndr
IF llNavClndr
	llBOF =  (tcCondition = "BOF") 
	llEOF =  (tcCondition = "EOF")  
ELSE
	llBOF =  (tcCondition = "BOF") OR BOF() 
	llEOF =  (tcCondition = "EOF") OR EOF() 



и зависает здесь
...
Рейтинг: 0 / 0
Заполнение и перезаполненные Grid из курсора.
    #37629248
Sergey Sizov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AllkayIgorNG,

Событие происходит Headr1.Click
Если прогонять отладчиком, то первый раз он проходит по этому пути, и вроде как все работает, выбирает и заполняет grdSomeTable.И правильно. Ибо тут все рабочее.
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
SET STEP ON 
ThisForm.grdSomeTable.RecordSource=[]
WAIT WINDOW "Выполняется сортировка. Ждите..." NOWAIT NOCLEAR AT SROWS()/2, SCOLS()/2 
IF USED('viewabonkod')
    SELECT * FROM lvAbonent ORDER BY 1 DESC INTO CURSOR viewabonkod
ELSE  
    SELECT * FROM lvAbonent ORDER BY 1 ASC INTO CURSOR viewabonkod
ENDIF
SELECT viewabonkod
Thisform.grdSomeTable.RecordSource=[viewabonkod]
Thisform.grdSomeTable.Refresh()
WAIT WINDOW TIMEOUT 0.01  


А вот ЭТО <censored>, за которое надо убивать при рождении:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
DO WHILE .T.
	
	READ EVENTS  && здесь курсор останавливается! 
	IF THIS.Cleanup()
		THIS.Cleanup2
		EXIT
	ENDIF
ENDDO


Дальнейшее рассматривать бессмысленно до дех пор, пока от цикла Do while не останется даже запаха.
...
Рейтинг: 0 / 0
Заполнение и перезаполненные Grid из курсора.
    #37629279
IgorNG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sergey Sizov,

А вот ЭТО <censored>, за которое надо убивать при рождении:

Я бы даже усугубил - ДО рождения ;)
...
Рейтинг: 0 / 0
Заполнение и перезаполненные Grid из курсора.
    #37629289
прошелмимо
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
LPARAMETERS tcCondition
LOCAL llBOF, ;
      llEOF, ;
      llEdit, ;
      llAppend, ;
      llReread,;
      llDelete,;	
      llSavRec,;
      llRevRec,;
	llClosable,;
      llCut,;
      llCopy,;
      llPaste,;
	llNavClndr,; 
	llReports,;



какие-то смутные потаенные сомнения вертятся, что часть этого спизжено у меня.
...
Рейтинг: 0 / 0
Заполнение и перезаполненные Grid из курсора.
    #37631192
Allkay
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sergey Sizov,

Так код правильный, и у тебя, и у меня. Неправильно то, что есть класс, bctbredit.Refresh, который периодически срабатывает (когда я выполняю свою процедуру) и уводит программу в небытие. Что мне показалось странным, это то, что с BROWSE проги, работали, только нужно курсоры закрывать. И я подумал что может кто ни будь знает что можно сделать.
...
Рейтинг: 0 / 0
Заполнение и перезаполненные Grid из курсора.
    #37631194
Allkay
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
прошелмимо,

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


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