Can BarTender integrate with SAP? Follow

Avatar
Fernando Ramos Miracle

There are various ways that you can integrate BarTender with SAP, please allow me to explain several of them:

SAP-AII

The most powerful SAP integration method is the SAP AII (Auto-ID Infrastructure) which is a logistics management tool that allows for automatic label printing with BarTender.

On the SAP side, an XML based SAP-AII document is created that contains the variable information to print and information such as the label format, printer, number of copies, etc.

The XML document is then sent to the BarTender Integration Platform (as a file to a Windows/SAP folder, as a data stream through a TCP/IP port, through an HTTP request, etc.) where it's transformed into BarTender XML (BTXML). The Integration Platform sends the BTXML directly to BarTender which processes the print request.

SAP-AII requires the Enterprise edition of BarTender.

IDOCS

If you prefer to use IDOCS with BarTender (Intermediate Documents), we also support importing these SAP data types. With this method our Integration Platform detects the IDOC file (containing variable information and variable parameters) being produced by SAP. After this detection has taken place, the Integration Platform prints the BarTender document containing the variable information coming from SAP. In order to print using IDOCS, BarTender Automation edition is required.

CSV Files

If you would prefer to use the SAP database to output plain CSV type data, then the Integration Platform can again be used. This method allows details such as print quantity, printer name, number of copies, etc… to be specified either as part of the data, or as Print Commands placed at the beginning of the data. The Automation edition of BarTender would be required.

Integration Platform

Now please let me explain to you how our Integration Platform works in a little more detail. The Integration Platform is an application run as a Windows service, which is installed as part of the BarTender suite of applications. The Integration Platform is a middleware application, as it works to connect two systems. In this case, these systems are SAP on one side and our BarTender label design & print software on the other side. The Integration Platform waits for a trigger event to happen (either by scanning a certain folder, by waiting for an email to be received, by waiting for a web service request, or by listening to a TCP/IP socket). This event is the data file/email/information coming from SAP. As soon as this event happens, the Integration Platform reads the event and its variable parameters/information and wakes up BarTender. BarTender then prints the labels with the variable information supplied by SAP.

For more information please take a look at the below White Paper:

Integrating with BarTender Integration Builder

5 comments

0
Avatar
vishal jawa
Comment actions Permalink

Hello Fernando,

Greetings! 

I referred your methods of integration with SAP but still not clear on integration with IDOCS. 

Can you please explain that in SAP IDOC Definition step what format of Parser & IDOC file is used? So, that whenever .file is triggered bartender process and print the values based on trigger file. I am sending .file but it is printing default values on all printout.

Awaiting your response.

Regards, VJ

 

0
Avatar
Prashant Abbigeri
Comment actions Permalink

Hello Fernando,

We are setting up new Integration between SAP and Bartender through HTTP Post method and sending XML file to Bartender.

When we run SAP generated XML file directly in Bartender Application i.e BTXML Script then it is successful, but when sending the same XML file from SAP to Bartender IP address then we are getting error "Root Element is missing" .

Please find the XML file which we are sending:

<?xml version="1.0" encoding="UTF-16"?>
<XMLScript Version="2.0">
<Command>
<Print JobName="20200713154835">
<Format>xxxxxx.btw</Format>
<NamedSubString Name="Field1"><Value>Value1</Value></NamedSubString>
<NamedSubString Name="Field2"><Value>Value2</Value></NamedSubString>
<NamedSubString Name="Field3"><Value>Value3</Value></NamedSubString>
<PrintSetup>
<IdenticalCopiesOfLabel>1</IdenticalCopiesOfLabel>
<Printer>PrinterName</Printer>
</PrintSetup>
</Print>
</Command>
</XMLScript>

Many thanks in advance.

Regards

Prashant Abbigeri

0
Avatar
Fernando Ramos Miracle
Moderator
Comment actions Permalink

Hello Prashant,

Looking at the BTXML script i see that you've set it up to be "UTF-16", while our code generally uses "UTF-8". Do try switching the first line to the following:

<?xml version="1.0" encoding="utf-8"?>

You'll find many BTXML samples in our help documentation here:
http://help.seagullscientific.com/2019/en/#Overview_of_Automation.htm%3FTocPath%3DAutomating%2520BarTender%7C_____1

If that doesn't work, and considering the error you've encountered, I'm wondering if there could be a problem with the encoding (your system is sending the file with encoding X, but BarTender is configured to read it as if it where encoding Y). This would imply that some of the characters get meshed up thus causing such an error.

In any case, I would strongly recommend that you open a ticket with our Tech Support department and send them the actual trigger file and integration you are working with. You can do so here:
https://support.seagullscientific.com/hc/en-us/requests/new?ticket_form_id=148268

They'll surely be able to help on this matter.

Regards,

Fernando Ramos
Solutions Consultant, EMEA
BarTender Software | Seagull Scientific

0
Avatar
Prashant Abbigeri
Comment actions Permalink

Hello Fernando,

Thank you for your response.

I have modified the first line in our XML file to <?xml version="1.0" encoding="utf-8"?> and then I am getting below error.

Error 1: Data at the root level is invalid. Line 1, position 1.

Error 2: Root Element is missing.

<?xml version="1.0" encoding="UTF-8"?>
<XMLScript Version="2.0">
<Command>
<Print JobName="20200713154835">
<Format>xxxxxx.btw</Format>
<NamedSubString Name="Field1"><Value>Value1</Value></NamedSubString>
<NamedSubString Name="Field2"><Value>Value2</Value></NamedSubString>
<NamedSubString Name="Field3"><Value>Value3</Value></NamedSubString>
<PrintSetup>
<IdenticalCopiesOfLabel>1</IdenticalCopiesOfLabel>
<Printer>PrinterName</Printer>
</PrintSetup>
</Print>
</Command>
</XMLScript>

Can we pass Binary Content to Bartender system I mean XML Data in XSTRING data type.

And If this will not resolve then I will try TCP/IP Web Service approach or would rather raise a ticket.

 

Regards

Prashant Abbigeri

0
Avatar
Fernando Ramos Miracle
Moderator
Comment actions Permalink

Hello Prashant,

As mentioned on my previous comment, I would strongly recommend you get in contact with our Technical Support department, as they'll be able to take a deeper look into your issue. You can open a ticket through the following section:
https://support.seagullscientific.com/hc/en-us/requests/new?ticket_form_id=148268

Regards,

Fernando Ramos
Solutions Consultant, EMEA
BarTender Software | Seagull Scientific

Please sign in to leave a comment.