Grupo Vasilhame Devolução Desconto Tratamento Vasilhame Local sem Servidor
Grupo Vasilhame Devolução Desconto e Tratamento Vasilhame
Local Sem Servidor
Tecnologia aplicada para aprimoramento do Sistema Emporium
1. Introdução Processo de implementação de funcionalidade vasilhame_grupo de vasilhame (Devolução x Desconto) com tratamento local ou centralizado. O Guia do Usuário tem como objetivo orientá-lo a atuar na frente de loja, para configurar o sistema de forma correta.
2.Resumo
2.1 Cupom de vasilhame / GRUPOS VASILHAMES
Foi desenvolvido o GRUPO DE VASILHAME onde podemos definir vários itens ao mesmo grupo, proporcionando ao cliente comprar qualquer produto do mesmo grupo de vasilhame.
Ex: Grupo Cerveja = SKOL, BRAHMA e BOHEMIA.
Pode-se definir se o cupom de vasilhame será consultado durante a venda, para que seja concedido o desconto automaticamente em cada item.
2.2 Cupom de venda
Foi desenvolvido uma opção para definir se será concedido DESCONTO ou PAGAMENTO no vasilhame.
No cupom de venda, foi desenvolvido a opção de vender 2 itens (Ex: Coca e Vasilhame da Coca Cola) ou apenas 1 item (Coca Cola).
Se vendermos produtos associados que não estiverem no Vale Vasilhame, os mesmos não terão desconto e deverão ser pagos em qualquer finalizadora.
O cupom de vasilhame, somente poderá ser utilizado para produtos do mesmo GRUPO DE VASILHAME. Ex: Entregar cerveja Skol e comprar Brahma.
É possível a entrada de vários cupons de vasilhame na mesma venda.
O Contravale de vasilhame será gerado como “Extra ticket” e com um novo número de devolução listando quantidade e itens, sendo descartado o cupom original.
A utilização do contravale é válida por até 7 dias.
Para a opção de DESCONTO: Será concedido o desconto no encerramento do cupom com referência ao Item que tenha “PLU” associada.
Campanha: Os produtos com “PLU” associada não poderão participar de campanhas, pois não é possível conceder 2 descontos no mesmo item.
3. Tratamento (Centralizado ou Local)
3.1 Opção 1 Centralizado = Servidor gera e controla o número da devolução
OBS.:É necessário que o Servidor esteja on line, caso contrário, no PDV aparecerá a mensagem:
Servidor sem acesso / Erro de Comunicação 3
Neste caso o número de devolução do cupom de vasilhame não será descartada, e para darmos continuidade a venda, usaremos a Função 222 (desconto por motivo – vasilhame offline)
3.2 Opção 2 Local = PDV gera e controla o número da devolução
O PDV administrador de vasilhame, gera o número da devolução sem a necessidade que o servidor esteja on line, depois esta informação será enviada ao servidor. O Número da devolução gerada no PDV é sequencial por loja, e no servidor este número é sequencial para a rede toda, consequentemente os números serão diferentes na tela de vasilhame, e quem faz este controle é o process.xml
4. Parametrização no Moderator
4.1 Layout para importação – vasilhame:
Exemplo do layout campos 47 e 48?
4.2 Tema com tela de vasilhame Criar no SCREEN.xml o layout 35 (DEVOLUCAO.ppm) definidos nas funções 425 e 426
5. Criar GRUPO DE VASILHAME
5.1 No servidor
Em PLU/tabela auxiliar/grupo de vasilhame, criar os GRUPOS Ex: Ex: Ambev, Coca Cola, cerveja etc.
Em PLU/tabela auxiliar/itens por grupo, associar ITENS aos GRUPOS DE VASILHAMES. Esta opção permiti a venda de produtos do mesmo grupo.
Ex 1: Se associarmos APENAS 1 Item, não permitiremos a venda de outro produto que não seja do vasilhame correspondente.
Ex 2: Se associarmos VÁRIOS ITENS, permitiremos a venda de qualquer produto pertencente ao grupo de vasilhame correspondente. Ex: grupo cerveja = SKOL, BRAHMA e BOHEMIA.
5.2 Enviar carga de PLU complementar
Ex: de xml PLU_AUX.xml
5.3 Cadastramento dos produtos com PLU associada:
Cadastro dos produtos associados: cadastrar o vasilhame Coca Cola (EX: Cód. 50) com a FLAG é PLU associada ligada
Cadastro da Coca Cola (Ex: cód. 7894900701609)
(a) Colocar no campo PLU associada o cód. do vasilhame: Ex: 50
(b) Definir como o produto será vendido no cupom com 1 item ou com 2 itens:
Para vender 2 itens (Coca cola e Vasilhame) marcar a flag VENDE PLU ASSOCIADA.
Para vender 1 Item (Coca cola) NÃO marcar a flag VENDE PLU ASSOCIADA
6. Parametrização de PDV
6.1 Funções: em /var/venditor/PRM, no arquivo CMD.xml, incluir as funções abaixo:
Função 425 Devolução de Vasilhame - Grupo Promocional
<source lang="xml" line="1">
(a) Opção 39= Devolver PLU Associada = Quando na devolução escanearmos a garrafa, será impresso o código do vasilhame (casco).
<OPTION hide_label='yes'>
<ID read_only='yes' hidden='yes'>39</ID> <VALUE options='YES_NO_OPTIONS'>1</VALUE> <TEXT read_only='yes'>Devolver PLU Associada ao Identificar Item</TEXT>
</OPTION>
</source>
<source lang="xml" line="1">
(b) Opção 11= Transação Global = 425 23035 -
<OPTION hide_label='yes'>
<ID read_only='yes' hidden='yes'>11</ID> <VALUE options='YES_NO_OPTIONS'>425</VALUE> <TEXT read_only='yes'>Transacao Global</TEXT>
</OPTION>
</source>
<source lang="xml" line="1"> (c)Opção 15= Número transação = 55
<OPTION hide_label='yes'>
<ID read_only='yes' hidden='yes'>15</ID> <VALUE options='YES_NO_OPTIONS'>55</VALUE>devolucao de vasilhames <TEXT read_only='yes'>Tipo de Transacao</TEXT>
</OPTION>
</source>
(d) Aplicação permite multiplicar
(e) Aplicação permite digitar ou escanear o código da garrafa (EAN)
<source lang="xml" line="1"> (f)No Shell Command ID 14, definir o layout do cupom de vasilhame
Exemplo de cupom de vasilhame:
<SHELL_COMMAND>
<ID read_only='yes'>14</ID> <SHELL_COMMAND_USE read_only='yes'>Cabecalho</SHELL_COMMAND_USE> <SHELL_COMMAND_TEXT text_box='yes' lines='3' width='50'>
{NL} {HT} COMPROVANTE DE VASILHAME{NL} {HT} ______________________________ {NL} {NL} {}LOJA: {LOJA} {NL} {}OPERADOR{NL} {} Codigo: {OPERADOR_CODIGO}{NL} {} Nome: {OPERADOR_NOME}{NL} {NL}
</SHELL_COMMAND_TEXT>
</SHELL_COMMAND>
OBS: No Shell Comman 17 – Rodapé incluir a variável VOLUMES pois está errado o item.
Para definir que será vasilhame local: no Shell Comman 19 – Incluir IP do pdv ADM e porta 8603 Ex:192.168.2.59: 8603.
</source>
<source lang="xml" line="1"> (g) Exemplo da Função 425 – Geração de Cupom de Vasilhame
<CMD>
<ID read_only="yes">425</ID> <AUTHORIZATIONS width="3">0</AUTHORIZATIONS> <TYPE options="CMD_TYPE_OPTIONS">3</TYPE> <COMMAND width="4">67</COMMAND> <LAYOUT width="4">35</LAYOUT> <REFERENCE_TEXT read_only="yes">Devolucao Vasilhames – Grupo Vasilhame</REFERENCE_TEXT> <ALLOWED_STATES width="40"/> <TEXT width="40">Devolucao de Vasilhames</TEXT> <PROMPT width="30"/> <PROMPT_QUESTION width="4">0</PROMPT_QUESTION> <OPTION_LIST horizontal_list="yes" allow_insert="yes" hide_label="yes"> <OPTION hide_label="yes"> <ID read_only="yes" hidden="yes">2</ID> <VALUE width="6">3</VALUE>usar preco normal <TEXT read_only="yes">Opcao de Solicitar Preco</TEXT> </OPTION> <OPTION hide_label="yes"> <ID read_only="yes" hidden="yes">3</ID> <VALUE options="YES_NO_OPTIONS">0</VALUE> <TEXT read_only="yes">Imprimir Relatorio Resumido</TEXT> </OPTION> <OPTION hide_label="yes"> <ID read_only="yes" hidden="yes">5</ID> <VALUE options="YES_NO_OPTIONS">1</VALUE> <TEXT read_only="yes">Gerar Identificacao de Transacao</TEXT> </OPTION> <OPTION hide_label="yes"> <ID read_only="yes" hidden="yes">11</ID> <VALUE options="YES_NO_OPTIONS">425</VALUE> <TEXT read_only="yes">Transacao Global</TEXT> </OPTION> <OPTION hide_label="yes"> <ID read_only="yes" hidden="yes">15</ID> <VALUE options="YES_NO_OPTIONS">55</VALUE> Sale Type 55 Devolucao de vasilhames <TEXT read_only="yes">Tipo de Transacao</TEXT> </OPTION> <OPTION hide_label="yes"> <ID read_only="yes" hidden="yes">39</ID> <VALUE options="YES_NO_OPTIONS">1</VALUE> <TEXT read_only="yes">Devolver PLU Associada ao Identificar Item</TEXT> </OPTION> </OPTION_LIST> <QUESTION_OPTION_LIST horizontal_list="yes" allow_insert="yes" hide_label="yes"> </QUESTION_OPTION_LIST> <SHELL_COMMAND_LIST horizontal_list="yes" allow_insert="yes" hide_label="yes"> <SHELL_COMMAND> <ID read_only="yes">14</ID> Modelo de Copum de Vasilhame <SHELL_COMMAND_USE read_only="yes">Cabecalho</SHELL_COMMAND_USE> <SHELL_COMMAND_TEXT text_box="yes" lines="3" width="50">{NL}
{HT} COMPROVANTE DE VASILHAME{NL} {HT} ______________________________ {NL} {NL} {}LOJA: {LOJA} {NL} {}OPERADOR{NL} {} Código: {OPERADOR_CODIGO}{NL} {} Nome: {OPERADOR_NOME}{NL} {NL}
</SHELL_COMMAND_TEXT> </SHELL_COMMAND> <SHELL_COMMAND> <ID read_only="yes">15</ID> <SHELL_COMMAND_USE read_only="yes">Detalhe</SHELL_COMMAND_USE> <SHELL_COMMAND_TEXT text_box="yes" lines="3" width="50">[{ITEM_SEQUENCIA}] {ITEM_CODIGO} {ITEM_DESCRICAO}{HT}{HT}{SemEspacos(Mascara(ITEM_QUANTIDADE; "ZZZ9"))|'x'|SemEspacos(Mascara(ITEM_VALOR_UNITARIO; "ZZZ9,99"))} </SHELL_COMMAND_TEXT> </SHELL_COMMAND> <SHELL_COMMAND> <ID read_only="yes">17</ID> <SHELL_COMMAND_USE read_only="yes">Rodape</SHELL_COMMAND_USE> <SHELL_COMMAND_TEXT text_box="yes" lines="3" width="50">
{NL} {} QUANTIDADE DE VASILHAMES:{ITEMS}{NL} ? No Shell Comman 17 ?Rodape incluir a variavel VOLUMES ERRO {NL} {} VALOR TOTAL:{SemEspacos(SUBTOTAL)}{NL} {NL} {HT}Ao realizar sua compra, apresente este {NL} {HT} cupom quando solicitado{NL} {NL} {NL} {HT} N. RESGATE VASILHAME: {DEVOLUCAO_NUMERO}{NL} {NL}
</SHELL_COMMAND_TEXT> </SHELL_COMMAND> </SHELL_COMMAND_LIST>
</CMD>
No Shell Comman 19 – Incluir ip do PDV administrador de vasilhame : PORTA 8603 192.168.2.59: 8603
</source>
<source lang="xml" line="1"> (h) Exemplo de XML gerado no PDV de devolução de vasilhame:
<RETURN>
<STORE>35</STORE> <POS>1</POS> <TICKET>5496</TICKET> <TRN>188</TRN> <FISCAL_STORE>1</FISCAL_STORE> <FISCAL_POS>1</FISCAL_POS> <CASHIER_ID>17109</CASHIER_ID> <CASHIER_NAME>Josmi</CASHIER_NAME> <FISCAL_DAY>20130828</FISCAL_DAY> <FISCAL_TIME>20130828155922</FISCAL_TIME> <SESSION_SEQUENCE>1</SESSION_SEQUENCE> <TRANSACTION_TYPE>55</TRANSACTION_TYPE> <XHEADER> <IGT>1450511.830</IGT> <ITK>5495</ITK> <CMD>67</CMD> <GL>425</GL> </XHEADER> <ITEM> <SEQ>1</SEQ> <SEC>1377706332</SEC> <SKU>11072891</SKU> <ID>11072891</ID> <DESCRIPTION>Vasilhame BRAHMA</DESCRIPTION> <UNIT_PRICE>0.45</UNIT_PRICE> <AMOUNT>0.45</AMOUNT> <DECS_PRICE>2</DECS_PRICE> <QTY>1</QTY> <DECS_QTY>0</DECS_QTY> <TAX_PERC>0.000</TAX_PERC> <TAX_ID>I</TAX_ID> <SUBTOTAL>0.45</SUBTOTAL> <DEPT_ID>1</DEPT_ID> <SCANNED>1</SCANNED> <TYPE_PRICE>1</TYPE_PRICE> <UNIT>Un</UNIT> <MIN_SPLITS>1</MIN_SPLITS> </ITEM> <SUBTOTAL>0.45</SUBTOTAL> <TRANSACTION_TYPE>55</TRANSACTION_TYPE> <BEGIN_SEC>1377706332</BEGIN_SEC><END_SEC>1377706335</END_SEC>
</RETURN>
</source>
7. Função 426 ( Ref a 147) - vasilhame com desconto para uso interno na venda
Os produtos associados não poderão participar da campanha, pois não é permitido 2 descontos com referência ao item.
(a) Opção 0 Tipo de controle de vasilhame:
= 1 vasilhame com desconto.
Ou 0 para vasilhame com pagamento.
(b) Opção 2 chamar o comando no subtotal = 1 sempre ligar
(c) Opção 4 Comando de Desconto = Função 427 – Desconto por Sequência
(d) Id 14 – Exemplo do cupom de contra vale de vasilhame ou
Obs.: Se o cliente desejar fazer pagamento de vasilhame usar a Função 147 com a parametrização abaixo:
Opção 0 tipo de controle de vasilhame = 0 para vasilhame com pagamento.
Opção 1 Número da finalizadora = Número da finalizadora da LX.
Opção 2 Chamar comando no subtotal = 1 (Ligar p/ o comando ser chamado no subtotal).
<source lang="xml" line="1"> (e) Exemplo da Função 426
<CMD>
<ID read_only="yes">426</ID> Uso interno na Venda <AUTHORIZATIONS width="3">0</AUTHORIZATIONS> <TYPE options="CMD_TYPE_OPTIONS">3</TYPE> <COMMAND width="4">147</COMMAND> <LAYOUT width="4">35</LAYOUT> <REFERENCE_TEXT read_only="yes">Vasilhame com Desconto</REFERENCE_TEXT> <ALLOWED_STATES width="40"/> <TEXT width="40">Vasilhame com Desconto </TEXT> <PROMPT width="30">Numero?</PROMPT> <PROMPT_QUESTION width="4">0</PROMPT_QUESTION> <OPTION_LIST horizontal_list="yes" hide_label="yes">
<OPTION hide_label="yes"> <ID read_only="yes" hidden="yes">0</ID> <VALUE width="40">1</VALUE> 1 Vasilhame com desconto ou 0 Pagamento
<TEXT read_only="yes">Tipo de Controle</TEXT>
</OPTION> <OPTION hide_label="yes"> <ID read_only="yes" hidden="yes">2</ID> <VALUE options="YES_NO_OPTIONS">1</VALUE> Uso interno
<TEXT read_only="yes">Sair com Sucesso</TEXT>
</OPTION> <OPTION hide_label="yes"> <ID read_only="yes" hidden="yes">3</ID> <VALUE options="YES_NO_OPTIONS">1</VALUE> <TEXT read_only="yes">Pedir Mais</TEXT> </OPTION> <OPTION hide_label="yes"> <ID read_only="yes" hidden="yes">4</ID> <VALUE width="40">427</VALUE> Numero da Funcao de desconto no vasilaheme 427
<TEXT read_only="yes">Comando de Desconto</TEXT>
</OPTION> </OPTION_LIST> <QUESTION_OPTION_LIST horizontal_list="yes" allow_insert="yes" hide_label="yes">
</QUESTION_OPTION_LIST> <SHELL_COMMAND_LIST horizontal_list="yes" allow_insert="yes" hide_label="yes">
<SHELL_COMMAND><ID read_only="yes">14</ID> Exemplo cupom contra vale
<SHELL_COMMAND_USE read_only="yes">Cabecalho</SHELL_COMMAND_USE>
<SHELL_COMMAND_TEXT text_box="yes" lines="3" width="50">{NL} {HT} CONTRA-VALE DE VASILHAME{NL} {HT} ______________________________ {NL} {NL}
{}LOJA: {LOJA} {}HORA: {TIME} {NL} {}DATA: {DATA} {NL}
{NL}
{}OPERADOR{NL} {} Código: {OPERADOR_CODIGO}{NL} {} Nome: {OPERADOR_NOME}{NL}
{NL}
</SHELL_COMMAND_TEXT>
</SHELL_COMMAND> <SHELL_COMMAND> <ID read_only="yes">15</ID> <SHELL_COMMAND_USE read_only="yes">Detalhe</SHELL_COMMAND_USE> <SHELL_COMMAND_TEXT text_box="yes" lines="3" width="50">[{ITEM_SEQUENCIA}] {ITEM_CODIGO} {ITEM_DESCRICAO}{HT}{HT}{SemEspacos(Mascara(ITEM_QUANTIDADE; "ZZZ9"))|'x'|SemEspacos(Mascara(ITEM_VALOR_UNITARIO; "ZZZ9,99"))}</SHELL_COMMAND_TEXT> </SHELL_COMMAND> <SHELL_COMMAND> <ID read_only="yes">17</ID> <SHELL_COMMAND_USE read_only="yes">Rodape</SHELL_COMMAND_USE> <SHELL_COMMAND_TEXT text_box="yes" lines="3" width="50"> {NL}
{} QUANTIDADE DE VASILHAMES:{ITEMS}{NL} - No Shell Comman 17 ? Rodapé incluir a variável VOLUMES
{NL} {HT}Ao realizar sua compra, apresente este {NL} {HT}cupom quando solicitado{NL} {NL} {NL} {HT} N. RESGATE VASILHAME: {DEVOLUCAO_NUMERO}{NL} {NL}
</SHELL_COMMAND_TEXT>
</SHELL_COMMAND> </SHELL_COMMAND_LIST> </CMD>
-No Shell Comman 19 – Incluir IP do PDV administrador de vasilhame: PORTA 8603 192.168.2.59 : 8603
</source>
<source lang="xml" line="1"> (f) Exemplo de XML venda com a função 426 Vasilhame com Desconto
<SALE>
<STORE>35</STORE> <POS>1</POS> <TICKET>5516</TICKET> <TRN>210</TRN> <FISCAL_STORE>1</FISCAL_STORE> <FISCAL_POS>1</FISCAL_POS> <CASHIER_ID>17109</CASHIER_ID> <CASHIER_NAME>NOME DO OPERADOR DE CAIXA</CASHIER_NAME> <FISCAL_DAY>20130828</FISCAL_DAY> <FISCAL_TIME>20130828172244</FISCAL_TIME> <SESSION_SEQUENCE>1</SESSION_SEQUENCE> <CCF>2507</CCF> <GNF>2080</GNF> <GRG>1336</GRG> <PRICE>1</PRICE> <REF_PRICE>1</REF_PRICE> <DEFAULT_PRICE>1</DEFAULT_PRICE> <XHEADER> <IGT>1450641.580</IGT> <ITK>5516</ITK> <CMD>68</CMD> </XHEADER> <ITEM> <SEQ>1</SEQ> <SEC>1377711322</SEC> <SKU>7894900701609</SKU> <ID>11072896</ID> <DESCRIPTION>Coca Cola 600ML</DESCRIPTION> <UNIT_PRICE>3.75</UNIT_PRICE> <AMOUNT>3.75</AMOUNT> <DECS_PRICE>2</DECS_PRICE> <QTY>1</QTY> <DECS_QTY>0</DECS_QTY> <TAX_PERC>0.000</TAX_PERC> <TAX_ID>I</TAX_ID> <SUBTOTAL>3.75</SUBTOTAL> <DEPT_ID>1</DEPT_ID> <SCANNED>1</SCANNED> <TYPE_PRICE>1</TYPE_PRICE> <UNIT>Un</UNIT> <MIN_SPLITS>1</MIN_SPLITS> </ITEM> <ANSWER>
<ID>326</ID> 1,0,11072894(1.000x0.180),11072896(3.750)
</ANSWER>
<ITEM> <SEQ>2</SEQ> <SEC>1377711326</SEC> <SKU>7891025102113</SKU> <ID>11072890</ID> <DESCRIPTION>Cerveja Brahma 600ML</DESCRIPTION> <UNIT_PRICE>4.00</UNIT_PRICE> <AMOUNT>4.00</AMOUNT> <DECS_PRICE>2</DECS_PRICE> <QTY>1</QTY> <DECS_QTY>0</DECS_QTY> <TAX_PERC>0.000</TAX_PERC> <TAX_ID>I</TAX_ID> <SUBTOTAL>7.30</SUBTOTAL> <DEPT_ID>1</DEPT_ID> <SCANNED>1</SCANNED> <DISCOUNT>0.45</DISCOUNT> <TYPE_PRICE>1</TYPE_PRICE> <UNIT>Un</UNIT> <MIN_SPLITS>1</MIN_SPLITS> </ITEM>
<ANSWER>
<ID>326</ID> 2,0,11072891(1.000x0.450),11072890(4.000)
</ANSWER> <DISCOUNT_EVN>
<AMOUNT>0.45</AMOUNT> <ITEM_SEQ>2</ITEM_SEQ> <COMMAND>427</COMMAND> </DISCOUNT_EVN> <ANSWER> <ID>327</ID> 2,0.450,11072891(0.450x1.000),11072890(4.000),427 </ANSWER> <ANSWER> <ID>328</ID> 472,55,35,1,5515,20130828172209
</ANSWER>
<SUBTOTAL>7.30</SUBTOTAL>
<SUBTOTAL_SEC>1377711337</SUBTOTAL_SEC>
<INTEREST>0.00</INTEREST>
<DUE>7.30</DUE>
<MEDIA>
0
<DESCRIPTION>Dinheiro</DESCRIPTION>
<AMOUNT>7.30</AMOUNT>
<SEC>1377711345</SEC>
<STATUS>1</STATUS>
<CASHIER_STATUS>
<AMT>430.830</AMT>
<CTR>29</CTR>
<VAMT>0.000</VAMT>
<VCTR>28</VCTR>
</CASHIER_STATUS>
</MEDIA>
<AMOUNT_PAID>7.30</AMOUNT_PAID>
<AMOUNT_DUE>7.30</AMOUNT_DUE>
<SALE_DISCOUNT>0.45</SALE_DISCOUNT>
<FINAL_GT>1450649.33</FINAL_GT>
<BEGIN_SEC>1377711322</BEGIN_SEC>
<END_SEC>1377711345</END_SEC>
</SALE>
</source>
<source lang="xml" line="1"> 8. Função 427 – Desconto do item vasilhame (Uso interno na venda de vasilhame).
Opção 3: Por sequência ligada
<OPTION hide_label="yes">
<ID read_only="yes" hidden="yes">3</ID> <VALUE options="YES_NO_OPTIONS">1</VALUE> <TEXT read_only="yes">Por Sequencia</TEXT>
</OPTION>
<CMD>
<ID read_only="yes">427</ID> <AUTHORIZATIONS width="3">0</AUTHORIZATIONS> <TYPE options="CMD_TYPE_OPTIONS">3</TYPE> <COMMAND width="4">085</COMMAND> <REFERENCE_TEXT read_only="yes">Desconto em Item Vasilhame </REFERENCE_TEXT> <ALLOWED_STATES width="40"/> <TEXT width="40">Desconto em Item</TEXT> <PROMPT width="30">Valor?</PROMPT> <OPTION_LIST horizontal_list="yes" hide_label="yes"> <OPTION hide_label="yes"><ID read_only="yes" hidden="yes">2</ID> <VALUE options="YES_NO_OPTIONS">0</VALUE> <TEXT read_only="yes">Percentual</TEXT> </OPTION> <OPTION hide_label="yes"> <ID read_only="yes" hidden="yes">3</ID> <VALUE options="YES_NO_OPTIONS">1</VALUE> <TEXT read_only="yes">Por Sequencia</TEXT> </OPTION> </OPTION_LIST> <QUESTION_OPTION_LIST horizontal_list="yes" allow_insert="yes" hide_label="yes"> </QUESTION_OPTION_LIST><SHELL_COMMAND_LIST horizontal_list="yes" allow_insert="yes" hide_label="yes"> </SHELL_COMMAND_LIST>
</CMD>
</source>
<source lang="xml" line="1">
9. Função 241 Subtotal ou 007
Opção 21 Comando de Vasilhame = colocar o número da função de vasilhame
<CMD>
<ID read_only="yes">007</ID> <AUTHORIZATIONS width="3">1</AUTHORIZATIONS> <TYPE options="CMD_TYPE_OPTIONS">1</TYPE> <REFERENCE_TEXT read_only="yes">SUBTOTAL</REFERENCE_TEXT> <TEXT width="40">SUBTOTAL</TEXT> <PROMPT width="30"/> <OPTION_LIST horizontal_list="yes" hide_label="yes"> <OPTION hide_label="yes"> <ID read_only="yes" hidden="yes">0</ID> <VALUE options="MEDIA_OPTIONS">0</VALUE>tradicional <TEXT read_only="yes">Finalizadora do Plano Default</TEXT> </OPTION> <OPTION hide_label="yes"> <ID read_only="yes" hidden="yes">1</ID> <VALUE options="MEDIA_OPTIONS">3</VALUE>conecto <VALUE options="MEDIA_OPTIONS">0</VALUE>tradicional <TEXT read_only="yes">Modo de Plano</TEXT> </OPTION> <OPTION hide_label="yes"> <ID read_only="yes" hidden="yes">3</ID> <VALUE options="MEDIA_OPTIONS">0</VALUE>tradicional <TEXT read_only="yes">Segundos entre Acionamentos</TEXT> </OPTION> <OPTION hide_label="yes"><ID read_only="yes" hidden="yes">15</ID> <VALUE options="NO_YES_OPTIONS">0</VALUE> <TEXT read_only="yes">Confirmar e Encerrar Pedido Automaticamente</TEXT> </OPTION> <OPTION hide_label="yes"> <ID read_only="yes" hidden="yes">19</ID> <VALUE options="SUBTOTAL_MEDIA_QTY_OPTIONS">0</VALUE> <TEXT read_only="yes">Opcao de Quantidade em Finalizacoes</TEXT> </OPTION> <OPTION hide_label="yes"> <ID read_only="yes" hidden="yes">21</ID> <VALUE width="5">426</VALUE> <TEXT read_only="yes">Comando de Vasilhames</TEXT> </OPTION> </OPTION_LIST>
</CMD>
</source>
10. Função 222 desconto por motivo – vasilhame offline
No Servidor
a) Os motivos de desconto deverão ser incluídos no Emporium:
No módulo TESOURARIA selecionar a opção, motivos, e cadastrar conforme abaixo:
Ex: Código 50 Vasilhame offline transação PDV 222 (DESCONTO VASILHAME OFF LINE). Enviar uma carga de PLU complementar para que os motivos sejam enviados ao PDV no PLU_AUX.xml.
b) Criar entidade no Moderator:
No módulo ACESSO selecionar a opção ENTIDADE, criar a transação de PDV 222.
c) Permissões para entidade criada:
No módulo ACESSO selecionar a opção MANUTENÇÃO DE ACESSO, filtrar transação de PDV - 222 e ativar a flag de execução para o grupo desejado.
<source lang="xml" line="1">
Enviar carga de usuários para que as novas autorizações atualizem os PDV's.
<CMD>
<ID read_only="yes">222</ID> <AUTHORIZATIONS width="3">0</AUTHORIZATIONS> <TYPE options="CMD_TYPE_OPTIONS">3</TYPE> <COMMAND width="4">85</COMMAND> <LAYOUT width="4">0</LAYOUT> <REFERENCE_TEXT read_only="yes">Desconto por Motivo em Valor</REFERENCE_TEXT> <ALLOWED_STATES width="40"/> <TEXT width="40">Desconto de valor</TEXT> <PROMPT width="30">Valor?</PROMPT> <PROMPT_QUESTION width="4">0</PROMPT_QUESTION> <OPTION_LIST horizontal_list="yes" allow_insert="yes" hide_label="yes"> <OPTION hide_label="yes"> <ID read_only="yes" hidden="yes">31</ID> <VALUE options="NO_YES_OPTIONS">1</VALUE> <TEXT read_only="yes">Liberar a si Mesmo</TEXT> </OPTION> <OPTION hide_label="yes"> <ID read_only="yes" hidden="yes">3</ID> <VALUE options="YES_NO_OPTIONS">1</VALUE> <TEXT read_only="yes">Por Sequencia</TEXT> </OPTION> </OPTION_LIST> <QUESTION_OPTION_LIST horizontal_list="yes" allow_insert="yes" hide_label="yes"> <QUESTION> <ID options="QUESTION_OPTIONS">139</ID> --Motivo <OPTIONAL options="YES_NO_OPTIONS">0</OPTIONAL> <VALID options="YES_NO_OPTIONS">1</VALID> <VALIDATION options="QUESTION_VALIDATION_OPTIONS">139</VALIDATION> <DISPLAY options="YES_NO_OPTIONS">1</DISPLAY> <ALLOW_REPEAT options="YES_NO_OPTIONS">0</ALLOW_REPEAT> <ANSWER width="10">50</ANSWER> --Movito Vasilhame Offline <ANSWER_SHELL_COMMAND width="60"/> </QUESTION> <QUESTION> <ID options="QUESTION_OPTIONS">31</ID> <OPTIONAL options="YES_NO_OPTIONS">0</OPTIONAL> <VALID options="YES_NO_OPTIONS">1</VALID> <VALIDATION options="QUESTION_VALIDATION_OPTIONS">0</VALIDATION> <DISPLAY options="YES_NO_OPTIONS">1</DISPLAY> <ALLOW_REPEAT options="YES_NO_OPTIONS">0</ALLOW_REPEAT> <ANSWER width="10">55</ANSWER> <ANSWER_SHELL_COMMAND width="60"/> </QUESTION> <QUESTION> <ID options="QUESTION_OPTIONS">64</ID> -- Numero devolucao <OPTIONAL options="YES_NO_OPTIONS">0</OPTIONAL> <VALID options="YES_NO_OPTIONS">1</VALID> <VALIDATION options="QUESTION_VALIDATION_OPTIONS">0</VALIDATION> <DISPLAY options="YES_NO_OPTIONS">1</DISPLAY> <ALLOW_REPEAT options="YES_NO_OPTIONS">0</ALLOW_REPEAT> <ANSWER width="10"/> <ANSWER_SHELL_COMMAND width="60"/> </QUESTION> </QUESTION_OPTION_LIST> <SHELL_COMMAND_LIST horizontal_list="yes" allow_insert="yes" hide_label="yes"> </SHELL_COMMAND_LIST>
</CMD>
</source>
<source lang="xml" line="1"> No arquivo QUESTION.xml, incluir (se não tiver) as perguntas abaixo:
<QUESTION>
<ID read_only="yes">139</ID> <REFERENCE_TEXT read_only="yes">Motivo</REFERENCE_TEXT> <PROMPT width="30">Motivo?</PROMPT> <LABEL width="30">Motivo:</LABEL> <VALIDATION options="QUESTION_VALIDATION_OPTIONS">139</VALIDATION>
</QUESTION> <QUESTION>
<ID read_only="yes">31</ID> <REFERENCE_TEXT read_only="yes">Tipo de Transacao</REFERENCE_TEXT> <PROMPT width="30">Tipo?</PROMPT> <LABEL width="30">Tipo:</LABEL> <VALIDATION options="QUESTION_VALIDATION_OPTIONS">0</VALIDATION>
</QUESTION> <QUESTION>
<ID read_only="yes">64</ID> <REFERENCE_TEXT read_only="yes">Numero de Devolucao</REFERENCE_TEXT> <PROMPT width="30">Devolucao?</PROMPT> <LABEL width="30">Devolucao:</LABEL> <VALIDATION options="QUESTION_VALIDATION_OPTIONS">0</VALIDATION>
</QUESTION>
</source>
Os vasilhames irão para o sistema Moderator, através da tela de devolução / vasilhame.
O tipo de transação é a 55 que vêm no xml.
Status: Pedente, Usado, Cancelado.
Devolução: 9549 (1) => Onde (1) é número da devolução local e 9549 é o número da devolução gerada no servidor centralizado. Para uso PDV devemos usar o número local.
PDV/ticket /hora /valor /operador: PDV que gerou a devolução, ticket: Número do ticket da devolução
OBS.: O cancelamento só poderá ser efetuado no PDV quando o controle for local, 2 PDV's,não conseguem usar ao mesmo tempo a devolução.
Apresenta a mensagem: Em uso ou já usada.
11. Operacional PDV de vasilhame
11.1 No PDV de vasilhame
Em Caixa aberto entregar os vasilhames. Com caixa aberto, executar a função 425 Escanear ou digitar o EAN dos vasilhames. Será gerado um cupom de vasilhame com número de devolução
12. Operacional PDV de venda
12.1 Na venda
Em caixa aberto, escanear os produtos normalmente. Se existir no cupom produtos com PLU associada, quando o operador teclar subtotal aparecerá a mensagem:(PAGAMENTO COM DEVOLUÇÃO. Número?). O operador deverá solicitar o cupom de vasilhame e entrar com o número da devolução: Neste instante, o cupom de vasilhame será consultado no servidor e os valores referente aos vasilhames, serão abatidos como desconto para cada item correspondente. OBS.:Caso o produto esteja participando de uma campanha o desconto não será concedido.
13. Contravale de vasilhame:
Quando a venda de itens for diferente da quantidade no cupom do vasilhame, a aplicação gerará um contra vale de vasilhame com outro número de devolução, informando a quantidade restante.
14. Configuração de controle de vasilhame local - sem servidor
14.1 No CMD.xml Função 425 e 426
a) Configurar PDV administrador de vasilhame e em todos os PDV's.
Ligar a opção 5 gerar identificação de transação.
No Shell Comman 17 – Rodapé incluir a variável VOLUMES.
No Shell Comman 19 – Incluir IP do PDV administrador de vasilhame: PORTA 8603 192.168.2.59: 8603.
14.2 No MSG.xml fechar a tag de fechamento (estava errada).
<source lang="xml" line="1"> 14.3 No GLOBAL.xml
<POS_SERVER_PORT> 8603 – porta para gerar as transações de vasilhame
<HTTP_SERVER> ./thttpd -D
<HTTP_DIR>
<HTTP_PORT> 8680 (Porta para dispositivos móveis) opcional
</source>
15. Pacote de atualização: venditor, cursor, especulum, umbra, copo, xvenditor.sh e no servidor o process.xml
15.1 No PDV administrativo de vasilhame
O número da transação será sequencial iniciando em 1 ou qualquer número que estiver no arquivo.
Nome do arquivo com a relação de transação de vasilhame: /DB/Return_control.dat.
Nome dos arquivos de cada vasilhame: /DB/RTN_1, RTN_2 etc.
Neste arquivo teremos todos os produtos para conceder o desconto na hora da compra, e depois de usados, serão deletados na redução Z. Os demais arquivos ficarão no diretório esperando a sua solicitação.
15.2 No servidor
O servidor tem um outro tipo de controle e a sequência será diferente do PDV. Na tela >>>>>>>>>> teremos os 2 números de sequência e o process.xml que fará este controle.
1º Copiar o arquivo xvenditor.sh para o caminho /var/venditor/bin
2º Copiar o programa Venditor para o caminho /var/venditor/WRK
16.Conclusão:
Após efetuar as configurações, o sistema estará apto a conceder desconto na apresentação de vasilhames na hora da compra, e pagar contravale em forma de ticket quando não houver entrega de vasilhame.