If you have a service that uses MS SQL and your Clarion service runs on the same system as the MS SQL it is possible for your service to start and try to access MS SQL before the SQL Server Service is ready to respond.
In my experience setting a dependency on MS SQL is not good enough. The MS SQL service is not ready for requests immediately after it starts. The Windows service manager will see that the MS SQL service has started so it starts your service but MS SQL is not ready for requests from your service.
I recommend setting your service to Automatic (Delayed Start). This tells Windows that your service can be started later on in the boot process after most everything else is started.
Here is an older article that I found useful.