Seeding and syncing
ActivReporter uses a company database to duplicate the details found in the Dynamics GP company database you want to report on. Seeding and syncing are the methods used to keep the ActivReporter company database in line with the Dynamics GP company database.
Seeding
Seeding is the process of creating the static copy of your Dynamics GP data in an ActivReporter database. Initial seeding of the ActivReporter database occurs when you perform company configuration for the first time. Seeding includes creation of setup details such as Dynamics GP categories, accounts, and transaction history. After initial seeding, you can reseed manually as necessary. To keep the company database synchronized with the source Dynamics GP database, reseeding is sometimes required after an upgrade of ActivReporter.
In general, reseeding is required when you:
- Close the year in the Dynamics GP database if you use ActivReporter 7.38 or earlier.
- Upgrade the ActivReporter software (occasionally).
- Upgrade the Dynamics GP software (occasionally).
- Use any tools in the Professional Services Tools Library (PSTL).
- Make any changes to Dynamics GP GL tables with manual SQL.
Syncing
Syncing is the automatic propagation of changes in the Dynamics GP database to the ActivReporter company database. To accomplish syncing, triggers are added to the Dynamics GP database. These triggers create messages which contain the details for updating the ActivReporter company database to match the Dynamics GP database and add them to a queue. A separate ActivSync database stores these messages. The messages in the queue are processed by a service called the SQL Server Service Broker External Activator (SSBEA). As a result, users see the changes made in Dynamics GP updated to the ActivReporter company database almost instantly.
If the sync process is interrupted, resuming the sync process should catch up with updates by processing any pending messages in the ActivSync database. In the event the ActivSync database itself is damaged, reseeding the company database from Dynamics GP will re-establish synchronization. If you don't see changes being reflected in ActivityHD Explorer, check to see if the messages are stuck in the ActivSync database.
Note
Version 8.15 introduced the ability to edit account records in order to support direct rollup assignment. When an account is in edit mode, its record is locked and updates are prevented as long as the account record is locked. During update processing, ActivSync will pause for a single company if it encounters a locked account.
Reseeding occurs through the ActivReporter company configuration process.
- Start ActivityHD Manager.
- If ActivityHD System is running, click Stop.
Click OK when prompted to confirm you want to stop the system.
- In the Activity Companies area, click Configure.
The Company Configuration Wizard starts.
- Click Next >.
- Click Next >.
- On the Connect to SQL Server page, verify your connection details and enter your database password (if you are using SQL Server authentication).
- Click Next >.
- Select "Modify an Existing Company".
- From the Company Name dropdown, select the company you need to reseed.
- Click Next >.
- Click Next >.
- Click Next >.
- Click Next >.
- On the ActivReporter Configuration page, mark the Reseed checkbox.
- Click Next >.
- On the ActivSync Configuration page, ensure the Enable ActivSync for this company checkbox is marked if you want to use live syncing of the ActivReporter company database with Dynamics GP data.
- If the Enable ActivSync... checkbox is marked and you want to ensure that the ActivSync process does not interfere with the Journal Entry Update process, ensure the Enable Sync Redundancy checkbox is marked (it is marked by default). Sync redundancy updates unposted journal entries, posted journal entries, and budget details by comparing all the values in the Dynamics GP company to the values in the ActivReporter company and ensuring they match.
- If the Enable ActivSync... checkbox is marked and you want to participate in product improvement by logging errors to the cloud, mark the Log ActivSync errors... checkbox.
- Click Next >.
- When the wizard finishes reseeding (and other company configuration tasks), click Finish.
- In ActivityHD Manager, start ActivityHD System.
ActivSync is enabled or disabled through the company configuration process.
- Start ActivityHD Manager.
- If ActivityHD System is running, click Stop.
Click OK when prompted to confirm you want to stop the system.
- In the ActivityHD Companies area, click Configure.
The Company Configuration Wizard starts.
- Click Next >.
- Click Next >.
- On the Connect to SQL Server page, verify your connection details and enter your database password (if you are using SQL Server authentication).
- Click Next >.
- Select "Modify an Existing Company".
- From the Company Name dropdown, select the company you need to enable/disable ActivSync for.
- Click Next >.
- Click Next >.
- Click Next >.
- Click Next >.
- Click Next >.
- On the ActivSync Configuration page, ensure the Enable ActivSync for this company checkbox is marked to enable live syncing of the ActivReporter company database with Dynamics GP data. If you want to disable live syncing, clear the checkbox and skip to step 18.
- If the Enable ActivSync... checkbox is marked and you want to ensure that the ActivSync process does not interfere with the Journal Entry Update process, ensure the Enable Sync Redundancy checkbox is marked (it is marked by default). Sync redundancy updates unposted journal entries, posted journal entries, and budget details by comparing all the values in the Dynamics GP company to the values in the ActivReporter company and ensuring they match.
- If the Enable ActivSync... checkbox is marked and you want to participate in product improvement by logging errors to the cloud, mark the Log ActivSync errors... checkbox.
- Click Next >.
- When the wizard finishes configuring the company, click Finish.
- In ActivityHD Manager, start ActivityHD System.
Health Check is a feature which ensures that the SQL objects which ActivReporter requires are created and enabled. Health Check can also check the transmission queue for undelivered messages, often an indication of a permission issue with the ActivSync database. When a problem is indicated, the results of the Health Check can be written to a file.
AccountingWare recommends when you run Health Check that a SQL administrator account be used to connect to the database. Because Health Check runs with the permissions of the account which makes the connection, some tests may fail if SQL permissions are limited.
Health Check can be run while servers are active.
To run Health Check:
-
Start ActivityHD Manager.
-
Select the Databases tab.
-
Right-click in the Databases area and select Connect from the shortcut menu. The Connect to SQL Server dialog opens.
- Select the SQL server that contains the ActivReporter databases, provide authentication details if needed, then click Connect. The Databases list box loads the names of the available databases.
-
In the list box, right-click "ActivSync" and select Health Check from the shortcut menu.
If all is well, ActivityHD Manager reports that no errors were found. If errors are discovered, they are written to a file and the path and filename are shown in the message box.
- Click OK.
ActivReporter depends on synced data. Syncing causes changes to the Dynamics GP database to be passed along to the corresponding ActivReporter database. Due to circumstances beyond ActivReporter's control, sometimes the syncing mechanism needs to be restarted or "bumped". ActivReporter can bump its own queue periodically and automatically as long as the affected ActivReporter company is running. By default, the queue is checked every 60 seconds and bumped only if needed.
A registry entry can control whether bumping is enabled as well as the time between automatic checks to see if the queue is stuck. The registry entry is located at HKEY_LOCAL_MACHINE\SOFTWARE\AccountingWare\Activity System
. It should contain a DWORD value named "ActivSyncAutomaticBumpInterval". The value is expressed in milliseconds. For example, the value 60000 corresponds to a 60-second interval. Setting the value to 0 turns off automatic queue bumping.
If you have automatic bumping turned off, or if you need to intervene before the next automatic bump, you can manually restart the sync queue. To do so:
-
Start ActivityHD Manager.
-
Select the Databases tab.
-
Right-click in the Databases area and select Connect from the shortcut menu. The Connect to SQL Server dialog opens.
- Select the SQL server that contains the ActivReporter databases, provide authentication details if needed, then click Connect. The Databases list box loads the names of the available databases.
-
In the list box, right-click "ActivSync" and select Restart Sync Queue from the shortcut menu.
ActivityHD Manager reports that the queue has restarted.
- Click OK.
ActivSync Troubleshooting Guide
When entries in Dynamics GP are not syncing properly with ActivReporter, there are steps you can take to restart the sync process. When troubleshooting, attempt the following actions one at a time, checking the company dashboard in ActivReporter after each attempt to determine whether or not ActivSync is working.
Verify ActivSync is enabled
Verify that ActivSync is enabled for the company. This can be accomplished from any computer with ActivReporter installed.
- Go to the company dashboard in ActivReporter by selecting the company in the navigation pane.
- In the dashboard, expand "Action Lists".
- Click "ActivSync Status". The ActivSync Status gadget opens.
- If the status is "ActivSync is not enabled", open ActivityHD Manager and run the Configure action for the affected company.
Verify SSBEA is running
From the machine where ActivityHD System is installed, verify that the "Service Broker External Activator" (SSBEA) is running successfully.
- Open Services (from ActivityHD Manager, select Tools > Services) and find "Service Broker External Activator" in the list of services. (If you access Services from Task Manager, look for "SSBExternalActivator".)
- Do one of the following, depending on the current status of SSBEA:
- If the status is "Stopped", right-click in the row and select "Start" from the drop-down menu.
- If the status is "Stopping", open Task Manager, select the Details tab then locate and select ssbeas.exe. Click the "End task" button to bring SSBEA to a full stop. After SSBEA stops, select the Services tab, locate and highlight "SSBExternalActivator", then right-click and select "Start" from the drop-down menu.
- If the status is "Running", go to the Services pane of the Services application, right-click in the "Service Broker External Activator" row, and select "Restart" from the drop-down menu.
- If the status is "Stopped", right-click in the row and select "Start" from the drop-down menu.
- If SSBEA successfully starts, congratulations! If SSBEA fails to start, continue at step 4.
- In Services, right-click "Service Broker External Activator" and select "Properties" from the drop-down menu. (If you accessed Services from Task Manager, start on the Details tab and right-click on ssbeas.exe.)
- In the Service Broker External Activator Properties dialog, select the Log On tab.
- Verify that your service account credentials are correct.
End stuck ActivSync.exe
From the machine where ActivityHD System is installed, look in Task Manager to find an ActivSync.exe process running. If you locate an ActivSync.exe process, select it and click "End task". The process should restart automatically if there are unprocessed messages in the queue.
Restart sync queue
From the machine where ActivityHD System is installed, restart the sync queue from ActivityHD Manager.
- Open ActivityHD Manager.
- Select the Databases tab.
- Double-click the words "SQL Server - not connected" and provide your SQL Server credentials when prompted.
- Click Connect.
- In the list, locate and highlight "ActivSync" then right-click to open a context menu.
- From the menu, select Restart Sync Queue.
Check for problem data
Check for problem data in Dynamics GP companies, correct any problems detected, then reseed from ActivityHD Manager.
- Run SQL Server Management Studio and connect to the server where the Dynamics GP and ActivReporter databases are located.
- Run the GP Database Check.sql script on each Dynamics GP company database configured in ActivReporter. Reported problems will indicate the possible fixes that are required.
Note
The GP Database Check.sql script is available in the Extras folder of the ActivReporter distribution.
- Correct the problems that were identified.
- After problems are corrected, reseed the affected companies to restart syncing.
Check the Event Viewer
From the machine where ActivityHD System is installed, check the event log for any errors which have been logged and fix them as indicated.
- Open the Event Viewer (from ActivityHD Manager, select Tools > Event Viewer).
- In the navigation pane, expand "Windows Logs" and select "Application".
- In the Actions pane, click "Filter Current Log".
- In the Filter Current Log dialog, mark the "Critical" and "Error" event level checkboxes.
- In the Event sources drop-down list, mark the checkboxes for "AccountingWareActivity", "ActivSync", and "SSBExternalActivator".
- Click OK.
- In the Application pane, examine the errors logged and fix them as indicated. In general, the most useful error will be the earliest error reported.
What to do if none of the above resolves your issue
If you've attempted all the actions suggested above and messages still are not being processed, investigation of individual messages in the queue may be required to determine the cause of the failure. Contact ActivReporter Support for assistance. Direct support through screen-sharing software (Teams, GoToMeeting, etc.) is available at an hourly rate.