4

I have a desktop application for managing restaurants front-of-house operations such as reservations, guest data, table turnover, with support for online reservations.

The problem that I am trying to solve is how to capture customer spend and table state by integrating into MICROS. I would like to find out when a table is busy, when a check is printed, what is the total value of the check paid by customer.

Any help in how or where to start would be appreciated. The MICROS website is quite vague as to what can be done.

-Thanks

bashar
  • 415
  • 5
  • 15
  • Future readers: Sorry, no time right now to write more details, but another option is to write a Micros "SIM". This is a script written in Micros "ILS" language. A script gets called at different times, like when a check is opened, closed, and other times. You can get check details inside the script. Probably easier than reading databases directly, if not too limited for your needs. – eselk Oct 30 '15 at 23:21
  • Just found this which has an explanation of SIM way better than I could have done today: http://stackoverflow.com/questions/25255346/iframes-in-micros-pos – eselk Oct 30 '15 at 23:28

2 Answers2

0

One way to track this information is to create a polling application that runs on that Micros sever. You would need read access on the database, and in the best case scenario full dba access. The schema is quite complicated, but if you Google something like "micros pos 3700 schema pdf" you'll come across some resources to get you going. Also, check out http://www.tek-tips.com/ and do some searching for Micros if you go this route. There are examples of SQL and other users who have faced the same task of integrating with Micros. You can query things like open checks, and when a check was closed. That may give you an idea of when it was printed if you cannot find that out specifically.

  • Also, I have used a lot of the crystal reports' (built into the Micros reporting system) views as starting points for my SQL. You should find one that gives you something close to what you need, find the view by looking at the source code in Visual Studio (or something similar). To give you an idea of what can be accomplished with this route, we query all checks, their totals, payment methods, server totals, register totals, and detail down to the individual items on checks. – Steven Goodson Apr 23 '15 at 16:15
-1

I have never used MICROS specifically but I have integrated with many systems before and I generally find that if you call them and tell them you want to integrate they will usually be willing to tell you where their data is stored, also using their software for purposes other than what they intended could be copyright infringement unless you ask; also you would unofficially be a data processor for MICROS then and you don't want to get sued, so its probably best to ask.

Generally speaking though you can probably find the data you want just by performing a single action before the you open so as not to confuse matters and looking through the files in the install directory until you find information on the action you just performed, take note and repeat for each action. Then you can watch the directory for changes and if the file is one of the ones you care about then process it. The best ones are often logs as they are usually plaintext, updated realtime, easy to access and you can usually pick out the patterns you want quite easily.

You do need to keep in mind though that some data may only be outputted at the end of the day or transaction in a format you can use so again I really recommend calling and asking.

feldoh
  • 648
  • 2
  • 6
  • 19