Текущее время: Сб, июл 19 2025, 20:23

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 5 ] 
Автор Сообщение
 Заголовок сообщения: Настройка отступов от левого и правого края страницы при печати смартформы.
СообщениеДобавлено: Ср, фев 22 2006, 16:20 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Ср, фев 22 2006, 16:09
Сообщения: 592
Здравствуйте.
Подскажите, пожалуйста, как можно установить размеры отступов от левого и правого края для печати смартформы.
Есть ли возможность установить их в самой смартформе или менять их в программе?

Спасибо.


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

Зарегистрирован:
Пн, сен 26 2005, 11:53
Сообщения: 46
в "атрибутах формуляра->опции вывода" выбрать формат страницы;
в "страницах->опции вывода" - формат (горизонтальный|вертикальный)
в "окно->опции вывода" - отступ сверху - слева и ширину - высоту.
соответственно, отступ справа будет равен
ширина страницы минус отступ слева минус ширина окна
зная, например, что А4 - это 210х297 можно все посчитать

только так, вроде бы


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Ср, фев 22 2006, 18:37 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Ср, фев 22 2006, 16:09
Сообщения: 592
да это понятно...
но проблема в следующем:
я сделал формуляр, но мне нужно все окна ( их порядка 150) сдвинуть на пол сантиметра вправо. Я хочу это сделать увеличив отступ от левого края на эти полсантиметра...
иначе придется в каждом окне прибавлять левый отступ......


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

Зарегистрирован:
Чт, сен 09 2004, 07:32
Сообщения: 777
Откуда: Москва
Пол: Мужской
Про SmartForm ничего не скажу, а по поводу SAPScript-формуляра - можно сделать программно:
Code:
  DATA: form_header       TYPE itcta,
        form_lines        TYPE TABLE OF tline,
        form_pages        TYPE TABLE OF itctg,
        form_page_windows TYPE TABLE OF itcth,
        form_paragraphs   TYPE TABLE OF itcdp,
        form_strings      TYPE TABLE OF itcds,
        form_tabs         TYPE TABLE OF itcdq,
        form_windows      TYPE TABLE OF itctw.

  DATA: it_custom TYPE zscr_t_win.

  DATA: wa    LIKE LINE OF form_page_windows,
        wcust LIKE LINE OF it_custom.

  DATA: x_delta_main TYPE zscr_delta_x,
        y_delta_main TYPE zscr_delta_y.

* считывание данных формуляра -----------------------------------------&
  CALL FUNCTION 'READ_FORM'
       EXPORTING
            form         = form_name
       IMPORTING
            form_header  = form_header
       TABLES
            form_lines   = form_lines
            pages        = form_pages
            page_windows = form_page_windows
            paragraphs   = form_paragraphs
            strings      = form_strings
            tabs         = form_tabs
            windows      = form_windows.
  IF form_header IS INITIAL.
*   MSG: формуляр отсутствует в текущем манданте системы
    MESSAGE e001(zscript) WITH form_name RAISING no_form.
  ENDIF.

* считывание данных настроек ------------------------------------------&
  CALL METHOD read_custom_data
    EXPORTING  form_name      = form_name
               fvar_name      = fvar_name
    IMPORTING  x_delta        = x_delta_main
               y_delta        = y_delta_main
               et_custom      = it_custom
    EXCEPTIONS OTHERS         = 1.
  IF sy-subrc <> 0.
    MESSAGE ID     sy-msgid
            TYPE   sy-msgty
            NUMBER sy-msgno
            WITH   sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4
            RAISING no_custom_data.
  ENDIF.

* изменение координат окон (TOP-LEFT) ---------------------------------&
  LOOP AT form_page_windows INTO wa.
    READ TABLE it_custom INTO wcust WITH KEY tdwind = wa-tdwindow.
    IF sy-subrc IS INITIAL.
      IF in_repair NE space.
        wa-tdwleft = wa-tdwleft + wcust-x_delta.
        wa-tdwtop  = wa-tdwtop  + wcust-y_delta.
      ELSE.
        wa-tdwleft = wa-tdwleft - wcust-x_delta.
        wa-tdwtop  = wa-tdwtop  - wcust-y_delta.
      ENDIF.
    ELSE.
      IF in_repair NE space.
        wa-tdwleft = wa-tdwleft + x_delta_main.
        wa-tdwtop  = wa-tdwtop  + y_delta_main.
      ELSE.
        wa-tdwleft = wa-tdwleft - x_delta_main.
        wa-tdwtop  = wa-tdwtop  - y_delta_main.
      ENDIF.
    ENDIF.
    MODIFY form_page_windows FROM wa TRANSPORTING tdwleft tdwtop.
  ENDLOOP.

* сохранение формуляра ------------------------------------------------&
  CALL FUNCTION 'SAVE_FORM'
       EXPORTING
            form_header  = form_header
       TABLES
            form_lines   = form_lines
            pages        = form_pages
            page_windows = form_page_windows
            paragraphs   = form_paragraphs
            strings      = form_strings
            tabs         = form_tabs
            windows      = form_windows.

  COMMIT WORK AND WAIT.

Данный код я использовал для динамического сдвига окон SAP Script'а по данным настройки.
Думаю, для SmartForm можно сделать что-нибудь подобное.

_________________
"Прежде чем сделать что-то, подумай, к чему это может привести..."


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения:
СообщениеДобавлено: Вс, фев 26 2006, 10:02 
Менеджер
Менеджер
Аватара пользователя

Зарегистрирован:
Ср, фев 22 2006, 16:09
Сообщения: 592
Спасибо!


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

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


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

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


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

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