Print Solution

Terminal and WEB APP > WEB APPS Version 2.1 > General information > Print Solution

Top  Previous  Next
Expand/Collapse Toggles

General information about Print Solution

 

hmtoggle_plus1Using Print Solution

The Print solution is working in asynchronous mode. Means: On mobile device you can continue on working on next documents while the Server is creating the document in background. You don't need to wait.
 
General information about Asynchronous Working


 

The functionality of beas common service

- print asynchronously (Example WEB Application)

- create all SAP transaction asynchronously (Example WEB Application)

- simple interface to third applications.

 

 

Idea of asynchronous working

If lots of clients are working parallel with SAP Transaction on one SAP Table, it does not work because SAP must lock the database for every transaction.

This working tends to get unstable causing long waiting time for clients.

 

common_parallel

 

 

In the Beas common service work is carried out with a Stack. Every service sends the transaction command in this stack.

The Beas common service executes this in SERIAL and not PARALLEL.

 

This does not create deadlocks or an overload of the database and results in stable execution.

The worker does not need to wait for a response and can continue since the web service does not execute the transaction itself.

 

The Beas common service sends the answer (good, docentry number, error message etc.) in an answer stack.

The client can check if an answer is available at any moment, and can display it in the window (= synchronous working).

common_asynchron

 

 

In Beas you can see the current stack in the Beas common dashboard.

 

common_dashboard2

To open the Beas common dashboard from Beas manage server, click on the configuration Icon see image below.

 

server_dashboard_icon

 

Use Print solution in Beas Demo WEB Server

 

Activate the "Common Service", if not activated as service

WEB_server_22

 

Use Print solution in standard installation

 

The services are defined in Tools  - Beas Server management

You need always 2 services

a) The beasCommon Service (Common Interface)

b) The WEB Application server

webprintsolution_server
 

NOTE:

Do not  activate common Interface and WEB Application for one Service.

 

 

Setup Print solution per APP

 

 

In this window click on the Mobile Device icon – Setup.

This setting is for all users, not only for the current Authorization Group.

webprint_setting

Window menu_entry_to.psr

 

In the Setup window choose Crystal and in tab "Crystal" choose the RPT File name.

Terminal20_Crystal

Window webwindow_user_setup.psr

 

Print type

Description

Crystal

Selecting this option makes it possible to print a Crystal document:

PATH: Human Resources > Personnel > Edit an entry > Master Data – Attendance sub-tab > double-click yellow_arrow right of "WEB terminal group" field > single-click relevant webapp 2.1 > "Setup Web Version 2" > select "Crystal" from dropdown > Click "Crystal" tab

 

printcrystal

Window webwindow_user_setup.psr

 

Example:  Report "IncomingGoodsLabelExample" for Goods receipt

printcrystal_example

 

The following variables are available in the Print interface:

(only for apps which create SAP transaction document as receipt, issue, transfer, invoice document)

 

Variable

Description

DocNumber

Document Number

DocEntry

Document Entry (internal key)

PrimaryObject

SAP Object code for generated document

PrimaryTable

SAP Table for generated document, for example OIGE for Issue document

DocumentName

Document name in system language

 

This variables are available as PrintObject Variable and instance variable.

 

Note:

The Report "sale_and_purchase_example.rpt" is not working together with this Print Service.

For Testing you can choose "IncomingGoodsLabelExample.rpt" for Stockmanagement – Receipt App.

 

Send additional information to Crystal document as argument

It is possible to read additional information and to send this as arguments to the crystal document.

You can do this in the tab "Print Script", which is executed before printing

 

With the following SQL Statement you can read Serial numbers, Bin locations (only Beas), Item Code,  ItemName and other information from the generated document:

printscriptsql

instance datastore d

// Table Name is in <PrimaryTable>

// We need name of Line table: This is header table from place 2 + 1

// example: OIGN = IGN1

setvar=ls_linetable=<PrimaryTable,mid 2>1

// exceute sql statement. We use Version 2 (v2). In this way the name of columns same as field name

// (without (v2): Header_DocNum, with (v2): DocNum

d.(v2)select Header."DocNum",Header."CardName",Line."VisOrder" +1 as "VisOrder",Line."ItemCode",Line."Dscription",Line."WhsCode",Line."Quantity",&

 case when "OITM"."ManSerNum"='Y' then "OSRN"."DistNumber" else "OBTN"."DistNumber" end as "BatchNumber" ,&

 "BEAS_WHSBINJOURNAL"."BINCODE" &

from "<ls_linetable>"  Line &

 inner join "OITM" on "OITM"."ItemCode" = Line."ItemCode" &

 inner join "<PrimaryTable>" Header on Header."DocEntry"=Line."DocEntry" &

 left outer join "OITL" on "OITL"."DocType"=Line."ObjType" and "OITL"."DocEntry"=Line."DocEntry" and "OITL"."DocLine"=Line."LineNum" &

 left outer join "ITL1" on "ITL1"."LogEntry"="OITL"."LogEntry" and "ITL1"."ItemCode"="OITL"."ItemCode" &

 left outer join "OBTN" on "OBTN"."SysNumber"="ITL1"."SysNumber" and "OBTN"."ItemCode"="ITL1"."ItemCode" and "OITM"."ManBtchNum"='Y' &

 left outer join "OSRN" on "OSRN"."SysNumber"="ITL1"."SysNumber" and "OSRN"."ItemCode"="ITL1"."ItemCode" and "OITM"."ManSerNum"='Y'  &

 inner join "OIVL" on "OIVL"."TransType"=Line."ObjType" and "OIVL"."CreatedBy"=Line."DocEntry" and "OIVL"."DocLineNum"=Line."LineNum" &

 inner join "OIVK" on "OIVK"."TransSeq"="OIVL"."TransSeq" and "OIVK"."LayerID"=0 &

 left outer join "BEAS_WHSBINJOURNAL" on "BEAS_WHSBINJOURNAL"."TransNum"="OIVK"."TransNum" and (case when "OITM"."ManSerNum"='Y' then CAST("OSRN"."SysNumber" AS varchar(30)) when "OITM"."ManBtchNum"='Y' then "OBTN"."DistNumber" else '' end) = "BEAS_WHSBINJOURNAL"."BatchNum" &

 where Line."DocEntry"=<DocEntry>;

// send all information to print object

printobject=setvar=ItemCode=<d.itemcode>

printobject=setvar=BatchNumber=<d.batchnumber>

// destroy datastore

destroy=d

 

 

RTF

You can create Labels / Documents with RTF text.

It is possible to work with placeholders.

printrtf

 

The following variables are available in the Print interface:

(only for apps which create SAP transaction document as receipt, issue, transfer, invoice document)

 

Variable

Description

DocNumber

Document Number

DocEntry

Document Entry (internal key)

PrimaryObject

SAP Object code for generated document

PrimaryTable

SAP Table for generated document, for example OIGE for Issue document

DocumentName

Document name in system language

 

This variables are available as PrintObject Variable and instance variable.

 

Button "Standard"

If you click on Button "Standard", Beas insert an example.

 

Additional Variables

If you need additional Variables, you can define this in tab "Print Script". Beas execute the script before printing the RTF text.

(beas 9.3 PL 3 HF 1)

Example: You want to send ItemCode, ItemName, DistNumber, Quantity and another information

With the following SQL Statement you can read Serial numbers, Bin locations (only Beas), Item Code,  ItemName and other information from the generated document:

printscriptsql

instance datastore d

// Table Name is in <PrimaryTable>

// We need name of Line table: This is header table from place 2 + 1

// example: OIGN = IGN1

setvar=ls_linetable=<PrimaryTable,mid 2>1

// exceute sql statement. We use Version 2 (v2). In this way the name of columns same as field name

// (without (v2): Header_DocNum, with (v2): DocNum

d.(v2)select Header."DocNum",Header."CardName",Line."VisOrder" +1 as "VisOrder",Line."ItemCode",Line."Dscription",Line."WhsCode",Line."Quantity",&

 case when "OITM"."ManSerNum"='Y' then "OSRN"."DistNumber" else "OBTN"."DistNumber" end as "BatchNumber" ,&

 "BEAS_WHSBINJOURNAL"."BINCODE" &

from "<ls_linetable>"  Line &

 inner join "OITM" on "OITM"."ItemCode" = Line."ItemCode" &

 inner join "<PrimaryTable>" Header on Header."DocEntry"=Line."DocEntry" &

 left outer join "OITL" on "OITL"."DocType"=Line."ObjType" and "OITL"."DocEntry"=Line."DocEntry" and "OITL"."DocLine"=Line."LineNum" &

 left outer join "ITL1" on "ITL1"."LogEntry"="OITL"."LogEntry" and "ITL1"."ItemCode"="OITL"."ItemCode" &

 left outer join "OBTN" on "OBTN"."SysNumber"="ITL1"."SysNumber" and "OBTN"."ItemCode"="ITL1"."ItemCode" and "OITM"."ManBtchNum"='Y' &

 left outer join "OSRN" on "OSRN"."SysNumber"="ITL1"."SysNumber" and "OSRN"."ItemCode"="ITL1"."ItemCode" and "OITM"."ManSerNum"='Y'  &

 inner join "OIVL" on "OIVL"."TransType"=Line."ObjType" and "OIVL"."CreatedBy"=Line."DocEntry" and "OIVL"."DocLineNum"=Line."LineNum" &

 inner join "OIVK" on "OIVK"."TransSeq"="OIVL"."TransSeq" and "OIVK"."LayerID"=0 &

 left outer join "BEAS_WHSBINJOURNAL" on "BEAS_WHSBINJOURNAL"."TransNum"="OIVK"."TransNum" and (case when "OITM"."ManSerNum"='Y' then CAST("OSRN"."SysNumber" AS varchar(30)) when "OITM"."ManBtchNum"='Y' then "OBTN"."DistNumber" else '' end) = "BEAS_WHSBINJOURNAL"."BatchNum" &

 where Line."DocEntry"=<DocEntry>;

 

in RTF you can insert all additional placeholders:

printrtfsql

Script

Execute the script.

if Print type is Crystal or RTF, Beas executes the script BEFORE printing.

In this way you can define additional variables or arguments.

The following variables are available in the Print interface:

(only for apps which create SAP transaction document as receipt, issue, transfer, invoice document)

 

Variable

Description

DocNumber

Document Number

DocEntry

Document Entry (internal key)

PrimaryObject

SAP Object code for generated document

PrimaryTable

SAP Table for generated document, for example OIGE for Issue document

DocumentName

Document name in system language

 

This variables are available as PrintObject Variable and instance variable.

 

Example:

Write Information in the Beas protocol:

protocol=error<tab>area=WEB<tab>info=<DocNumber>, <DocEntry>

 

printscripting

Attention:

 

hmtoggle_plus1How to use the Print Solution

The WEB Client cannot print the document itself. The document is created by Beas service which is running on the Server.

The Server and the windows user of the running Service need connection and access to the Printer (for example network printer)

Location settings are best configured directly on the Server.

Check if the user has access to this printer (with the Service is started).

 

The WEB Client must be defined as the known Station

- insert new station

- Tab WEB: Define a password for this station configuration

- define location and a printer for this location

- insert the location in the Work station settings

Work_Station_Test_Location_03

Window system_location_edit.psr

 

Now the printer is linked to a location and the station to a location.

 

The WEB Client must register the Location.

Define "Selection" in Work station Name"

Now you can define the Station and Station Password on a mobile device in the login mask.

 


Help URL: https://help.beascloud.com/beas202102/index.html?webprintdocument.htm