powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Заголовок формы
25 сообщений из 34, страница 1 из 2
Заголовок формы
    #34913599
StandD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет!

Вот такой вопрос. Есть форма с гридом. Есть Лоад формы.
В нем -
thisForm.Caption = "Кол-во записей " + transform(reccount())
_screen.ActiveForm.refresh

Все хорошо. На форме несколько кнопок с реализацией фильтров. После отработки каждой такая же запись
thisForm.Caption = "Кол-во записей " + transform(reccount())
_screen.ActiveForm.refresh

Но на форме остается значение, которое было при входе в форму.
Где косячок-с?
...
Рейтинг: 0 / 0
Заголовок формы
    #34913619
PaulWist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
StandDВсем привет!

Все хорошо. На форме несколько кнопок с реализацией фильтров. После отработки каждой такая же запись
thisForm.Caption = "Кол-во записей " + transform(reccount())
_screen.ActiveForm.refresh

Но на форме остается значение, которое было при входе в форму.
Где косячок-с?

Вот здесь

Код: plaintext
thisForm.Caption = "Кол-во записей " + transform(reccount())
...
Рейтинг: 0 / 0
Заголовок формы
    #34913628
Sergey Sizov.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Где косячок-с?
В мозгах. На каком основании было решено, что команда из набора SET команд производит какие-либо действия с данными?
...
Рейтинг: 0 / 0
Заголовок формы
    #34913633
StandD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
И в чем прикол?
Reccount() считает ВСЕ записи? Но я пробовал вместо этого делать после отработки кнопки так:

set filter to ...
go top
count to kol_zap
thisForm.Caption = "Кол-во записей " + str(kol_zap,4,0)

Результат тот же...
...
Рейтинг: 0 / 0
Заголовок формы
    #34913654
Sergey Sizov.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Reccount() считает ВСЕ записи?
Показывает(не считает) количество записей в таблице. Set filter операций над данными не производит. Почему должно было поменяться количесвто записей в таблице?
...
Рейтинг: 0 / 0
Заголовок формы
    #34913660
StandD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Sergey Sizov. Reccount() считает ВСЕ записи?
Показывает(не считает) количество записей в таблице. Set filter операций над данными не производит. Почему должно было поменяться количесвто записей в таблице?

А... Я-то грешным делом думал, что COUNT подсчитывает только "видимые" записи.
И как эту задачку тогда проще решить?
...
Рейтинг: 0 / 0
Заголовок формы
    #34913703
АлексейО
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
метод load исполняется только один раз при загрузке формы
StandDНо я пробовал вместо этого делать после отработки кнопки так:
set filter to ...
go top
count to kol_zap
thisForm.Caption = "Кол-во записей " + str(kol_zap,4,0)

Результат тот же...

этот вариант будет правильней,
а не работает может из-за фильтра,
он действительно что-то фильтрует и отличатся от начального?
...
Рейтинг: 0 / 0
Заголовок формы
    #34913711
StandD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
АлексейОметод load исполняется только один раз при загрузке формы
StandDНо я пробовал вместо этого делать после отработки кнопки так:
set filter to ...
go top
count to kol_zap
thisForm.Caption = "Кол-во записей " + str(kol_zap,4,0)

Результат тот же...

этот вариант будет правильней,
а не работает может из-за фильтра,
он действительно что-то фильтрует и отличатся от начального?

Да! Причем в гриде все действительно меняется, записи - от 5 до 20000. Грид обновляется, а в заголовке - та же цифра...
...
Рейтинг: 0 / 0
Заголовок формы
    #34913734
Sergey Sizov.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Reccount() и Count - две совершенно разные вещи.
Я-то грешным делом думал, что COUNT подсчитывает только "видимые" записи.
Он действительно считает только "видимые". Где-то ошибка в программе. Возможно, где-то просто затирается выражением с Reccount().
...
Рейтинг: 0 / 0
Заголовок формы
    #34913764
StandD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да нет... RECCOUNT вообще в проекте больше не встречается (убрал)
...
Рейтинг: 0 / 0
Заголовок формы
    #34913800
StandD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нашел зацепку. Убрал из Лоада Caption. И увидел, что после нажатия кнопок с фильтрами заголовок формы ВООБЩЕ НЕ МЕНЯЕТСЯ!

В клике кнопки прописано:

set filter to doc="12345"
go top
count to kol_zap
thisForm.Caption = "Кол-во записей " + str(kol_zap,4,0)
_screen.ActiveForm.refresh

Но не работает!
...
Рейтинг: 0 / 0
Заголовок формы
    #34913851
PaulWist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
StandD
Но не работает!

Не верю

Код: plaintext
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.
WITH CREATEOBJECT('mf')
	.addobject('cmd','cmd')
	.cmd.visible = .t.
	.show( 1 )
ENDWITH 


DEFINE CLASS mf as Form 

PROCEDURE Load
CREATE CURSOR test (f1 c ( 10 ))

INSERT INTO test VALUES ('12345')
INSERT INTO test VALUES ('1234567')

ENDPROC
PROCEDURE init
COUNT TO m.v
this.Caption = TRANSFORM(m.v)
ENDPROC

ENDDEFINE  

DEFINE CLASS cmd as Commandbutton 

PROCEDURE Click 
SET FILTER TO f1 = '12345'
COUNT TO m.v
thisform.Caption = TRANSFORM(m.v)
ENDPROC

ENDDEFINE  
...
Рейтинг: 0 / 0
Заголовок формы
    #34913871
Sergey Sizov.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
авторthisForm.Caption = "Кол-во записей " + str(kol_zap,4,0)
_screen.ActiveForm.refresh
На чем основана уверенность, текущая форма и _screen.ActiveForm - одно и то же? Почему обновляется не thisform?
...
Рейтинг: 0 / 0
Заголовок формы
    #34913892
StandD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
PaulWist StandD
Но не работает!

Не верю


Гадом буду...
...
Рейтинг: 0 / 0
Заголовок формы
    #34913893
PaulWist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[quot Sergey SizovНа чем основана уверенность, текущая форма и _screen.ActiveForm - одно и то же? Почему обновляется не thisform?[/quot]

Серёг, да это без разницы какую форму рефрешить, Caption меняется без этого.
...
Рейтинг: 0 / 0
Заголовок формы
    #34913898
StandD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Sergey Sizov. авторthisForm.Caption = "Кол-во записей " + str(kol_zap,4,0)
_screen.ActiveForm.refresh
На чем основана уверенность, текущая форма и _screen.ActiveForm - одно и то же? Почему обновляется не thisform?

Заменил _screen.ActiveForm.refresh на thisform.refresh

Все по-прежнему, только грид обновляется после клика по нему... ;-((
...
Рейтинг: 0 / 0
Заголовок формы
    #34913899
PaulWist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
StandD PaulWist StandD
Но не работает!

Не верю


Гадом буду...

Запусти пример
...
Рейтинг: 0 / 0
Заголовок формы
    #34913943
StandD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
PaulWist
Запусти пример

Работает, блин. А у меня нет! Может, пятница, вечер, - пора сваливать?
...
Рейтинг: 0 / 0
Заголовок формы
    #34913957
Sergey Sizov.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Серёг, да это без разницы какую форму рефрешить, Caption меняется без этого.
Да я в курсе...
Просто сочетание команд кажется мне каким-то стремным...
...
Рейтинг: 0 / 0
Заголовок формы
    #34913962
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
StandDНашел зацепку. Убрал из Лоада Caption. И увидел, что после нажатия кнопок с фильтрами заголовок формы ВООБЩЕ НЕ МЕНЯЕТСЯ!...
Чтобы не искать все ошибки одновременно понавтыкай MessageBox`ов и смотри что, где и когда происходит.
Код: plaintext
1.
2.
3.
4.
set filter to doc="12345"
*go top && Это лишнее
count to kol_zap
MessageBox("Кол-во записей " + str(kol_zap, 4 , 0 ),  64 , 'Место 1')
...

PS а еще есть SET STEP ON и дебагер
...
Рейтинг: 0 / 0
Заголовок формы
    #34913981
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И в твоем случае лучше использовать не SET FILTER, а представление или курсор-адаптер (там reccount() так как тебе надо работать будет) т.к. этим своим подсчетом ты все плюсы SET FILTER к нулю сводишь.
...
Рейтинг: 0 / 0
Заголовок формы
    #34914024
StandD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dima TИ в твоем случае лучше использовать не SET FILTER, а представление или курсор-адаптер (там reccount() так как тебе надо работать будет) т.к. этим своим подсчетом ты все плюсы SET FILTER к нулю сводишь.

В-общем-то SET FILTER мне нужен для обновления Грида...
Но дело не в этом.
Проблема в том, что НЕ РАБОТАЕТ thisForm.Caption !!!
...
Рейтинг: 0 / 0
Заголовок формы
    #34914064
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
StandD...
Проблема в том, что НЕ РАБОТАЕТ thisForm.Caption !!! У всех работает, а у него вдруг не работает

Ищи чем обратно перезаписывается или почему эта строка не выполняется. Поставь MessageBox() после thisForm.Caption = ... и смотри что творится.

PS Хотя отладчиком удобней.
...
Рейтинг: 0 / 0
Заголовок формы
    #34914075
StandD
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dima T StandD...
Проблема в том, что НЕ РАБОТАЕТ thisForm.Caption !!! У всех работает, а у него вдруг не работает

Ищи чем обратно перезаписывается или почему эта строка не выполняется. Поставь MessageBox() после thisForm.Caption = ... и смотри что творится.

PS Хотя отладчиком удобней.

Message поставил, отрабатывает нормально кол-во, а заголовок не обновляется
...
Рейтинг: 0 / 0
Заголовок формы
    #34914078
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
StandDВ-общем-то SET FILTER мне нужен для обновления Грида...
Преимущества SET FILTER перед представлением (или КА) в том что не делается полная выборка, т.е. грид перебирает записи пока экран не заполнит, и останавливается. А при использовании COUNT ты заставляешь сделать перебор всех записей и проверку их на соответствие фильтру, что по времени сопоставимо с выборкой в курсор.
...
Рейтинг: 0 / 0
25 сообщений из 34, страница 1 из 2
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Заголовок формы
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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