Send Transaction by Storage Queue

In this article

New Setup

How to Operate

Housekeeping

Feature was added to write transactions from a POS to a storage and send a message to a queue pointing to the transaction. Head Office read and processes the messages in the queue and imports the transactions from the storage.

  • This is to enable multiple POSs to send transactions without depending on the connection to the HO.
  • This also eliminates risk of table locks when multiple POSs are sending transactions to HO.
  • Reduces web service calls to HO and therefore reduces the risk of hitting the BC SaaS operational limits.

New Setup

New and additional setup is needed to invoke this new process.

At HO

Scheduler Setup

Select the External Service Provider.

Note: At this moment only Azure is available and that means using Azure Storage and Service Bus.

 

Web Replication Azure Storage Setup

Fill in the required fields for the Azure Storage and Service Bus configuration

Storage Account fields

  • Account Name: Enter the Azure Storage Account name;
  • Container ID: This field is not specific to the Send Transactions by Storage Queue feature. For more information see: Using Azure Storage - Setup in Head Office

  • Transaction Container ID: Enter the name for the container that was created in the Azure Storage Account. This container will be used to store the packets (json files) with the transactions to be replicated. If a container was not created, a container with the name in the field will be automatically created when running the replication job;

  • Account Key: Enter the Access Key for the Azure Storage Account. You can get it from the Storage account, under Security + networking -> Access keys -> key1 -> Key.

Service Bus fields

  • ServiceBus Namespace: Enter the Service Bus Namespace;
  • Queue Name: Enter the queue name created in the Service Bus resource;

  • Key Name: Enter the SAS Policy name configured when creating the Queue;

  • Key Value: Enter the Primary key for the SAS Policy configured in the queue.

Note: Before you define access to Azure Storage and Service Bus, you must create a storage account and service bus in Azure. Refer to How to: Set Up an Azure Storage Account and How to: Set Up an Azure Service Bus for detailed instructions on setting up these resources in Azure.

 

Web Repl AzS OData Mgt

This old web service must be active at HO. When I say old then this was introduced when web replication by Azure Storage was added. Therefore, for those that have not been using that this setup is needed, but for those that have this already in place nothing has changed.

A function within this service provides the POS with temporary access tokens to use to get access to storage and message. The plan is to issue limited tokens that are valid for one hour. Therefore once each hour the POS asks for new temporary token.

 

At POS

POS Functionality Profile

To activate, set the Use External Storage Message field to True.

Note: This functionality utilises the web replication feature to create and handle data to be sent, meaning that it requires the Send Transactions, Use Web Replication and Use Background Session to be active as well. For more information see: Send Transactions Using Web Replication.

Scheduler Setup

Select the External Service Provider.

Note: At this moment only Azure is available and that means using Azure Storage and Service Bus.

 

How to Operate

At POS

After activating the process at the POS Functional Profile, everything works as before when using web replication, except instead of sending the data directly to HO by web request, the data is stored at external storage (azure storage). A message (azure service bus) is created for HO.

Note: All handling at the POS is the same as before, the data remains in the Trans Work table until it has been successfully delivered (in this case to the storage and a message is created).

At HO

Create new scheduler job to import transactions by using external messages and storage.

The process of importing transactions can be monitored through page Transaction External Message Log which is accessible through page Transaction Register.

Housekeeping

For information see How to: Azure Storage Housekeeping

Setting up Azure Service Bus

For information see How to: Set Up an Azure Service Bus