+ Sapforum.Biz » Инструменты » ABAP - Инструментальные средстваТема:
|- вывод окна настройки печати после проводки




Автор Тема: вывод окна настройки печати после проводки  (Прочитано 1841 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Victor Ghost

  • Newbie
  • *
  • Сообщений: 24
  • Reputation Power: 0
  • Victor Ghost has no influence.
  • Пол: Мужской
  • YearsYearsYearsYears
Доброго дня.
Недавно появилась задача: дать возможность пользователю выбирать количество документов, которые нужно выводить при печати. По ходу дела возникли трудности. Возможно, решение очевидно, но как-то оно не приходит в голову...

В общем, исходные данные такие:
транзакции ME2O или MB1B, вид движения 541/542 (отгрузка давальческих компонентов), вид выходного документа WA05, программа печати - самописная (переделанная из стандартной какой-то).

Что не понятно: пробовал делать по аналогии с 201/202 видом движения (с выходным документом WA03, проводил через MB1B). В SPRO (M706) делал одинаковые настройки - не помогает. Программы печати для них практически идентичны (разница только в данных, которые собираются). Но после проводки 201 вдв  выходит всплывающее окно настройки печати, а вот при 541 - нет, сразу печатается (даже если не стоит в своих данных параметр NDR = 'X').
Догадываюсь, что дело в том, какие данные подаются на программу печати, но где конкретно - не понимаю. Еще дополнительная сложность в том, что данные на печать отправляются каким-то левым потоком (как мне объяснили), поэтому и в отладке их не поймаешь.

Собственно, вопросы:
- как вывести диалоговое окно настройки печати (и не делать новую программу, куда можно указать кол-во экземпляров и момент печати) или вообще куда копать?
- как вызвать отладчик и посмотреть, какие же данные передаются в программу печати?

Оффлайн Uukrul

  • SAP ECC 6.0 Ehp(*)
  • Administrator
  • Epic Member
  • *****
  • Сообщений: 3 689
  • Reputation Power: 2
  • Uukrul barely matters.Uukrul barely matters.
  • Пол: Мужской
  • YearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYears
    • Sapforum.BIZ
You are not allowed to view links. Register or Login
транзакции ME2O или MB1B, вид движения 541/542 (отгрузка давальческих компонентов), вид выходного документа WA05, программа печати - самописная (переделанная из стандартной какой-то).
Надо смотреть вашу самописную программу, похоже она просто так написана что игнорирует параметры и заставить ее вывести окно параметров печати, можно только через модификацию исходного текста.

Оффлайн Victor Ghost

  • Newbie
  • *
  • Сообщений: 24
  • Reputation Power: 0
  • Victor Ghost has no influence.
  • Пол: Мужской
  • YearsYearsYearsYears
You are not allowed to view links. Register or Login
Надо смотреть вашу самописную программу, похоже она просто так написана что игнорирует параметры и заставить ее вывести окно параметров печати, можно только через модификацию исходного текста.

подозреваю, что все это происходит немного раньше.
в программе есть место, где заполняется таблица для печати:

Код: You are not allowed to view links. Register or Login
  MOVE-CORRESPONDING nast TO itcpo.
  itcpo-tdcover   = nast-tdocover.
  itcpo-tddest    = nast-ldest.
  itcpo-tddataset = nast-dsnam.
  itcpo-tdsuffix1 = nast-dsuf1.
  itcpo-tdsuffix2 = nast-dsuf2.
  itcpo-tdimmed   = nast-dimme.
  itcpo-tddelete  = ' '.
  itcpo-tdcopies  = nast-anzal.

 itcpo-tdcopies  = nast-anzal - это как раз количество копий.

а вот откуда данные берутся в NAST я не найду никак. но точно не в этой самописной программе печати.

/насчет вывода окна печати в обеих программах нет ничего, что включало или выключало бы его отображение.

//могу скинуть сам код программы печати и параметры печати по тому и другому виду движения

Оффлайн Uukrul

  • SAP ECC 6.0 Ehp(*)
  • Administrator
  • Epic Member
  • *****
  • Сообщений: 3 689
  • Reputation Power: 2
  • Uukrul barely matters.Uukrul barely matters.
  • Пол: Мужской
  • YearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYears
    • Sapforum.BIZ
You are not allowed to view links. Register or Login
в программе есть место, где заполняется таблица для печати:
Давай по шагам, это смарт-форма и вызов ее из своей программы происходит? Там есть что-то типа  такого вызова CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'?

Оффлайн Victor Ghost

  • Newbie
  • *
  • Сообщений: 24
  • Reputation Power: 0
  • Victor Ghost has no influence.
  • Пол: Мужской
  • YearsYearsYearsYears
You are not allowed to view links. Register or Login
Давай по шагам, это смарт-форма и вызов ее из своей программы происходит? Там есть что-то типа  такого вызова CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'?

неа, есть только это:
Код: You are not allowed to view links. Register or Login
CALL FUNCTION 'OPEN_FORM'
       EXPORTING
            device   = 'PRINTER'
            language = language
            options  = itcpo
            form     = tnapr-fonam
            dialog   = ' '.

сама форма написана на сап скрипте

/кстати, зашел в фм, может поставить опцию DIALOG = 'X' и заработает? (но в программе печати для другого вида движения эта опция тоже не стоит)

Оффлайн Uukrul

  • SAP ECC 6.0 Ehp(*)
  • Administrator
  • Epic Member
  • *****
  • Сообщений: 3 689
  • Reputation Power: 2
  • Uukrul barely matters.Uukrul barely matters.
  • Пол: Мужской
  • YearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYears
    • Sapforum.BIZ
You are not allowed to view links. Register or Login
/кстати, зашел в фм, может поставить опцию DIALOG = 'X' и заработает? (но в программе печати для другого вида движения эта опция тоже не стоит)
А можно пример вызова OPEN_FORM этого для другого вида движения?

Оффлайн Victor Ghost

  • Newbie
  • *
  • Сообщений: 24
  • Reputation Power: 0
  • Victor Ghost has no influence.
  • Пол: Мужской
  • YearsYearsYearsYears
You are not allowed to view links. Register or Login
А можно пример вызова OPEN_FORM этого для другого вида движения?

там все то же самое. но скорей всего в itcpo немного другие значения.

/если б можно было отследить через отладчик, что передается в этот фм, я бы посмотрел и нашел, где оно. но вот не пойму, как ловить программу печати. даже если делаю break-point (через SAAB), то программа печати отрабатывает и не останавливается на ней

Оффлайн Victor Ghost

  • Newbie
  • *
  • Сообщений: 24
  • Reputation Power: 0
  • Victor Ghost has no influence.
  • Пол: Мужской
  • YearsYearsYearsYears
а, стоп. можно же поставить точку останова на сервер, а не на пользователя. осталось выяснить, у кого на это есть права у нас в тестовой системе... ~_~

Оффлайн Victor Ghost

  • Newbie
  • *
  • Сообщений: 24
  • Reputation Power: 0
  • Victor Ghost has no influence.
  • Пол: Мужской
  • YearsYearsYearsYears
upd: поставил таки точку на сервер, все-равно не останавливает...

Оффлайн Uukrul

  • SAP ECC 6.0 Ehp(*)
  • Administrator
  • Epic Member
  • *****
  • Сообщений: 3 689
  • Reputation Power: 2
  • Uukrul barely matters.Uukrul barely matters.
  • Пол: Мужской
  • YearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYears
    • Sapforum.BIZ
You are not allowed to view links. Register or Login
upd: поставил таки точку на сервер, все-равно не останавливает...
Перед печатью заходите в отладку не важно какого кода, и включаете отладку системы и обновлений, чтобы попасть в печать, для этого нажимаете Shift+F1 и попадаете в параметры отладчика.


Оффлайн Victor Ghost

  • Newbie
  • *
  • Сообщений: 24
  • Reputation Power: 0
  • Victor Ghost has no influence.
  • Пол: Мужской
  • YearsYearsYearsYears
Re: вывод окна настройки печати после проводки
« Ответ #10 : Июль 12, 2017, 11:59:13 am »
You are not allowed to view links. Register or Login
Перед печатью заходите в отладку не важно какого кода, и включаете отладку системы и обновлений, чтобы попасть в печать, для этого нажимаете Shift+F1 и попадаете в параметры отладчика.

не, так не захотел. погуглил - нашел на сапфоруме решение. оказывается, можно было в MB90 открыть документ и вызвать обработку выходных документов. там уже останавливается на брейкпойнте :))

буду выяснять теперь, чего передается :)

Оффлайн Uukrul

  • SAP ECC 6.0 Ehp(*)
  • Administrator
  • Epic Member
  • *****
  • Сообщений: 3 689
  • Reputation Power: 2
  • Uukrul barely matters.Uukrul barely matters.
  • Пол: Мужской
  • YearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYears
    • Sapforum.BIZ
Re: вывод окна настройки печати после проводки
« Ответ #11 : Июль 17, 2017, 02:04:28 am »
You are not allowed to view links. Register or Login
буду выяснять теперь, чего передается :)
Ну и как выяснили в чем проблема?

Оффлайн Victor Ghost

  • Newbie
  • *
  • Сообщений: 24
  • Reputation Power: 0
  • Victor Ghost has no influence.
  • Пол: Мужской
  • YearsYearsYearsYears
Re: вывод окна настройки печати после проводки
« Ответ #12 : Июль 17, 2017, 06:40:14 am »
You are not allowed to view links. Register or Login
Ну и как выяснили в чем проблема?

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

Оффлайн Victor Ghost

  • Newbie
  • *
  • Сообщений: 24
  • Reputation Power: 0
  • Victor Ghost has no influence.
  • Пол: Мужской
  • YearsYearsYearsYears
Re: вывод окна настройки печати после проводки
« Ответ #13 : Октябрь 18, 2017, 02:55:10 pm »
вот блин.. как всегда все оказалось гораздо проще, чем думал.
в итоге в самой программе печати прописал, чтобы выбирался дефолтный принтер вместо того, который назначается при проводке -_-

Код: You are not allowed to view links. Register or Login
itcpo-tddest    = 'FRN'. "было nast-ldest.
настройки все вернул на место. теперь после печати выводится стандартное окно выбора принтера и кол-ва копий (как и хотели).

Оффлайн Uukrul

  • SAP ECC 6.0 Ehp(*)
  • Administrator
  • Epic Member
  • *****
  • Сообщений: 3 689
  • Reputation Power: 2
  • Uukrul barely matters.Uukrul barely matters.
  • Пол: Мужской
  • YearsYearsYearsYearsYearsYearsYearsYearsYearsYearsYears
    • Sapforum.BIZ
Re: вывод окна настройки печати после проводки
« Ответ #14 : Октябрь 19, 2017, 12:32:11 am »
You are not allowed to view links. Register or Login
в итоге в самой программе печати прописал, чтобы выбирался дефолтный принтер вместо того, который назначается при проводке -_-
Код: You are not allowed to view links. Register or Login
itcpo-tddest    = 'FRN'. "было nast-ldest.настройки все вернул на место. теперь после печати выводится стандартное окно выбора принтера и кол-ва копий (как и хотели).
То есть, получается что окно параметров так же зависти от настроенного принтера. В настройке принтера, получается может гаситься выдача окна.

Оффлайн Victor Ghost

  • Newbie
  • *
  • Сообщений: 24
  • Reputation Power: 0
  • Victor Ghost has no influence.
  • Пол: Мужской
  • YearsYearsYearsYears
Re: вывод окна настройки печати после проводки
« Ответ #15 : Октябрь 19, 2017, 07:35:49 am »
там разница в том, что при проводке c видом выходного документа WA03 (и еще кучки других) в destination получается FRN, а при проводке с WA05 - FRNSAPLPD (FRNL).
/а уж как настроены эти два устройства вывода в продуктиве, я не могу посмотреть (на транзакцию SPAD полномочий там нет, естественно).

ну и не могу понять, где еще настраивается вывод выходного документа. по идее где-то должно же указываться, на какое устройство подавать.. ну да ладно..