Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations Mike Lewis on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

Micros 3700 SIM ISL Event ID

Status
Not open for further replies.

savissimo

Programmer
Oct 6, 2008
42
RS
Hello everybody,

i am looking for the way to catch in the SIM script the inquiry number which i inserted in touchscreen designer. For example, i defined event inq:* in the SIM script pms11.isl
In touchscreen designer i defined a button with SIM/ISL, i choose pms11 and the inquiry number 100. Is there any way to catch this number 100 as i need interface with the external system. Idea is when this button is pressed to send a message via dll file to the external system. If message is 0 i need to tender the check with the tender obj_num which is actually number from inquiry. If message is 1 i want to display error message that i got from the external system.

I know that in ISL for m9700 there is system variable @eventid which catches this number, but is there such a thing in m3700 SIM, or maybe some alternative?

Micros people, please help!
 
when you say "i choose pms11 and the inquiry number 100" does that mean that the touchscreen key is programmed to do event 100? If so, why don't you initialize the variable in the event?
I'm not sure how the event number would ever be different...
 
I agree that i could initialize variable in that specific Event and then use it later on but in that case for every tender media i have to create event in SIM script. I want to simplify things and transfer configuration to touchscreen designer and not to SIM scripts, as i will not maintain this solution, clients will, and for them it will be much more convenient to do it through TS designer. For example for tender media cash i have to write next code:

Code:
Event inq:100
var cash : n9 = 100
......
loadkybdmacro key(9, cash)
 
Endevent

So, in this case the number of the events in the script must be equal to count of tender media in POS configurator.

And if i could do something like this:
1. create button in TS designer
2. Set SIM/ISL function
3. Select Interface
4. Set Inquiry 100

and i implement this code:

Code:
Event inq:*
var cash : n9 = @eventid // here would be the number of inquiry key defined in TS designer
......
loadkybdmacro key(9, cash)
 
Endevent

So in this case i have only one event in the script which collects specific inquiry number that is initialized when button is pressed...

This is possible in Micros 9700 SIM as there is @eventid variable available which holds Inquiry number defined in configurator
 
I see...I'm not sure of a way to do this. Also, can you explain what you are trying accomplish? Why use the sim for tender media rather than the tender media itself? What else is involved?
 
I need to use tender media only after i get the response message from the external system.

Idea is:

1. Press button (remember the inquiry number of the button in the SIM script)
2. Call Dll function from the external system and pass check details.
3. Wait for response from external system
4. If response is 0 then loadkybdmacro(9, cash) where cash is actually the tender number that is equal to inquiry number defined for the key that was pressed. If response is 1 the display ErrorMessage which is recived from external program.
 
I am really not drawing the parallel between the cash and the inquiry number. Whay cant you just call the cash tender at that point. What is the business need to have the cash tender object the same as the inqury number?
 
Heres a sim I use for exact cash

//*********************************************************************
//
// Exact Cash SIM
//
//*********************************************************************

Event Inq : 1

Var nTotal : N9
Var dTotal : $9

nTotal = Abs(@TTLDUE * 100)
nTotal = (nTotal % 100)
dTotal = nTotal
dTotal = (dTotal / 100)
dTotal = ((@TTLDUE - dTotal) + 1)

LoadKyBdMacro MakeKeys(dTotal) , Key(9, 1)

EndEvent
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top