> SYSPRO Harmony

SYSPRO Harmony

Harmony is a social ERP platform embedded in the SYSPRO product, and combines the following multitude of technologies into one application:

  • Social Media

  • Collaboration

  • Machine Learning

  • Cognitive Services

  • Data Analytics

Benefits

  • Requires no license - Harmony is a free module

  • Drives user collaboration

  • Surfaces information to the user

  • Provides 24/7 view of your company's operating status

  • Simplifies complex technologies and business processes

  • Enables faster decision making

  • Alerts users on trending information

  • Enables integration of SYSPRO data onto a messaging platform

  • Enables trend analysis in conversations

Features

The SYSPRO Harmony program (accessible from the SYSPRO Program List pane) enables all the features of Harmony, including the following:

Feature Description
Data Mining Service

In order for Harmony to access all the information and transactions happening in SYSPRO, a data mining service was created.

This mining service monitors the SYSPRO database and analyses its transaction log. It cleanses the data and then stores it in a relational database ready to be processed by Harmony and the Rules Based Engine.

[Note]

This service can reside anywhere in the SYSPRO infrastructure, however we recommend that it is installed on the same server as the SQL Server.

In addition, data sentiment enables a complete spectrum picture of customer opinion about your services or products for informed and strategic decision making. Visual cues (the equivalent of emoticons), help alert users by attaching sentiment to specific items.

News Feed

Harmony provides the equivalent of a news feed that's auto-populated by conversations with relevant information, based on key ERP components that you choose to follow.

Instead of needing to go into the system to retrieve pertinent information, the system intelligently pushes it to you.

Similarly, you can opt into following any other key information in SYSPRO (e.g. stock codes, suppliers, sales orders, etc.).

For example: If you choose to follow the customer Bayside Bikes, your newsfeed will update every time there is an activity for that customer (e.g. when the customer's information has changed, or when a sales order has been created, or even when the customer has returned something).

In addition, some intelligent algorithms monitor the content that your peers follow (as well as what is trending in the database) and these insights are surfaced in your newsfeed.

Collaboration

The collaboration aspect of Harmony brings SYSPRO users together via a chat method, similar to that of WhatsApp or Skype. However, unlike traditional chats, Harmony allows users to bring the context of their ERP data into the conversation using social media techniques (e.g. # hashtags).

Harmony lets you post beats (i.e. conversation posts within the Harmony portal) like you would on Facebook or Twitter. However, you have the added benefit of those beats being able to contain data context with the use of @ signs and # tags. For example: If you enter #Customer abc. Balance, Harmony returns that customer's balance immediately and enables you to beat about it.

Therefore, when collaborating, users have full and secure access to the data in their SYSPRO databases. This enables them to query information directly in the chat, such as stock information, sales order statuses, customer information, etc.

Users can reply and like messages that have been posted, thus elevating their importance or relevance.

Additionally, Harmony makes use of cloud-based cognitive services that detect conversation sentiment. It will detect if the conversation's sentiment is positive, negative or neutral, and indicate accordingly.

Trend Surfacing

Most social media applications (like Twitter or LinkedIn) use intelligent machine learning algorithms to detect trends from the messages that are being posted, and then surface that information to the user according to their relevance. In a similar fashion, Harmony uses predictive analytics to reveal trends that provide actionable insight. The differentiator is that not only does Harmony process machine learning and trend detection on conversations, it also processes these on the core SYSPRO database.

Harmony will identify transactions happening on the SYSPRO database, identify the key fields on which the transactions are happening, and then perform trend detection and aggregation on this data. It will then present this information to the user in the form of a chart and reflect what is currently trending in the SYSPRO database.

For example: A stock code could be used in a large number of sales orders, as well as some purchase orders and RMAs. In this case, that stock code would be trending.

This simple piece of functionality brings critical information to the forefront without you having to ask for it or consolidate reports across the different modules.

Rules Engine

The rules based engine works together with the data mining service and allows you to create complex triggers and perform actions without using SQL triggers.

Harmony also uses the rules based engine. If a user follows a particular item, a rule is automatically added to the engine and when the rule executes, a beat is posted to the Harmony database.

A basic set of rules are supplied by default with the SYSPRO Rules Engine. Therefore, as soon as you have installed the components, Harmony can start tracking and conveying information based on these default rules.
[Note]

Although currently you cannot add, maintain or delete rules, SYSPRO is developing a new interface to enable this functionality.

Rule DescriptionTrigger Description
Stock code selling price changeUpdate on InvPrice
Limited promotion within 5% from expiringUpdate on TpmPromotionLimit, below 5% of Promotion limit (TpmPromotion)
After Inventory movementInsert on InvMovements
Customer set to on holdUpdate on ArCustomer, CustomerOnHold flag changed to Y
Supplier set to on holdUpdate on ApSupplier, OnHold flag changed to Y
New sales order createdInsert on SorMaster
New line added to sales orderInsert in SorDetail
Stock code added to warehouseInsert in InvWarehouse
New RMA createdInsert in RmaMaster
New line added to RMAInsert in RmaDetail
New job created for customerInsert in WipMaster, where Customer not = " "
AP payment cycle completedChange to ApPayRunHdr, PaymentRunStatus = "C"
New asset addedInsert in AssetMaster
An asset changedUpdate to AssetMaster
An asset deletedDelete on AssetMaster
After Cashbook depositInsert in CshJnl, EntryType = "D"
After Cashbook withdrawalAny SYSPRO table change
Customer within 10% of credit limitUpdate to ArCustomerBal, sum on balances within 10% of Credit limit (ArCustomer)
Job deleted without customerDelete on WipMaster, Customer = " "
GL period changeUpdate to GenControl, GlPeriod changed
AP Invoice verification difference greater than 10%Insert on GrnPriceVariance, calculation on difference is greater than 10%
New supplier addedInsert on ApSupplier
Supplier delivery received lateInsert on PorHistReceipt, DateReceived greater than LineDueDate
Supplier delivery received shortUpdate on PorMasterDetail, MReceivedQty less than MOrderQuantity
New job created without a customerInsert in WipMaster, Customer = " "
PO delivery rejected at receivingInsert in PorScrapRejectIns, ScrapRejectFlag = "R"
Over issue to a jobUpdate to WipJobAllMat, QtyIssued greater than calculated required quantity
Stock issued to jobUpdate to WipJobAllMat, QtyIssued increased
Stock rejected at inspectionUpdate to WipInspect, QtyScrapped increased
Stock rejected at receivingInsert in PorScrapRejectIns, ScrapRejectFlag = "S"
RMA line receivedUpdate to RmaDetail, LineStatus = 9
Stock code addedInsert in InvMaster
Bin added for stock codeInsert in InvMultBin
Stock take posting completeUpdate to InvWhControl, StockTakeFlag = "N" and StockTakeUpdate = " "
BOM addedInsert in BomParentInfo
Job deletedDelete on WipMaster, Customer not = " "
Job received lateUpdate to WipMaster, Complete = "Y" and JobDeliveryDate greater than ActCompleteDate
Job received short with a customerUpdate to WipMaster, Complete = "Y" and QtyToMake greater than QtyManufactured
Delivery note printedUpdate to SorMaster, DeliveryNote changed
Dispatch note released for invoicingUpdate to MdnMaster, DispatchNoteStatus = "7"
POD confirmed for SO deliveryUpdate to ArInvoice, ProofOfDelivery = "Y"
Price override at invoicingInsert in SorChanges, Price not = NewPrice
Contact details changedUpdate to CrmContact
Delivery is shortInsert in MdnDetail, OrigBoSoUom not = "0"
Lost sales order lineInsert in SorLostSales
New promotion addedInsert in TpmPromotion
Job received late without a customerUpdate to WipMaster, Complete = "Y" and JobDeliveryDate > ActCompleteDate
Job received shortUpdate to WipMaster, Complete = "Y" and QtyToMake > QtyManufactured
Track History on ArCustomer.OutstOrdValUpdate to ArCustomer, OutstOrdVal changed
Track History, Rough order value estemateUpdate to SorMaster, End order completed
Track History on ArCustomerBal.CurrentBalance1Update to ArCustomerBal, CurrentBalance1 changed

Getting Started

Installing

For ease of use, the Harmony installation components have been combined into a single autorun file.

The autorun file can be downloaded from the Software Downloads area of the SYSPRO InfoZone (Links->Ports and Downloads). It automatically guides you through the process of getting your system up-and-running as quickly as possible.

The combined wizard application establishes what software is already installed on your machine and then prompts you to install any missing components.

Each component required to be installed launches a separate installation wizard, with easy-to-follow steps.

Prerequisites Installation notes and considerations
  • SYSPRO e.net Communications Load Balancer

 
  • Microsoft .NET Framework 4.6

 
  • IIS 7.0

  • Ensure that the CoreWebEngine and W3SVC features are installed.

  • SYSPRO Service Upgrade Manager
  • This service updates all the SYSPRO services automatically.

  • SYSPRO Rules Data
  • This service monitors SQL transactions on the SYSPRO databases, as required by the Rules Engine.

[Note]
  • Ensure that the SOAP and REST port numbers match those configured in SYSPRO (System Setup->E.Net Service Details).

  • You must restart this service manually once you have completed the SYSPRO configuration.

  • We recommend that you install the service on the same server as SQL Server.

  • SYSPRO Rules Engine
  • This service queries all SQL transactions on the SYSPRO databases.

[Note]
  • Ensure that the SOAP and REST port numbers match those configured in SYSPRO (System Setup->E.Net Service Details).

  • You must restart this service manually once you have completed the SYSPRO configuration.

  • We recommend that you install the service on the same server as SQL Server.

  • SYSPRO Harmony Service
  • This service processes all Harmony transactions.

  • SYSPRO Harmony API
  • This service provides an interface for Harmony integration and must be installed on a machine with Internet Information Services (IIS 7.0).

Configuring

  • Ensure that you have enabled Webviews within SYSPRO (System-wide Personalization).

Once you have concluded the installation process for all required components, you need to configure Harmony within SYSPRO itself:

  1. Open the System Setup program and select the Rules Engine / Harmony tab.

  2. Enter the relevant information as follows:

    Field Description
    Rules engine options  
    Active company list Indicate the companies for which you want to enable the Rules Engine.
    [Note]

    After configuring this setting and restarting SYSPRO, the following processes occur in the background:

    • The applicable SQL tables are created within the SYSPRO database (their names prefixed by the word Rules).

    • A new SYSPRO operator is created: __RUL. This operator is required in order for the services to run.

    Harmony options  
    Active company list Indicate the companies that you want to enable for Harmony.
    Harmony API service address Indicate the url of the SYSPRO Harmony API Service.
    [Note]

    This is the Harmony service installed within IIS.

    For example: http://localhost/SYSPROHarmonyAPI/ (where localhost is replaced by your server IP address).

    Harmony service address Indicate the address to the SYSPRO Harmony Service which is used to process Harmony transactions.

    For example: net.tcp://localhost:33334/HarmonyService (where localhost is replaced by your server IP address).

    [Note]

    The port number must match your entry made when installing the SYSPRO Harmony Service.

    Harmony database connection  
    Authentication Select an authentication mode to use when processing transactions on the Harmony database
    SQL Server name Indicate the name of the SQL server that will be used for the Harmony database.
    Login Indicate a valid SQL login name for the Harmony database.
    Password Indicate the corresponding password for the SQL login.
    Test SQL connection Test the SQL connection to the Harmony database with the parameters indicated.

  3. Save and exit.

  4. Restart SYSPRO.

  5. Once you have completed the installation process, as well as the SYSPRO configuration, ensure that all of the newly-installed services are running, using the Windows Services program.

User Interface

SYSPRO Harmony

You launch the SYSPRO Harmony program from the SYSPRO Program List pane (SYSPRO Programs->SYSPRO Harmony->SYSPRO Harmony)

In addition, you can customize the Harmony Widgets you want to view, using the Visual Designer (available from the icon).

Profile

This displays information related to the current user:

  • Summary of user beats, categorized by their sentiment.

  • Summary of how many objects are being followed (see the Follow items pane for more detail).

  • Listing of followers.

Missed events

This displays beats added since the last login, allowing you to catch up on things you may have missed.

Beats

This displays beats which you have selected to follow, or may be interested in.

Beats are displayed using a weighting, based on their popularity and what you follow, and contain the following information:

  • Location and basic information regarding the user that posted a beat

  • Number of replies to each beat

  • Number of times a beat is admired

  • Number of shares per beat

  • Attachments contained within beats

Trending chart

This provides a visual representation of items currently trending, in the form of a bubble chart.

How much a particular item is trending is indicated by the size of the bubble (i.e the bigger the bubble, the more that item is trending).

The color of the bubble portrays the general sentiment around that item's activity:

  • Red reflects a negative sentiment

  • Green reflects a positive sentiment

  • Grey reflects a neutral sentiment

[Note]

The darker shades of green or red are an indication of a more positive or negative sentiment, respectively.

These bubbles are also interactive and allow you to drill down to more detail, reflected in the Trending detail pane.

Currently trending

This displays a list of items currently trending, along with the number of beats per item.

You can also select to follow or unfollow items from this list.

Reply to beat

This lets you reply to a particular beat.

In and around

This highlights all recent database activities (e.g. beats being added) such as items that have been mentioned, users that have posted numerous beats, etc.

For example:#StockCode.A100has been mentioned a number of times.

You can also select to follow or unfollow items from this list.

Following list

This displays a list of all items that you have selected to follow.

Add beat

This lets add a new beat. Available functions includes:

  • Tag items using the # tag

  • Tag other users using the # tag

  • Add attachments

  • Make use of suggestive text

Trending detail

This displays more detail regarding the selected topic in the Trending chart pane.

The Trending chart indicates the importance of subtopics relative to the enclosing topic. This Trending detail pane then displays the most relevant properties when the selected bubble relates to a key field.

Follow items

This lets you follow items or topics by right-clicking the item and selecting the Follow option.

Troubleshooting

Installation Errors

Error Solution
Connection error during installation of Rules Data Service:

TCP Error code 10061

Ensure that the SYSPRO e.net Communications Load Balancer is installed and that the SOAP port number used during the install matches that of the Load Balancer EndPoint in the Rules Data Service install wizard.