Текущее время: Вт, окт 23 2018, 10:19

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 125 ]  На страницу Пред.  1 ... 5, 6, 7, 8, 9
Автор Сообщение
 Заголовок сообщения: Re: XLSX Workbench
СообщениеДобавлено: Чт, сен 13 2018, 14:10 
Начинающий
Начинающий
Аватара пользователя

Зарегистрирован:
Ср, июл 29 2009, 08:20
Сообщения: 20
Пол: Мужской
Добрый день! Спасибо за разработку! Очень понравилась. Хотелось задать вопрос по использованию. Посмотрел примеры в хелпе и решил совместить 2 варианта - связку книг и когда в каждой их этих книг несколько листов. Никак не могу подступиться - какой мне сделать контекстную структуру и сам формуляр.

Если описать так по уровням, форма должна выглядеть так:
1. Сотрудник 1 ( книга )
1.1. Отпуск ( лист1)
1.1.1. Поля заголовка для отпуска
1.1.2. Таблица данных по отпуску
1.2. Больничный ( лист2)
1.2.1. Поля заголовка для больничного
1.2.2. Таблица данных по больничному
2. Сотрудник 2 ( книга )
....
и так далее

Надеюсь понятно описал ) Спасибо заранее.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: XLSX Workbench
СообщениеДобавлено: Чт, сен 13 2018, 15:06 
Почетный гуру
Почетный гуру

Зарегистрирован:
Пт, дек 04 2009, 13:52
Сообщения: 180
Добрый день.
Вкратце:
Надо сделать форму для одного сотрудника, содержащую два листа. В программе печати формируете эту форму (книгу) несколько раз - каждый раз по новому сотруднику. А чтобы все книги попали в одну связку - в начале программы вызываете viewer_bundle_open, а в конце viewer_bundle_close.

Более подробно:
1) Делайте форму для одного сотрудника.
Поскольку количество листов фиксировано (не динамика), то делайте в качестве контекста Структуру. В эту структуру вставьте все необходимые поля для заголовков обоих листов ( 1.1.1. Поля заголовка для отпуска и 1.2.1. Поля заголовка для больничного ) , а также, две вложенные таблицы ( 1.1.2. Таблица данных по отпуску и 1.2.2. Таблица данных по больничному).
В самом формуляре сделайте следующее. В дерево структуры добавьте два листа; в каждый из листов добавьте Паттерн заголовка и Грид; добавьте Значения, свяжите всё с соответствующими полями контекста. В шаблон добавьте два листа, разметьте их и сопоставьте области с соответствующими Паттернами и Гридами. В общем, всё как обычно.

2) В программе печати (как описано в этом примере) делайте следующее:
Открывайте связку книг: PERFORM viewer_bundle_open IN PROGRAM saplzxlwb .
Делайте цикл по сотрудникам. Внутри цикла: как обычно, заполняете контекст и вызываете CALL FUNCTION 'ZXLWB_CALLFORM' для одного сотрудника.
Закрываете связку книг: PERFORM viewer_bundle_close IN PROGRAM saplzxlwb .


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: XLSX Workbench
СообщениеДобавлено: Пт, сен 14 2018, 07:26 
Начинающий
Начинающий
Аватара пользователя

Зарегистрирован:
Ср, июл 29 2009, 08:20
Сообщения: 20
Пол: Мужской
Добрый день!
Спасибо за ответ, но дело в том, что количество листов в книге может быть динамическим, наверное я неверно описал в сообщении.
Я вчера решил пойти путем разложения всего по листам. И тут тоже столкнулся с проблемой.
На листе должен быть заголовок и таблица. Когда я добавляю таблицу, ексель файл ломается - если же я использую только заголовок, то все работает нормально.

Используемый контекст:

Изображение

Формуляр:

Изображение


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: XLSX Workbench
СообщениеДобавлено: Пт, сен 14 2018, 12:11 
Почетный гуру
Почетный гуру

Зарегистрирован:
Пт, дек 04 2009, 13:52
Сообщения: 180
xbusterx написал:
количество листов в книге может быть динамическим
В таком случае контекст должен представлять собой Табличный тип, а в структуре формуляра лист нужно поместить внутрь Цикла по контексту, как в этом примере. По поводу разного наполнения листов - вы можете поступить двумя способами:
1) поместить все возможные Паттерны форматирования на один Лист и выводить их по условию
2) сделать разные Листы для каждого бланка и также, выводить их по условию. Этот способ, на мой взгляд, гораздо нагляднее - я бы использовал его. В вашем случае все эти Листы надо поместить внутрь Цикла по контексту.

И да, для вывода простой таблицы используйте компонент Грид, им пользоваться гораздо проще и работает он быстрее. А связку Цикл+Паттерн+Значения делать гораздо утомительнее, оставьте её для более сложных случаев.

xbusterx написал:
Когда я добавляю таблицу, ексель файл ломается
На первый взгляд, вы всё сделали правильно. Ничего ломаться не должно, видимо это какой-то баг. Пришлите, пожалуйста, мне на почту (см.здесь) "сломаный" файл, а также, выгруженный файл формуляра, я попробую разобраться.


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: XLSX Workbench
СообщениеДобавлено: Пт, сен 14 2018, 13:06 
Начинающий
Начинающий
Аватара пользователя

Зарегистрирован:
Ср, июл 29 2009, 08:20
Сообщения: 20
Пол: Мужской
Скинул на почту. Спасибо!


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

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


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

Сейчас этот форум просматривают: John Doe


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

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