AXForum  
Вернуться   AXForum > Microsoft Dynamics NAV > NAV: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 03.02.2005, 15:53   #1  
soleu_imported is offline
soleu_imported
Участник
 
18 / 10 (1) +
Регистрация: 27.12.2004
В MatrixBox можно легко показывать суммы по строкам (ну выводить их в левую часть MatrixBoxa)
А может кто знает решение, как показать суммы по столбцам?
2 дня мучаюсь, пока не могу придумать как :-(((
Старый 08.02.2005, 17:12   #2  
rootadmin is offline
rootadmin
Участник
Аватар для rootadmin
 
224 / 10 (1) +
Регистрация: 25.03.2003
Адрес: Москва
Решал такую проблему.

Нашел решение несколькими способами
1. Самый простой - писать эту сумму в заголовке. Плюс - простота исполнения, минус - страдает интерфейс
2. Более сложный - Сделать основную таблицу темповой и добавить в нее строку ИТОГО (ключ подобрать так, чтобы строчка была последней). Ну и для этой строчки Вычислять уже сумму.
3. Есть еще мысли с использованием субформы, но там надо по хитрому обновляться, позиционироваться и т.д. Короче гемморой. Я не пробовал даже.

Вообще можно сделать так. Сделать одно поле еще на форме и писать туда сумму по тому столбцу,на котором сейчас стоим. Дешево и сердито.
__________________
С уваженем,
rootadmin
Старый 08.02.2005, 17:47   #3  
soleu_imported is offline
soleu_imported
Участник
 
18 / 10 (1) +
Регистрация: 27.12.2004
Отлично, большое спасибо!
3) Я вот тоже попробовал с сабформой, оно даже немного работало, но как-то все громоздко и неудобно... И я делал через другую временную таблмцу, в которую заносил суммы...
1) С заголовками некрасиво, точно, страдает интерфейс
2) А вот с темповой таблицей и с полем (4), в котором подсвечивается текущая сумма - вполне рабочие решения!!!

Еще раз спасибо, сделаю с темповой таблицей
Старый 09.02.2005, 14:16   #4  
Dzemon is offline
Dzemon
Moderator
 
1,247 / 12 (3) ++
Регистрация: 09.09.2004
Я вот поигрался с Матриксом.
Можно сделать вот такую картинку (см. ниже)
Но, при этом масса ограничений возникает и первое - кол-во строк должно быть заранее известно и ИТОГО будет в самом конце.
На данной картинке отображаются складские остатки товаров по месяцам и их сумма в ИТОГО.
Изображения
Тип файла: bmp Matrix_2.bmp (208.6 Кб, 606 просмотров)
Старый 09.02.2005, 16:04   #5  
soleu_imported is offline
soleu_imported
Участник
 
18 / 10 (1) +
Регистрация: 27.12.2004
Оказалось очень несложно сделать МАТРИКС с временной переменной-

например по вертикали список поставщиков

///1 Заполняется TempVendorRec из таблицы вендоров
// 2 Добавляется запись ИТОГО
/// 3 Запускается форма -
IF ( FORM.RUNMODAL( 71207, TempVendorRec) = ACTION:K) THEN

в самой форме выводятся отдельные значения ячеек ,
для суммы для простоты можно тоже рассчитывать значение в конкретной ячейке, ставя соответствующие фильтры на таблицу
(ну добавив ключ SumIndexField например, чтобы какое-то быстродействие было )
У меня вроде нормально заработало таким методом, описанным rutadmeen

Вопрос к Dzemon
а каким методом сделана последняя строка ИТОГО?

Примечание
я конечно не знаю, как в этом случае, но вот у меня в реализации количество строк может быть известно -
( в моем случае обновление МАТРИКСА происходит по заданию фильтра и нажатию кнопочки)
задается какой-то фильтр, например
VendRecord.SETFILTER(....)
и после его задания обновляю глобальную переменную
VerticalCount := VendRecord.COUNT;
после этого использую VerticalCount
Старый 09.02.2005, 16:36   #6  
Dzemon is offline
Dzemon
Moderator
 
1,247 / 12 (3) ++
Регистрация: 09.09.2004
Я сделал таблицу основной формы Целое, т.е. Rec = Целое, для левой колонки матрикса я сделал текстовую переменную и пишу тут что хочу, ну естественно при Целое.Число = 14 я вставляю "ИТОГО". В вашем случае при Rec.COUNT + 2
Но для подсчета итогов нельзя использовать накапливающую переменную в триггерах AfterGetRecord, т.к. при перемещении курсора она будет пересчитываться произвольным образом.
 


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 13:15.