Текущее время: Вс, июл 27 2025, 06:14

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 12 ] 
Автор Сообщение
 Заголовок сообщения: Поточная печать документов
СообщениеДобавлено: Пт, май 20 2005, 11:43 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Ср, мар 23 2005, 18:56
Сообщения: 145
Откуда: Dnepr
Доброе время суток!
Возникла задача -- вывести на печать большого количества документов, эдакий пакетный вывод. :)
Программа-report отбирает данные из нескольких таблиц, передает их формуляру и...
Нужно построить формуляр (или же изменить сам отчет) так, чтобы следующий документ печатался с нового листа, со своей шапкой, так, чтобы их можно было использовать отдельно.
Подскажите, пожалуйста, как это можно реализовать.
Заранее благодарен!

_________________
Если все кажется легким, это безошибочно доказывает, что работник весьма мало искусен и работа выше его разумения
--
С этим мальчиком будьте поласковее, вы имеете дело с легко возбудимым гаденышем.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, май 20 2005, 12:41 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Ср, май 04 2005, 16:29
Сообщения: 687
Откуда: Нижневартовск->Москва
Пол: Мужской
Если в репорте, то:

NEW-PAGE.

Additions:

1. ... NO-TITLE
2 ... WITH-TITLE
3. ... NO-HEADING
4. ... WITH-HEADING
5. ... LINE-COUNT lin
6. ... LINE-SIZE col
7. ... PRINT ON ...
8. ... PRINT ON ...
9. ... PRINT OFF



Effect
Starts a new page during list processing.

Terminates the current page and continues output on a new page.
*------------------------------------------------

Если в формуляре, то просто в программе печати видимо нужно будет делать несколько START_FORM/CLOSE_FORM

Так же можно поиграться командами NEW-PAGE NEW-WINDOW

PS Имеется ввиду команды через call function 'CONTROL_FORM'


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, май 20 2005, 12:58 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Ср, май 04 2005, 16:29
Сообщения: 687
Откуда: Нижневартовск->Москва
Пол: Мужской
Похоже ещё можно

OPEN_FORM
...
START_FORM
...
END_FORM
START_FORM
...
END_FORM
START_FORM
...
END_FORM
CLOSE_FORM


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, май 20 2005, 16:08 
Гость
T написал:
Похоже ещё можно

OPEN_FORM
...
START_FORM
...
END_FORM
START_FORM
...
END_FORM
START_FORM
...
END_FORM
CLOSE_FORM


В этом случае первый START_FORM (непосредственно после OPEN_FORM) не обязателен.


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, май 20 2005, 17:07 
Гость
Цитата:
Похоже ещё можно

OPEN_FORM
...
START_FORM
...

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


Принять этот ответ
Вернуться к началу
  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, май 20 2005, 17:14 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Ср, мар 23 2005, 18:56
Сообщения: 145
Откуда: Dnepr
Цитата:
Так же можно поиграться командами NEW-PAGE NEW-WINDOW

PS Имеется ввиду команды через call function 'CONTROL_FORM'

А можно вот об этом поподробнее?

_________________
Если все кажется легким, это безошибочно доказывает, что работник весьма мало искусен и работа выше его разумения
--
С этим мальчиком будьте поласковее, вы имеете дело с легко возбудимым гаденышем.


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

Зарегистрирован:
Сб, сен 25 2004, 16:30
Сообщения: 1368
Откуда: Москва
Пол: Мужской
В смартформах я такое делал, например, в главном окне определяешь цикл по таблице, для каждого элемента которой нужно выводить свой комплект листов, начиная с титульного, и внутри цикла ставишь команду перехода на первую (титульную) страницу. В сапскрипте тоже вроде есть какая-то функция для вызова управляющих команд, может там тоже можно вызвать переход на титульную страницу?

_________________
С уважением, Сергей Королев


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, май 20 2005, 17:40 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Ср, май 04 2005, 16:29
Сообщения: 687
Откуда: Нижневартовск->Москва
Пол: Мужской
Anonymous написал(а):
Цитата:
Похоже ещё можно

OPEN_FORM
...
START_FORM
...

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


Не надо будет ничего нажимать кучу раз.
Один раз при вызове OPEN_FORM и всё..


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пт, май 20 2005, 17:49 
Почетный гуру
Почетный гуру
Аватара пользователя

Зарегистрирован:
Ср, май 04 2005, 16:29
Сообщения: 687
Откуда: Нижневартовск->Москва
Пол: Мужской
Nesteroff написал(а):
Цитата:
Так же можно поиграться командами NEW-PAGE NEW-WINDOW

PS Имеется ввиду команды через call function 'CONTROL_FORM'

А можно вот об этом поподробнее?


Code:
  CALL FUNCTION 'CONTROL_FORM'
    EXPORTING
      COMMAND         = 'NEW-PAGE'
*   EXCEPTIONS
*     UNOPENED        = 1
*     UNSTARTED       = 2
*     OTHERS          = 3
            .

Вот и все подробности. Переход на новую страницу. Но это не всегда годится. Как я понимаю, тут можно будет воспроизводить только элементы описанные в MAIN.

Да блин, чего париться, нормально будет это работать:
Code:
OPEN_FORM

loop ...
  START_FORM
  ...
  END_FORM
endloop.

CLOSE_FORM


И в предварительном просмотре будет сразу всё видно..


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пн, май 23 2005, 10:43 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Ср, мар 23 2005, 18:56
Сообщения: 145
Откуда: Dnepr
Поигрался с OPEN_FORM -- END_FORM в цикле... Фигня какая-то получается -- выводит по строке на страницу+пустая страница в конце документа. Что в принципе логично и объяснимо. Вываливаю кусок кода, господа и дамы (ежели забредут таковые), подскажети, как правильно расставить функции открытия и закрытия формы.
Code:
CALL FUNCTION 'OPEN_FORM'
...
CALL FUNCTION 'START_FORM'
EXPORTING
   FORM                   = 'ZJ_ENT_S4ET'.
IF SY-SUBRC NE 0.
message i009(zmss01) with sy-subrc.
exit.
ENDIF.

CALL FUNCTION 'WRITE_FORM'
EXPORTING
   ELEMENT                         = 'TABLE_NUMBERED_HEADER'
   FUNCTION                       = 'SET'
   TYPE                               = 'BODY'
   WINDOW                         = 'MAIN'.

Loop at TRBKP.
  Loop at TRSEG
  where BELNR = TRBKP-BELNR.

CALL FUNCTION 'WRITE_FORM'
EXPORTING
   ELEMENT                        = 'ITEM_LINE'
   FUNCTION                       = 'APPEND'
   TYPE                           = 'BODY'
   WINDOW                         = 'MAIN'.

ENDLOOP.

CALL FUNCTION 'WRITE_FORM'
       EXPORTING
   ELEMENT                        = 'TOTAL_BLOCK'
   FUNCTION                       = 'SET'
   TYPE                           = 'BODY'
   WINDOW                         = 'MAIN'.

CALL FUNCTION 'END_FORM'.
ENDLOOP.
CALL FUNCTION 'CLOSE_FORM'.

В TRBKP -- заголовки, проходясь по каждой строчке TRBKP следующим LOOP выбираю все из таблицы TRSEG, в которой сами позиции документа.

_________________
Если все кажется легким, это безошибочно доказывает, что работник весьма мало искусен и работа выше его разумения
--
С этим мальчиком будьте поласковее, вы имеете дело с легко возбудимым гаденышем.


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

Зарегистрирован:
Ср, май 04 2005, 16:29
Сообщения: 687
Откуда: Нижневартовск->Москва
Пол: Мужской
Code:
CALL FUNCTION 'OPEN_FORM'
...

Loop at TRBKP.
  CALL FUNCTION 'START_FORM'
       EXPORTING
            FORM = 'ZJ_ENT_S4ET'.
  IF SY-SUBRC NE 0.
    message i009(zmss01) with sy-subrc.
    exit.
  ENDIF.

  CALL FUNCTION 'WRITE_FORM'
       EXPORTING
            ELEMENT  = 'TABLE_NUMBERED_HEADER'
            FUNCTION = 'SET'
            TYPE     = 'BODY'
            WINDOW   = 'MAIN'.


  Loop at TRSEG
  where BELNR = TRBKP-BELNR.

    CALL FUNCTION 'WRITE_FORM'
         EXPORTING
              ELEMENT  = 'ITEM_LINE'
              FUNCTION = 'APPEND'
              TYPE     = 'BODY'
              WINDOW   = 'MAIN'.

  ENDLOOP.

  CALL FUNCTION 'WRITE_FORM'
       EXPORTING
            ELEMENT  = 'TOTAL_BLOCK'
            FUNCTION = 'SET'
            TYPE     = 'BODY'
            WINDOW   = 'MAIN'.

  CALL FUNCTION 'END_FORM'.
ENDLOOP.
CALL FUNCTION 'CLOSE_FORM'.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Вт, май 24 2005, 09:20 
Специалист
Специалист
Аватара пользователя

Зарегистрирован:
Ср, мар 23 2005, 18:56
Сообщения: 145
Откуда: Dnepr
Спасибо ОГРОМНЕЙШЕЕ всем, кто помог, особенно господину Т!!!! Все работает, все путем!!

_________________
Если все кажется легким, это безошибочно доказывает, что работник весьма мало искусен и работа выше его разумения
--
С этим мальчиком будьте поласковее, вы имеете дело с легко возбудимым гаденышем.


Принять этот ответ
Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 12 ] 

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


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

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


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

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