Как распечатать пользовательские ярлыки ZPL с мобильного устройства на принтере, подключенном к концентратору устройства? - PullRequest
0 голосов
/ 25 марта 2019

Я хочу разрешить нашим сотрудникам хранилища выполнять рутинные задачи с помощью мобильного устройства, которые будут включать получение пакетов и печать пользовательских местоположений и этикеток элементов в дополнение к различным настраиваемым тегам для различного использования.Концентратор устройства в Acumatica 2018R2 кажется идеальной концепцией для этого, но я не могу понять, как отправить пользовательский файл ZPL в Device Hub.

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

Когда я создаю свой собственный файл метки ZPL, как мне отправить этот файлтекстовый файл на концентратор устройства?

Я могу создать строку данных метки и распечатать ее непосредственно на принтере, подключенном к серверу приложений, но это нарушает правила cloud * .
Я могу создать отчет, в котором напечатан мой код ZPL, и сделать так, чтобы концентратор устройства печатал этот текст (очевидно, в формате PDF) на моем лазерном принтере.Я могу настроить принтер в концентраторе устройства в качестве необработанного принтера, но запуск отчета на концентратор устройства приводит к ошибке на концентраторе устройства "Print job 7 contains a PDF file that can't be sent in raw mode". Похоже, что отправка его в виде отчета Acumatica преобразует мои текстовые коды ZPL всначала документ PDF, и я не могу разобраться, как отправить необработанный текстовый файл команды.

Данные метки ZPL (можно увидеть при запуске отчета вручную):

^FO0,30^A0N,32,0^FDCHEMICAL, TEST^FS
^FO0,62^A0N,28,0^FD^FS
^FO0,85^BQN,2,5,Q^FDQA,18-00001^FS
^FO120,90^A0N,32,0^FD18-00001^FS
^FO120,120^A0N,20,0^FDStk UM: PIECE^FS
^FO120,142^A0N,20,0^FDSO UM: PIECE^FS
^FO120,164^A0N,20,0^FD^FS
^FO120,185^A0N,16,0^FD03/22/2019^FS
^PQ1,0,0,N
^XZ

Печать в виде отчета на Device Hub:

Dictionary<string, string> printParams = new Dictionary<string, string>();
printParams["SSLBLabel.LabelID"] = graphLB.Labels.Current.LabelID.ToString();

PXReportRequiredException ex = null;
ex = PXReportRequiredException.CombineReport(ex, "SS601000", printParams);

PX.SM.SMPrintJobMaint.CreatePrintJobForRawFile(adapter, new NotificationUtility(Base).SearchPrinter, SONotificationSource.Customer, "SS601000",
    Base.Accessinfo.BranchID, new Dictionary<string, string> { { "LabelID", sSLBLabel.LabelID.ToString() } },
    PXMessages.LocalizeFormatNoPrefix(SSCS.LB.Messages.PrintLabels, "Label"));

PX.SM.SMPrintJobMaint.CreatePrintJobGroup("ZEBRA", ex, "Labels"); //Job1

Конфигурация принтера на Device Hub:

1

Когда я использую «незаконный» метод печати непосредственно на принтере, видимом для сервера приложений, предоставленные данные ZPL приводят к правильной тестовой этикетке.Я не возражаю против создания фактического файла для отправки в Device Hub, но все примеры, которые я вижу, объединяют метки в 1 файл и затем перенаправляют браузер для загрузки файла вместо того, чтобы концентратор устройств управлял необработанной меткой.

...