IntegrationsXSF and XML Format Reference for SAP BC-XOM Integrations

From the perspective of SAP ERP, Spectrum acts as an Output Management System (OMS). SAP ERP sends the data for a request in Raw Data Interface (RDI), XML for Smart Forms (XSF), XML for Interactive Forms by Adobe (XFP), or other XML. You can configure the data with values for Spectrum-specific names to override default values.

The OMS Submit command invokes the CLI to pass XSF or XML data to an SAP BC-XOM integration in Spectrum.

XSF or XML data can have one or more smartxsf elements, each of which maps directly to a Smart Form. A smartxsf element has two components:

  • The Header contains information about the device, such as the device type and form name.
  • The Data contains the content to be printed.

A new label will occur on smartxsf and data elements. Header fields from the parent smartxsf element will be copied into the field map when a new data element triggers a new label.

Custom Stylesheet

A custom stylesheet can be configured for incoming XSF or XML requests. If a custom stylesheet is not configured for an integration, Spectrum uses a built-in stylesheet to transform XSF into XML (LPS). XML must be in XML (LPS) format, or a custom stylesheet must be specified to transform the XML to XML (LPS). If you are creating a custom stylesheet, it is recommended that you use the Spectrum XSF stylesheet template as a starting point. To view the XSF stylesheet template, enter the following in the address field of your browser, where spectrum-server is the name of the server hosting Spectrum for your organization:
http://spectrum-server:8080/downloads/sap-smartforms.xsl.template

To implement the options configured in the General, SAP, and Advanced panels in a custom stylesheet for XSF, XML, or XFP, include the following parameters.

<!--

   PrinterName is passed in by the parser, and comes from the Spectrum SAP CLI.

   If there is no printer specified in the data header or an override field,

   this value is used.

   Other parameters are integration options.

   -->

  <xsl:param name="PrinterName" select="''"/>

  <xsl:param name="SpoolId" select="''"/>

  <!-- ExtendedFieldNames will contain the separation character for true,

    and empty string or 'false' for false. Default is '/'.

    '/' or '_' = true, '' or 'false' = false

   -->

  <xsl:param name="ExtendedFieldNames" select="'/'"/>

  <xsl:param name="IncludeAuditData" select="'true'"/>