Table of Contents


Web Orders are not pulled in System5


There are a number of order statuses in WooCommerce

On Hold

  • will not get pulled or imported in System5. User/Customer will need to change this to Status=Processing

Processing

  • Only status type that will get imported to system5.

Canceled

  • Will not be imported

Completed

  • Already been imported into System5


The Order Sync has an interval of 5 minutes and if the order status is already "Processing" and it's still not showing in Ecomm Staging.


Do the following steps

1. Have the user sign out of SystemFive and sign in again.

2. Then go to Sales > ECommerce Staging Import menu and have the user to login


3. When the page loads, click on the icon pointed below to load the orders windows


4. You should see all orders listed. Otherwise, click on the Pull Orders button and wait until it loads the online orders. If it doesn't pull any orders or the specific recent order expected. You can wait a few more minutes for the sync to kick in then sign out of System5 and back in and Pull Orders again.


Alternatively, you can ask Frances G or anyone with access to the Deployment Web App to manually sync 


The process of importing an order or invoice into System5

  1. select the check box left to the Order Number column
  2. Click on Validate button
  3. Then Import button
  4. Now they can process the order as a System5 Invoice.


Order Status is already COMPLETED but did not sync or show up in SystemFive

The order status must be 'Processing' to get imported in

  1. Have the customer go to their Website Admin Page
  2. Go to Woocommerce > Orders 
  3. Select the order and Edit
  4. Set the Status = Processing
  5. click Update


You could wait for 5 minutes or in the Deployment Web App, you can stop/start the Order Sync to get this pulled and show up in System5.


New added Inventory Items are not synching to the WebSite


There are 2 possible scenarios here

1. The newly added item does not have the "Export to Ecommerce" flag in SystemFive

  • This flag needs to be enabled for all inventory items that need to be pulled by the integration. Then wait for the next sync to occur. If this doesn't work, see the steps below for the newly added category.


2. The newly added items belong to a newly created category

  • Category Mapping must be done in Ecomm Staging
    • Once the mapping is done,
    • In Deployment Web App > Manage Integrations
    • Stop Function for Publish Inventory
    • Then click the Arrow-down on Publish Inventory button and click on Reset Delta
    • Then Start Function to Publish Inventory again.
    • Once, this is successful
    • Do the same for Publish Stock Qty & Sync Stock Qty


Nothing is publishing or Synchronizing

It is very likely that WindwardConnect Service is not running.


What?

  • WindwardConnect is like the middleman between SystemFive and the website. It sends/receive updates between both and if this is not running or has failed in the process of sending and receiving updates, nothing will come across, it is all or nothing.


Where?

  • WindwardConnect files are stored inside the 'bin' folder
  • The service can be found in Windows 'services.msc' and named accordingly
  •  'WindwardConnectProduction' or 
  • 'WindwardConnectTraininig'


How do you verify?

  • Once the service is running, a log file will be generated inside the 'bin' folder called 'WindwardConnectProductionLog.txt'
  • A successful connection will look like this below

10:16:42.5464157-> Creating folder: C:/Windward/System5/bin/ScriptRunner/DLLs/ (if it doesn't already exist)

10:16:42.5464157-> Deleting any pre-existing DLL files from C:/Windward/System5/bin/ScriptRunner/DLLs/

10:16:42.6088985-> Downloading new DLL files

10:16:43.2652508-> Downloading Microsoft.ServiceBus.dll

10:16:43.6091299-> Downloading Newtonsoft.Json.dll

10:16:44.2337965-> Downloading System.Data.SqlClient.dll

10:16:44.3333583-> Downloading System.Net.dll

10:16:44.4498694-> Downloading System.Threading.Tasks.dll

10:16:44.5437565-> Downloading System.Data.dll

10:16:44.6219502-> Downloading System.Data.DataSetExtensions.dll

10:16:44.8093332-> Downloading System.Core.dll

10:16:44.9031363-> Downloading FrameworkLib.dll

10:16:45.0739423-> Downloading ECS/BaseLib.dll

10:16:45.1595192-> Downloading ECS/Dapper.dll

10:16:45.2866789-> Downloading ECS/FrameworkLib.dll

10:16:45.4739269-> Downloading ECS/libglib-2.0-0.dll

10:16:45.5676552-> Downloading ECS/libgobject-2.0-0.dll

10:16:46.7009394-> Downloading ECS/libvips-42.dll

10:16:46.7792650-> Downloading ECS/MessagePack.Annotations.dll

10:16:49.6682938-> Downloading ECS/MessagePack.AspNetCoreMvcFormatter.dll

10:16:49.7622954-> Downloading ECS/MessagePack.dll

10:16:49.8869930-> Downloading ECS/MessagePack.ImmutableCollection.dll

10:16:49.9652548-> Downloading ECS/Microsoft.AspNetCore.Http.Abstractions.dll

10:16:50.0746311-> Downloading ECS/Microsoft.AspNetCore.Http.Extensions.dll

10:16:50.1684467-> Downloading ECS/Microsoft.AspNetCore.WebUtilities.dll

10:16:50.3575367-> Downloading ECS/Microsoft.Extensions.Primitives.dll

10:16:50.4350414-> Downloading ECS/Microsoft.ServiceBus.dll

10:16:50.6066131-> Downloading ECS/NetVips.dll

10:16:50.8722032-> Downloading ECS/NetVips.Extensions.dll

10:16:51.0908767-> Downloading ECS/Newtonsoft.Json.dll

10:16:51.3566882-> Downloading ECS/Polly.dll

10:16:51.5752702-> Downloading ECS/Polly.Extensions.Http.dll

10:16:51.7783739-> Downloading ECS/Serilog.dll

10:16:51.8564017-> Downloading ECS/Serilog.Sinks.File.dll

10:16:51.9816285-> Downloading ECS/StagingClientLib.dll

10:16:52.0752882-> Downloading ECS/System.Buffers.dll

10:16:52.2468580-> Downloading ECS/System.ComponentModel.Annotations.dll

10:16:52.3431759-> Downloading ECS/System.Core.dll

10:16:52.4297439-> Downloading ECS/System.Data.DataSetExtensions.dll

10:16:52.5995831-> Downloading ECS/System.Data.dll

10:16:52.6933741-> Downloading ECS/System.Data.Odbc.dll

10:16:52.9034479-> Downloading ECS/System.Data.SqlClient.dll

10:16:52.9818731-> Downloading ECS/System.Drawing.Common.dll

10:16:53.0752819-> Downloading ECS/System.Memory.dll

10:16:53.2784513-> Downloading ECS/System.Net.dll

10:16:53.3566429-> Downloading ECS/System.Net.Http.Formatting.dll

10:16:53.4504845-> Downloading ECS/System.Runtime.CompilerServices.Unsafe.dll

10:16:53.6221627-> Downloading ECS/System.Text.Encodings.Web.dll

10:16:53.7159738-> Downloading ECS/System.Threading.Tasks.dll

10:16:53.8098026-> Downloading DLL's complete

10:16:53.8098026-> Initializing the Service Bus Connection

10:17:00.4654337-> Service Started

10:17:00.4654337-> Queue Name: queueWindwardConnectProductionde880c08-dff5-4004-ac8e-12c934bd6c94



This log file can get too long as it gets appended over time.

  1. To have a cleaner or shorter log file
  2. Stop the service
  3. delete the log file
  4. then start the service again
  5. you should have a much smaller file to look at
  • The Queue Name: queueWindwardConnectProduction+hex values is your confirmation that the connection is established.
  • Yes, the downloads of the DLL files are equally important and critical to this connection initialization. And triggers whether the service will be started or not (will get stuck with status=starting). And this is happening locally or at the customer server. The queue name is connecting outside of it or to what we call "Deployment Web App" which is hosted in our Azure Server.

Status = Starting

when you get the service on this status, you won't be able to stop/restart it anymore. One way to get around it is to Kill the Service via CMD.

  • Run CMD as an administrator
  • type in 'sc queryex WindwardConnectProduction' just to get the Service ID.
  • When you have the service ID, type in 'taskkill /f /pid serviceid' press enter
  • Then you should be able to start the service again

What if the service still fails to start?

1. A server restriction to extract the DLL files

  • Refer this to their IT people and explain what needs to happen.
  • The DLL files are extracted into 2 different folders
    • /System5/bin/ScriptRunner/DLLs/ 
    • /System5/bin/ScriptRunner/DLLs/ECS

2. WindwardConnect.INI file (it is also inside the bin folder) is configured wrong


Important

  • This INI file is using forward slashes(/)
  • It is also case-sensitive
  • IsTraining must be set to false if the setup is for the LIVE data
  • MessageTImeToLeaveInHours=1 is newly added to address connection issues


[GatewayService]

CloudReadServiceBusInfoAPI=https://ecommstagingapi-prod2.azurewebsites.net/api/DataGateway/WindwardConnectInfo

SerialNumber=054928

IsTraining=false

DatasetPath=C:/Windward/System5/Data

MessageTimeToLeaveInHours=1


[WindwardConnectTraining]

CloudReadServiceBusInfoAPI=https://ecommstagingapi-prod2.azurewebsites.net/api/DataGateway/WindwardConnectInfo

SerialNumber=054928

IsTraining=true

DatasetPath=C:/Windward/System5/TrainingData

MessageTimeToLeaveInHours=1


[WindwardConnectProduction]

CloudReadServiceBusInfoAPI=https://ecommstagingapi-prod2.azurewebsites.net/api/DataGateway/WindwardConnectInfo

SerialNumber=054928

IsTraining=false

DatasetPath=C:/Windward/System5/Data

MessageTimeToLeaveInHours=1



3. Deployment Web App is down

  • Report to Vadym