Identificador de Regra
GER-000CONSD01
Módulo: GER - Gerais.
Caracteristicas: Consulta de documento - Chegada de mercadoria.
Transação: Não se aplica.
Campos de Entrada:
Campo | Tipo | Observação |
---|---|---|
ConsAChaveDocumento | Alfa | Chave do documento eletrônico NFe/NFp |
ConsACnpjCpf | Alfa | CNPJ/CPF do Fornecedor |
ConsNFornecedor | Número | Código do Fornecedor |
ConsATipoPessoa | Alfa | Tipo da Pessoa J-Jurídica / F-Fisica |
ConsAUsaOrimer | Alfa | Usa Origem de Mercadoria S/N |
ConsNEmpresa | Número | Código da Empresa |
ConsNFilial | Número | Código da Filial |
Campos de Saída:
Campo | Tipo | Observação |
---|---|---|
ConsNEmpresa | Número | Código da Empresa |
ConsNFilial | Número | Código da Filial |
ConsNOrigemMercadoria | Número | Código da Origem de Mercadoria |
ConsNFornecedor | Número | Código do Fornecedor |
ConsNNumeroNf | Número | Número do documento |
ConsAUsaOrimer | Alfa | Usa Origem de Mercadoria S/N |
ConsATipoPessoa | Alfa | Tipo da Pessoa J-Jurídica / F-Fisica |
ConsACnpjCpf | Alfa | CNPJ/CPF do fornecedor |
ConsASerieNf | Alfa | Serie do documento |
ConsASerieLegal | Alfa | Série legal do documento |
ConsAMensagemRetorno | Alfa | Mensagem de retorno da regra |
ConsNListaFornecedorOrigem | Número | OrigemMercadoria - Alfa - Código da Origem de Mercadoria do fornecedor retornado UsaOrigemMercadoria - Alfa - Valor alfa S/N que indica se o fornecedor retornado usa ou não origem de mercadoria CnpjCpfFornecedor - Número - Cnpj ou Cpf do Fornecedor retornado para o WS CodigoFornecedor - Número - Código do Fornecedor retornado para o WS TipoPessoa - Alfa - Tipo de Pessoa do Fornecedor retornado para o WS (F- Física, J- Jurídica) |
Importante
A utilização da variável ConsNListaFornecedorOrigem é facultativa, devendo-se recorrer a essa lista somente quando houver necessidade de retornar mais de um fornecedor/origem por chave de nota.
Regra:
A regra a seguir exemplifica como é viável transmitir os valores de Fornecedor e Origem de Mercadoria através da lista na regra.
Definir Alfa ConsAChaveDocumento; Definir Alfa ConsACnpjCpf; Definir Alfa aCnpjCpf; Definir Numero ConsNFornecedor; Definir Alfa ConsATipoPessoa; Definir Alfa ConsAUsaOrimer; Definir Numero ConsNOrigemMercadoria; Definir Numero ConsNEmpresa; Definir Numero ConsNFilial; Definir Numero ConsNNumeroNf; Definir Alfa ConsASerieNf; Definir Alfa ConsASerieLegal; Definir Alfa ConsAMensagemRetorno; Definir Numero ConsNListaFornecedorOrigem; Definir Alfa ConsA_S_N; TamanhoAlfa(ConsAChaveDocumento, nTam); @ Nota de Fornecedor @ Se(nTam = 20){ Definir Alfa aIniBar; Definir Alfa aFimBar; Definir Alfa aSnfPro; Definir Alfa aNfcPro; Definir Alfa aInsEst; aIniBar = ConsAChaveDocumento; aFimBar = ConsAChaveDocumento; aSnfPro = ConsAChaveDocumento; aNfcPro = ConsAChaveDocumento; CopiarAlfa(aIniBar, 2, 3); CopiarAlfa(aFimBar, 5, 7); CopiarAlfa(aSnfPro, 12, 3); CopiarAlfa(aNfcPro, 15, 6); aInsEst =aIniBar+aFimBar; Definir Cursor Cur_E095ORM; Cur_E095ORM.Sql "Select e095for.CodFor, e095for.TipFor, e095for.cgccpf, \ e095orm.SeqOrm \ From e095for, e095orm \ Where e095for.CodFor = e095orm.CodFor \ and e095orm.InsOrm = :aInsEst and e095orm.SitOrm = 'A'"; Cur_E095ORM.AbrirCursor() Enquanto(Cur_E095ORM.Achou){ Definir Alfa aTipFor; nSeqOrm = nSeqOrm + 1; nCodFor = Cur_E095ORM.CodFor; nCodSeq = Cur_E095ORM.SeqOrm; aTipFor = Cur_E095ORM.TipFor; IntParaAlfa(Cur_E095ORM.cgccpf, aCnpjCpf); ListaRegraNovaLinha(ConsNListaFornecedorOrigem); ListaRegraAddValorLinhaNumero(ConsNListaFornecedorOrigem, "CodigoFornecedor", nCodFor, ConsA_S_N); ListaRegraAddValorLinhaNumero(ConsNListaFornecedorOrigem, "OrigemMercadoria", nCodSeq, ConsA_S_N); ListaRegraAddValorLinhaAlfa(ConsNListaFornecedorOrigem, "UsaOrigemMercadoria", "S", ConsA_S_N); ListaRegraAddValorLinhaAlfa(ConsNListaFornecedorOrigem, "CnpjCpfFornecedor", aCnpjCpf, ConsA_S_N); ListaRegraAddValorLinhaAlfa(ConsNListaFornecedorOrigem, "TipoPessoa", aTipFor, ConsA_S_N); ListaRegraSalvarLinha(ConsNListaFornecedorOrigem); Cur_E095ORM.Proximo(); }; Cur_E095ORM.FecharCursor() Se(nSeqOrm > 0){ AlfaParaInt(aNfcPro, ConsNNumeroNf); ConsASerieNf = aSnfPro; } }