Текущее время: Сб, окт 24 2020, 01:14

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


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


ВНИМАНИЕ!

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



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

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

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


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

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


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

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


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

Зарегистрирован:
Чт, окт 15 2020, 08:52
Сообщения: 6
Что-то не выходит...
если использовать 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
Сообщения: 1410
Откуда: Москва, Минск
Пол: Мужской
Ошибка с расчетом цен в документе не связана непосредственно с вызовом ФМ 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
Сообщения: 6
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
Сообщения: 413
Пол: Мужской
Значит отладка вам в помощь, вероятно самописные проверки на код транзакции.


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

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


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

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

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


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

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

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

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

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

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

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


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

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

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


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

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


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

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


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

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


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

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


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

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