powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Grid.ColumnX SUM ()
3 сообщений из 3, страница 1 из 1
Grid.ColumnX SUM ()
    #32744370
Фотография help123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Проблема такого плана:

есть две связанные таблицы 'один ко многим' - соответственно mparent и mchild по полю - idparent (key) и idchild. В форме есть контролы (textbox, combobox) которые берут данные с mparent, и грид, построенный по mchild.

необходимо просумировать столбец netto4k в гриде (mchild) и вывести результат в TextBox - по имени totnetto4k в форме

пишу:
Код: plaintext
1.
2.
3.
4.
5.
v_idparent = mparent.idparent
SELECT SUM (ch.netto4k) AS totnetto4k FROM mchild ch;
WHERE ch.idchild = v_idparent;
INTO CURSOR cNetto
ThisForm.totnetto4k.Value = cNetto.totnetto4k
ThisForm.Gridmchild.Refresh
непонимаю: получается, но данные обновляются только после полного закрытия Фокса и открытия заново, либо после нескольких щелчков по разным колонкам этого же столбца в Гриде. Код размещал в Valid и Interactive change Грида.
Может дело в том что я использую Optimistic Row Buffering в курсорах Data Environment формы. Но даже после End Tranzaction все также.
Может кто сталкивался ......
...
Рейтинг: 0 / 0
Grid.ColumnX SUM ()
    #32744491
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1) SELECT-SQL отбирает записи только в исходных данных. Значения в буфере таблицы он не видит. Для суммирования данных по буферу надо использовать функцию CALCULATE. Однако функция CALCULATE перемещает указатель записи в конец таблицы. Надо будет возвращать его в исходное положение

2) Ты уж определись, в какой именно момент хочешь сделать расчет.

Valid() - в момент выхода из Grid
InteractiveChange() - а где ты его нашел в Grid?

3) После программного внесения изменения в TextBox его содержимое следует обновить

TextBox.Refresh()
...
Рейтинг: 0 / 0
Grid.ColumnX SUM ()
    #32745078
Фотография help123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У меня скорее всего чтото с Транзакциями не так.

Я не использовал функцию
Код: plaintext
= TABLEUPDATE (.T.), 
могло ли это повлиять.

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


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