Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

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

RmiBusLiveObj- 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 Live.

03. SOLUÇÃO

Atualizado serviço RmiBusca para o Assinantes Live, que será responsável por buscar os processos nos assinantes e publica-los na tabela MHQ - Mensagens Publicadas.

...

  • Configuração - Para acessar API CapaVendao WebSevice do LiveConector
Bloco de código
	{
		    "url_token":"http://caminho.para.capavenda/ListPorDataMovimento"  /PracticoLive/LiveConnector/FacadeIntegracao.svc?wsdl",   	(Url para acessar ao 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')",LiveConector)
    "operacao":"ObterChaveAcessoLC_Integracao", 											(Operação para buscar token)
    "L1_VENDsistemasatelite":"&SUPERGETMV('MV_VENDPAD', .F., '01')123456789",
    "L1_CLIENTE":"&SUPERGETMV('MV_CLIPAD', .F., '000001')", 															(código do sistema satélite)
    "L1_LOJAusuario":"&SUPERGETMV('MV_LOJPAD', .F., '01')",
    "L1_OPERADO":"&cValToChar(self:oRegistro['Caixa']['Operador']['Codigo'])",[email protected]", 														(nome do usuário)
    "L1_EMISSAOsenha":"&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":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]['Quantidade']",
            "L2_VRUNIT":"&self:oRegistro['Itens'][nItem]['ValorUnitario']",
			"L2_VLRITEM":"&self:oRegistro['Itens'][nItem]['ValorTotal']",
            "L2_LOCAL":"01",
            "L2_UM":"&self:oRegistro['Itens'][nItem]['Produto']['Unidade']",
            "L2_VALDESC":"&self:oRegistro['Itens'][nItem]['ValorDesconto']",
            "L2_TES":"&SUPERGETMV('MV_TESSAI', .F., '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_ADMINIS":"&IIF(self:oRegistro['Pagamentos'][nItem]['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']))"
        }
    ]
}

senha" 																		(senha do usuário)
}
  • Layout Envio - Body que o LiveConector precisa para retornar as vendas
Bloco de código
&"<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:liv="http://LiveConnector/">
   <soapenv:Header />
   <soapenv:Body>
      <liv:RecuperarCupomFiscalLC_Integracao_Xml>
         <liv:codigoSistemaSatelite>" + self:oConfAssin['sistemasatelite'] + "</liv:codigoSistemaSatelite>
         <liv:xmlIdentificacao><![CDATA[<?xml version='1.0' encoding='utf-8'?><LC_Identificacao><Chave>" + self:cToken + "</Chave><CodigoSistemaSatelite>" + self:oConfAssin['sistemasatelite'] + "</CodigoSistemaSatelite><Data/><Hora/></LC_Identificacao>]]></liv:xmlIdentificacao>
      </liv:RecuperarCupomFiscalLC_Integracao_Xml>
   </soapenv:Body>
</soapenv:Envelope>"

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
Preencher com o resultado da próxima tarefa.
{ 
    "L1_FILIAL":"&self:aArrayFil[self:nFil][2]"
}

Observação:

  • & - Este carácter define que deve macro executar tudo o quem depois em tempo de execução.
  • self:oRegistro - Possibilita o acesso a tudo que foi retornado pela API CapaVenda. todas as TAGs retornadas pela operação RecuperarCupomFiscalLC_Integracao_Xml do LiveConector,  definido por uma venda por vez. 
    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 Live deverá seguir a documentação a na seguinte estrutura: Assinante ChefLive.

Exemplo de configuração do Job no AppServer.ini

[RMIBUSCA]
Main=RmiBusca
Environment=12_1_25 (Ambiente)
nParms=2
Parm1=T1 (Empresa)
Parm2=D MG 01 (Filial)

05. ASSUNTOS RELACIONADOS

Dúvidas Frequentes - Varejo

Guia da Integração RMI - Retail Integration ManagementAPI - Capa Venda

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>