/
Manually Synchronizing Data

Manually Synchronizing Data

Table Of Contents

Change History

Version Date Comment
Current Version (v. 1) Dec 05, 2018 19:40 Nick Snyder (Unlicensed)

Overview

Prior to TallySoft Version 5.0, Synchronization was handled by an application called TallyTask.  TallyTask would establish a connection to a remote computer’s database and compare records with its own database.  The comparison was based on the edited date of each record within the table.  TallyTask would compare the data in the database looking for any records that the edited date did not match.  When a match was found, the database with the older record was updated accordingly.

In TallySoft Version 5, TallyTask no longer performs the synchronization processes.  Instead a new table within the database has been created, Object_Sync.  Anytime a TallySoft application creates a new record or edits an existing one, a record is added to the Object_Sync table.  The TallySales Synchronization Client and Host services then uses the Object_Sync table as a task list to synchronize the appropriate data.  This approach to synchronization reduces the amount of resources needed to keep the databases in sync by eliminating the database comparison.


Manually Creating a Synchronization Record

In order to manually synchronize data, an Object_Sync record must be created in the database of the unit which contains the data to sync.

  1. Stop all synchronization services using the database where the synchronization record is being created.
  2. Open the SQL Server Management Studio (SSMS).
  3. Login to the SSMS.

    For more Information on opening and logging into the SQL Server Management Studio, please visit Microsoft's SQL Server Manager Studio Tutorial

  4. Expand Databases.
  5. Expand the TallySales Database.

    By Default, The TallySales Management System uses a database name of POSMain.
  6. Expand Tables.
  7. Right click on dbo.Object_Sync.
  8. Select Edit Top 200 Rows.
  9. Using the navigation buttons on the bottom of the details pane, select the Move to New Row button (A new blank row will be added to the bottom of the displayed records).
  10. Enter the corresponding data.

    Field

    Description

    Sample Value

    Id

    The id of the sync record. Can be any unused number.

    1001

    Transaction_Id

    Used to group records together.  All records in the group should contain the Id of the first sync record of the group.  If the record is not part of a group, 0 is used.

    Best Practice

    The Transaction_Id should be set to 0.

    0

    UnitCode

    The Unit Code of the unit where the Object_Sync record is being created on.

    1001

    Sync_Priority

    Optional: Used to force certain records to sync with more priority than others. The lower the value the more priority the record has.

    Best Practice

    The Sync_Priority should be set to 0.

    0

    evSync_Direction

    Determines the direction the record is synced. Up is towards the unit’s host and down is to the unit’s clients. The database table, zevSync_Direction, provides the list of acceptable values for this field.

    Not all database tables are permitted to be synced both up and down. For instance, any of the transaction tables, such as Inventory_Transaction, are only permitted to be synced up.

    Best Practice

    The evSync_Direction should be set to 1 (UP.)

    1

    evApplicationClass

    Indicates what application type created the Object_Sync record. The database table, zevApplicationClass, provides the list of acceptable values for this field.

    Best Practice

    The evApplicationClass should be set based on the installation type of the unit where the record is being synced from  For example, 2 for a manager unit or 6 for a register unit.

    2

    evSync_Type

    Indicates whether the record being synced is a new record or one being edited. The database table, zevSync_Type, provides the list of acceptable values for this field. 


    Best Practice

    The EvSync_Type should be set to 2 (Edit).  If an Edit Sync_Type is performed and the record does not exist in the destination database, the synchronization process will automatically use the Add New Sync_Type and add the record. 

    2

    evSync_State

    Indicates the state of the Object_Sync record. The database table, zevSync_State, provides the list of acceptable values for this field.

    Best Practice

    The evSync_State should always be set to 1 (New.)

    1

    evTable_Name

    Indicates the table of the record to be synced. The database table, zevReferenceTable, provides the list of acceptable values for this field.

    2900

    Sync_Id

    Indicates the Id of the record to be synced.

    609010003527

    Sync_Params

    Not currently used by the Synchronization processes.

    Best Practice

    The Sync_Params should be left as a null value.


    CreatedUTC

    Timestamp of when the Object_Sync record was created.

    2017-09-15 14:35:06.000

  11. To commit the new record, move the cursor to another row.
  12. Close Object_Sync Table.
  13. Close SSMS.
  14. Restart Synchronization Services.



Related content