Never create another report.
Reporting can be a hassle, so let Znuny help you automate this task. Generate reporting data that anyone can use and requires no additional reoccurring action on your side.
In this Tuesday Tidbit, we will expand on a previous one, where we created a queue preference to contain an AccountingCode. Using this and a web service connection to AirTable, we will send the ticket number, customer id, and AccountingCode to an Airtable Base. This can be done simply, providing all accounting data without needing access to ticket history or customer user data.
Note: We will assume you have an Airtable account and API Key for this exercise and have read their API documentation. The system provides all the other data.
In this use case, we want to add a table row to our base every time a ticket has been closed in a billable queue.
Add your web service, transport, and Ticket::Generic invoker operation.
Configure the invoker to react to the state update of a ticket in a billable queue when closed.
Configure the XSLT Outbound mapping
<?xml version="1.0" encoding="UTF-8"?> <xsl:transform version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:date="http://exslt.org/dates-and-times" extension-element-prefixes="date"> <xsl:output method="xml" encoding="utf-8" indent="yes"/> <xsl:template match="RootElement"> <xsl:copy> <fields> <TicketNumber><xsl:value-of select="Ticket/TicketNumber"/></TicketNumber> <BillingNumber> <xsl:value-of select="Ticket/QueueData/AccountableDepartment"/> </BillingNumber> <CustomerID><xsl:value-of select="Ticket/CustomerID"/></CustomerID> </fields> </xsl:copy> </xsl:template> </xsl:transform>
Configure your transport
Start closing tickets!
This is not for a 1:1 setup, and you will need to do your Airtable setup, generate an API Key, set up the queue preference option, etc. The purpose is to show you what is possible and how little effort can enrich your business using ticket data and web services.