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

Часовой пояс: 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 часа


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

Сейчас этот форум просматривают: Ahrefs [Bot]


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

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