Текущее время: Пт, авг 29 2025, 08:34

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




Начать новую тему Ответить на тему  [ Сообщений: 16 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Excel
СообщениеДобавлено: Вт, ноя 14 2006, 18:31 
Специалист
Специалист

Зарегистрирован:
Вс, фев 26 2006, 14:33
Сообщения: 171
Всем привет!
Ситуация такая: во время обновления запроса ДО вывода данных на лист нужно форматировать ячейки. Можно ли это как-нибудь сделать?


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

Зарегистрирован:
Вт, окт 11 2005, 12:10
Сообщения: 687
Откуда: Москва
Пол: Мужской
А смысл? Все равно потом BEx свой формат поверх перепишет.

_________________
Глаза боятся, а руки крюки


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, ноя 14 2006, 19:44 
Специалист
Специалист

Зарегистрирован:
Вс, фев 26 2006, 14:33
Сообщения: 171
в том-то и дело, что BEx не переписывает свои форматы, а только данные вставляет.... :(


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

Зарегистрирован:
Вт, окт 11 2005, 12:10
Сообщения: 687
Откуда: Москва
Пол: Мужской
Мне кажется, это зависит от настройки.
(устанавливать формат или нет)

Тут хочется задать вопрос:
А что нужно получить в конечном итоге?
И тут же еще один:
Чем не устраивает событие SAPBExOnRefresh, чего не получается сделать с его помощью?

_________________
Глаза боятся, а руки крюки


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, ноя 15 2006, 09:49 
Специалист
Специалист

Зарегистрирован:
Вс, фев 26 2006, 14:33
Сообщения: 171
И так: запросом выбираются данные, после их вывода на лист, данные форматируются с использованием SAPBExOnRefresh. При дальнейшей работе с отчетом (например, развертке) на листе остается это форматирование, в следствие чего данные отображаются немного криво. Хотелось бы очищать форматы ячеек листа ДО вывода данных на лист (SAPBExOnRefresh как раз работает ПОСЛЕ).

G написал:
Мне кажется, это зависит от настройки.
(устанавливать формат или нет)

о какой настройке идет речь?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, ноя 15 2006, 11:11 
Ассистент
Ассистент

Зарегистрирован:
Вт, апр 18 2006, 15:27
Сообщения: 32
а почему бы в том же самом OnRefresh не удалять сперва старое форматирования, а потом делать новое?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, ноя 15 2006, 11:15 
Ассистент
Ассистент

Зарегистрирован:
Пн, дек 26 2005, 18:23
Сообщения: 42
Mugunhwa написал(а):
И так: запросом выбираются данные, после их вывода на лист, данные форматируются с использованием SAPBExOnRefresh. При дальнейшей работе с отчетом (например, развертке) на листе остается это форматирование, в следствие чего данные отображаются немного криво. Хотелось бы очищать форматы ячеек листа ДО вывода данных на лист (SAPBExOnRefresh как раз работает ПОСЛЕ).

G написал:
Мне кажется, это зависит от настройки.
(устанавливать формат или нет)

о какой настройке идет речь?

А стандартных настроек SAPBEXстилей отображения информации в bex-отчётах не хватает разве ? Или форматирование макросом гораздо сложнее?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, ноя 15 2006, 12:04 
Специалист
Специалист

Зарегистрирован:
Вс, фев 26 2006, 14:33
Сообщения: 171
SKokorev написал(а):
а почему бы в том же самом OnRefresh не удалять сперва старое форматирования, а потом делать новое?

потому что к примеру в строке 5 было объединение ячеек с 1 по 7, после развертки объединения в этой строке быть не должно, но оно остается и в эти объединенные ячейки записывается как бы 7 разных циферок, полученных от запроса (но на самом деле записывается только первая циферка, а остальные затираются, т.к. ячейка объединенная). Если потом в SAPBExOnRefresh очищать форматы, то останется цифра в первой ячейке, а в 2-7 ничего не будет. Поэтому надо очишать формат до вывода данных.....


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

Зарегистрирован:
Вс, фев 26 2006, 14:33
Сообщения: 171
stiker написал(а):
А стандартных настроек SAPBEXстилей отображения информации в bex-отчётах не хватает разве ? Или форматирование макросом гораздо сложнее?


Форматирование сложнее....

отчет примерно такого вида:
Изображение

Сейчас циферки из BW выбираются для последних двух столбцов, остальное лежит на скрытом листе и во время одновления запроса макросами копируется нужный текст и форматируются ячейки.

Может есть идеи, как такой отчет сделать по-другому? :?:


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

Зарегистрирован:
Вт, окт 11 2005, 12:10
Сообщения: 687
Откуда: Москва
Пол: Мужской
I.
А почему бы не генерить макросом _всю_ таблицу?
II.
В SAPBEXonRefresh проводится проверка формата и если есть объединения ячеек, вызывается повторное обновление отчета. Если объединений нет, то - боевая раскраска (с объединениями)...
Дольше, но работоспособно.
III.
Объединение делать на уровне границ ячеек... т.е. нет границ - ячейка смотрится как одна, "Подпункт А" выводится с Indent'ом соответствующим.
VI.
У меня сложилось впечатление, что BEx натыкаясь на объединенные ячейки не теряет данные а просто пропускает эту строку и ничего в нее не пишет (надо проверить), тогда просто удалить строки с объединенными ячейками.

_________________
Глаза боятся, а руки крюки


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

Зарегистрирован:
Вс, фев 26 2006, 14:33
Сообщения: 171
G написал:
I.
А почему бы не генерить макросом _всю_ таблицу?

потому что надо сохранить возможность развертки и фильтрации

G написал:
II.
В SAPBEXonRefresh проводится проверка формата и если есть объединения ячеек, вызывается повторное обновление отчета. Если объединений нет, то - боевая раскраска (с объединениями)...
Дольше, но работоспособно.

III.
Объединение делать на уровне границ ячеек... т.е. нет границ - ячейка смотрится как одна, "Подпункт А" выводится с Indent'ом соответствующим.

интересные идеи, надо попробовать
спасибо :)

G написал:
VI.
У меня сложилось впечатление, что BEx натыкаясь на объединенные ячейки не теряет данные а просто пропускает эту строку и ничего в нее не пишет (надо проверить), тогда просто удалить строки с объединенными ячейками.

точно затирает - проверено.... :(


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, ноя 15 2006, 18:48 
Ассистент
Ассистент

Зарегистрирован:
Пн, дек 26 2005, 18:23
Сообщения: 42
Mugunhwa написал(а):
stiker написал(а):
А стандартных настроек SAPBEXстилей отображения информации в bex-отчётах не хватает разве ? Или форматирование макросом гораздо сложнее?

Форматирование сложнее....

отчет примерно такого вида:

Может есть идеи, как такой отчет сделать по-другому? :?:

Из своего опыта: когда пользователи выставляют подобные хотелки - уникальное форматирование и гибкость работы (фильтрации, развёртки и т.п.) я отвечаю - чем уникальнее форматирование, тем меньше гибкости.
Либо ты сделай форматирование при помощи SAPBEXстилей и убеди пользователей что в отчёте такого вида есть все необходимые данные и требуемая гибкость, либо форматируй отчёт при помощи макросов, создавай технические листы, копируй оттуда и т.п.. Всё хорошо - только никакой гибкости.

Попробуй предложить решения с 2-мя реализациями - один отчёт для печати с нужным форматированием и без гибкости в работе, а один без форматирования - зато гибкий.

Либо вообще сделай гибрид того и другого. К примеру пользователь вначале крутит данные как хочет, а потом нажимает кнопку и на другом листе рисуется отчёт с нужным форматированием и с данными в нужном разрезе.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, ноя 15 2006, 18:59 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Вт, окт 11 2005, 12:10
Сообщения: 687
Откуда: Москва
Пол: Мужской
Соглашусь со stiker
А что если пользователь захочет развернуть признак горизонтально?

_________________
Глаза боятся, а руки крюки


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

Зарегистрирован:
Вс, фев 26 2006, 14:33
Сообщения: 171
G написал:
Соглашусь со stiker
А что если пользователь захочет развернуть признак горизонтально?

Это конечно правильно, что надо ограничивать хотелки пользователей, но тут не все так страшно. В данном случае пользователи хотят иметь возможность разворачивать по ФГ/Периоду и счету ГК и точно известно, что горизонтально они эти признаки разворачивать не будут. Сделать такой отчет не напрягает, к тому же просто интересно такое реализовать :)


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Чт, ноя 16 2006, 11:43 
Ассистент
Ассистент

Зарегистрирован:
Пн, дек 26 2005, 18:23
Сообщения: 42
Mugunhwa написал(а):
G написал:
Соглашусь со stiker
А что если пользователь захочет развернуть признак горизонтально?

Это конечно правильно, что надо ограничивать хотелки пользователей, но тут не все так страшно. В данном случае пользователи хотят иметь возможность разворачивать по ФГ/Периоду и счету ГК и точно известно, что горизонтально они эти признаки разворачивать не будут. Сделать такой отчет не напрягает, к тому же просто интересно такое реализовать :)

Тогда сделай 2 VBA-кнопки в отчёте - по одной будет разворачиваться по ФГ/Периоду, а по второй - счёту ГК.

На эти кнопки повесь SAPBex - функционал в таком порядке:
1. Очистить область вывода
2. При помощи SAPBex-функций задай нужную развёртку
3. Принудительно обнови запрос при помощи того же SAPBex

И будет тебе счастье


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

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


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

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


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

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