Текущее время: Чт, мар 28 2024, 14:58

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


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


ВНИМАНИЕ!

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



Начать новую тему Ответить на тему  [ Сообщений: 13 ] 
Автор Сообщение
 Заголовок сообщения: Печать из веб-сервиса
СообщениеДобавлено: Чт, окт 15 2020, 09:04 
Начинающий
Начинающий

Зарегистрирован:
Чт, окт 15 2020, 08:52
Сообщения: 17
Добрый день!

Мне необходимо обеспечить печать штрих-кодов из мобильного приложения через обращение к веб-сервису сап.
Веб-сервис будет вызывать фм, который в свою очередь будет вызывать тр vl71 передавая номер поставки
Подскажите, как можно обеспечить печать из веб-сервиса на определенный принтер?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Печать из веб-сервиса
СообщениеДобавлено: Пт, окт 16 2020, 11:54 
Старший специалист
Старший специалист

Зарегистрирован:
Пн, сен 19 2011, 13:29
Сообщения: 473
Пол: Мужской
1. Сделать отдельное устройство вывода с постоянным ip адресом принтера. В веб-сервисе вызывать ФМ WFMC_MESSAGE_SINGLE, где в структуре передавать nast-ldest
2. Сделать отдельное устройство вывода с постоянным ip адресом принтера. Устройство вывода прописать в настройке выходного документа. Тогда можно вызывать VL71.
Вариант 1 - если принтеров несколько и выбор по условиям. Вариант 2 - принтер один, печать только на этот принтер для выходного документа.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Печать из веб-сервиса
СообщениеДобавлено: Пн, окт 19 2020, 08:58 
Начинающий
Начинающий

Зарегистрирован:
Чт, окт 15 2020, 08:52
Сообщения: 17
Спасибо огромное, попробую сделать по первому варианту


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Печать из веб-сервиса
СообщениеДобавлено: Пн, окт 19 2020, 14:11 
Начинающий
Начинающий

Зарегистрирован:
Чт, окт 15 2020, 08:52
Сообщения: 17
Что-то не выходит...
если использовать WFMC_MESSAGE_SINGLE - то выдается ошибка «Ошибка в расчете цен: нет обязательного условия ZPR1»
если использовать вызов vl71 то там есть два экрана, на первом задаются условия для выборки, на втором нужно отметить результаты выборки для печати, первый экран я смог обойти, а второй все равно появляется

Что можно сделать с ошибкой в расчете цен? как можно задать это условие при вызове WFMC_MESSAGE_SINGLE?
Или как можно вызвать vl71 чтобы не возникало никаких экранов, а сразу шла печать?

Вот получившийся код:

Code:
FUNCTION Z_PRINT_LABEL.
*"----------------------------------------------------------------------
*"*"Локальный интерфейс:
*"----------------------------------------------------------------------
DATA: gstr_nast TYPE nast,
      rcode LIKE sy-subrc,.

gstr_nast-mandt = sy-mandt.
gstr_nast-kappl = 'V2'.
gstr_nast-objky = '0080465467'.
gstr_nast-kschl = 'ZBAR'.
gstr_nast-spras = 'R'.
gstr_nast-parnr = '0000070020'.
gstr_nast-parvw = 'WE'.
gstr_nast-erdat = sy-datum.
gstr_nast-eruhr = '112208'.
gstr_nast-nacha = 1.
gstr_nast-anzal = 0.
gstr_nast-vsztp = 3.
gstr_nast-usnam = sy-uname.
gstr_nast-vstat = 0.
gstr_nast-ldest = 'prng'.
gstr_nast-dimme = 'X'.
gstr_nast-delet = 'X'.
gstr_nast-nauto = 'X'.
gstr_nast-tdarmod = 1.
gstr_nast-objtype = 'LIKP'.

CALL FUNCTION 'WFMC_MESSAGE_SINGLE'
    EXPORTING
      pi_nast  = gstr_nast
    IMPORTING
      pe_rcode = rcode.


ENDFUNCTION.

Заранее благодарен за ответы!


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Печать из веб-сервиса
СообщениеДобавлено: Пн, окт 19 2020, 16:00 
Гуру-маршал
Гуру-маршал
Аватара пользователя

Зарегистрирован:
Пт, янв 30 2009, 09:59
Сообщения: 1578
Откуда: Москва, Минск
Пол: Мужской
Ошибка с расчетом цен в документе не связана непосредственно с вызовом ФМ WFMC_MESSAGE_SINGLE.
Вы попробуйте повторно вывести на печать документ в диалоге из VL71 - получите эту же ошибку.

Указанный вам ФМ 'WFMC_MESSAGE_SINGLE' вызывается и внутри VL71.
Ставите внутри ФМ точку прерывания, находите НОРМАЛЬНЫЙ пример для печати из VL71, печатаете документ - программа попадает в точку прерывания,
смотрите какие параметры передаются в ФМ, пытаетесь повторить вызова ФМ в свое интерфейсе.
По хорошему перед печатью нужно делать блокировку документа, после печати - разблокировку + COMMIT WORK.

Смотрите include LV70AF01, form MESSAGES_PROCESS, в ней вызывается 'WFMC_MESSAGE_SINGLE'.

Да и по логике - запись УЖЕ должна быть в NAST, ее нужно выбрать по ключу, а не заполнять все поля для передачи в ФМ.
Если нужно предварительно добавлять запись в NAST - это отдельный ФМ.

_________________
Лучше быть умным и иногда тупить, чем быть тупым и постоянно умничать!


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Печать из веб-сервиса
СообщениеДобавлено: Вт, окт 20 2020, 08:29 
Начинающий
Начинающий

Зарегистрирован:
Чт, окт 15 2020, 08:52
Сообщения: 17
DED_MOROZ написал:
Ошибка с расчетом цен в документе не связана непосредственно с вызовом ФМ WFMC_MESSAGE_SINGLE.
Вы попробуйте повторно вывести на печать документ в диалоге из VL71 - получите эту же ошибку.


Нет, из VL71 печатается без проблем

DED_MOROZ написал:
Указанный вам ФМ 'WFMC_MESSAGE_SINGLE' вызывается и внутри VL71.
Ставите внутри ФМ точку прерывания, находите НОРМАЛЬНЫЙ пример для печати из VL71, печатаете документ - программа попадает в точку прерывания,
смотрите какие параметры передаются в ФМ, пытаетесь повторить вызова ФМ в свое интерфейсе.


Так и делал

DED_MOROZ написал:
По хорошему перед печатью нужно делать блокировку документа, после печати - разблокировку + COMMIT WORK.
Смотрите include LV70AF01, form MESSAGES_PROCESS, в ней вызывается 'WFMC_MESSAGE_SINGLE'.
Да и по логике - запись УЖЕ должна быть в NAST, ее нужно выбрать по ключу, а не заполнять все поля для передачи в ФМ.
Если нужно предварительно добавлять запись в NAST - это отдельный ФМ.


Да, запись есть, я специально сделал ручное заполнение, чтобы исключить влияние блокировок. Попробовал сделать селектом из NAST, ошибка та же


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Печать из веб-сервиса
СообщениеДобавлено: Вт, окт 20 2020, 11:21 
Старший специалист
Старший специалист

Зарегистрирован:
Пн, сен 19 2011, 13:29
Сообщения: 473
Пол: Мужской
Значит отладка вам в помощь, вероятно самописные проверки на код транзакции.


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Печать из веб-сервиса
СообщениеДобавлено: Вт, окт 20 2020, 11:38 
Начинающий
Начинающий

Зарегистрирован:
Чт, окт 15 2020, 08:52
Сообщения: 17
Спасибо, вроде разобрался, в стандартной программе обработки формуляра было обновление цен, скопировал эту программу и убрал обновление цен. Сейчас ошибки нет, но и на печать ничего не идет, как можно проверить отправляется ли задание на печать?


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Печать из веб-сервиса
СообщениеДобавлено: Вт, окт 20 2020, 13:39 
Старший специалист
Старший специалист

Зарегистрирован:
Пн, сен 19 2011, 13:29
Сообщения: 473
Пол: Мужской
В настройке выходного документа (транзакция nace) есть две галочки: "немедленная печать" - документ сразу отправляется на принтер (иначе остается в спуле); "ДеблокПослеВывода" после вывода на печать документ удаляется из спула. Эти же параметры передаются в структуре nast (DIMME, DELET).
Проверьте первую, если её нет - ищите выходной документ в спуле. Если она есть, то попробуйте убрать вторую и проверить спул после вывода.

А что за штрих-кода, которые требуют обновления цен в стандарте? почему через VL71 это сообщение не возникло?


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Печать из веб-сервиса
СообщениеДобавлено: Вт, окт 20 2020, 13:49 
Начинающий
Начинающий

Зарегистрирован:
Чт, окт 15 2020, 08:52
Сообщения: 17
Цитата:
Проверьте первую, если её нет - ищите выходной документ в спуле. Если она есть, то попробуйте убрать вторую и проверить спул после вывода.

Галочки обе есть, попробую убрать вторую

Цитата:
А что за штрих-кода, которые требуют обновления цен в стандарте?

Ничего особенного, сам штрих-код, артикул и наименование, цены не выводятся на печать. Подозреваю, что тот кто делал формуляр не очень удачно выбрал программу для обработки формуляра

Цитата:
почему через VL71 это сообщение не возникло?

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


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Печать из веб-сервиса
СообщениеДобавлено: Вт, окт 20 2020, 18:12 
Гуру-маршал
Гуру-маршал
Аватара пользователя

Зарегистрирован:
Пт, янв 30 2009, 09:59
Сообщения: 1578
Откуда: Москва, Минск
Пол: Мужской
Проверяйте программу печати, возможно ошибка возникает в ней.
Вдруг какая-то проверка не проходит или в программе печати система пытается выполнить обновление документа(например, заказа).
Тяжело сказать, что у вас там накожено.

_________________
Лучше быть умным и иногда тупить, чем быть тупым и постоянно умничать!


Принять этот ответ
Вернуться к началу
 Профиль Отправить email  
 
 Заголовок сообщения: Re: Печать из веб-сервиса
СообщениеДобавлено: Ср, окт 21 2020, 07:50 
Младший специалист
Младший специалист

Зарегистрирован:
Вт, авг 05 2008, 19:46
Сообщения: 96
Откуда: С Урала
Вполне вероятная ситуация, когда у пользователя WEB сервиса не хватает каких то прав, попробуйте под ним распечатать


Принять этот ответ
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Печать из веб-сервиса
СообщениеДобавлено: Ср, окт 21 2020, 14:44 
Старший специалист
Старший специалист

Зарегистрирован:
Пн, сен 19 2011, 13:29
Сообщения: 473
Пол: Мужской
1. Как и говорили ранее проверить печать из SAP под пользователем, вызывающим веб-сервис, через VL71 или VL03N. Причем желательно на то же устройство вывода и на другое.
2. Если печатается, то возможно проверки на код транзакции. Можно попробовать вызвать ФМ в SE37
3. Т.к. не указано возвращаются ли ошибки из SAP, то возможно вызов не проходит.
транзакция SRT_UTIL - утилиты для веб-сервисов, в т.ч. трассировка и журнал ошибок
4. SE80 - можно запустить веб-сервис в тестовом режиме
5. Есть внешние точки прерывания, можно попробовать поставить в программе печати на пользователя.
6. Можно попробовать отправить на печать другой выходной документ, в котором точно нет доп.обработок
7. Прочие варианты..


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

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


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

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


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

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