Текущее время: Сб, июл 19 2025, 21:20

Часовой пояс: UTC + 3 часа


Правила форума


ВНИМАНИЕ!

Вопросы по SAP Query и Quick View - сюда



Начать новую тему Ответить на тему  [ Сообщений: 17 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: smartform и промежуточные суммы...
СообщениеДобавлено: Чт, авг 24 2006, 13:07 
Младший специалист
Младший специалист

Зарегистрирован:
Пт, мар 10 2006, 10:26
Сообщения: 84
проблема:
есть смарформа с таблицей, где на каждой странице должны выводиться промежуточные итоги(ИТОГО НА СТРАНИЦЕ) и на последней странице должно быть ИТОГО НА СТРАНИЦЕ и ВСЕГО...
на последней странице еще идет текст в несколько строк и желательно, чтобы этот блок не "грустил в одиночестве" на странице, т.е. желательно, чтобы несколько записей таблицы переносилось на последнюю страницу...
как можно изящней всего разрешить эту ситуацию...


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, авг 24 2006, 13:14 
Ассистент
Ассистент
Аватара пользователя

Зарегистрирован:
Чт, июн 22 2006, 14:03
Сообщения: 39
Откуда: Минск
Я в таком случае считал кол-во уже выведеных строк и, зная сколько их всего помещается на странице, при достижении определенного интервала (еще помещаются на текущей странице, но оставщийся текст перейдет на следующую) делал условную команду перехода на следующую страницу.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, авг 24 2006, 13:18 
Младший специалист
Младший специалист

Зарегистрирован:
Пт, мар 10 2006, 10:26
Сообщения: 84
Aristotel написал(а):
Я в таком случае считал кол-во уже выведеных строк и, зная сколько их всего помещается на странице, при достижении определенного интервала (еще помещаются на текущей странице, но оставщийся текст перейдет на следующую) делал условную команду перехода на следующую страницу.

что за команда перехода на следующую страницу?
-------------------------------------------------------------
smartforms + я = всего 7 дней :)


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, авг 24 2006, 13:28 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Чт, сен 09 2004, 07:32
Сообщения: 777
Откуда: Москва
Пол: Мужской
Проблема известна.
Простыми способами не решается (до версии 4.6С включительно, далее не работал) в силу невозможности определить количество выводимых строк (общий случай, высота табличной строки неизвестна) до перехода на следующую страницу.
Рекомендую написать обычный отчет WRITE'ами.

_________________
"Прежде чем сделать что-то, подумай, к чему это может привести..."


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, авг 24 2006, 13:39 
Ассистент
Ассистент
Аватара пользователя

Зарегистрирован:
Чт, июн 22 2006, 14:03
Сообщения: 39
Откуда: Минск
Если высота строки меняется динамически, то тогда да, тогда я не знаю.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, авг 24 2006, 13:41 
Старший специалист
Старший специалист

Зарегистрирован:
Пт, мар 25 2005, 11:46
Сообщения: 282
Откуда: SPb
Есть такой вид узла - "Команда", там есть флаг "переход на новую страницу".

_________________
Лучше сделать и пожалеть, чем не сделать и потом жалеть.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, авг 24 2006, 13:42 
Ассистент
Ассистент
Аватара пользователя

Зарегистрирован:
Чт, июн 22 2006, 14:03
Сообщения: 39
Откуда: Минск
Kanev написал(а):
Aristotel написал(а):
Я в таком случае считал кол-во уже выведеных строк и, зная сколько их всего помещается на странице, при достижении определенного интервала (еще помещаются на текущей странице, но оставщийся текст перейдет на следующую) делал условную команду перехода на следующую страницу.

что за команда перехода на следующую страницу?
-------------------------------------------------------------
smartforms + я = всего 7 дней :)


Create->Command
А там устанавливается птичка "Go to next page" и указывается одна из ваших страниц.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, авг 24 2006, 13:45 
Старший специалист
Старший специалист

Зарегистрирован:
Пт, мар 25 2005, 11:46
Сообщения: 282
Откуда: SPb
Изменение высоты строки можно избежать, если сделать высоту с запасом. Хотя, внешний вид может не устроить...
Также можно прикидывать, сколько строк текста будет в каждой строке и также это учитывать

_________________
Лучше сделать и пожалеть, чем не сделать и потом жалеть.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, авг 24 2006, 14:39 
Гуру-эксперт
Гуру-эксперт

Зарегистрирован:
Вт, авг 24 2004, 07:19
Сообщения: 3952
Откуда: ECC 6.0, South Kazakhstan
Не знаю, может в 4.6С такие проблемы существуют (не работал в 4.6С со SF), но в более высоких версиях это делается, и в общем-то без особого какого-то напряга.

Если в кратце, то примерно так:

1. Таблица имеет 3 области: заголовок, основная часть и ниж.колонтитул
2. С заголовком все ясно
3. В основной части выводим саму табл.инфу в строку, скажем, типа ITEM, но ставим ограничение, чтобы вывод осуществлялся для всех строк таблицы, кроме последней (для этого надо завести счетчик и наращивать его при обработке таблицы). Кроме того здесь же добавляем вывод папки, которая будет объединять в себе вывод 2 строк: 1 строку типа ITEM, 2 строка будет состоять из 1 ячейки шириной во всю таблицу (сюда мы выведем текст который следует за таблицей). Ну и как вы уже догадались ставим в условиях, что папка будет выводиться только когда будет обрабатываться последняя запись таблицы + на папку ставится защита от переноса.

Как результат, последняя строка таблицы будет выводиться всегда (неразрывно) вместе с последующим текстом.

В принципе, такой же подход я и в SAPScript использовал.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, авг 24 2006, 16:00 
Младший специалист
Младший специалист

Зарегистрирован:
Пт, мар 10 2006, 10:26
Сообщения: 84
OlegDm написал(а):
Не знаю, может в 4.6С такие проблемы существуют (не работал в 4.6С со SF), но в более высоких версиях это делается, и в общем-то без особого какого-то напряга.

Если в кратце, то примерно так:

1. Таблица имеет 3 области: заголовок, основная часть и ниж.колонтитул
2. С заголовком все ясно
3. В основной части выводим саму табл.инфу в строку, скажем, типа ITEM, но ставим ограничение, чтобы вывод осуществлялся для всех строк таблицы, кроме последней (для этого надо завести счетчик и наращивать его при обработке таблицы). Кроме того здесь же добавляем вывод папки, которая будет объединять в себе вывод 2 строк: 1 строку типа ITEM, 2 строка будет состоять из 1 ячейки шириной во всю таблицу (сюда мы выведем текст который следует за таблицей). Ну и как вы уже догадались ставим в условиях, что папка будет выводиться только когда будет обрабатываться последняя запись таблицы + на папку ставится защита от переноса.

Как результат, последняя строка таблицы будет выводиться всегда (неразрывно) вместе с последующим текстом.

В принципе, такой же подход я и в SAPScript использовал.


сделал по аналогии и возник вопрос, а где тогда размещать промежуточные суммы(ИТОГ ПО СТРАНИЦЕ)?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, авг 24 2006, 17:18 
Старший специалист
Старший специалист

Зарегистрирован:
Пт, мар 25 2005, 11:46
Сообщения: 282
Откуда: SPb
Сам не делал, но моежет поможет состояние системного поля &sfsy-mainend& - устанавливается при окончании обработки главного окна на текущей странице. В этот момент посчитать подитог по обработанным строкам и вывести в текст под таблицей...

_________________
Лучше сделать и пожалеть, чем не сделать и потом жалеть.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, авг 24 2006, 18:08 
Старший специалист
Старший специалист

Зарегистрирован:
Пт, мар 25 2005, 11:46
Сообщения: 282
Откуда: SPb
Вот еще что можно сделать: создать footer в таблице, поставить флаг события at page break. В footer-е добавить строки программы, где и присваивать полю, хранящему нарастающую сумму текущий подитог. Потом это поле вывести куда угодно...

_________________
Лучше сделать и пожалеть, чем не сделать и потом жалеть.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, авг 25 2006, 06:48 
Гуру-эксперт
Гуру-эксперт

Зарегистрирован:
Вт, авг 24 2004, 07:19
Сообщения: 3952
Откуда: ECC 6.0, South Kazakhstan
Kanev написал(а):
...
сделал по аналогии и возник вопрос, а где тогда размещать промежуточные суммы(ИТОГ ПО СТРАНИЦЕ)?


да в принципе можно как и в footer на странице, так и в нижнем колонтитуле для таблице (там же и обнуляешь промеж.суммы) - тут уже все зависит от самого формуляра, в каком виде ты его хочешь видеть. В общем, все это решаемо.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, янв 23 2007, 16:30 
Начинающий
Начинающий

Зарегистрирован:
Вт, янв 23 2007, 16:21
Сообщения: 3
nicky555 написал:
Проблема известна.
Простыми способами не решается (до версии 4.6С включительно, далее не работал) в силу невозможности определить количество выводимых строк (общий случай, высота табличной строки неизвестна) до перехода на следующую страницу.
Рекомендую написать обычный отчет WRITE'ами.


Я вот вроде бы сделал, хотя ... может быть только у меня работает.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, янв 23 2007, 16:35 
Менеджер
Менеджер

Зарегистрирован:
Вт, дек 07 2004, 10:39
Сообщения: 610
все как ОлегДМ говорит в 4.7

_________________
полный SAPец


Принять этот ответ
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 17 ]  На страницу 1, 2  След.

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


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

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB