Softhard Solutions ShopMate

Business Accounting Database System Module Explanation

Automotive Business Accounting Software System for Businesses

ShopMate Automotive Business Accounting Database System Module

AzureMate - Best in Windows Azure Cloud Storage Explorer Software Products

To look after your Database full of data is a very important and a key task in running your business correctly. Only two clicks from the Home Page will have Database System set up and ready to go ... in seconds. Welcome to ShopMate Main Database System Module Explanation page where you can set various system settings.
View ShopMate Main Database System Module Screen Shot...

In the System Module, the System manager helps you keep track of various aspects of correct running of the ShopMate Database System and the correct retrieval of the data from an Sql Server Database. This page also explains the default steps to take to download and update your ShopMate installation to a newer version from our website, see the explanation of the ShopMate Version below.

The following tasks are available on this page:

The default time interval between invocations of the data retrieval methods referenced by all open forms is 100 millisecond. This means that your data is refreshed or saved 10 times per second. Note that if your database sits in a Cloud Storage Service, this is done differently but this setting is still used.

At such a rate the data concurrency (two or more users changing the same record at the same time) is but eliminated and the same data is successfully updated by the last user modifying it with other users at the same time. The earlier users' modifications of the data are lost. It is the SQL server decision who the last user is. You can set the period in this manager.

Increasing this value may diminish the ShopMate user interface responsiveness and increases the data concurrency. If you run ShopMate on a single workstation or on a Local Area Network, you can leave these settings at their default - 100 millisecond interval (10 times per second). However, you may have to increase this number if the cost of your Wide Area Network (tunneling through the Public Internet Network) may be too prohibitive.

Important Note
ShopMate uses stored procedures and triggers of the SQL server ShopMate Database for its data retrieval. If you change any of these stored procedures externally, the forms and reports referencing them may not work properly if at all. This is also the case for the triggers. If you change any triggers the forms may not be getting the data they expect.

Some buttons associated with a Grid of data need to have one or more records Selected by Highlighting the records in order to get enabled. You can control the record highlighting by clicking the Selector bar on the left of each grid for one record selection or using the Ctrl+Click button for selecting one record at the time in different positions or Shift+Click button for selecting a range of records.

Some buttons only need the pointer arrow on the selector bar, without highlighting, to get enabled. In that case you can select any record by just clicking on the desired record anywhere within the grid, without having to click the selector bar.

If you press the Ctrl+F6 keys on your keyboard, it will zoom through any windows forms you currently have 'open' inside ShopMate.

ShopMate has a notion of Open and Closed invoices and orders. While they are Open, they are just templates and can be manipulated as you like, even deleted, with no reflection in the financial system or your products stock. When Closed, they are taken off of the Main Sales or Purchases and become part of the financial system.

When the invoices or orders are Closed they are Posted from sales/purchases into the financial system, products (only those with the Stocked property set) are added or deducted to/from stock as needed, you can't change things any more and the invoices/orders are ready for the receiving/issuing of payment for them.

Even if you do NOT use purchase orders you still should periodically Close all the orders that ShopMate automatically creates when any product's Reorder Level is set, or an invoice containing any Stocked products is Closed, not delete them.

If you delete them, they will only be recreated again by ShopMate. You should Close (post) them and issue payments for them otherwise your financial reports will be incorrect (100% profit). You should maintain all products' correct Retail and Supply (except labour) prices for balancing.

By default, at start up, each employee is marked as present at work, except for employees marked as Inactive and entries made on Saturdays and Sundays. It is your responsibility to see that the entries, employee attendance and wage Approval, are correct for each day of employee operations.

All your labour products should have the ItemsInUnit property set to a number greater than one. If we assume that the Items are minutes of a Unit (one hour), you can set the ItemsInUnit to 60 (minutes). Then in an invoice you can enter e.g. 2.3 (hours) into Units and the Items (minutes) will be correctly calculated in this invoice item.

The updatable grids may contain one or more fields that are too short to display fully. You can click into these fields and the editor will display all words fully below it, formatted (even if a field is not normally updatable - if you try to update such field the editor will simply return the previous data).

Before a product is being pulled into the invoices or orders via a bar code scanning device, make sure the designated bar code field receiving the number is in focus.

Although you may, it is advisable NOT to use dot (.) as a first letter of the product names you yourself create.

If you are currently a MotoShop Automotive user you might ask a question: what is the difference between MotoShop Automotive and ShopMate? The answer is they both do the same thing but ShopMate does it better, is most modern software you can get, is written in .Net technology and, unlike MotoShop, is fully supported by Softhard Solutions.

MotoShop Automotive was built with the automotive industry businesses in mind, ShopMate was built for any small to medium business including automotive industry.

You do not have ShopMate installed yet?   

Top of Page

System Monitor Task Tab

Following table contains all the available elements for review.

Element Description

Shows the version number of ShopMate currently running on this workstation. You can compare this version number with the one on our website to help you decide to download and install the latest ShopMate update. Note that you can't run any lower versions than this number shows.

Important Note
If you used the Internet Installer to install ShopMate from our website then the changes and updates are automatic for your system (if your machine is connected to the public Internet Network). If you used the Windows Installer then you must check periodically with our website if there are any updates to ShopMate.

Indicates if this machine has access to Internet Network. This field will show NOT Available even if the machine has a network card connected to any network but has no access to the actual Internet Network. Since the network availability is checked only at the start of this form you may have to restart the form to see if the status of access to Internet Network is or is not changed and is or is not available.
last backup
Shows date of the last ShopMate database backup performed from this workstation. Works the same for the automatic backup.
last restore
Shows date that ShopMate database was last restored from this workstation.
User logged in
this workstation
Shows the name of the user logged in to ShopMate on this workstation.
Number of
logged-in users
Shows number of users currently logged in to ShopMate Database.
is attached
to SQL Server
Shows the name of the SQL Server name this workstation's running ShopMate is currently attached to.
Data store
attached to

Shows the name of the Database data store ShopMate is currently attached to. This name should be always the same but you can change it as long as it is unique on sql server.

You should NEVER change the ShopMate Database's name externally of ShopMate. ShopMate subscription or other registering methods may not run properly if you do.

System Database

The System Database password ensures that only the users you share this password with can modify the vital parts of your database. Such as Re-creating an existing Database, Restoring existing Database from Backup, both of which delete the existing Database and individual Backup of existing database to prevent theft. You can change this password in the System Module.

Important Note
Be aware, the passwords are case sensitive.

Check box:
View Password

If you check this check box, the system password is visible to you. ShopMate remembers your choice.

Important Note
If you want to see this password, before you check it, make sure no one is watching behind you. Have a look and quickly check this check box again to make the password invisible to others.

Check box:
System Sound

If checked, the various ShopMate System sounds (error, log on, log off etc.) are turned on and you will hear them if your sound system is on. If unchecked the sounds are off. Note that only the ShopMate Native System Sounds will be on or off, not your Operating System Sounds used in message boxes.

If you want to use the sounds but like to change them, they are in the ShopMateRuntimeFolder\Files\ folder where you can replace them with your own *.wav sound files but with the same names.

Refresh Data
watchdog period

This is the time period frequency in milliseconds with which the ShopMate watchdog timer runs to check if SQL server is running and the ShopMate connection is valid for forms' data refresh. Generally, if you run ShopMate on a single workstation or on a local area network, you can leave this setting at its default - 100 millisecond interval (about 10 times per second).

Minimum you can set this period is 1 millisecond (about 1000 times per second) and maximum 2000 milliseconds (2 seconds). The lower this period is set, the higher the response of forms is.

However, on a wide area network which employs the tunneling through the Public Internet Network or Cloud Storage Services, this may cost you when you run out of your provider's maximum uploads and downloads. You can minimize the frequency the watchdog timer runs by increasing this time period value at a cost of decreased response of forms.

Increasing this value diminishes the ShopMate user interface responsiveness (when the data arrives after a form is first opened) and increases the data concurrency (two or more people editing the same record's data at the same time).

Reminder message
Pop up period
This is the time period frequency in minutes with which the Reminder Manager appears, pops up, to remind you.

In ShopMate you can set a property to keep reminding you until you turn it off. If a today's reminder message's Remind Me property is set to true, the reminder message will pop up each time after a default ten minutes (600 seconds) expires. The only way to stop the pop ups is to turn the Remind Me field in all reminder messages to false.

Minimum time you can set this field to is 1 minute 60 seconds and maximum is unlimited.

Check Database

Left click this button to start the process of checking your database integrity. You should run this method as often as you can since it is the only way you can be sure you are backing up a good database without any errors.

Important Note
Run this method as often as you can and before any backup. If you find any database errors after you run this method, Do Not Backup the database. How to fix the database errors is beyond the scope of this help document. It involves manipulation of the main database engine files and in most cases you are better off to restore the database from a good backup.


This button takes you into the Backup, Upgrade and Import Manager where you can choose to do one or the others.

For backing up the ShopMate Database, you are currently connected to, automatically or manually, no user has to log off first. Also, if your database sits in a Cloud Storage Service, this button is disabled.


Left click this button to start ShopMate Database or Sql Server connection methods and to run Create or Re-Create, Restore or Service database methods. These methods require you and all the other users to be logged out of the database which these methods enforce.

Error Logs
From time to time, you may get an internal error while running ShopMate which is logged in the ShopMate error logs, situated in RuntimeFolder/Logs/ShopMateErrorLog.log file. See if there are any errors. If there are repeating errors, let us know by emailing us the contents of the repeating errors. Sporadic errors do happen to no harm.
More... Button:
form face
Click on this option to Print or Preview form's currently showing face in various picture formats.
More... Button:
Send E-mail
Click on this option to email messages to entities. You can use this button to email messages to anyone.

The emailing should work even if you do not have an SMTP protocol (simple mail transport protocol) installed on your machine.

Top of Page

Data Interrogation Task Tab

Following table contains all the available elements for review.

Element Description
SQL Server
It is best if people with some SQL Server language syntax knowledge use this special customized report-making section of ShopMate.

They can enter everything and anything into this field with regard to interrogating the SQL Server Database. It doesn't matter how complex and complicated the queries may be as long as they are correct and Select only. If it is data that should be inside ShopMate then the SQL Server can calculate it and pull it out for you.

Important Note
Only SELECT queries are allowed in your script - no adding, deleting or making changes to database is permitted as the human error is too risky.

Execute query
After you have entered a query into the SQL Server field at the top of this task Tab, click on this button. The SQL Server will 'interrogate the database' and show the results in the Result grid below.
query result
This grid is a single-select grid and contains the last result of any query typed into the SQL Server field and will show in this grid.
Export data
to .Csv file
You can save the grid's data as a comma separated values text file. Click on this button to save all rows into the text file called by default 'SystemData.csv' but you can name it whatever you want or need. The text file created is a comma separated values (.csv) data file which can be used as an input in any spreadsheet, merge and other documents.
Check box:
Export with
column headers
If you check this field, the exported .csv file will include column header names in the first line of data. If you clear this field, only the actual contents of each data field of each row will be saved.

Top of Page

User Logs Task Tab

Following table contains all the available elements for review.

Element Description
  • Total network user connections you are currently licenced for. It does not apply if you use subscription service.
  • Total users currently logged into the ShopMate system service.
User logins
This grid is a single-select grid and contains all currently logged in users from all workstations on the network. Selecting any user record, you can either evict the user or send a console message to them. You can send an 'instant message' to Users on your network. If you double click any record and you typed a message in, the message will be sent to that user on to their workstation.
Evict user

Although ShopMate backs up all the time without any need for users to log off first, and you can do a manual backup any time without anyone logging off, when it comes time to Restore, Upgrade, Import or Re-create the database procedures, you should evict all users (you can evict yourself too!!!) to make sure no damage is done to your data. To further minimize any loss of data, if you do not evict users or users do not log out for these procedures, ShopMate loges them out anyway.

Select a user name you want to evict by clicking anywhere into the desired record in the grid on this task Tab. Left-click this button. It takes 30 seconds for an eviction to take place (unless they terminate themselves upon seeing the eviction notice). You may wait 30 or more seconds for the evictions to take place, then do your restoring, upgrading or re-creating the database.

Select each user and do the same.

As soon as you left-click on the 'Evict User' button, a pop-up screen will appear on the workstation of the selected user, advising that user they have 30 seconds to shut down what they are doing before they are 'evicted'.

Important Note
Always use the Evict User button because of human error. Never let a user say they will log off, because human error means they may get distracted, take longer than they thought, miss one step of logging off, whatever. Don't take chances.

message to send

Simply click into this 'Console Message to Send' field and type a message that you wish to send an 'instant message' to selected user. Type in a short console message, click Send Message button, and it will be seen by that user 'instantly' right in the middle of their monitor. They can't miss it.

Any user can use this Console with you at the same time. If they have Administration permission they can use the Console backwards and forwards with you, otherwise you can use it for one-way traffic instructions to your users.

Send Message
This selection sends the message you typed to the user you selected. You can also double click any record in the grid. Something must be typed in for this button to be enabled.

Top of Page

See More Information On:

Top of Page