Manuais
Manuais
Uso geral
Desembalagem e cabos de conexão
InstalaR o software do servidor telnet
Instalar o programa gerador
INSTALAR TELNET PARA USO COM x64
Seja instalando ou simplesmente utilizando um dos modelos da X64, em algum momento pode vir a precisar de ajuda para resolver possíveis problemas.
Nesta seção encontrará toda a ajuda necessária em relação aos modelos, software e até hardware da X64.
1 – Instalação da Antena
A antena deve ser instalada em ponto alto a uma distância mínima de 25cm de objetos metálicos e pelo menos 2m do PC para evitar interferências. A partir do momento em que é alimentado, leva cerca de 15 segundos para inicializar, somente após esse período o software se comunica com os terminais. O software no PC não inicializa até que a antena esteja funcional. Se a antena não estiver respondendo, encerre o programa no PC, desconecte a alimentação da antena, aguarde 5 segundos e reconecte, aguarde 15 segundos para inicialização e inicie o programa no PC.
2 – Carregar Bateria
A bateria do terminal deve ser carregada antes da primeira utilização e posteriormente diariamente por um período de aproximadamente 8 horas.
Ao colocar os terminais carregando, verifique a luz para certificar-se de que o terminal está realmente sendo carregado. Para evitar oxidação, os pinos de contato têm um revestimento de ouro. Nunca raspe com objetos metálicos. Se necessário, limpe-os com um pano seco.
Os terminais possuem controle de limite de carga automatizado que evita danos por sobrecarga das baterias. No entanto, para evitar o desgaste prematuro das baterias, evite manter os terminais no carregador por longos períodos.
3 – Menu Principal
Com as teclas e mova o cursor and faça a escolha ao pressionar .
Alternativamente, clique diretamente na tecla numérica correspondente.
Para fazer uma lista de pedidos, escolha a opção 1, digite o número da mesa, pressione e, em seguida, siga as instruções do parágrafo 4.
4 – LCD Contraste / Luminosidade
Com as teclas e e enquanto a tecla estiver pressionada, você pode ajustar o contraste do LCD. Para acender a luz, você deve pressionar + .
5 – Teclado bloqueado
Para bloquear ou desbloquear o teclado, você deve usar + . Se a bateria estiver muito fraca, não vai desbloquear o teclado. Portanto, é necessário colocá-lo em carga.
5 – Introdução de Artigos por Número de Código
Digite o código do artigo e pressione . Certifique-se de que é o que você quer.
Digite o valor da quantidade (se diferente de 1) e pressione .
Repita-o para todos os artigos.
Você também pode inserir quantidades decimais usando ‘.’ .
6 – Escolha por Família
Se você não souber o código de um artigo, use a tecla para ativar a opção para famílias.
Com as teclas e escolha uma família e pressione .
Se uma lista de subfamílias for exibida novamente, escolha uma.
Quando o bloco de itens correspondente à família escolhida das máquinas caça-níqueis on-line for exibido, vá para o próximo parágrafo.
7 – Escolha do Artigo
Essa opção fica ativa pesquisando uma família ou pressionando a tecla .
Um bloco de itens é exibido e pode ou não caber nas 8 linhas da tela.
As teclas e mova o cursor uma posição ou, se você mantiver o botão pressionado, sobe e desce uma página.
As teclas e levá-lo para o bloco de itens antes e depois.
Quando o cursor estiver sobre o artigo desejado, pressione .
Você também pode usar o + ‘número’ para saltar para os artigos 100, 200, 300 400 …
8 – Revisão, Alterações
Para rever a lista de pedidos mova o cursor com as teclas e .
Para aumentar ou diminuir a quantidade, use as teclas e .
Para alterar um item, digite novamente o código numérico ou uma escolha feita por família ou por artigo.
9 – Enviar
Após verificar se a lista está correta, envie usando a tecla ou usando o cursor na última linha e pressionando .
Go to our website www.x64.com and on the main menu follow the path:
support > downloads > downloads for catering
Click on “Downloads” which will take you to a page providing you with three options. You should click on the link “Downloads for Catering” which has the following image.
Then click on the first link “firmware updater” and save the zip file (by default it should go to your downloads folder unless otherwise stated.
Once you located your file, you should open it and find the following files inside:
You extract the files to a new folder and click on the “setup.exe” file en ligne casino in order to run it (you may not be ruletti able to see the extension of the file because you may have the option for hiding known extensions ticked within your settings. If this is the case, all you should see is “setup”, and that is the file you should run.)
Then you should have the following online pokies play window on your screen:
Close all running applications and then click the “ok” button. The installation will then start. The screen below is what you should now see on your monitor. Make sure casino con bonus the”Directory” is the one you want (by default it is c:\Program Files\UpgradeHardwareX64\).
Then click on the station icon as follows.
Now you should see the screen below. “UpgradeHardwareX64” should be highighted and then you should click on the “Continue” button in order to proceed.
If the setup was successfull you should now see the follwoing message:
If unsucessfull, please restart the whole process again. If you encounter any problems, please contact us through our contact page on our website.
Normal 0 Microsoft Internet Explorer4
The terminal comes with a catering program by default.
To configure that program you should follow these steps: Press 96195 in order to enter the technical menu.
In this menu you can:
|
Antenna Configuration for Catering
Just in very exceptional situations you will need to change the confirmation of the antenna.
The antenna connects to the pc through a serial cable. The range is of approximately 150 m in open wide areas.
The ideal location to place an antenna is at a distance of 3-50 meters from the pc. Distances inferior to 3 meters may enable interference with the pc,
damaging the range.
This setup is a generic version of a data collection program with its most used fields. The terminal will get a first option to ask whether it is sales or inventories. The difference between these two menus is that the price field appears in the sales field and not in the inventories field.
To read or send data to the terminal one can use the ‘datacollector.exe’, having as parameters the names of the files with their respective options. After you run the Setup, the program is placed in the programs folder. The links to send and receive data to the terminal point to the ‘datacollector.exe’ with their parameters.
First use
-Make sure the serial port on your computer, where the cradle is connected, is COM1. If not, you will have to change the property of the links by changing /ComPort 1 to /ComPort (port number).
-Follow the link ‘Delete all data from the terminal. “
Awake the terminal and place the terminal in cradle. The cradle must be connected to the power.
-Wait a few minutes until the terminal receives the program.
-Wait until the terminal shows ‘ Disconnected ‘.
To read the sales data from the terminal to the file ‘vendas.txt’
-Follow the link: ‘Read all data from the terminal to the file’ vendas.txt”.
-On the terminal choose the option Sales, complete the number of the warehouse and start the sale.
-Place the terminal in the cradle and wait until the process is finished.
-A vendas.txt file will be created with the terminal details.
-The data will not be erased from the terminal. (To delete the data you have to change the command line by adding a / Clear 1).
-Delete the data in the terminal.
To read the data from the the inventory on the terminal to the file ‘inventario.txt ‘
-Follow the link: ‘Read all data from the terminal to the file’ inventario.txt’.
-On the terminal choose the option Sales, complete the number of the warehouse and start the sale.
-Place the terminal in the cradle and wait until the process is finished.
-This will create a file inventario.txt with the details of the terminal.
-The data will not be erased from the terminal. (To delete the data you have to change the command line by adding a / Clear 2).
-Delete the data in the terminal.
To read the sales data from the terminal and insert the keyboard
-Follow the link: ‘Read all sales data from the terminal and insert it on the keyboard. “
-On the terminal choose the option Sales, complete the number of the warehouse and start the sale.
-Place the cursor of your program of windows in the position where you want to read the data.
-Place the terminal in the cradle and wait until the process is finished.
-After placing the terminal in the cradle, the sequence of keys defined in the link will be executed.
-The data will not be erased from the terminal. (To delete the data you have to change the command line by adding a / Clear 1).
-Delete the data in the terminal.
The data sent to the keyboard is the ‘Code Article’ followed by a Tab {tab} followed by the ‘Quantity’ followed by a Tab {tab} followed by the ‘Price’ followed by an {Enter}
To view inventory data from the terminal and insert in the keyboard.
-Follow the link: ‘Read all sales data from the terminal and insert it on the keyboard. “
-On the terminal choose the option Sales, complete the number of the warehouse and start the sale.
-Place the cursor of your program of windows in the position where you want to read the data.
-Place the terminal in the cradle and wait until the process is finished.
-After placing the terminal in the cradle, the sequence of keys defined in the link will be executed.
-The data will not be erased from the terminal. (To delete the data you have to change the command line by adding a / Clear 2).
-Delete the data in the terminal.
The data sent to the keyboard is the ‘Code Article’ followed by a Tab {tab} followed by the ‘Quantity’ followed by a Tab {tab} followed by the ‘Price’ followed by an {Enter}
To send data from a file to the terminal
Prepare a text file named ‘artigos.txt’ without spacers with the following fields:
It should be something like:
1234567890 11112222 Coca Cola 12.5
3333567890 33332222 Seven Up 15.5
etc …
Follow the link: ‘Send data to the terminal from the file artigos.txt’
Place the terminal in the cradle and wait until the process is finished.
To change the data format of the file that creates the terminal
The data fields that can be read from the terminal are:
You can change the format of the data by adding the link /BodyConf, as in the example below.
datacollector /Save vendas.txt 1 /BodyConf “[CB] [XXXX] [CodArtigo] [XXXX] [Armazem] [XXX] [Qt] [XXXXDDD] [Price] [XXXXDDD]
In this example the file created would have been:
BBBBAAAA001001.000002.000
BBBBAAAA001001.000002.000
etc …
OR
You can change the format of the data by adding the link /BodyConf, as in the example below.
datacollector /Save vendas.txt 1 /BodyConf “[CB] [XXXX] [CodArtigo] [XXXX] [Armazem] [XXX] [Qt] [XXXXDDD] [Price] [XXXXDDD]
In this example the file created would have been:
CB = BBBB, AAAA, 001,001.000
CB = BBBB, AAAA, 001,001.000
etc …
To change the format of data that are sent to the keyboard
This is one of the most powerful options since it allows the terminal to ‘download’ the data from any program that exists in the market.
The data fields that can be read from the terminal are:
You can change the format of the data by adding the link /BodyConf, as in the example below.
datacollector /Save Keyboard 1 /BodyConf “-> [CodArtigo] [XXXX] {Tab} {Tab} [Qt] [XXXXDDD] {Enter}”
In this example, following data from the sales of terminal would have been inserted to to Pc’s keyboard:
-> AAAA 001.000
-> AAAA 001.000
-> AAAA 001.000
etc …
OR
You can change the format of the data added link / BodyConf, as in the example below.
datacollector / Save 2 Keyboard / BodyConf “-> [CodArtigo] [XXXX ]****[ Qt] [XXXXDDD ]****{ Enter)”
In this example, the keyboard would be inserted into the PC the following data from the inventory of the terminal:
-> AAAA **** 001000 ****
-> AAAA **** 001000 ****
-> AAAA **** 001000 ****
etc …
OR
You can also make a more complicated combination , for example to open notepad and write the results.
datacollector /Save Keyboard 2 /SendKeysBefore “{DELAY = 200} @rnotepad~{appactivate Notepad}{DELAY 100} Hello !!!!% ha{BEEP 1999 1000}{ESC}% {DOWN 5}” /BodyConf “-> [CodArtigo][XXXX]****[Qt][XXXXDDD]****{ Enter} “
List of keys that you can use.
Some examples of combinations of keys.
Example 1
(DELAY = 50) @ rnotepad Hello world ~
Description:
1.Put the delay between keys to be 50 ms.
2.WINKEY + R Opens the Windows Command Line
3.write ‘notepad’ and press ENTER
4.write’Hello world’
Example 2
Assuming that the calculator and notepad are running.
{DELAY = 100} {appactivate Calculator} {ESC} 5 * 7 ~ {beep 1000 500} ^ c {appactivate Notepad} ^a {DEL} Result of 5 * 7 = ^v
Description:
1. Get the delay between keys to be 100 ms.
2. Turns on the calculator
3. Press ESC to clear the result
4. Write ‘5 * 7’ followed by ‘ENTER’
5. Beep for 500ms with a frequency of 1000
6. Do ‘CTRL + C’ to copy the result
7. Enables notepad
8. Do ‘CTRL + A’ followed by ‘DEL’ to delete the text in the notepad
9. Write ‘Result of 5 * 7 =’ followed by ‘CTRL + V’ to paste the result of the calculator
Example 3
{DELAY = 500}% {DOWN 5}
Description:
1. Press ‘ALT + SPACE’
2. Press ‘DOWN’ 5 times
Other commands you can put on the command line of datacollector
IMPORTANT:
To create a different program in the terminal you must use the ProgramGenerator.
To create a different setup for a particular customer just follow the following steps:
1. Open the “X64_Inventory pt.zip” (or “X64_Inventory.zip” if available)
2. Copy the file SSEset.dat to the desktop.
3. Open the file SSEset.dat with Notepad.
4. In section LINKS change their parameters. (http://www.ssesetup.com/)
5. Place Back the file to the zip.
6. Finished.
ProgramGenerator location
You can find the Program Generator within our downloads section following the path: support > downloads and then click on “Downloads for Sales, Inventories and Security”.
Once you clicked on the link, you are given two options. You can open the file or save it. You should save it and then extract its contents to a known location.
Once you have extracted the file, you should take the following steps:
Click on the setup file to start the installation (just go along with the options given on the screen).
Execute the program.
Click on “Load”
Previous configurations of the Program Generator will then be displyed. The extension to these configurations is ‘.fld’ . Some configuration examples are appended to the folder containing the setup file.
Initial Screen
Here you set up the screen that should appear on the terminal once the program starts. The above example produces the following screen on the terminal:
User variables
Here is defined the variables that will be used internally, to show attributes, names, and so forth. To send variables to the terminal you should send a string separated by spaces. For instance, if you wish to send a file with data to the above example, it should be done as follows:
Art1 111111111 Coca Cola 10
Art2 222222222 seven up 15
Art3 333333333 Cafe 12.5
Art4 444444444 Bola 10
Art5 555555555 Manteiga 112.3
Art6 666666666 Sprite 10
Art7 777777777 Tabaco 10
Art8 888888888 Queijo 10
To send it, you should use the program “datacollector” with the paremeters as “Load”. Datacollector /Load ficheiro.txt Table1
Table1 is the table´s default name.
Header fields
Aqui define-se o ecran inicial de dados. Neste exemplo os dados são preenchidos automaticamente pela escolha anterior. Poderia-se usar para pedir um numero de factura etc… Variable name
- Internal name of the variable
Variable size
- Size of the input field. If the variable is of string format, the terminal will save the variable with that size. If the variable is numeric, it will spend 4 bytes of internal memory.
Type
- String
- Numerical
- String-Index
- If index, this field will be used for setting the list to be used. In this example we use this field to define which document to be used
- Numerical-Index
- If index, this field will be used for setting the list to be used. In this example we use this field to define wich
Field Template If you are using this barcode reader, this field allows the code validation.
Alpha %
Alpha/Numeric @
Numeric #
Any ?
Input
Barcode
RFID
Default Value
If there is a value, this field will be automatically filled.
Prefix
Text appearing on the screen before the input variable.
Size
Prefix size
New Line after field
Yes/No, indicates whether the terminal display after this field should change the line. Usually yes.
Find
- Let you seek a field in a table to show its description in ‘Show’. To do this you must create fields with the “User variables”. All variables created in the ‘user’ variables’ will appear in ‘ Show ‘.
Show
- Displays the description of the field found in ‘Find’.
Visible
- Allows you to have invisible fields, just like in the example.
Body fields
The code above would generate the following terminal screen layout:
Variable name
- Name of variable. This name will appear at the top of the screen of the terminal.
Variable size
- Size of the field in the edit screen. In terms of memory if it is a string, an equivalent number of bytes to the size of the field will be spent. If it is a numeric field, 4 bytes will be spent.
Type
- String , Number of bytes = Variable Size.
- Numeric , Number of bytes = 4.
- Date , Not editable. Spends 4 bytes.
- Null , it won’t spend any bytes. Helps formatting the screen.
Field template
- If it is to read the bar code reader, this field can validate the code
- Alpha %
- Alpha/Numeric @
- Numeric #
- Any ?
Justify
- Right
- Left
Input
- Barcode
- Rfid
Allow repeated
- Allows repetition of a field within the same list.
If repeated
- To be used in conjunction with “Allow repeated ‘, which allows a field that is being repeated to perform this action. Traditional use is if a reference is repeated to add the quantity.
- Add
- Copy
Find
- Search the field’s content within one of the ‘user variable’ tables.
Default Value
- If there is a value, the field will be automatically filled. It may be used in conjuntion with ‘find’.
Show
- Allows its description to show in a field. To be used with ‘Find’.
Validate Show
- If ‘Yes’ then only data that are on the list will be allowed to enter this field,
Auto exit field
Allows you to move straight to the next field whenever this one is filled
Show in header
- Allows you to have a field that, although belonging to the ‘body’ which appears on all lines where the data is collected, being its input done in the same header. USA in this case is to ask for the number of the warehouse, rather than be introduced in all the readings.
Default value – Exit?
- Allows for example to make an inventory with the amount of 1 without stopping to ask the amount.
Don’t allow zero.
- You can’t input 0 in this field.
Special Condition
Allows to configure whether each field should appear on a screen or not through the value of a variable. In the above example the price is set in sales and consultation and it doesn’t appear in inventory.
Extract data from field Use this screen to extract data from a field. For example if we have a bar code in which the first 3 digits are the quantity, and we want to add all the quantities of stock to the terminal.
EAN128
Equivalent to the previous screen but specific to EAN128.
Memory Status
Allows the definition of which memory is to be used for inventory and which memory is to be used with the wording of references for example. By changing the value of this bar ‘size_body’ (System Variables) and ‘Number of elements’ (Properties) the user variables change automatically. You can open these windows before changing the bar to see how the values are.
System Variables
size_header_max
- Maximum number of different headers allowed. In the example of the invoice, this would be how many bills it could have in memory.
size_body
- In the same example would be the maximum number of lines in each bill. This number is calculated automatically, after you change the ‘size_header_max’.
laser_type
- psc
terminal_memory
- This value must be of 128 or 512, depending on the terminal. Our XRT502 model’s memory is of 512K at the moment.
allow_sub show_stat
- Define a function key which shows some statistics of the current inventory.
big_letter
- Yes /No
tag_type
- TagIt / none
barcode_codes
- Allows configuring
system_version
- 700
dial_string
- Allows the terminal to download data via modem. This sets up a sequence of dial
use_radio
- Lets it communicate by radio. In this configuration you must create an extra line in the ‘initial screen’ with ‘Connect’, thus initiating communications
- Important: To submit the program and then to send data, you should use the datacolletor with the option ‘/ Radio’. The Terminial to receive the program should be in ‘Radio Download’, which is obtained by reset, press’ del ‘on boot, password 6169 and then option 8.
Advanced
File
(In Advanced mode ) Rs232 SettingsCom port — Serial Port where the terminal will be collected to.
Fields
Load Fields
Allows the reading of previous configurations of the Program Generator. The extension of these configurations is ‘.fld’ . Together with the setup file there are some configuration examples.
Save Fields
Save current configurations.
Compiles the generated C code.
Puts the bin file into the x64/bin_offline folder, wich allows it later the communication to the terminal and its reconfiguration.
Program
Configure filename
Allow the name allocation to the C program to be created. This program must be created within the directory where the C. O c32.zip is located.
Generate program
Creates a program in C in accordance to the predefined configurations.
Edit Program
- Change or view the generated program.
Compile Program
Compiles…
Send Program
Send the program to the Terminal through the serial port. Note that the terminal has to be able to receive. To this must be done reset, press the ‘del’ while the terminal boots, password 6169 and option 7 (RS232 download).
Kill, compile , send Program
All steps in one go.
O DevKit é um pequeno aplicativo que possibilita a configuração da Antena, que é mais utilizada em configurações de pontos de acesso ao operar várias antenas dentro de uma mesma área.
O DevKit pode ser encontrado na seção de downloads. O caminho é Suporte > Downloads e depois clique em “Downloads para Vendas, Inventários e Segurança”. Alternativamente, você pode encontrar o
Instalando o DevKit
Depois de clicar no link do DevKit, você terá a opção de abrir ou salvar o arquivo. Você deve salvá-lo (o local padrão é sua pasta de downloads).
Depois de fazer o download do arquivo zip, você deve extrair seu conteúdo para qualquer local que desejar. O objetivo é apenas executar o arquivo setup.exe.
A instalação é muito simples, basta seguir as etapas fornecidas ao longo do processo de instalação, conforme mostrado nas caixas de diálogo na tela.
Configurando a antena com o DevKit
Forme a porta serial e o BaudRate em Editar – Configurações – Configurações RS232. O BaudRate por padrão é 19200. Para modificar o BaudRate da Antena, basta alterar esta opção. A antena deve apitar e o jogo deve ser reinicializado. Para enviar um programa com extensão .bin ou .hea, deve-se selecionar no Devkit a opção Edit-Configurations-Editor Enable (Disable).
Limpe o programa base atual (a base deve ter a EEPROM desprotegida). Para desligar o programa atual é utilizada a opção Clear RAM+ROM do Devkit (Edit – Configurations – Clear RAM+ROM). A antena deve apitar e reiniciar.
Neste momento, a antena está esperando para receber um programa da porta serial. Para enviar um programa, o botão RAW RS232 Upload no Devkit deve ser usado. O arquivo deve ser aberto (extensão C se não estiver compilado e .bin ou .hea se já estiver compilado) e enviado.
Para desenvolvimento de aplicações seja para treinamento ou mesmo para criação de documentação, é mais prático utilizar o emulador do que o terminal real X64. O Riocom.DLL (o DLL que contém as funções de comunicação com os terminais) se comunica com as antenas e os terminais emulados exatamente da mesma forma que com o real. Assim, em termos de software aplicativo, não há diferenças funcionais entre as duas abordagens (emulador ou terminal real).
Para uso no desenvolvimento de aplicativos online:
1. Execute a emulação da antena BASE.EXE e espere o processo de boot terminar e o LED ficar amarelo. Isso indica que a antena está pronta para ser usada pelo programa.
2. Execute o aplicativo principal. A DLL ativará a antena e o LED ficará verde, indicando que está kasyna polska pronta para receber comunicações de rádio.
3. Execute uma emulação de terminal TERMINAL.EXE e use-a como um terminal real. O teclado do terminal pode ser operado com o mouse ou com o PC. Para redefinir, pressione o botão de redefinição do terminal, localizado à direita e acima da tecla número 3 (seu lado direito).
Para uso com aplicativos offline, execute a emulação do terminal e clique na base para que o terminal seja colocado em cima dela e a porta serial seja ativada. Use-o como um terminal real.
Este arquivo Zip contém um monte de outros arquivos Zip, todos com material referente a XML.
Este arquivo Zip contém a configuração do aplicativo ProgramGenerator.
No menu principal, escolha a opção 9 – Configurações
Quando solicitado para a senha, digite 6195
Opções do menu de configurações:
1.
Número do terminal. A senha que permite alterá-la é 67145. Durante a mesma instalação cada terminal deve ter um número único.
2.
Número de licença. A senha é 264264. Para cada instalação deve haver um número de licença único.
De 3 a 9
Cada configuração funcional possui um valor numérico equivalente à soma de todas as opções ativas atualmente selecionadas. O valor pode ser inserido numericamente. Alternativamente, apenas pressionando “Enter”, temos acesso à lista de opções que podem ser ativadas ou desativadas pressionando a tecla azul referente à direita “>” ou à esquerda “<”.
3.
Config.A
+1 luz LCD acesa?
+2 Receber mensagens do PC?
+4 pede o número de pessoas na mesa ou, número do lugar na mesa?
+8 Desative esta opção para restaurar os menus originais
+16 Pergunta o tipo de pagamento?
1-Dinheiro 2-Visa 3-ATM
+32 Pergunta se deseja imprimir a conta?
1-Imprimir 2-Não imprimir
+64 Solicita tipo de cancelamento
1-com desperdício 2- sem desperdício
+128 O cancelamento está completo ou pergunta quais artigos cancelar?
4.
Config.B
+ n Número de antenas de repetição
+8 No modo de suspensão, não bloqueie o teclado
+16 A lista de solicitações é sempre do PC em vez de começar vazia
+32 O valor padrão para 0 (não 1)
+64 PC recebe uma notificação quando um terminal é conectado
+128 Pergunta o número do lugar na mesa
5.
Config.C
+1 Ao receber a conta, pede o local?
+2 Tamanho da fonte (4 linhas e não 8)
+4 dígitos na mesa, com leitura de código de barras
+8 dígitos no local, com leitura de código de barras
+16 Permite antenas com novo software (setembro de 2002)
sem limite no número de artigos a solicitar
+32 Verifica automaticamente se o valor escrito no tipo de pagamento e tipo de conta corresponde aos valores do texto descritivo Ex: 1-dinheiro 2-visto -> só aceita 0, 1 ou 2
(…)
10.
Exclua a árvore descritiva PLUS e complementos (PC ou outro terminal)
11.
Receba a árvore descritiva PLUS e complementos
12.
Enviar árvore descritiva de PLUS e complementos
a) Iniciar o pedido
b) Escolha uma garrafa de água de 1/2 lt
c) Deixe a quantidade como 1 e pressione enter para que o cursor vá para a próxima linha
d) Pressione SHIFT e em simultâneo F2 para ler o código de barras
e) Aponte o leitor para o adesivo da garrafa para que ele leia o código de barras
f) Pressione [Esc] para finalizar e cancelar o pedido
Para configurar a partir do PC, coloque a descrição dos artigos de 1 a 1500. Nas posições 1501 – 3000 insira os códigos de barras correspondentes aos mesmos artigos.
Observação: caso o terminal esteja sendo usado para leitura de códigos de barras, o número de artigos para os quais ele pode ser usado é 1500, pois as posições acima já estão preenchidas.
1. Usando o software do PC, defina os descritivos e complementos dos PLUs como no exemplo a seguir:
100 Café
101 Cevada
102 Chá
103 Café fraco
104 Chá de limão fraco
105 <– Descritivos vazios terminam cada página
500 COMPLEMENTOS <– Páginas seguintes como páginas complementares
501
510 Curto
511 Completo
512
515 Com Creme
516 Copo frio
517
530 Com ovo
531 Sem frio
532 Muito picante
533
598 FIM DE COMPLEMENTOS <– Atribui o fim de COMPLEMENTOS
599
2. Envie os descritivos dos PLUs (e complementos) do pc para o comando
3. No comando configure os complementos do PLU “Coffee” como no exemplo a seguir:
a) Iniciar um pedido
b) Escolher o artigo “Café”
c) Deixe a quantidade como 1 e pressione Enter para que o cursor vá para a linha seguinte
c) Pressione SHIFT e em F3 simultâneo para definir os complementos do Café (função “PLU*”)
d) se quiser que o comando peça automaticamente os complementos do café, escolha 2. Escolha 1 se quiser que seja feito manualmente.
e) Escolha a página que contém “Short” e “Full” pressionando as teclas com as setas [Seta para a direita] e [Seta para a esquerda]
f) Pressione Enter
g) Pressione 1 para definir os complementos como únicos (curto ou completo)
h) Escolha a página que contém “Com creme” e “Copo gelado” pressionando as teclas com as setas [seta para a direita] e [seta para a esquerda]
e) Pressione Enter
j) Pressione 2 para definir os complementos como múltiplos (pode ser “Com Creme” ou “Copo Frio”)
k) Pressione [Esc] para finalizar e cancelar o pedido
4. Configure artigos com complementos semelhantes a “café”:
l) Iniciar um pedido
m) Escolha o artigo “Cevada”
n) Pressione SHIFT e em F4 simultâneo para definir os complementos referentes a “Cevada” (tecla de função “PLU=”) (assim como o café)
o) Escolha o artigo “Café” e pressione Enter
p) Cancelar o pedido
5. Envie estas configurações junto com os PLUs descritivos e complementos deste comando para os demais:
a) Coloque todos os outros comandos em “Receber PLUs” Teclas 9 6195 [down] [down] [down] [down] [down] [down] [enter]
b) Coloque o comando que você acabou de configurar em “Send Plus+Cp” Teclas 9 6195 [down] [down] [down] [down] [down] [down] [down] [enter]
c) Aguarde até que todos os comandos terminem de receber
d) Finalize com [Shift] + [Esc]
6.Os comandos solicitam automaticamente os complementos pré-definidos como automáticos. para inserir complementos no modo manual, pressione F3 (tecla de função “COM?”) depois de inserir o PLU e a quantidade.
Os complementos de um artigo são definidos em 4 estruturas de dados:
1.
Matriz descritivas – Matriz com 3.000 descritivos de artigos e complementos com 16 caracteres cada.
3000 x 16 bytes
Esses são os mesmos descritivos usados para os artigos, o que faz com que o terminal identifique corretamente as páginas dos complementos.
Antes da primeira página de complementos, deve ser inserido um descritivo contendo: “COMPLEMENTOS”, seguido de um descritivo vazio.
Após a última página de descritivos, deve-se inserir um último descritivo assim: “FINAL DE COMPLEMENTOS”.
Cada página de complementos consiste em um ou mais descritivos em posições consecutivas. Um descritivo vazio atribui o final de cada página.
2.
Tipo de página – Matriz de 256 de 8 bits
256 bytes
Tipos possíveis:
1 – O ponteiro indica a página com opção de escolha única (ou seja: Completo/Curto)
5 – Ponteiro indica a página com opção de múltipla escolha (ex: Com Creme/Copo Frio)
129 – Ponteiro indica página automática com opção de escolha única (ou seja: Completo/Curto)
133 – O ponteiro indica a página automática com opções de múltipla escolha (ou seja: com creme/copo frio)
0 – Fim dos complementos para este artigo
3.
Ponteiro para a página – Array de 256 inteiros de 32 bits
256×4 bytes
Contém o índice do primeiro descritivo da página de complementos
Os buffers para esta estrutura de dados serão enviados ao terminal através da rotina já utilizada para a transmissão dos artigos descritivos.
O mapa de posições fica da seguinte forma:
4.
Página da lista de índices de ponteiros/tipos para cada artigo – Array de 3040 inteiros de 8 bits
Mapa de posições:
0 a 9
Reservado
11 a 13
NÃO USADO
14
“Mesa”
15
“quantidade de pratos”
16
“Enviando”
17
NÃO USADO
18
NÃO USADO
19
“Convidados Não.” ou “LUGAR”
20
“Outro”
21 a 27
Nome das Funções “Outro”
28 a 29
“Reservado”
30
Métodos de Pagamento
31
“Imprimir s/n”
32
Pronto “?” ( por padrão )
33 a 3071
Artigos Descritivos de 1 a 3039
3072
1 – Encomenda
3073
2 – Cancelamento
3074
3 – Subtotal
3075
4 – Conta
3076
5 – Transferências
3077
6 – Pagamento Parcial
3078
7 – Outros
3079
8 – Desconto
9
9 – Configuração
3080
1 – Comando
3081
2 – Licença
3082
3 – Config.A
3083
4 – Config.B
3084
5 – Config.C
3085
6 – Receber PLUs
3086
7 – Apagar PLUs
10
8 – Enviar PLUs+C
3087
Sair [Entrar]
3088
Matriz de páginas
(tipo de)
bytes 0 a 15
(…)
(…)
3103
bytes 240 a 255
3104
Matriz de páginas
(apontador para)
Inteiros de 32 bits 0 a 3
(…)
(…)
3167
Inteiros de 32 bits 252 a 255
3168
Índice da matriz de páginas por artigo
bytes 0 a 15
(…)
(..)
3358
bytes 1024 a 1039
3999
4 bytes com nº de descritivos para receber
Exemplo:
Café [Full or short] [em xícara fria e/ou duplo e/ou com creme]
Descritivos
100 CAFÉ
101 CHÁ
102 CEVADA
103
499 COMPLEMENTOS
500 COMPLETO
501 CURTO
502
503 EM COPO FRIO
504 DUPLO
505 COM CREME
506
999 FIM DE COMPLEMENTOS
3088 0, 1, 5, 0,0,0,0,0,0,0,0,0,0,0,0,0
(8 bits, páginas complementares para o CAFÉ – tipos)
3104 0, 500, 503, 0
(32 bits, páginas de complementos para o CAFÉ – ponteiros)
3168 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
(índice para o positivo de 0 a 15)
…
3174 0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0
(índice para o mais 96 a 111, o 101 é o CAFÉ,
o índice 1 para COFFEE indica que o COFFEE está se referindo à página que começa na posição 1 da matriz
RioCom.DLL é o arquivo DLL que contém as principais funções que permitem que os terminais X64 se comuniquem com o servidor e seus aplicativos de computador. Este manual descreve as funções de restauração que possibilitam esta comunicação.
A DLL foi programada usando uma linguagem de 32 bits. Portanto, todos os argumentos do tipo int devem ser considerados inteiros de 32 bits. Os idiomas que usam números inteiros de 16 bits precisam criar um protótipo das funções usando long int em vez de int.
Todas as funções descritas, sempre retornam um código de erro inteiro.
0 -> OK, operação bem sucedida
1 -> NO_MESSAGE, não há mensagens para ler do buffer)
2 -> INVALID_COM_PORT, porta serial não existe ou está sendo usada por outro programa
3 -> GENERIC_ERROR, erro genérico
4 -> NO_RESPONSE a DLL não recebeu resposta da antena
int __stdcall device_is_electronic_menu() // USE COM X64 SMART MEU
Descrição:
Use esta função para informar a DLL que o programa deseja enviar códigos pluri para o X64 Smart Menu. Enviar códigos Plu para o X64 Smart Menu e para o Terminal X64 não é possível ao mesmo tempo nesta versão.
int __stdcall radio_init (int com_no, first_terminal int, int last_terminal, license_no int, int protocolo_dados)
Descrição:
Esta função inicializa a antena, fazendo a detecção automática da versão e colocando-a em modo de recebimento de pedidos. Essa inicialização leva cerca de 1 segundo.
Função:
int radio_init (
int com_no,
int primeiro_terminal,
int último_terminal,
int licença_no,
protocolo_dados int);
Parâmetros:
com_no: Número da porta COM ao qual está conectado a antena
(Ex. 1 para COM1)
first_terminal: 1 rádio que o terminal da antena deve aceitar como válido. O terminal dropa apenas para enviar uma mensagem quando recebe a confirmação da antena. A antena apenas confirma que as mensagens têm o mesmo número de licença do hardware (license_nomais ver abaixo), e têm um número de terminal entre first_terminalelast_terminal inclusive.
last_terminal: Último terminal de rádio que a antena deve aceitar como válido (veja first_terminal)
license_no: Número de licença do hardware (programado nos terminais) para a antena deve aceitar como válido. Este valor serve para estabelecimentos vizinhos que utilizam o mesmo sistema de terminais de rádio podendo utilizar um número de licença diferente, evitando assim conflitos entre os postos
protocolo_dados: 4
int __stdcall radio_close()
Descrição:
Esta função libera a porta serial e retorna a parabólica ao modo padrão para que não receba mais transmissões do terminal de rádio.
c/PROTOCOLO_DADOS 4
int __stdcall radio_recv5 (int * function, int * end, int * permission, int * msg_number, pratos int *, int * mesa1, mesa2 int *, int * AuxData, lugar1 int *, int * lugar2, plus int *, int * qtds, st_mesa1 unsigned char *, unsigned char * st_mesa2)
Descrição:
Esta função verifica se existe alguma mensagem enviada por um terminal no buffer de entrada para ser lida pelo programa. Se houver alguma mensagem a função faz uma cópia dela para as variáveis passadas como parâmetros.
Função idêntica a radio_recv3, mas pode receber 13 bytes do campo mesa1 e mesa2.
int * Plus é um ponteiro para um array de inteiros de 32 bits.
int * qtds é um ponteiro para um array de inteiros de 32 bits.
Função idêntica a radio_recv4, mas ao receber números decimais ele vira a quantidade negativa e multiplica por 1000. Exemplo 0.1, a quantidade retorna -100.
ATENÇÃO a função copia a resposta para um endereço de suas respectivas variáveis. Os campos st_mesa1 e st_mesa2 devem ser inicializados com espaços em branco, resultando no bloco de programa.
c/PROTOCOLO_DADOS 4
int __stdcall radio_send_list4 (int end, int plate, int table, int AuxData, Lugar1 int, int Lugar2, mais int *, int * qtds, mesa1 unsigned char *, unsigned char * mesa2)
Descrição:
Esta função só deve ser utilizada se desejar o campo com mais de 8 dígitos.
Esta função envia uma mensagem para um terminal de rádio. O terminal após receber a mensagem entra em modo de edição. Após a edição, uma mensagem é enviada ao terminal com o tipo de PC = ‘E’.
Mais Qtds e aponte para um array de inteiros de 32 bits.
mesa1 aponta para uma string de 13 bytes.
mesa2 aponta para uma string de 13 bytes.
int __stdcall radio_send_message (int end, char * msg)
Descrição:
Este recurso envia uma mensagem de texto para um terminal de rádio. A mensagem não deve ocupar mais de 32 caracteres e deve ser inteiramente composta por caracteres internacionais. Observe que o terminal rádio recebe a mensagem somente se você estiver no menu principal, de modo que o envio de mensagens só deve ser feito em resposta a uma ação do usuário do terminal.
A DLL é responsável por tentar retransmitir mensagens não confirmadas pelo terminal. Esta retransmissão é feita a cada 5 segundos (aproximadamente). Se o terminal não receber uma mensagem em 1 hora, a DLL a ignorará. As mensagens são processadas por ordem de chegada (FIFO). Você pode saber se uma mensagem foi enviada ou não usando a função radio_send_message_get_status.
Parâmetros:
terminal: o número do terminal para o qual a mensagem deve ser enviada.
msg: ponteiro para o endereço para onde você envia a mensagem. (Muitos idiomas fazem a conversão automática de string para o ponteiro)
int __stdcall radio_send_big_message_auto_run_menu (int end, char * msg, int menuoption)
Descrição:
Este recurso envia uma mensagem de texto para um terminal de rádio. A mensagem não deve ocupar mais de 64 caracteres e deve ser inteiramente composta por caracteres internacionais. Observe que o terminal rádio recebe a mensagem somente se você estiver no menu principal, de modo que o envio de mensagens só deve ser feito em resposta a uma ação do usuário do terminal.
Após o terminal receber esta mensagem automaticamente vai para o menu a opção ‘
A DLL é responsável por tentar retransmitir mensagens não confirmadas pelo terminal. Esta retransmissão é feita a cada 5 segundos (aproximadamente). Se o terminal não receber uma mensagem em 1 hora, a DLL a ignorará. As mensagens são processadas por ordem de chegada (FIFO). Você pode saber se uma mensagem foi enviada ou não usando a função radio_send_message_get_status.
Parâmetros:
terminal: o número do terminal para o qual a mensagem deve ser enviada.
msg: ponteiro para o endereço para onde você envia a mensagem. (Muitos idiomas fazem a conversão automática de string para o ponteiro)
menuoption: Menu para o qual o terminal irá após receber uma mensagem.
int __stdcall radio_send_big_message (int end, char * msg)
Descrição:
Este recurso envia uma mensagem de texto para um terminal de rádio. A mensagem não deve ocupar mais de 64 caracteres e deve ser inteiramente composta por caracteres internacionais. Observe que o terminal rádio recebe a mensagem somente se você estiver no menu principal, de modo que o envio de mensagens só deve ser feito em resposta a uma ação do usuário do terminal.
A DLL é responsável por tentar retransmitir mensagens não confirmadas pelo terminal. Esta retransmissão é feita a cada 5 segundos (aproximadamente). Se o terminal não receber uma mensagem em 1 hora, a DLL a ignorará. As mensagens são processadas por ordem de chegada (FIFO). Você pode saber se uma mensagem foi enviada ou não usando a função radio_send_message_get_status.
Parâmetros:
terminal: o número do terminal para o qual a mensagem deve ser enviada.
msg: ponteiro para o endereço para onde você envia a mensagem. (Muitos idiomas fazem a conversão automática de string para o ponteiro)
int __stdcall radio_send_message_auto_run_menu (int end, char * msg, int menuoption)
Descrição:
Este recurso envia uma mensagem de texto para um terminal de rádio. A mensagem não deve ocupar mais de 32 caracteres e deve ser inteiramente composta por caracteres internacionais. Observe que o terminal rádio recebe a mensagem somente se você estiver no menu principal, de modo que o envio de mensagens só deve ser feito em resposta a uma ação do usuário do terminal.
Após o terminal receber esta mensagem automaticamente vai para o menu a opção ‘
A DLL é responsável por tentar retransmitir mensagens não confirmadas pelo terminal. Esta retransmissão é feita a cada 5 segundos (aproximadamente). Se o terminal não receber uma mensagem em 1 hora, a DLL a ignora. As mensagens são processadas por ordem de chegada (FIFO). Você pode saber se uma mensagem foi enviada ou não usando a função radio_send_message_get_status.
Parâmetros:
terminal: o número do terminal para o qual a mensagem deve ser enviada.
msg: ponteiro para o endereço para onde você envia a mensagem. (Muitos idiomas fazem a conversão automática de string para o ponteiro)
menuoption: Menu para o qual o terminal irá após receber uma mensagem.
int __stdcall radio_message_hardware_ABCDEF (int end, int valor1, int valor2, int valor3, int valor4, valor5 int, int valor6)
Esta função envia uma mensagem e configura a opção A, B, C, D, E e F do terminal com o respectivo valor.
int __stdcall radio_get_send_status (int msg_number)
Este recurso permite verificar se uma mensagem chegou a um terminal (a DLL ainda está tentando por cerca de uma hora se o terminal estiver desligado ou sem cobertura)
Devoluções:
0 se a mensagem chegou
1 se a DLL ainda estiver tentando enviar uma mensagem
2 se a transmissão falhou (após cerca de 1 hora tentando)
Parâmetros:
msg_number: Valor retornado pela função radio_send_message, radio_send_lista, radio_message_upload_plus ou radio_message_clear_upload_plus
int __stdcall radio_set_entry (entry_no int, char * nome)
Descrição:
Esta função atualiza a imagem de que a DLL está na memória do rádio do terminal apenas para uma posição. Esta atualização deve ser feita para todas as posições que serão enviadas utilizando a função radio_upload_entries. (Veja abaixo)
Com as novas funções para enviar mais árvore, esta função não é usada e está obsoleta.
Você só deve usar esta função se quiser alterar o texto dos menus do terminal.
Função:
int radio_set_entry (
int entrada_no,
char far * nome);
Parâmetros:
entry_no: Posição a ser atualizada
name: Texto para escrever nessa posição. Isso pode levar até 16 caracteres.
int __stdcall radio_upload_entry (first_entry int, int last_entry)
Descrição:
Esta função envia todas as entradas (anteriormente introduzidas com radio_set_entry) para os terminais de rádio. Para isso, devemos digitar 96195 6 quando o terminal estiver no menu principal para colocar o terminal em modo de download. Como alternativa, você pode colocar o terminal no modo de download enviando uma mensagem.
Esta função não possui correção de erros. Pode ser que um terminal não receba todas as entradas. Para evitar isso, você pode enviar a mensagem 2 vezes.
Com as novas funções de enviar mais árvore, esta passa a não ser utilizada e se torna obsoleta.
Função:
int radio_upload_entries ( int casino first_entry, last_entry int);
Parâmetros:
+ First_entry: Primeira entrada a ser enviada
last_entry: Última entrada a ser enviada. Para enviar todas as entradas para alterar first_entry = 10 = last_entry e 3079.
Funções para criar mais na árvore.
int __stdcall radio_make_tree_mkdir (char * nome), / / Opcional
Descrição:
Equivalente ao mkdir do MSDOS, crie uma ramificação na árvore.
Devoluções:
Parâmetros:
* name: Nome da classe a ser criada.
int __stdcall radio_make_tree_cd_back ();
Descrição:
Equivalente ao cd .. do MSDOS, vamos passar para o branch anterior.
Devoluções:
Parâmetros:
int __stdcall radio_make_tree_entry (entry_no int, char * nome);
Descrição:
Vamos introduzir uma ramificação plurianual em um determinado ramo da árvore.
Devoluções:
O valor da posição da árvore onde foi colocado Plu.
Parâmetros:
entry_no: Valor que se destina a ser enviado ao PC quando for selecionado Plu.
* nome: Descrição do Plu.
int __stdcall radio_make_tree_entry2 (entry_no int, char * nome, char * preço, int posição); // USE COM O MENU INTELIGENTE X64
Descrição:
Vamos introduzir uma ramificação plurianual em um determinado ramo da árvore.
Devoluções:
O valor da posição da árvore onde foi colocado Plu.
Parâmetros:
entry_no: Valor que se destina a ser enviado ao PC quando for selecionado Plu.
* nome: Plu Descrição.
* preço: Preço Plu.
posição: número da página plu * 24 + número da linha plu.
int __stdcall radio_make_tree_cd (char * nome);
Descrição:
Equivalente ao CD MSDOS, permite mudar de indústria.
Devoluções:
Parâmetros:
* name: Nome do branch para o qual deseja alterar. Se não for criado automaticamente.
int __stdcall radio_make_tree_modifier (char * group_name, bool automatic, multiple_choice bool);
OU
int __stdcall radio_make_tree_modifier2 (char * group_name, int automatic, multiple_choice int);
Descrição:
Para adicionar as últimas adições introduzidas pelo Plu.
radio_make_tree_modifier “temperatura da xícara”, False, False
Acrescentaria um suplemento chamado “temperatura da xícara”, que não seria automático e não teria múltiplas escolhas.
Devoluções:
Parâmetros:
* group_name: Suplementos de nome de grupo.
automático: Exige a introdução desses suplementos, por exemplo se você quiser pedir café tem que dizer que é xícara quente ou fria.
multiple_choice: Diria que se você quiser café em uma xícara quente e fria.
int __stdcall radio_make_tree_modifier_min_max( char *group_name,int automatic,int min,int max,int default_value); // USE COM O MENU INTELIGENTE X64
Descrição:
Atribui um grupo modificador a um item de menu. Mais de um grupo modificador pode ser atribuído a um item chamando esta função repetidamente.
Parâmetros:
group_name: Título do grupo modificador a ser atribuído.
automático: Exige a introdução desses suplementos, por exemplo se você quiser pedir café tem que dizer que é xícara quente ou fria.
min: número mínimo de itens que o usuário final deve selecionar no grupo.
max: número máximo de itens que o usuário final deve selecionar no grupo.
default_value: Cada bit deste código faz o modificador correspondente no grupo pré-selecionado por padrão.
int __stdcall radio_make_tree_modifier_entry (entry_no int, char * nome);
Descrição:
O diretório anterior passa a ser o nome do grupo de suplementos.
Com esta instrução adicionamos elementos ao grupo.
Exemplo:
radio_make_tree_cd “temperatura da xícara”
radio_make_tree_modifier_entry 600, “Cold Chevena”
radio_make_tree_modifier_entry 601, “Copo quente”
radio_make_tree_modifier_entry 602, “Copa da manhã”
Criaríamos um novo grupo chamado “temperatura da xícara”, com 3 elementos.
Se usado em uma solicitação de devolução 601.602 e 603, respectivamente.
Devoluções:
O valor da posição da árvore onde foi colocado Plu.
Parâmetros:
int __stdcall radio_upload_tree2 (char * Configurações, NumParametros int, int RearrangeTree);
Descrição:
Envie tudo para o terminal plus.
As configurações são uma string que permite configurar o terminal diretamente.
Parâmetros:
Opção de configuração 1 = A
Opção de configuração 2 = B
Opção de configuração 3 = C
etc…
NumParametros: Tamanho em bytes das configurações.
RearrangeTree: 1 (Enable) ou 0 (Disable), defendia o comportamento de um galho de árvore em situações que são mais de 8 elementos.
Se 1, cria automaticamente uma nova sub-ramificação de dll para que nunca haja uma indústria com mais de 8 elementos.
Exemplo de uma árvore:
Para criar mais do exemplo acima deve ser usado o código a seguir.
radio_make_tree_cd “Cafeteria”
radio_make_tree_entry 1, “Café”
radio_make_tree_modifier “temperatura da xícara”, False, False
radio_make_tree_modifier “Tipo de Café”, Falso, Falso
radio_make_tree_entry 2, “Cha”
radio_make_tree_modifier “temperatura da xícara”, True, True
radio_make_tree_entry 8, “Água”
radio_make_tree_entry 9, “Torres”
radio_make_tree_entry 10, “Tosta mista”
radio_make_tree_entry 11 “Sande de queijo”
radio_make_tree_entry 12, “sande misto”
radio_make_tree_entry 13, “Pão c/ queijo”
‘Se número de elementos> 8 Árvore será reconstruída automaticamente
‘Radio_make_tree_entry 14, “Pão c/manteiga”
‘Radio_make_tree_entry 15, “Pão Simples”
radio_make_tree_cd_back
radio_make_tree_cd “Gelato”
radio_make_tree_mkdir “Vidro” ‘Opcional
radio_make_tree_mkdir “Taca” ‘Opcional
radio_make_tree_cd “Vidro”
radio_make_tree_entry 3, “2 Bolas”
radio_make_tree_entry 4 “Bolas 3”
radio_make_tree_cd_back
radio_make_tree_cd “Taca”
radio_make_tree_entry 5 “Chocolate”
radio_make_tree_entry 6, “Baunilha”
radio_make_tree_cd_back
radio_make_tree_cd_back
radio_make_tree_mkdir “Outro”
radio_make_tree_cd “Outro”
radio_make_tree_entry 7, “Tabaco”
radio_make_tree_cd_back
radio_make_tree_mkdir “Compl.”
radio_make_tree_cd “Compl.”
radio_make_tree_mkdir “Tipo de Café”
radio_make_tree_cd “Tipo de Café”
radio_make_tree_modifier_entry 500, “Completo”
radio_make_tree_modifier_entry 501, “Curto”
radio_make_tree_cd_back
radio_make_tree_mkdir “temperatura da xícara”
radio_make_tree_cd “temperatura da xícara”
radio_make_tree_modifier_entry 600, “Cold Chevena”
radio_make_tree_modifier_entry 601, “Copo quente”
radio_make_tree_modifier_entry 602, “Copa da manhã”
radio_make_tree_cd_back
Funções introduzidas nas árvores.
Com essas funções você pode criar uma estrutura de famílias, subfamílias, acessórios etc… com muita simplicidade.
Isso tem a vantagem de não precisar dos códigos oficiais da loja.
A opção no terminal G, ‘Plus tree’ (valor 1) deve estar ativa. Válido nas versões> = 7.9370.
As funções são:
VB
Função de declaração pública radio_make_tree_mkdir Lib “RioCom” (ByVal directory_name As String) As Long ‘Opcional
Função de declaração pública radio_make_tree_cd_back Lib “RioCom” () enquanto
Função de declaração pública radio_make_tree_entry Lib “RioCom” (ByVal entry_number As Long, ByVal entry_name As String) As Long
Função de declaração pública radio_make_tree_cd Lib “RioCom” (ByVal directory_name As String) As Long
Função de declaração pública radio_upload_tree Lib “RioCom” () enquanto
Envie tudo para o terminal plus.
Public Declare Function radio_upload_tree2 Lib “RioCom” (ByVal Settings As String, NumParametros ByVal As Long, ByVal RearrangeTree the Long) As Long
Mapa das posições da memória do terminal
Mapa de posições:
0 a 9 RESERVADO
11-13 NÃO USADO
14 “Tabela”
15 “Quantidade de Prato”
16 “Enviando”
17 NÃO USADO
18 NÃO USADO
19 “Nº de Pessoas” ou “LUGAR”
20 “Outros”
21-27 Nome da Função “Outro”
28-29 “Reservado”
30 Métodos de Pagamento
31 “Imprimir S/N”
32 Perguntar “?” (Predefinição)
33-3071 Descrição dos Artigos 1 a 3039
3072 1 – Encomenda
3073 2 – Cancelamento
3074 3 – Subtotal
3075 4 – Conta
3076 5 – Transferências
3077 6 – Pagamento Parcial
3078 7 – Outros
3079 8 – Desconto
9 9 – Configuração
3080 1 – Comando
3081 2 – Licença
3082 3 – Config.A
3083 4 – Config.B
3084 5 – Config.C
3085 6 – Receba MAIS
3086 7 – Excluir MAIS
10 8 – Enviar Mais + C
3087 Sair[Entrar]
3088 Matriz de páginas (mais ou menos)
bytes 0 a 15
(…)
(…)
3103
240 a 255 bytes
3104 Matriz de páginas
(apontando para)
inteiros de 32 bits de 0 a 3
(…)
(…)
3167 Inteiros de 32 bits de 252 a 255
3168 Índice na matriz de páginas para cada artigo
bytes 0 a 15
(…)
(..)
3358 1024 a 1039 bytes
3999 4 bytes c/parágrafo descritivo de recebimento
Terminais
Com apenas 300g os terminais X64 são facilmente transportados o que permite que cada funcionário trabalhe diretamente com a aplicação do sistema sem a necessidade de se deslocar para um terminal fixo ou mesmo para o servidor.
Preenchimento de faturas, ordens de manutenção, controle de estoque, organização do armazém, verificação de preços (inserção, modificação e exclusão), recebimento e envio de entregas e muito mais são apenas algumas das operações possíveis que podem ser realizadas no local por qualquer membro autorizado da a empresa.
Cobertura
O raio de cobertura da base é de aproximadamente 100 metros. É claro que esse valor pode ser bastante variado dependendo do local, tipo de materiais utilizados na construção do prédio, equipamentos similares nas proximidades, e assim por diante.
Aconselha-se instalar a base num local alto e afastado das paredes. O PC não deve estar perto da base. A distância mínima recomendada entre o PC e a base é de 3 metros.
Você pode conectar uma base a vários pontos de acesso. No sistema operacional dos terminais, você deve indicar quantas bases estão em operação e seu nome. O nome da base deve ser igual ao nome do ponto de acesso. Os últimos 2 dígitos devem ser diferentes. Por exemplo tenho um “BAS00” e um access point “BAS01” transmitindo para “BAS00” e outro access point “BAS02” transmitindo para o “BAS00” ou para o “BAS01.
Chaves
Page Up ‘Shift’ + seta para cima
Page Down ‘Shift’ + Seta para baixo
As seguintes chaves:
Solicitação do sistema
Imprimir
Digitar
F1…F13
Pode ser inserido a partir do programa.
Carga da bateria
As baterias são de grande capacidade. Carregadas e com pouco uso, as baterias do terminal X64 podem durar vários dias.
Para carregar as baterias, você deve conectar o carregador à fonte de alimentação e ao terminal. O tempo de carregamento é de aproximadamente 6 horas.
Conteúdo do separador
Sistema operacional
- Para acessar o sistema operacional, o usuário deve pressionar as teclas ‘shift’ + ‘ins’
Battery – Indica o nível da bateria.
Contrast – indica o contraste. Você pode usar as setas para alterá-lo.
Light – permite o acesso ou o cancelamento da luz de fundo usando as setas.
Time – indica a hora no sistema, que pode ser alterada.
Date – Indica a data no sistema, que também pode ser alterada.
- Barcode – permite que o leitor a laser seja testado.
- Para obter acesso ao sistema operacional técnico, você deve pressionar ‘Shift’+’Del’
Senha Técnica:
(1º dígito dia + 1º dígito horas + 6) MOD 10
(2º dígito dia + 2º dígito horas + 1) MOD 10
(1º dígito mês + 1º dígito horas + 6) MOD 10
(2º dígito mês + 2º dígito horas + 9) MOD 10
0
0
Você pode usar temporariamente a senha 1111.
ID – indica o nome do sistema. Este nome é usado para associar o terminal ao nome do dispositivo.
Em uma instalação, o ID do terminal deve ter os mesmos 6 primeiros dígitos de todos os terminais. Os dois últimos dígitos devem ser números sequenciais diferentes. ou seja: “BAVIER01″,”BAVIER02”,”BAVIER03″…
Password – Permite a criação de uma nova senha..
Language – permite a seleção de um idioma.
BaudRate – Velocidade da porta serial.
Power Down – Tempo em segundos que o computador permanece ligado, mas em espera.
Laser Time – Tempo em Milissegundos que o laser permanece ligado após soltar a chave.
Backlight – Tempo em segundos que a luz permanece acesa depois que a tecla é solta.
ResetTime – Tempo em segundos que o computador permanece ligado, mas em espera sem redefinir.
Bat Low – Tensão funcional do computador.
Bat Empty – Tensão a partir da qual o computador é desligado.
Reset – Limpa o programa na RAM, forçando assim uma leitura da EEPROM no próximo Hard Reset.
Save Prog -Salva o programa em EEPROM. Para iniciar a gravação você deve pressionar ‘61’. O processo de gravação demora cerca de 5 minutos. Para limpar o programa na EEPROM você deve inicializar o computador pressionando a tecla ‘DEL’.
Connect
Base à – Conecta-se ao PC usando a base.
Demo à – Estabelece uma conexão com a base usando telas salvas na mesma base.
Beep à – Coloca a base em bip mais se houver comunicação com outra base.
Base à – Testa a comunicação com a base.
1 on top -Defina o tipo de teclado no terminal.
Find Base – determina se o computador deve procurar uma base melhor.
Work Base – Nome da base atual, nome padrão “BAS00”. O nome da base deve ser:’XXX’+NN, onde XXX é o nome da base e NN é o número da base. NN entre as várias bases deve ser sequencial.
NumBases – Número de bases conectadas entre si..
Send Prog – Permite que o programa atual seja enviado para outro terminal. Em seguida, deve-se inserir o nome do terminal. Demora +- 5 minutos.
Recv Prog – Permite a recepção de um programa via rádio, de outro terminal ou do Devkit.
Os terminais e a base possuem um botão de reset. Sempre que o terminal parar de funcionar corretamente, um ‘Reset’ pode ser feito com um clipe. Se ainda assim o terminal não funcionar corretamente, você deve entrar em contato com a X64 para obter assistência técnica.
Se você pressionar a tecla del durante a inicialização após a redefinição, será solicitada uma senha.
Insira 6169 e você terá acesso ao menu de download.
A seguir estão algumas mensagens de erro possíveis que você pode receber na tela. Algumas soluções também são fornecidas, mas em caso de impossibilidade de resolver o problema, entre em contato com nosso suporte técnico.
Base não encontrada – Pressione qualquer tecla – O terminal não encontra a base. Se você ainda não começou a trabalhar, tente fazer um reset.
Se a mensagem persistir, pode existir um dos seguintes problemas:
- fora de alcance – a distância entre o terminal e a base é muito grande
- base não conectada à energia
- problemas de cabo serial
- PC desligado ou sem o programa relevante em execução
Se estiver no trabalho e a mensagem aparecer na tela, tente se aproximar da base e pressione qualquer tecla.
ID do termo não definido – O nome do ID do terminal deve ser definido no computador e no terminal.
Sistema inativo – A conexão com o PC está correta, mas o PC não recebe resposta.
Você pode precisar, em uma situação extrema, reiniciar o PC.
Aqui você encontrará informações sobre os cabos e sua estrutura.
Conectando um XRF70x(Antena) a um PC
Conectando um XRT70x a um TagSys
Conectando um XRT70x a uma impressora serial
Aqui você encontrará informações sobre o MOXA IP NPort.
Esta secção contém software, amostras, e outros materiais que podem ou não ser usados agora. Por favor, garanta que o seu hardware tem a versão exata do software que procura.
Este programa permite que edite, compile e transfira programas para X64.
Este programa contém software desenvolvido com XRML para a antena e para o Price Checker. A instalação do software para a antena e o Price Checker é feito automaticamente ao correr o programa.
(Última vez atualizado 21/03/2006).
(Última vez atualizado 12/12/2004).
(Última vez atualizado 26/06/2002).
Aqui vai encontrar algumas documentações antigas para versões anteriores de terminais X64. Antigas funções, e conexões para a versão 6 da antena também estão incluídas.
Menu …
Versão 6:14
Imprimir: 96,195
1 6 7 1 4 5 Comando Mudanças de Número
2 2 6 4 2 6 4 Emenda ao número de licença
3
+1 Luz (bit 0)
+2 Receptor (bit 1)
+4 pedidos de lugar (bit 2)
+8 Não Reinicia (não actualiza os blocos reservados)
+16 chama Visa Cash ATM
+32 Imprimir (S / N)
+64 Chama desperdício (S / N)
+128 0-Cancelamento parcial, 1-Cancelamento total
4 Número de pontos de acesso defeito 0
+8 Não protege o teclado
+16 Não permite a edição directa do mais
+32 Volume por defeito a 0
+64 Enviar mensagem sempre que estiver activo
Receber 5 PLUS
Versão 6:24
Imprimir: 96,195
1 6 7 1 4 5 Número de Comando Alter
2 2 6 4 2 6 4 Alter License Number
3
+1 Luz (bit 0)
+2 Receptor (bit 1)
+4 Pedidos para as pessoas (bit 2)
+8 Não Reinicia (não actualiza os blocos reservados)
+16 chama Visa Cash ATM
+32 Imprimir (S / N)
+64 Chama desperdício (S / N)
+128 0-Cancelamento parcial, 1-Cancelamento total
4
Número de defeito de interface 0
+8 Não protege o teclado
+16 Não Deixa editar directamente o mais
+32 Volume por defeito a 0
+64 Enviar mensagem sempre que estiver activo
+128 Pedidos de lugar
5 Receber MAIS
Versão x.9123
Imprensa 96195
1 6 7 1 4 5 Comando Mudanças de Número
2 2 6 4 2 6 4 Emenda ao número de licença
3 Alterar a configuração (Entrar para ver opções)
+1- Iluminação no LCD?
+2- Receber mensagens do PC?
+4- Pergunta o número de pessoas à mesa?
+8- Não restaura menus (virar para 0 para restaurar menus originais)
+16- Pergunta-se que tipo de pagamento?
Exemplo: 1-Money-2 Visa
+32- Pergunta para que tipo de factura?
Exemplo: 1-Não-impressão 2 Impressões
+64- Pergunta para que tipo de cancelamento?
Exemplo: 1-Com resíduos 2-Sem resíduos
+128- O cancelamento é total ou precisa de saber quais os artigos a cancelar?
4 Alterar Configuração B (Entrar para ver opções)
+ n-Número de antenas repetidoras
+8- Não bloquear teclado
+16- A lista de encomendas vem sempre do PC em vez de um início vazio
+32- Quantidade não completada é igual a 0, e não 1
+64- O PC recebe uma notificação quando um terminal está ligado
+128- Pede o lugar onde a pessoa está à mesa
5 Alterar Configuração C (Entrar para ver opções)
+1- Quem pergunta a conta também pergunta o local?
+2- tamanho da letra grande
+4- 8 dígitos na tabela com uma leitura de código de barras
+8- 8 dígitos no local com uma leitura de código de barras
+16- Permite que as antenas com novo software (Setembro de 2002) não tenham limite no número de artigos a solicitar
+32- Verifica automaticamente se o valor escrito sob a forma de pagamento e tipo de conta corresponde aos valores do texto descritivo Ex: 1-money 2-visa-> só aceita 0, 1 ou 2
Traduzido com a versão gratuita do tradutor – www.DeepL.com/Translator
Conexão direta com Antena Vers. 6 e sem DLL
Com a Antena versão 6, a comunicação entre o PC e a antena é feita nos dois sentidos. O protocolo utilizado é o mesmo, mas por pacotes.
A comunicação entre o PC e a antena é feita por pacotes e não por bytes.
Uma vez inicializada a antena, ela estará sempre em recepção. Para configurar a antena para trabalhar com pacotes você deve enviar o seguinte:
Com a antena em ‘Menu’
(‘-‘) + chr chr chr (‘<‘) + ( ‘P’) + chr (2)
Para desativá-lo se você deve enviar
(‘-‘) + chr chr chr (‘<‘) + ( ‘P’) + chr (0)
Observe que essa string deve ser enviada como um pacote.
A partir deste ponto a antena não voltará ao ‘Menu’
Os pacotes são compostos da seguinte forma:
(‘-‘)+ chr chr chr (‘>’)+ (tamanho) (byte) + DATA (byte) + chr (Número da mensagem) (byte) + chr (checksum) (byte)
Tamanho: Tamanho dos dados
checksum: Inclui tamanho, dados e o número da mensagem.
A resposta para cada pacote é sempre’ -> OK ‘+ chr (número da mensagem)
Os pacotes são numerados, a antena está sempre aguardando resposta do PC e não receberá novas mensagens enquanto o PC não responder. Este efeito é desejado caso o cabo serial seja desconectado, os comandos deixarão de funcionar.
Os dados são os mesmos usados nas versões anteriores.
Exemplo: Para enviar uma mensagem ao comando devo enviar:
chr (‘-‘)
chr (‘>’)
chr (36) Tamanho da mensagem
chr (Num. envia a mensagem Command Low Byte)
chr (Num. Alto Comando para enviar mensagem Byte)
chr (Num. Licenciamento em byte baixo)
chr (Num. Licenciamento em byte alto)
32 Bytes (Texto da mensagem)
chr (número da mensagem) por exemplo 1
chr (checksum) Byte 1 com a soma de todos os bytes da mensagem incluindo o tamanho e o número da mensagem.
A antena responderá com:
chr (‘-‘)
chr (‘>’)
chr (‘O’)
chr (‘K’)
chr (número da mensagem)
Em seguida, a mensagem será enviada por rádio.
Na direção oposta acontece o mesmo.
O único estado a ter em conta é que se a antena enviar um pedido ao PC e o PC estiver à espera de uma resposta a uma mensagem, a aplicação deve ser interpretada como um pedido.
O Exemplo em VB mostra muito bem esta situação.
RS232 receber por:
(‘-‘)+ Chr Chr Chr (‘>’)+ (Tamanho) +
Chr (®) + Chr (®)
Chr (Função)
P Solicitar Número de Pessoas
O anular
Tipo de pagamento subtotal S
Conta C + fatura do tipo de pagamento (S/N)
Mesa de Transferência T2
G pag_parc
D desconto% Desconto
Uma resposta à mensagem de confirmação.
Chr (Num Command Low Byte)
Chr (Num Command High Byte)
Chr (Byte baixo do número de licença)
Chr (Byte alto do número de licença)
Chr (Num Message Low Byte)
Chr (Num Message High Byte)
Chr (Byte baixo de placas numéricas)
Chr (Byte alto das placas numéricas)
Chr (Num Table Low Byte)
Chr (Num Mesa High Byte)
Chr (Ajudando Low Byte)
Chr (Byte alto do assistente)
. Chr (Place 1 Low Byte) SOMENTE NO PROTOCOLO_DADOS 2
. Chr (Place 1 High Byte) SOMENTE NO PROTOCOLO_DADOS 2
. Chr (Place 2 Low Byte) SOMENTE NO PROTOCOLO_DADOS 2
. Chr (Place 2 High Byte) SOMENTE EM PROTOCOLO_DADOS 2
Para n = 1 para Num.Pratos
Chr (Prato Low Byte)
Chr (Prato High Byte)
Chr (Número Baixo Byte)
Chr (Número de byte alto)
próximo
+ Chr (Mensagem Numérica)
+ Chr (soma de verificação)
O PC deve responder com ‘-> OK’ + chr (número da mensagem)
Código C equivalente
* Função = msg[0];
* Terminal = msg [1] + msg [2] * 256;
* Licença = msg [3] + msg [4] * 256;
* Msg_number = msg [5] + msg [6] * 256;
* Placas = msg [7] + msg [8] * 256;
* Mesa1 = msg [9] + msg [10] * 256;
* AuxData = msg [11] + msg [12] * 256;
Ct = 13;
If (Protocolo Ativo == 2)
(
* Lugar1 = msg [13] + msg [14] * 256;
* Lugar2 = msg [15] + msg [16] * 256;
Ct+ = 4;
)
Se (Protocolo Ativo> = 3)
(
* Mesa1 =* ((int *) & (msg [13]));
* Mesa2 =* ((int *) & (msg [17]));
* Lugar1 =* ((int *) & (msg [21]));
* Lugar2 =* ((int *) & (msg [25]));
Ct+ = 16;
)
Se (Protocolo Ativo> = 4)
(
Memcpy (st_mesa1, & (msg [ct]), 13);
Memcpy (st_mesa2, & (msg [ct +13]), 13);
Ct+ = 26;
)
Antena de Comando Versão 6
“- <S” + chr (1) Protocolo_dados 1
“- <S” + chr (2) Protocolo_dados 2
“- <P” + chr (0) Sem dados empacotados, sem cabeçalho
“- <P”+chr(1) Sem dados, empacotado com cabeçalho “–>”
“- <P” + chr (2) pacotes de dados, ativos
“-
envie Plu para o comando
chr (1)
chr (Num. bloquear o plano Low byte)
chr (Num. Plano de bloco para byte alto)
chr (Num. Licenciamento em byte baixo)
chr (Num. Licenciamento em byte alto)
16 Bytes (texto) (Se os últimos 4 bytes forem dígitos significa que é uma família. “MEAT 0100)
No modo de pacotes para enviar um segundo PLU o comando deve ser repetido.
Envie uma mensagem
chr (3)
chr (Num. envia a mensagem Command Low Byte)
chr (Num. Alto Comando para enviar mensagem Byte)
chr (Num. Licenciamento em byte baixo)
chr (Num. Licenciamento em byte alto)
32 Bytes (Texto da mensagem)
Envie uma mensagem especial para colocá-lo em modo de upload um plus
(dentro da mensagem)
chr (1)
chr (6)
Envie uma mensagem especial para colocá-lo em modo de upload de PLUs e para limpar todos os PLUS
(Versão> 6918)
(dentro da mensagem)
chr (1)
chr (8)
Envie uma mensagem especial para configurar o byte de hardware
(Mensagem interna)
chr (1)
chr (3)
chr (hardware de bytes)
Descrição dos bits de
o hardware de bytes
+1 Conecte a luz
+2 Receptor (bit 1)
+4 Pergunta pelo lugar (bit 2)
+8 Não faz reset (não atualiza os blocos reservados)
+16 Solicita Visa Cash ATM
+32 Imprimir (S / N)
+64 Solicita resíduos (S/N)
+128 0-Cancelamento parcial, 1 total-Cancelamento
Envie uma mensagem especial para configurar o byte B de hardware
(dentro da mensagem)
chr (1)
chr (7)
chr (hardware de bytes)
Descrição dos bits do hardware byte
0 + Número de defeito de interface
+8 Não protege o teclado
+16 Não permite editar diretamente o plus
+32 Volume padrão para 0
+64 Enviar mensagem sempre que estiver ativo
+128 Solicita um lugar
Envie os limites da base, número de licença e comando
chr (8)
chr (Byte baixo (limite inferior da licença))
chr (Byte alto (limite inferior da licença))
chr (Byte baixo (Licença de limite superior)
chr (High Byte (Licença de limite superior))
chr (Byte baixo (limite inferior N. Comando))
chr (Byte alto (limite inferior N. Comando))
chr (Byte baixo (Limite superior N. Comando))
chr (Byte alto (limite superior N. Comando))
Enviar dados de uma tabela para um comando
chr (10)
chr (comando Num. para configurar Low Byte)
chr (Comando Num. para configurar High Byte)
chr (Num. Licenciamento em byte baixo)
chr (Num. Licenciamento em byte alto)
chr (Num.Pratos)
chr (byte baixo da tabela)
chr (Mesa High Byte)
if (Protocolo Ativo <2)
(
memcpy (BackMessage [BackMessageWrite & 0xff]. mensagem +8, & AuxData, 1);
memcpy (BackMessage [BackMessageWrite & 0xff]. mensagem +9, & MsgCt, 1);
)
if (Protocolo Ativo == 2)
(
memcpy (BackMessage [BackMessageWrite & 0xff]. mensagem +8, & AuxData, 2);
memcpy (BackMessage [BackMessageWrite & 0xff]. +10 mensagem, & Lugar1, 2);
memcpy (BackMessage [BackMessageWrite & 0xff]. +12 mensagem, & Lugar2, 2);
memcpy (BackMessage [BackMessageWrite & 0xff]. +14 mensagem, & MsgCt, 1);
)
if (Protocolo Ativo == 3)
(
memcpy (BackMessage [BackMessageWrite & 0xff]. mensagem +8, & AuxData, 2);
memcpy (BackMessage [BackMessageWrite & 0xff]. +10 mensagem, & tabela, 4);
memcpy (BackMessage [BackMessageWrite & 0xff]. +14 mensagem, & tabela, 4);
memcpy (BackMessage [BackMessageWrite & 0xff]. +18 mensagem, & Lugar1, 4);
memcpy (BackMessage [BackMessageWrite & 0xff]. +22 mensagem, & Lugar2, 4);
memcpy (BackMessage [BackMessageWrite & 0xff]. +26 mensagem, & MsgCt, 1);
)
if (Protocolo Ativo == 4)
(
memcpy (BackMessage [BackMessageWrite & 0xff]. mensagem +8, & AuxData, 2);
memcpy (BackMessage [BackMessageWrite & 0xff]. +10 mensagem, & tabela, 4);
memcpy (BackMessage [BackMessageWrite & 0xff]. +14 mensagem, & tabela, 4);
memcpy (BackMessage [BackMessageWrite & 0xff]. +18 mensagem, & Lugar1, 4);
memcpy (BackMessage [BackMessageWrite & 0xff]. +22 mensagem, & Lugar2, 4);
memcpy (BackMessage [BackMessageWrite & 0xff]. +26 mensagem, & MsgCt, 1);
memcpy (BackMessage [BackMessageWrite & 0xff]. +27 mensagem, st_mesa1, 13);
memcpy (BackMessage [BackMessageWrite & 0xff]. +40 mensagem, st_mesa2, 13);
)
para N = 1 para Placas de Número
chr (Prato Low Byte)
chr (Prato High Byte)
chr (Qt Low Byte)
chr (Qt High Byte)
próximo
Conexão direta sem DLL versão 6
Instalação:
Conecte a base ao PC usando a porta serial.
Comunique-se com a base “19200, N, 8,2”
Base:
Depois de conectado, ele inicializa no modo de recepção.
Para sair do modo de recepção basta enviar um caractere por RS232.
Entre no “Menu”
Sempre que a base entra no modo Menu, envia “Menu” para o PC
Configuração do banco de dados:
Enviar via RS232:
Chr (‘-‘)+ Chr (‘-‘)+ Chr (‘>’) (Bytes de sincronização)
Chr (1)
Entre no modo Upload
Loop1
chr (Num. bloquear o plano Low byte)
chr (Num. bloquear o plano High byte)
chr (Num. Licenciamento em Low byte)
chr (Num. Licenciamento em High byte)
16 Bytes (texto) (Apenas os primeiros 13 são visíveis)
PARAR
Para sair do modo, Upload Chr (2) deve ser enviado
em qualquer posição do texto.
Loop GOTO1
Chr (2)
Entre no modo de recepção
Chr (3)
Envie uma mensagem
chr (Num. Comando para enviar mensagem Low Byte)
chr (Num. Comando para enviar mensagem High Byte)
chr (Num. Licenciamento Low byte)
chr (Num. Licenciamento High byte)
32 Bytes (Texto da mensagem)
O banco de dados entra automaticamente na recepção, recebendo
confirmação da mensagem.
Chr (1) MENSAGEM ESPECIAL (1º caractere do texto da mensagem)
Chr (3)
Conf. Hardware para Chr (
+1 Luz (bit 0)
+2 Receptor (bit 1)
+4 Chamadas N. Pessoas (2 bits)
+8 Reset não (não atualiza os blocos reservados)
+16 Solicita Visa Cash ATM
+32 Imprimir (S / N)
+64 Solicita resíduos (S/N)
+128 0-Cancelamento parcial, 1 total-Cancelamento
)
Chr (6)
Entre em Download
+ Lixo para completar os 32 bytes
—
O banco de dados entra automaticamente na recepção, recebendo
confirmação da configuração.
Chr (4)
Enviar detalhes de uma tabela
chr (comando Num. para configurar Low Byte)
chr (Comando Num. para configurar High Byte)
chr (Num. Licenciamento Low byte)
chr (Num. Licenciamento High byte)
chr (Num.Pratos)
chr (Table Low byte)
chr (Table High byte)
chr (Num. Pessoas)
para N = 1 para Placas de Número
chr (DishLow Byte)
chr (Dish High Byte)
chr (Qt Low Byte)
chr (Qt High Byte)
próximo
Chr (8)
Limite de upload
Formato de 8 bytes:
Byte baixo (Licença de limite inferior)
High Byte (Licença de limite inferior)
Byte baixo (Licença de limite superior)
Byte alto (Licença de limite superior)
Byte baixo (comando de limite inferior N.)
Byte alto (comando de limite inferior N.)
Byte baixo (limite superior N. Comando)
Byte alto (limite superior N. Comando)
O banco de dados entra automaticamente na recepção
RS232 receber por:
Chr (®) + Chr (®)
Chr (Função)
P Solicitar Número de Pessoas
A Sair
S Tipo de pagamento subtotal
C Bill + Tipo de Pagamento Fatura (S/N)
T Transferir Mesa2
G pag_parc
D desconto% Desconto
Uma resposta à mensagem de confirmação.
Chr (Num Command Low Byte)
Chr (Num Command High Byte)
Chr (Byte baixo do número de licença)
Chr (Byte alto do número de licença)
Chr (Num Message Low Byte)
Chr (Num Message High Byte)
Chr (Byte baixo de placas numéricas)
Chr (Byte alto das placas numéricas)
Chr (Num Table Low Byte)
Chr (Num Mesa High Byte)
Chr (Ajudando Low Byte)
Chr (Byte alto do assistente)
Para n = 1 para Num.Pratos
Chr (Prato Low Byte)
Chr (Prato High Byte)
Chr (Número Baixo Byte)
Chr (Número de byte alto)
próximo
Importante
Quando um comando envia uma mensagem para uma base, caso o comando não receba a confirmação da base, o comando reenvia automaticamente a solicitação.
A outra forma é um pouco mais complicada.
1.O comando só aceita mensagens em segundos após ter enviado um pedido
2.Se o comando receber uma mensagem ele enviará para a base uma confirmação (Função ‘R’)
3.Se o comando não receber a mensagem nada acontece. Isso significa que, se o programa de PC não estiver recebendo uma confirmação para cada mensagem, ele deverá repetir a transmissão em intervalos razoáveis.
4.Tenha em mente que o ambiente não deve estar saturado com o processo de envio constante.
A DLL foi programada usando uma linguagem de 32 bits. Portanto, todos os argumentos do tipo int devem ser considerados inteiros de 32 bits. Linguagens que usam inteiros de 16 bits devem prototipar as funções usando long int em vez de int.
Todas as funções descritas, sempre retornam um código de erro inteiro.
0 -> OK, operação bem sucedida
1 -> NO_MESSAGE, não há mensagens para ler do buffer)
2 -> INVALID_COM_PORT, porta serial não existe ou está sendo usada por outro programa
3 -> GENERIC_ERROR, erro genérico
4 -> NO_RESPONSE a DLL não recebeu resposta da antena
int __stdcall radio_init (int com_no, first_terminal int, int last_terminal, license_no int, int protocolo_dados)
Descrição:
Esta Função atualiza a imagem que a DLL tem na memória do terminal rádio apenas para uma única posição. Esta atualização deve ser feita para todas as posições que serão enviadas através da função radio_upload_entries. (Veja abaixo)
Função:
int radio_set_entry(
int entry_no,
char far *name);
Parâmetros:
entry_no: Posição a ser atualizada
name: Texto a ser salvo nessa posição. Isso pode ter até 16 caracteres.
Mapa de posições:
0
OK
operação bem sucedida
1
NO_MESSAGE
Não há mensagens para serem lidas do buffer
2
INVALID_COM_PORT
A porta serial não existe ou está sendo usada por outro programa
3
GENERIC_ERROR
erro genérico
4
NO_RESPONSE
a DLL não obteve resposta da antena
int __stdcall radio_set_entry( int entry_no, char *name)
Descrição :
Esta função atualiza a imagem que a DLL tem na memória do terminal de rádio apenas para uma única posição. Esta atualização deve ser feita para todas as posições que serão enviadas utilizando a função radio_upload_entries. (Veja abaixo)
Função:
int radio_set_entry(
int entry_no,
char far *name);
Parâmetros:
entry_no: Posição a ser atualizada
name: Texto a ser salvo nessa posição. Isso pode ter até 16 caracteres.
Mapa de posições:
0 a 9
Reservado
11 a 13
Não usado
14
“tabela”
15
“Quantidade Prato”
16
“Enviando”
17
Não usado
18
Não usado
19
“Nº de pessoas” ou “lugar”
20
“Outro”
21 a 27
Nome das funções “outro”
28 a 29
“Reservados”
30
Métodos de Pagamento
31
“Imprimir s/n”
32
Pronto “?” ( por padrão )
33 a 3071
Descrição dos artigos de 1 a 3039
3072
1 – Encomenda
3073
2 – Cancelamento
3074
3 – Subtotal
3075
4 – Conta
3076
5 – Transações
3077
6 – Pagamento Parcial
3078
7 – Outros
3079
8 – Desconto
9
9 – Configuração
3080
1 – Comando
3081
2 – Licença
3082
3 – Config.A
3083
4 – Config.B
3084
5 – Config.C
3085
6 – Receber PLUs
3086
7 – Apagar PLUs
10
8 – Enviar PLUs+C
3087
Sair [Enter]
3088
Matriz de páginas
(tipo de)
bytes 0 a 15
(…)
(…)
3103
bytes 240 a 255
3104
Matriz de páginas
(apontador para )
inteiro de 32 bits 0 a 3
(…)
(…)
3167
inteiro de 32 bits 252 a 255
3168
Indexe nenhuma matriz de páginas para cada artigo
bytes 0 a 15
(…)
(..)
3358
bytes 1024 a 1039
3999
4 bytes c/ o nº de descritivos a receber
int __stdcall radio_upload_entry(int first_entry,int last_entry)
Descrição :
Esta função envia todas as entradas (anteriormente introduzidas com radio_set_entry) para os terminais de rádio. Para que os terminais recebam, é necessário fazer previamente 96195 6 quando o terminal estiver no menu principal, para que o terminal entre em modo download. Como alternativa, você pode colocar o terminal em modo download enviando uma mensagem.
Esta função não possui correção de erros. Pode acontecer que um terminal todas as entradas (dados inseridos). para evitar esta situação, você pode enviar 2 vezes a mensagem.
Função:
int radio_upload_entries(
int first_entry,
int last_entry);
Parâmetros:
*
o
+ first_entry: Primeira entrada a ser enviada
last_entry: Última entrada a ser enviada. Para enviar todas as entradas alteradas você deve fazer first_entry = 10 e last_entry = 3079.
int __stdcall radio_init(int com_no,int first_terminal,int last_terminal,int license_no,int protocolo_dados)
Descrição :
Esta função inicializa a antena, detectando automaticamente a versão e colocando-a em modo de recepção para pedidos. Essa inicialização leva cerca de 1 segundo.
Função:
int radio_init(
int com_no,
int first_terminal,
int last_terminal,
int license_no,
int protocolo_dados);
Parâmetros:
com_no: Número da porta COM à qual a antena está conectada
(ou seja, 1 a COM1)
first_terminal:primeiro terminal de rádio que esta antena deve aceitar como válido. Os terminais só deixarão de enviar uma mensagem ao receber uma confirmação da antena. A antena apenas confirma as mensagens que têm o mesmo número de licença do hardware (consulte license_no abaixo) e que possuem um número de terminal first_terminal e last_terminal inclusive.
last_terminal: Último terminal de rádio que a antena deve aceitar como válido (veja first_terminal)
last_terminal: Último terminal de rádio que a antena deve aceitar como válido (veja first_terminal)
license_no: Número da licença de hardware (programada nos terminais) que a antena deve aceitar como válida. Este valor serve para permitir que estabelecimentos vizinhos que utilizem o mesmo sistema de terminais de rádio possam utilizar um número de licença diferente, evitando conflitos entre mensagens.
protocolo_dados: Antena Versão 1 a 5 deve usar valor 1, Antena versão 6 ou superior pode usar 2 dentro deste parâmetro. Permite o recebimento de mais alguns campos.
Antenas versão 7 (beep 4 vezes no início) , podem usar o protocolo 3. Com este protocolo o número da mesa e o número do local passam a vir em 32 bits.
int __stdcall radio_close()
Descrição :
Esta função libera a porta serial e devolve a antena ao modo padrão para que não receba mais transmissões provenientes de terminais de rádio.
Função:
int radio_close( void );
PROTOCOLO_DADOS 1
int __stdcall radio_send_list(int terminal,int pratos, int mesa,int NumPessoas,char *lista)
Esta função envia uma mensagem para o terminal de rádio. O terminal depois de receber a mensagem entra em modo de edição. Após a edição, uma mensagem é enviada do terminal para o pc com type=’E’.
A lista é uma sequência de 4 bytes * número do prato. Equivale à lista recebida no momento do envio do pedido.
PROTOCOLO_DADOS 2
int __stdcall radio_send_list2(int terminal,int pratos, int mesa,int AuxData,int Lugar1,int Lugar2,char *lista)
sua função envia uma mensagem para o terminal de rádio. O terminal depois de receber a mensagem entra em modo de edição. Após a edição, uma mensagem é enviada do terminal para o pc com type=’E’.
A lista é uma sequência de 4 bytes * número do prato. Equivale à lista recebida no momento do envio do pedido.
PROTOCOLO_DADOS 3
int __stdcall radio_send_list3(int terminal,int pratos, int mesa,int AuxData,int Lugar1,int Lugar2,int *plus,int *qtds)
Esta função envia uma mensagem para o terminal de rádio. O terminal depois de receber a mensagem entra em modo de edição. Após a edição, uma mensagem é enviada do terminal para o pc com type=’E’.
Plus e Qty apontam para um array de inteiros de 32 bits.
PROTOCOLO_DADOS 4
int __stdcall radio_send_list4(int terminal,int pratos, int mesa,int AuxData,int Lugar1,int Lugar2,int *plus,int *qtds,unsigned char *mesa1,unsigned char *mesa2)
Esta função só deve ser utilizada se você quiser ter o campo ‘tabela’ com mais de 8 dígitos.
Esta função envia uma mensagem para o terminal de rádio. O terminal depois de receber a mensagem entra em modo de edição. Após a edição, uma mensagem é enviada do terminal para o pc com type=’E’.
Plus e Qty apontam para um array de inteiros de 32 bits..
mesa1 aponta para uma string de 13 bytes.
mesa2 aponta para uma string de 13 bytes.
int __stdcall radio_send_message(int terminal,char *msg)
Descrição :
Esta função envia uma mensagem para o terminal de rádio. A mensagem não deve ocupar mais de 32 caracteres e deve ser totalmente composta por caracteres internacionais. Observe que o terminal rádio só receberá a mensagem se estiver no menu principal, de modo que o processo de envio da mensagem só poderá ser realizado pelo usuário do terminal.
A DLL garantirá que as mensagens não confirmadas não reenviadas para o terminal sejam de fato reenviadas. Isso é feito a cada 5 segundos (aproximadamente). Se o terminal não receber uma mensagem em 30 segundos, a DLL a ignorará. As mensagens são tratadas por ordem de chegada (FIFO). Você pode descobrir se a mensagem foi enviada ou não usando a função radio_send_message_get_status.
Parâmetros:
terminal: Número do terminal para o qual a mensagem deve ser enviada.
msg: ponteiro para o endereço para onde a mensagem está sendo enviada. (Muitas linguagens fazem a conversão automática de string para este ponteiro)
int __stdcall radio_send_big_message_auto_run_menu(int terminal,char *msg , int menuoption)
Descrição :
Esta função envia uma mensagem para o terminal de rádio. A mensagem não deve ocupar mais de 64 caracteres e deve ser totalmente composta por caracteres internacionais. Observe que o terminal rádio só receberá a mensagem se estiver no menu principal, de modo que o processo de envio da mensagem só poderá ser realizado pelo usuário do terminal. Uma vez recebida a mensagem, o terminal deve ir diretamente para o menu ‘menuoption’.
A DLL fará com que as máquinas de slots garantam que as mensagens não confirmadas não reenviadas ao terminal serão de fato reenviadas. Isso é feito a cada 5 segundos (aproximadamente). Se o terminal não receber uma mensagem em 30 segundos, a DLL a ignorará. As mensagens são tratadas por ordem de chegada (FIFO). Você pode descobrir se a mensagem foi enviada ou não usando a função radio_send_message_get_status.
Parâmetros:
terminal: Número do terminal para o qual a mensagem deve ser enviada.
msg: ponteiro para o endereço para onde a mensagem está sendo enviada. (Muitos idiomas fazem a conversão automática
de string para este ponteiro)
menuoption: Menu que o terminal mostrará uma vez recebida a mensagem.
int __stdcall radio_send_big_message(int terminal,char *msg )
Descrição :
Esta função envia uma mensagem para o terminal de rádio. A mensagem não deve ocupar mais de 64 caracteres e deve ser totalmente composta por caracteres internacionais. Observe que o terminal rádio só receberá a mensagem se estiver no menu principal, de modo que o processo de envio da mensagem só poderá ser realizado pelo usuário do terminal.
A DLL garantirá que as mensagens não confirmadas não reenviadas para o terminal sejam de fato reenviadas. Isso é feito a cada 5 segundos (aproximadamente). Se o terminal não receber uma mensagem em 30 segundos, a DLL a ignorará. As mensagens são tratadas por ordem de chegada (FIFO). Você pode descobrir se a mensagem foi enviada ou não usando a função radio_send_message_get_status.
Parâmetros:
terminal: Número do terminal para o qual a mensagem deve ser enviada.
msg: ponteiro para o endereço para onde a mensagem está sendo enviada. (Muitas linguagens fazem a conversão automática de string para este ponteiro)
int __stdcall radio_send_message_auto_run_menu(int terminal,char *msg, int menuoption)
Descrição :
Esta função envia uma mensagem para o terminal de rádio. A mensagem não deve ocupar mais de 32 caracteres e deve ser totalmente composta por caracteres internacionais. Observe que o terminal rádio só receberá a mensagem se estiver no menu principal, de modo que o processo de envio da mensagem só poderá ser realizado pelo usuário do terminal. Uma vez recebida a mensagem, o terminal deve ir diretamente para o menu ‘menuoption’.
A DLL garantirá que as mensagens não confirmadas não reenviadas para o terminal sejam de fato reenviadas. Isso é feito a cada 5 segundos (aproximadamente). Se o terminal não receber uma mensagem em 30 segundos, a DLL a ignorará. As mensagens são tratadas por ordem de chegada (FIFO). Você pode descobrir se a mensagem foi enviada ou não usando a função radio_send_message_get_status.
Parâmetros:
terminal: Número do terminal para o qual a mensagem deve ser enviada.
msg: ponteiro para o endereço para onde a mensagem está sendo enviada. (Muitas linguagens fazem a conversão automática de string para este ponteiro)
menuoption: Menu exibido no terminal uma vez recebida a mensagem.
int __stdcall radio_message_upload_plus(int terminal)
Esta função envia uma mensagem ao terminal e então o terminal espera receber o PLUS.
int __stdcall radio_message_clear_upload_plus(int terminal)
Equivalente à função acima, mas além disso, esta também limpa todos os PLUS.
int __stdcall radio_message_hardware_A(int terminal,int valor)
Esta função envia uma mensagem e configura a opção A do terminal com seu valor.
+1 Luz (bit 0)
+2 Receptor (bit 1)
+4 Pergunte por Pessoas (bit 2)
+8 Não Reinicia (Não atualiza os blocos reservados)
+16 Pedir dinheiro Visa ou ATM
+32 Imprimir (S/N)
+64 Pedir resíduos (S/N)
+128 0-Cancelamento Parcial; 1- Cancelamento Completo
int __stdcall radio_message_hardware_B(int terminal,int valor)
Esta função envia uma mensagem e configura a opção B do terminal com seu valor.
+ Número de pontos de acesso 0 Padrão
+8 Não protege o teclado
+16 Não permite edição direta do plus
+32 Quantidades padrão 0
+64 Envia mensagem sempre que está ativo
+128 pede lugar
int __stdcall radio_message_hardware_C(int terminal,int valor)
Esta função envia uma mensagem e configura a opção C do terminal com seu valor.
+1- ao pedir conta pergunta também o local?
+2- Tamanho da fonte grande
+4- 8 dígitos na tabela com leitura de código de barras
+8- 8 dígitos no local com leitura de bacode
+16- Permite que antenas com software recente (setembro de 2002) não tenham um número limite de pedido
+32- Verifica automaticamente se o valor do pagamento e o valor do tipo de fatura correspondem aos valores do texto de descrição ou seja 1-dinheiro 2-visto –> só aceita 0, 1 ou 2
int __stdcall radio_message_hardware_ABC(int terminal,int valorA,int valorB,int ValorC)
Esta função envia uma mensagem e configura a opção A,B e C do terminal com seu valor.
int __stdcall radio_message_hardware_ABCDEF(int terminal,int valor1,int valor2,int valor3,int valor4,int valor5,int valor6)
Esta função envia uma mensagem e configura a opção A,B,C,D,E e F do terminal com seu valor.
int __stdcall radio_get_send_status(int msg_number)
Este recurso permite verificar se uma mensagem chegou a um terminal (a DLL ainda está tentando por cerca de uma hora caso o terminal esteja desligado ou caso não haja cobertura)
Devoluções:
0 se a mensagem foi recebida
1 se a DLL ainda estiver tentando enviar a mensagem
2 se o envio falhou (após uma hora tentando)
Parâmetros:
msg_number: Valor retornado pela função radio_send_message, radio_send_lista, radio_message_upload_plus ou radio_message_clear_upload_plus
int __stdcall radio_recv3(int *Funcao,int *Terminal, int *Licenca,int *MsgNumber,int *Pratos,int *Mesa1,int *Mesa2, int *AuxData,int *lugar1,int *lugar2,int *plus,int * qtds)
Descrição:
ATENÇÃO, só pode ser usado com o protocolo_dados 3 ativo
Esta função verifica se existe alguma mensagem enviada por um terminal no buffer de entrada para ser lida pelo programa. Se houver alguma mensagem a função faz uma cópia desta e envia para as variáveis passadas como parâmetros.
Esta função é equivalente a um radio_recv , mas é mais fácil de usar.
int *plus é um ponteiro para um array de inteiros de 32 bits.
int *qtds é um ponteiro para um array de inteiros de 32 bits.
int __stdcall radio_recv4(int *Funcao,int *terminal,int *licenca,int *msg_number,int *pratos,int *mesa1,int *mesa2,int *AuxData,int *lugar1,int *lugar2,int *plus,int * qtds, caractere não assinado *st_mesa1, caractere não assinado *st_mesa2)
Descrição :
ATENÇÃO, só pode ser usado com o protocolo_dados 4 ativo
Função idêntica a radio_recv3, mas permite receber 13 bytes do campo mesa1 e mesa2.
Deve ser utilizado quando for necessário utilizar o campo mesa para leitura de códigos de barras com 13 dígitos.
int __stdcall radio_recv5(int *Funcao,int *terminal,int *licenca,int *msg_number,int *pratos,int *mesa1,int *mesa2,int *AuxData,int *lugar1,int *lugar2,int *plus,int * qtds, caractere não assinado *st_mesa1, caractere não assinado *st_mesa2)
Descrição :
ATENÇÃO, só pode ser usado com o protocolo_dados 4 ativo
Esta Função é idêntica a radio_recv4, mas ao receber números decimais, ela retorna uma quantidade em negativo multiplicado por 1000. Exemplo 0.1, retornará a quantidade de -100.
int __stdcall radio_recv(char *msg)
Descrição :
Esta função verifica se há alguma mensagem enviada por um terminal no buffer, que precise ser lida pelo programa. Se houver alguma mensagem, a função faz uma cópia desta mensagem para msg e retorna ok.
Função:
int radio_recv(
caractere * msg);
Parâmetros:
msg: Ponteiro para o endereço onde a mensagem recebida deve ser colocada
PROTOCOLO_DADOS 1
0
1
2
3
4
5
6
7
8
9
10
11
12
Tipo
terminal
Licença
Nº de pedido
Pratos
Mesa
Auxiliar
1º Artigo
1º Qtd.
2º artigo
2º Qtd.
3º…
3º…
1B
2B
2B
2B
2B
2B
2B
2B
2B
2B
2B
2B
2B
PROTOCOLO_DADOS 2
0
1
2
3
4
5
6
7
8
9
10
11
12
Tipo
terminal
Licença
Nº de pedido
Pratos
Mesa
Auxiliar
Lugar 1
Lugar 2
1ª Artigo
1º Qtd.
2º…
2º…
1B
2B
2B
2B
2B
2B
2B
2B
2B
2B
2B
2B
2B
PROTOCOLO_DADOS 3
0
1
2
3
4
5
6
7
8
9
10
11
12
Tipo
terminal
Licença
Nº de pedido
Pratos
Mesa
Auxiliar
Lugar 1
Lugar 2
tabela 1
mesa 2
1º Artigo
1º Qtd.
1B
2B
2B
2B
2B
2B
2B
4B
4B
4B
4B
2B
2B
As funções a seguir criam as posições do mapa de uma associação entre o plus e seus complementos. Esta informação só é enviada ao terminal quando ele chama a função radio_upload_entry.
int __stdcall radio_set_modifier_start( int first_modifier_number)
Descrição:
Indica a primeira posição do ‘mapa de posições’ onde a Dll automaticamente colocará os complementos.
int __stdcall radio_set_modifier_name( char *modifier_name)
Descrição:
Nome da lista de componentes na qual inseriremos a seguir. Exemplo “tipo de café”, seguido do “curto” e “cheio”.
int __stdcall radio_set_modifier_entry(char *nome)
Descrição:
Esta função deve ser usada para inserir todos os itens desta lista de componentes.
int __stdcall radio_set_modifier_end()
Descrição:
Use esta função para encerrar a inserção de componentes.
int __stdcall radio_set_entry_with_modifier( int entry_no, char *name,char *modifier_name,int modifier_type)
Descrição:
A associação entre o plus e seus suplementos é feita com esta função. Para o mesmo Plu ao qual você deseja associar as várias listas de complementos, você deve chamar esta função várias vezes.
Este recurso também introduz o Plu no mapa de posições, evitando assim chamar a função: radio_set_entry.
Exemplo:
radio_set_entry_with_modifier 850 + 32, “CAFÉ”, “Temperatura da Xícara”, 1
radio_set_entry_with_modifier 850 + 32, “CAFÉ”, “Tipo de café”, 1
Parâmetros:
entry_no:Posição a ser utilizada
name:Texto a ser salvo nessa posição. Isso pode ter até 16 caracteres.
modifier_name: Nome de uma das páginas de complementos que podem ser usadas com este plu.
modifier_type:
1 – Só pode escolher um completo desta página 5 – Vários complementos podem ser escolhidos nesta página 129 – Apenas um complemento pode ser escolhido nesta página (automático)
133 – Vários complementos podem ser escolhidos nesta página (automático)
Exemplo em VB:
radio_set_modifier_start 2000
radio_set_modifier_name “tipo de café”
radio_set_modifier_entry “completo”
radio_set_modifier_entry “curto”
radio_set_modifier_name “Temperatura da xícara”
radio_set_modifier_entry “Copo frio”
radio_set_modifier_entry “Copo quente”
radio_set_modifier_entry “Copo quente”
radio_set_modifier_end
radio_set_entry_with_modifier 850 + 32, “CAFÉ”, “Temperatura da xícara”, 1
radio_set_entry_with_modifier 850 + 32, “CAFÉ”, “Tipo de café”, 1
radio_set_entry_with_modifier 800 + 32, “CEVADA”, “Temperatura da xícara”, 5
radio_set_entry_with_modifier 801 + 32, “LEITE”, “Temperatura da xícara”, 5
radio_set_entry_with_modifier 860 + 32, “COKE”, “Temperatura do copo”, 5
radio_set_entry_with_modifier 860 + 32, “COQUE”, “Tipo de café”, 5
Funções de Introdução na Árvore
Funções de Introdução na Árvore
Com estas funções é possível criar com simplicidade uma estrutura de famílias, sub-famílias, complementos e assim por diante.
Este sistema traz a vantagem de não ter que memorizar códigos.
No terminal, a opção G, ‘Arvore PLUS’ ( Valor 1 ) deve estar ativa. Válido nas versões >= 7.9370.
As funções são as seguintes:
VB
‘Árvore
Função de declaração pública radio_make_tree_mkdir Lib “RioCom” (ByVal directory_name As String) As Long ‘ Opcional
Função de declaração pública radio_make_tree_cd_back Lib “RioCom” () enquanto
Função de declaração pública radio_make_tree_entry Lib “RioCom” (ByVal entry_number As Long, ByVal entry_name As String) As Long
entry_number: valor do plu que a dll deve retornar se este plu for escolhido.
entry_name: Nome do plu.
Retorna: Indicando o valor do código com o qual este plu vai ficar no terminal.
Função de declaração pública radio_make_tree_cd Lib “RioCom” (ByVal directory_name As String) As Long
Função de declaração pública radio_upload_tree Lib “RioCom” () enquanto
Envie todos os Plus para o terminal.
Public Declare Function radio_upload_tree2 Lib “RioCom” (Byval Configurações As String,ByVal NumParametros As Long,ByVal RearrangeTree as Long) As Long
Envie todos os Plus para o terminal.
As configurações são uma string que permite configurar diretamente o terminal.
Configuração 1 = Opção A
Configuração 2 = Opção B
Configuração 3 = Opção C
etc…
NumParametros: Tamanho em bytes das configurações.
RearrangeTree: 1(habilita) ou 0(desabilita), permite configurar o comportamento da árvore em situações de galho com mais de 8 itens.
Se 1, a dll cria automaticamente uma nova sub-ramificação de forma que nunca haja uma ramificação com mais de 8 itens.
‘ Modificadores de árvore
Função de declaração pública radio_make_tree_modifier_entry Lib “RioCom” (ByVal entry_number As Long, ByVal name As String) As Long
entry_number: valor do plu que a dll deve retornar se este plu for escolhido.
entry_name: Nome do plu.
Retorna: Indicando o valor do código com o qual este plu vai ficar no terminal.
Função de declaração pública radio_make_tree_modifier Lib “RioCom” (ByVal group_name As String
Para criar o plus do exemplo acima, você deve usar este código aqui.
código.
radio_make_tree_mkdir “Café” ‘ Opcional
radio_make_tree_cd “Café”
radio_make_tree_entry 1, “Café”
radio_make_tree_modifier “Temperatura da Taça”, Falso, Falso
radio_make_tree_modifier “Tipo de Café”, Falso, Falso
radio_make_tree_entry 2, “Chá”
radio_make_tree_modifier “Temperatura da Taça”, Verdadeiro, Verdadeiro
radio_make_tree_entry 8, “Água”
radio_make_tree_entry 9, “Torrada”
radio_make_tree_entry 10, “Torrada Mista”
radio_make_tree_entry 11, “Sanduíche de Queijo”
radio_make_tree_entry 12, “Sanduíche Misto”
radio_make_tree_entry 13, “Pão c/ queijo”
‘ Se o número de elementos > 8 Árvore será reconstruída automaticamente
‘ radio_make_tree_entry 14, “Pão com manteiga”
‘ radio_make_tree_entry 15, “Pão Simples”
radio_make_tree_cd_back
radio_make_tree_cd “Sorvete”
radio_make_tree_mkdir “Copa” ‘ Opcional
radio_make_tree_mkdir “Bowl” ‘ Opcional
radio_make_tree_cd “Vidro”
radio_make_tree_entry 3, “2 colheres”
radio_make_tree_entry 4, “3 colheres”
radio_make_tree_cd_back
radio_make_tree_cd “tigela”
radio_make_tree_entry 5, “Chocolate”
radio_make_tree_entry 6, “Baunilha”
radio_make_tree_cd_back
radio_make_tree_cd_back
radio_make_tree_mkdir “Outro”
radio_make_tree_cd “Outro”
radio_make_tree_entry 7, “Tabaco”
radio_make_tree_cd_back
radio_make_tree_mkdir “Compl.”
radio_make_tree_cd “Compl.”
radio_make_tree_mkdir “Tipo de Café”
radio_make_tree_cd “Tipo de Café”
radio_make_tree_modifier_entry 500, “Completo”
radio_make_tree_modifier_entry 501, “Curto”
radio_make_tree_cd_back
radio_make_tree_mkdir “Temperatura da Taça”
radio_make_tree_cd “Temperatura da Taça”
radio_make_tree_modifier_entry 600, “Copo Frio”
radio_make_tree_modifier_entry 601, “Copo Quente”
radio_make_tree_modifier_entry 602, “Copo Quente”
radio_make_tree_cd_back