What is smartest way to do testing

So what is the best way to test?

I am not a big database guru so bare with my stupid questions.

I have a few test machines with basic samba installs and the db is a local db the one that is setup with samba out of the box.

At the restaurant, its setup with MSSQL running as a server and there are two client machines, three in total sharing the db.
C:\ProgramData\SAMBAPOS\SambaPOS5\SambaSettings.txt

That way I can make some changes without taking over a machine.

Is there a better way?

Can I take the full backup from the MSSQL at the restaurant and import it onto the laptop and work on it and make changes and export and import back to the other or will that totally fubar all?

Jesse P made some changes for me on his local db and exported to a zip file and I was able to import it with no issues on the production system.
How does that work? Can I build things and test, then export and import?

IF thats that case why cant we have more zip files attached to tutorials with “packages” if you will that are ready to go?

Sorry for so many questions. Trying to learn.

I will share with you my development setup. But first I am not sure what you mean by this statement?
I get the first part but why did you link the SambaSettings file?

1 Like

Simple answer is we started to do that and people started to run into trouble and were clueless and it created a big mess with people constantly badgering everyone for help. So the reason you dont see that as often is because following a full tutorial is really the best method to ensure you understand what you are configuring and so you can spot mistakes.

Otherwise you will see lots of people making posts like… I imported x file and it didnt work help. We all imediately slap our forehead and think ok here we go… and start prodding person for information.

Didn’t really link it, just put the path there so many would understand the file I am manipulating.

See when I had the laptop set to access the shared db, if I was at home samba wouldnt not launch.
Eventually it would error out saying it couldn’t find the db.

So…what I did was clone the backup settings file it made before the shared db settings.
I can have a local.settings.txt and a remote.settings.txt and just rename one or the other depending on my needs.

I just put that path to where this is, is all.

It would be nice if Samba would ask a question if it couldnt find the shared db and say something like would you like to load the default db, or a box could pop up and you could enter settings file names so that you could choose, or even a dev mode would be nice and it have these choices instead of having to rename text files to get it to work.

Thats why I am asking.

So I will give you some basic tips to get started… the first easiest and best tip for testing features is to not worry about a license and just keep it in trial mode.

The second really good tip is to setup full SQL server and connect to that for your dev machine. This means you can go to Settings > Local Settings > Database and simply change the field for Database Name and it will create a fresh database for you to test features… then you can just type your original database name in there to switch back.

1 Like

OK I totally get that.

So here is another tip… you can load a backup from live database into any database you want on your dev machine. No need to manipulate your localsettings file. You can use the trick I just told you about changing Database Name then just use Database Backup tool to restore your backup Bam exact same clone as your live system.

Just leave it in trial mode so it wont affect license at live location.

2 Likes

Ok so there are two main ways to import a configuration to a live system.

1st is Database Tools file which is what you received from me. It doesnt actually load a backup or anything it simply checks the rules, actions, etc that you may have exported to the file and then it creates them in the system you import it too. If they already exist it skips them. If they are different it updates them. This is the preferred method to upload setups you may have worked on because it wont affect sales, etc like loading a backup would.

1 Like

2nd is a more advanced method and its very powerful, WARNING VERY ADVANCED.

Settings > Configuration Tasks.

You can do virtually anything with configuration tasks including storing them on a github repository for rapid deployment across multiple branches. They allow you to build automated configurations that can include validation etc. You make them do things like ask questions during configuration… validate things… etc.

Config tasks are exciting and VERY powerful but you wont find much documentation most people are afraid to try them. I can tell you if you ever get the time to study them as a Tech person you would love them. I have a few I wrote and when I get a system I need to load that specific configuration on I can just link my repository and then click on the task… bam

I do love scripting and automation.

Some good examples to look at are the ones stored on SambaPOS repository they are Reservation Setup etc… If you click edit you can see how it was built and what it is doing. Its built to run in steps… each step can do something.

If you go to Settings > Local Settings > Online Services you can link your own respository and it will import those configuration tasks into the config tasks screen. There is a specific format for the git respository if you search forum you can find where we explain it.

Here are some of mine I wrote.

https://gist.github.com/kendash

The YAML documents are what I would link in Online Services in sambaPOS. It reads that file in the format I listed to import those gists.

Version is the SambaPOS version just in case you have a feature that uses something only available in a specific version of SambaPOS and no others below it. If that is the case that task will only show up if it meets that version or newer.

2 Likes

So do you add your repository here?
22%20PM

Yes so to link my config5.yaml for example I would insert this.

https://gist.githubusercontent.com/kendash/9913557e69f62d3b90e3/raw/2ac8265a0afd230bd4cf50a6d29868148d9eaea7/config5.yaml

You can try it if you want… insert that link there and watch my config tasks import. Just go back to config tasks and press update.

Ohhh looky I see.

Yes this is very interesting

WARNING WHAT YOU ARE ABOUT TO SEE IS INTENDED FOR MATURE AUDIENCES ONLY

HAHA yes there is very advanced stuff there… including some hidden API calls etc. Yes SambaPOS has 2 very good API’s one internal and one external called GQL.

SambaPOS is one of a kind and can literally do anything just about. There is no other POS that can claim that.