SYSPRO Harmony
Exploring
This program lets you configure and manage the ERP information you want to track within the product.
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
The Harmony platform allows users to collaborate and communicate inside the context of the SYSPRO ecosystem.
Then, using a combination of the data generated from these interactions, along with the vast company data generated by the SYSPRO product, it provides a single view and a more personalized working platform for the user, no matter where in SYSPRO they may be.
The benefits of using SYSPRO Harmony include:
- Requires no license - Harmony is a free module
- Drives user collaboration with social ERP conversations
- Follows information and surfaces to the user
- Provides 24/7 view of your company's operating status
- Simplifies complex technologies and business processes
- Enables faster decision making
- Data sentiment integration
- Alerts users on trending information
- Enables integration of SYSPRO data onto a messaging platform
- Enables trend analysis in conversations
Starting
Prerequisites | Installation notes and considerations |
---|---|
SYSPRO 8 e.net Communications Load Balancer |
This must be installed on the application server with SYSPRO 8 as only an active connection to this service is required. |
Microsoft SQL Server 2012 or higher | |
Microsoft .NET Framework 4.6 |
|
Microsoft .NET Core 1.1.0 (Windows Server Hosting) | |
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 Service |
This service monitors SQL transactions on the SYSPRO databases, as required by the Rules Engine.
|
SYSPRO Rules Engine Service |
This service queries all SQL transactions on the SYSPRO databases
|
SYSPRO Harmony Service |
This service processes all Harmony transactions. |
SYSPRO Harmony API Service |
This service provides an interface for Harmony integration and must be installed on a machine with Internet Information Services (IIS 7.0). |
Once you have concluded the installation process for all required components, you need to configure Harmony within SYSPRO itself:
- Open the System Setup program and configure settings within the Rules Engine / Harmony tab.
-
Save and exit.
-
Restart SYSPRO.
-
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.
-
Load the SYSPRO Harmony program in SYSPRO.
A blank window is displayed as you need to enable web views for this program.
-
Select the Design Web View option from the icon.
The Design New View message box is displayed.
Accept the default template and select Save.
You can also optionally configure your own template design.
Solving
Ensure that the SYSPRO 8 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.
Using
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 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.
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
Emoji | Sentiment |
---|---|
|
Very happy |
|
Happy |
|
Neutral |
|
Unhappy |
|
Very unhappy |
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 news feed.
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.
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 difference 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.
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.
Rule Description | Trigger Description |
---|---|
Stock code selling price change |
Update on InvPrice |
Limited promotion within 5% from expiring |
Update on TpmPromotionLimit, below 5% of Promotion limit (TpmPromotion) |
After Inventory movement |
Insert on InvMovements |
Customer set to on hold |
Update on ArCustomer, CustomerOnHold flag changed to Y |
Supplier set to on hold |
Update on ApSupplier, OnHold flag changed to Y |
New sales order created |
Insert on SorMaster |
New line added to sales order |
Insert in SorDetail |
Stock code added to warehouse |
Insert in InvWarehouse |
New RMA created |
Insert in RmaMaster |
New line added to RMA |
Insert in RmaDetail |
New job created for customer |
Insert in WipMaster, where Customer not = " " |
AP payment cycle completed |
Change to ApPayRunHdr, PaymentRunStatus = "C" |
New asset added |
Insert in AssetMaster |
An asset changed |
Update to AssetMaster |
An asset deleted |
Delete on AssetMaster |
After Cashbook deposit |
Insert in CshJnl, EntryType = "D" |
After Cashbook withdrawal |
Any SYSPRO table change |
Customer within 10% of credit limit |
Update to ArCustomerBal, sum on balances within 10% of Credit limit (ArCustomer) |
Job deleted without customer |
Delete on WipMaster, Customer = " " |
GL period change |
Update to GenControl, GlPeriod changed |
AP Invoice verification difference greater than 10% |
Insert on GrnPriceVariance, calculation on difference is greater than 10% |
New supplier added |
Insert on ApSupplier |
Supplier delivery received late |
Insert on PorHistReceipt, DateReceived greater than LineDueDate |
Supplier delivery received short |
Update on PorMasterDetail, MReceivedQty less than MOrderQuantity |
New job created without a customer |
Insert in WipMaster, Customer = " " |
PO delivery rejected at receiving |
Insert in PorScrapRejectIns, ScrapRejectFlag = "R" |
Over issue to a job |
Update to WipJobAllMat, QtyIssued greater than calculated required quantity |
Stock issued to job |
Update to WipJobAllMat, QtyIssued increased |
Stock rejected at inspection |
Update to WipInspect, QtyScrapped increased |
Stock rejected at receiving |
Insert in PorScrapRejectIns, ScrapRejectFlag = "S" |
RMA line received |
Update to RmaDetail, LineStatus = 9 |
Stock code added |
Insert in InvMaster |
Bin added for stock code |
Insert in InvMultBin |
Stock take posting complete |
Update to InvWhControl, StockTakeFlag = "N" and StockTakeUpdate = " " |
BOM added |
Insert in BomParentInfo |
Job deleted |
Delete on WipMaster, Customer not = " " |
Job received late |
Update to WipMaster, Complete = "Y" and JobDeliveryDate greater than ActCompleteDate |
Job received short with a customer |
Update to WipMaster, Complete = "Y" and QtyToMake greater than QtyManufactured |
Delivery note printed |
Update to SorMaster, DeliveryNote changed |
Dispatch note released for invoicing |
Update to MdnMaster, DispatchNoteStatus = "7" |
POD confirmed for SO delivery |
Update to ArInvoice, ProofOfDelivery = "Y" |
Price override at invoicing |
Insert in SorChanges, Price not = NewPrice |
Contact details changed |
Update to CrmContact |
Delivery is short |
Insert in MdnDetail, OrigBoSoUom not = "0" |
Lost sales order line |
Insert in SorLostSales |
New promotion added |
Insert in TpmPromotion |
Job received late without a customer |
Update to WipMaster, Complete = "Y" and JobDeliveryDate > ActCompleteDate |
Job received short |
Update to WipMaster, Complete = "Y" and QtyToMake > QtyManufactured |
Track History on ArCustomer.OutstOrdVal |
Update to ArCustomer, OutstOrdVal changed |
Track History, Rough order value estimate |
Update to SorMaster, End order completed |
Track History on ArCustomerBal.CurrentBalance1 |
Update to ArCustomerBal, CurrentBalance1 changed |