Текущее время: Пт, сен 21 2018, 18:39

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


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

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


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

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