Histórico da Página
01. DADOS GERAIS
Linha de Produto: | Microsiga Protheus |
---|---|
Segmento: | Varejo |
Módulo: | SigaLoja - Controle de Loja |
Função: | RmiBusca - Serviço controlador de buscas RmiBuscaObj - Classe responsável por buscar informações RmiBusChefObj- Classe responsável por buscar informações com particularidades do Totvs Chef. |
02. SITUAÇÃO/REQUISITO
Disponibilizar um serviço que efetue a busca de Vendas no Assinante Chef.
03. SOLUÇÃO
Criado serviço RmiBusca, que será responsável por buscar os processos nos assinantes e publica-los na tabela MHQ - Mensagens Publicadas.
...
Neste exemplo o processo Venda está configurado como busca para o assinantes Chef.
Configurações Definição dos principais campos para efetuar a busca:
- Tipo Process - Tipo de Execução do Processo
2=Busca
- Configuração - Para acessar API CapaVenda
Bloco de código |
---|
{ |
...
"url":"http:// |
...
caminho. |
...
para.capavenda/ListPorDataMovimento" (Url para acessar a API CapaVenda) |
...
} |
- Layout Envio - Body que a API CapaVenda precisa para retornar as vendas
Bloco de código |
---|
{ "CodigoLoja":12345, (código da loja que será feita a consulta) "DataMovimentoInicial":"&Str( Year(dDatabase - 1), 4) +'-'+ StrZero( Month(dDatabase - 1), 2) +'-'+ StrZero( Day(dDatabase - 1), 2)", "DataMovimentoFinal":"&Str( Year(dDatabase), 4) +'-'+ StrZero( Month(dDatabase), 2) +'-'+ StrZero( Day(dDatabase), 2)", "Online":true } |
Observação:
- & - Este carácter define que deve macro executar tudo o quem depois em tempo de execução.
- Layout Publi - Layout que será utilizado para gerar a Publicação (tabela MHQ), especificamente o campo MHQ_MENSAG
Bloco de código |
---|
{ "L1_FILIAL": "&xFilial('SL1')", "L1_VEND": "&self:oRegistro['Comissoes'][1]['Funcionario']['Codigo']SUPERGETMV('MV_VENDPAD', .F., '01')", "L1_CLIENTE": "&self:oRegistro['Cliente']['Codigo']SUPERGETMV('MV_CLIPAD', .F., '000001')", "L1_LOJA": "&self:oRegistro['Loja']['Codigo']SUPERGETMV('MV_LOJPAD', .F., '01')", "L1_OPERADO": "&cValToChar(self:oRegistro['Caixa']['Operador']['Codigo'])", "L1_EMISSAO": "&self:oRegistro['DataMovimento']", "L1_DTLIM": "&self:oRegistro['DataMovimento']", "L1_NUMMOV": "&SubStr(cValToChar(self:oRegistro['Caixa']['NumeroFechamento']),1,2)", "L1_NUMCFIS": "&cValToChar(self:oRegistro['NumeroCupom'])", "L1_DOC": "&cValToChar(self:oRegistro['NumeroNota'])", "L1_SERIE": "&self:oRegistro['SerieNota']", "L1_SERPDV": "&self:oRegistro['SerieECF']", "L1_SERSAT": "&self:oRegistro['SerieSAT']", "L1_KEYNFCE": "&self:oRegistro['ChaveSefaz']", "L1_PRONFCE": "&self:oRegistro['ProtocoloAutorizacaoSefaz']", "L1_COMIS": "&self:oRegistro['Comissoes'][1]['Valor']"0, "L1_VLRTOT": "&self:oRegistro['TotalizadorVenda']['ValorTotal']", "L1_VALBRUT": "&self:oRegistro['TotalizadorVenda']['ValorSubTotal']", "L1_VLRLIQ": "&self:oRegistro['TotalizadorVenda']['ValorSubTotal']", "L1_VALMERC": "&self:oRegistro['TotalizadorVenda']['ValorSubTotal']", "L1_DESCONT": "&self:oRegistro['TotalizadorVenda']['ValorTotalDescontoSistema']", "L1_DESCFIN": "&self:oRegistro['TotalizadorVenda']['ValorTotalDescontoFiscal']", "L1_VALICM": "&self:oRegistro['TotalizadorVenda']['ValorTotalICMS']", "L1_VALPIS": "&self:oRegistro['TotalizadorVenda']['ValorTotalPIS']", "L1_VALCOFI":"&self:oRegistro['TotalizadorVenda']['ValorTotalCOFINS']", "L1_DINHEIR":"&self:oRegistro['TotalizadorVenda']['ValorTotalCOFINS']", "L1_MSEXP": "&SubStr( StrTran( self:oRegistro['DataRecebimento'], '-', ''), 1, 8)", "L1_CONDPG": "CN", "L1_SITUA": "IP", "L1_TIPO": "V", "L1_TIPOCLI": "F", "L1_PDV": "001", "SL2": [ { "L2_FILIAL": "&xFilial('SL2')", "L2_PRODUTO": "&cValToChar(self:oRegistro['Itens'][nItem]['Produto']['Codigo'])", "L2_ITEM": "&StrZero(nItem, TamSx3('L2_ITEM')[1])", "L2_DESCRI": "&self:oRegistro['Itens'][nItem]['Produto']['Nome']", "L2_QUANT": "&self:oRegistro['Itens'][nItem]['Produto']['UnidadeQuantidade']", "L2_VRUNIT": "&self:oRegistro['Itens'][nItem]['ValorUnitario']", "L2_VLRITEM":"&self:oRegistro['Itens'][nItem]['ValorTotal']", "L2_LOCAL": "01", "L2_UM": "&self:oRegistro['Itens'][nItem]['Produto']['QuantidadeUnidade']", "L2_VALDESC": "&self:oRegistro['Itens'][nItem]['ValorDesconto']", "L2_TES":"&SUPERGETMV('MV_TESSAI', .F., '501')", "501", "L2_CF":"&self:oRegistro['Itens'][nItem]['Cfop']", "L2_PICM": "&self:oRegistro['Itens'][nItem]['Icms']['Aliquota']", "L2_BASEICM": "&self:oRegistro['Itens'][nItem]['Icms']['BaseCalculo']", "L2_VALICM": "&self:oRegistro['Itens'][nItem]['Icms']['Valor']", "L2_EMISSAO": "&self:oRegistro['DataMovimento']" } ], "SL4": [ { "L4_FILIAL": "&xFilial('SL4')", "L4_DATA": "&self:oRegistro['DataMovimento']", "L4_VALOR": "&self:oRegistro['Pagamentos'][nItem]['ValorRecebido']", "L4_FORMAADMINIS": "&IIF(self:oRegistro['Pagamentos'][nItem]['TipoFormaPagamento']" Descricao'] <> 'DINHEIRO',self:oRegistro['Pagamentos'][nItem]['Descricao'],'')", } ] } |
...
"L4_FORMA":"& |
...
IIF( |
...
cValToChar(self:oRegistro['Pagamentos'][nItem]['TipoFormaPagamento']) == '3',self:oRegistro['Pagamentos'][nItem]['FormaPagamentoCartao']['TipoCartao'],cValToChar(self:oRegistro['Pagamentos'][nItem]['TipoFormaPagamento']))"
}
]
}
|
Observação:
- & -
...
- Este carácter define que
...
- deve macro executar tudo o quem depois em tempo de execução.
- Layout Publi self:oRegistro -
A campo Tipo
...
- Possibilita o acesso a tudo que foi retornado pela API CapaVenda.
Caso seja necessário receber mais algum campo deve ser incluído no layout acima.
Para mais informações sofre os retornos da API CapaVenda acesse: API - Capa Venda
Neste serviço serão utilizadas as seguintes tabelas:
- MHP - Assinantes x Processos
- MHQ - Mensagens Publicadas
04. DEMAIS INFORMAÇÕES
A configuração do assinante Chef deverá seguir a documentação a seguinte estrutura: Assinante Chef.
...
[RMIBUSCA]
Main=RmiBusca
Environment=12_1_25 (Ambiente)
nParms=2
Parm1=T1 (Empresa)
Parm2=D MG 01 (Filial)
05. ASSUNTOS RELACIONADOS
Guia da Integração RMI - Retail Integration Management
Templatedocumentos |
---|
HTML |
---|
<style> div.theme-default .ia-splitter #main { margin-left: 0px; } .ia-fixed-sidebar, .ia-splitter-left { display: none; } #main { padding-left: 10px; padding-right: 10px; overflow-x: hidden; } .aui-header-primary .aui-nav, .aui-page-panel { margin-left: 0px !important; } .aui-header-primary .aui-nav { margin-left: 0px !important; } </style> |