Á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:

RmiEnvProtheusObj

RmiGrvMsgPubLiveObj

Ticket:Não há.
Story:DVARLOJ1-6549

02. SITUAÇÃO/REQUISITO

Buscar as Notas Fiscais de Entrada do tipo Devolução disponibilizadas no Live Connector e publica-las na tabela MHQ - Mensagens Publicas do Protheus de modo que o Protheus efetue a transmissão ao Sefaz.

03. SOLUÇÃO

Foi disponibilizado modificado o processo NOTA DE ENTRADA do tipo Busca, que irá realizar as buscas das notas fiscais de entrada do tipo devolução.

O processo acimada deve ser ativo para o assinante Live a partir da rotina Assinantes x Processo (RMICADASSI), como demonstrado abaixo:

Image Removed

Configurar os campos definidos abaixo:

Bloco de código
titleCampo: Configuração
{
	"url": "http://.../PracticoLive/LiveConnector/FacadeIntegracao.svc?wsdl",
	"operacao": "RecuperarNotaFiscalLC_Integracao_Xml",
	"tagretorno": "<LC_TicketNotaFiscal>",
	"SD1": "self:oRegistro:_Itens:_Lc_ItemNotaFiscal"
}

...

titleCampo: Layout Envio

...

 para analisar o conteúdo da TAG SituacaoIntegracaoNFe do Live Connector para assim definir as notas que serão transmitidas pelo Protheus.

Caso o conteúdo da TAG SituacaoIntegracaoNFe seja diferente de "Integrada" o processo de transmissão para a Sefaz será feito pelo Protheus.

Para este processo ser feito corretamente foi necessário alterar o 

Configurar os campos definidos abaixo:



Bloco de código
titleLayout Publi
 {
    "F1_FILIAL": "&self:DePara('SM0', self:oRegistro:_Destinatario:Text, 1, 0)",
    "F1_CHVNFE": "&self:oRegistro:_ChaveNFe:Text",
    "F1_EMISSAO": "&DtoS( CtoD( SubStr(self:oRegistro:_DataEmissao:Text, 1, 10) ) )",
    "F1_FORNECE": "&self:DePara('SA1', self:oRegistro:_Emitente:Text, 2, 0)",
    "F1_LOJA": "&SuperGetMv('MV_LOJPAD', .F., '01')",
    "F1_DOC": "&self:oRegistro:_NumeroNotaFiscal:Text",
    "F1_SERIE": "&self:oRegistro:_Serie:Text",
    "F1_COND": "001",
    "F1_VALMERC": "&self:oRegistro:_ValorLiquido:Text",
    "F1_VALBRUT": "&self:oRegistro:_ValorBruto:Text",
    "F1_TIPO": "D",
    "F1_FORMUL": "S",
    "F1_DESCONT": "&self:oRegistro:_ValorDesconto:Text",
    "F1_DTDIGIT": "&DtoS( CtoD( SubStr(self:oRegistro:_DataMovimento:Text, 1, 10) ) )",
    "F1_ESPECIE": "NF",
	"F1_MSEXP": "&DtoS(Date())",
    "F1_HORA": "&DtoS( CtoD( SubStr(self:oRegistro:_DataMovimento:Text, 1, 10) ) )",
    "SD1": [{
            "D1_FILIAL": "&self:DePara('SM0', self:oRegistro:_Destinatario:Text, 1, 0)",
            "D1_COD": "&self:DePara('SB1', self:oRegistro:_Itens:_Lc_ItemNotaFiscal[nItem]:_CodigoProduto:Text, 2, 0)",
            "D1_ITEM": "&Right( AllTrim(self:oRegistro:_Itens:_Lc_ItemNotaFiscal[nItem]:_NumeroItem:Text), TamSx3('D1_ITEM')[1])",
            "D1_FORNECE": "&self:DePara('SA1', self:oRegistro:_Emitente:Text, 2, 0)",
            "D1_LOJA": "&SuperGetMv('MV_LOJPAD', .F., '01')",
            "D1_QUANT": "&self:oRegistro:_Itens:_Lc_ItemNotaFiscal[nItem]:_Quantidade:Text",
            "D1_VUNIT": "&self:oRegistro:_Itens:_Lc_ItemNotaFiscal[nItem]:_PrecoUnitario:Text",
            "D1_TOTAL": "&self:oRegistro:_Itens:_Lc_ItemNotaFiscal[nItem]:_ValorTotalItem:Text",
            "D1_LOCAL": "&SuperGetMv('MV_LOCPAD', .F., '01')",
            "D1_DOC": "&self:oRegistro:_NumeroNotaFiscal:Text",
            "D1_UM": "&self:DePara('SAH', self:oRegistro:_Itens:_Lc_ItemNotaFiscal[nItem]:_UnidadeMedida:Text, 2,0)",
            "D1_TES": "&SuperGetMv('MV_TESTROC', .F., '')",
            "D1_CF": "&StrTran(self:oRegistro:_Itens:_Lc_ItemNotaFiscal[nItem]:_OperacaoFiscal:Text, '.', '')",
            "D1_EMISSAO": "&DtoS( CtoD( SubStr(self:oRegistro:_DataEmissao:Text, 1, 10) ) )",
            "D1_DTDIGIT": "&DtoS( CtoD( SubStr(self:oRegistro:_DataEmissao:Text, 1, 10) ) )",
            "D1_TIPO": "D",
            "D1_FORMUL": "S",
            "D1_SERIE": "&self:oRegistro:_Serie:Text",
            "D1_TP": "&self:DePara('SAH', self:oRegistro:_Itens:_Lc_ItemNotaFiscal[nItem]:_UnidadeMedida:Text, 2,0)",
            "D1_NFORI": "&self:oRegistro:_Itens:_Lc_ItemNotaFiscal[nItem]:_NumeroDoctoOrigem:Text",
            "D1_SERIORI": "&self:LayEstAuto('LG_SERIE', SubStr(self:oRegistro:_Itens:_Lc_ItemNotaFiscal[nItem]:_ChaveAcessoOrigem:Text, 21, 2), self:oRegistro:_Itens:_Lc_ItemNotaFiscal[nItem]:_SerieDoctoOrigem:Text, self:oRegistro:_Itens:_Lc_ItemNotaFiscal[nItem]:_SerieEquipamentoOrigem:Text,self:oRegistro:_Destinatario:Text)",
            "D1_ITEMORI": "&self:oRegistro:_Itens:_Lc_ItemNotaFiscal[nItem]:_ItemDoctoOrigem:Text"
        }
    ]
}


...

Aviso
titleImportante!

A regra para definir se a nota será publicada a partir do XML recebido do Live Connector será a seguinte:

  • tag <TipoNota> = "ENTRADA";
  • tag <TipoDocumento><LC_TipoDocumentoNotaFiscal><Descricao> deve conter a palavra "DEVOLUCAO" e a tag <IDDoctoOrigem> de estar preenchida.

04. DEMAIS INFORMAÇÕES

Dica
titleDica!

Ative o serviço RMIBUSCA, para efetuar a busca das Notas de Entrada do tipo Devolução no Live Connector.

05. ASSUNTOS RELACIONADOS

...