Skip to content

Tag-icone-mini.png Integração

Referenciado por: Predefinição:Artigos parceiros | Dependências de estrutura de banco | Gerar Nova Assinatura na TTSegur para Parceiros | Integração | Integração de Banco via Rotinas de Importação | Página principal | Roteiro de Treinamento para Processo de Integração | Teste2 | Teste5 |

Interface de Integração de Orçamento via Stored Procedure.

Conceito ​

O processo de integração de orçamentos (DAVs e Pré-vendas) via stored procedure serve para que sistemas parceiros similares ao Totali Order possam enviar DAVs para serem resgatadas pelo Commerce Checkout.

A partir da versão 01.08 do PAF-ECF (2011) passam a vigorar as seguintes regras para a retaguarda:

  • Gravação do DAV no banco de dados deve ser de forma concomitante, ou seja a cada novo item inserido deve-se gravar no banco de dados.
  • O DAV não pode ser impresso mais de uma vez.
  • Após impresso o DAV não pode ser alterado.
  • Não é permitir exclusão de itens de orçamento, podendo apenas cancelar os mesmos.
  • Não permitir alterar a quantidade de um item.
  • Os itens cancelados precisam ser enviados para o Checkout com um campo para definir que ele foi cancelado.
  • Não será permitido incluir novos itens de DAV se o mesmo tiver algum item vendido.

As imagens abaixo ilustram a principal mudança de conceito. Antes o DAV poderia ser todo criado na retaguarda para depois ser passado ao banco de dados. Agora, essas duas etapas se fundiram porque o DAV precisa ser o tempo todo gravado no banco.

  • Antes

  • Depois

A imagem abaixo ilustra o uso das stored procedures para enviar um pedido de venda para o banco de dados.

Pre-venda-2011.png

ENVIA_DAV ​

Método responsável pela inserção ou atualização de uma DAV ou Pré-venda. Quando o orçamento é novo ele não ficará disponível para ser vendido enquanto não for executado o método VALIDA_DAV. Caso alguma inconsistência seja verificada o método gerará exceção. Para PostgreSQL foi implementado como uma função que retorna o campo NUMPED. No Oracle deve-se chamar como Stored Procedure passando os valores por parâmetro e pegando o retorno no parâmetro NUMPED.

ParâmetroSignificadoTipoTamanhoAceita NuloDefaultDomínioColuna Retorno?
CODEXTCódigo ExternoNUMBER15,0Sim
CODSERSérie Padrão para a VendaCHAR2Sim
DOCNFPDocumento p/ NFPVARCHAR215Sim
DATAPRData de aprovaçãoDATE7Sim
CODFILFilialCHAR3
TIPPEDTipo de Pedido/OSCHAR1'O'O - DAV
P - Pré-Venda
CLIEXTCódigo externo do ClienteVARCHAR20
VLRTOTValor TotalNUMBER12,2
VLRPARValor da ParcelaNUMBER12,2
VLRDESValor do Desconto/AcréscimoNUMBER12,2
QTDPARQtd. de ParcelasNUMBER5,0
FILFATFilial. End. FaturaCHAR3
NUMFATNúm. End. FaturaNUMBER4,0
FILENTFilial. End. EntregaCHAR3
NUMENTNúm. End. EntregaNUMBER4,0
FILCOBFilial. End CobrançaCHAR3
NUMCOBNúm. End CobrançaNUMBER4,0
DATVALValidadeDATE7
DATPRI1º ParcelaDATE7
APEVENApelido VendedorVARCHAR10
PLANOPlanoCHAR9
DESPREDescrição da Tabela de Preços (se nulo utiliza VAREJO)VARCHAR30Sim
RESERVReserva?VARCHAR21'F'F - Falso
T - Verdadeiro
EMIDESFrete pelo Emitente?VARCHAR21'F'F - Falso
T - Verdadeiro
PESLIQPeso LíquidoNUMBER12,2Sim
PESBRUPeso BrutoNUMBER12,2Sim
VLRSEGValor do SeguroNUMBER12,2Sim
VLRFREValor do FreteNUMBER12,2Sim
SINALSinal ou EntradaNUMBER12,2Sim
OBSERVObservações de vendaVARCHAR24000Sim
NUMBLONúmero do BlocoVARCHAR28Sim
OBSORCObservação OrçamentoVARCHAR24000Sim
DATSEG2º ParcelaDATE7Sim
APROVATipo AprovaçãoCHAR1'A'A - Aprovado
E - Em Aprovação
APRCLIAprovação ClienteCHAR1'1'1 - Aprovado
A - Em Aberto
2 - Reprovado
PLACASPlaca VeículoVARCHAR27Sim
QTD_KMQtde KMNUMBER7,0Sim
CODSEQCód. Sequen. NSUNUMBER22Sim
CODEMPCódigo da Empresa da RetaguardaNUMBER5(solicitar a Totali)
ASSINAAssinatura do RegistroVARCHAR256Sim
NUMPEDNúmero da DAV ou Pré-VendaCHAR8SimSim
ORCIMPImprimiu?VARCHAR1'F'F - Falso
T - Verdadeiro

ENVIAITEM_DAV ​

Método responsável pela inserção ou atualização de um item de DAV ou Pré-venda. Somente pode ser executado após ter sido incluso o DAV pelo método ENVIA_DAV. Caso alguma inconsistência seja verificada gerará exceção.

ParâmetroSignificadoTipoTamanhoAceita NuloDefaultDomínioColuna Retorno?
CODFILFilial da DAVCHAR3
TIPPEDTipo Pedido/OSCHAR1'O'O - DAV

P - Pré-Venda

NUMPEDNúmero da DAV ou Pré-VendaCHAR8
NUMITEItem (número seqüencial por DAV)NUMBER5,0
VLRCUSValor TotalNUMBER12,2
VLRPGTValor Total Sem Desc/AcrésNUMBER12,2
QTDITEQuantidadeNUMBER12,4
VLRITEVlr. UnitárioNUMBER14,4
VLRENTVlr. Unitário Sem desconto/Acrés.NUMBER14,4
PROEXTCódigo externo do ProdutoVARCHAR20
PROMOCPromoçãoCHAR1'N'N - Não promocional no plano
E - Promocional no plano
Q - Promocional para qualquer plano
PREUNIPreço UnitárioNUMBER12,2Sim
DESMULSub-EstoqueVARCHAR30SimNulo
OBSERVObservaçãoVARCHAR24000Sim
PERIPI% IPI Última CompraNUMBER5,2Sim
ASSINAAssinatura do RegistroVARCHAR256Sim
FLGESTSituação do ItemCHAR1SimA - Aberto
R - Reservado
NULL - Sistema usa o que foi mandado na TT_ORC.RESERV
LOTEXTCódigo externo do loteVARCHAR1Sim20

CANCELAITEM_DAV ​

Método responsável por cancelar um item de DAV.

Caso não encontre o item ou o mesmo não possa ser cancelado gerará uma exceção.

ParâmetroSignificadoTipoTamanhoAceita NuloDefaultDomínioColuna Retorno?
CODFILFilial da DAVCHAR3
TIPPEDTipo Pedido/OSCHAR1'O'O - DAV

P - Pré-Venda

NUMPEDNúmero da DAV ou Pré-VendaCHAR8
NUMITEItem (número seqüencial por DAV)NUMBER5,0

VALIDA_DAV ​

Método responsável pela verificação do DAV e liberação para o Checkout. Realizando validações entre o DAV e seus itens. Caso a validação não gere exceção o DAV ficará disponível para ser resgatado na Venda. Caso alguma inconsistência seja verificada gerará exceção.

ParâmetroSignificadoTipoTamanhoAceita NuloDefaultDomínioColuna Retorno?
CODFILFilial da DAVCHAR3
NUMPEDNúmero da DAV ou Pré-VendaCHAR8
TIPPEDTipo Pedido/OSCHAR1'O'O - DAV

P - Pré-Venda

CANCELA_DAV ​

Função responsável pelo cancelamento de uma DAV.

Obs.: Função não existente para Pré-Venda por obrigação do PAF. Caso não seja possível o cancelamento gerará exceção.

ParâmetroSignificadoTipoTamanhoAceita NuloDefaultDomínioColuna Retorno?
CODFILFilial da DAVCHAR3
NUMPEDNúmero da DAV ou Pré-VendaCHAR8

Procedimentos para Assinatura ​

Os métodos de integração de DAV devem ser executados em uma sessão de banco de dados assinada.
Isso quer dizer que os comandos de integração de DAV devem ser precedidos do comando RegistraAcesso.
O método está descrito no artigo Integração de Banco via Rotinas de Importação.

Impressão de DAV ​

Não é permitido que o DAV/Pré-venda seja impresso mais de uma vez.

Com isso, quem quiser implementar a rotina de impressão deve se preocupar em mandar o parâmetro ORCIMP = 'T' no ENVIA_DAV.
No caso de uma tentativa de reimpressão o sistema deve apresentar a seguinte mensagem:

PAF Req VI item 11 - É vedada a reimpressão de DAV.    

Alterações ​

Versão 5.3 ​

  • Remoção do método ASSINA_DAV.

Versão 5.2A ​

  • Inclusão do campo LOTEXT no ENVIAITEM_DAV.

Versão 5.0G ​

  • Inclusão do campo ORCIMP no ENVIA_DAV.
  • Inclusão do campo FLGEST no ENVIAITEM_DAV.
  • Substituição da função EXCLUIITEM_DAV por CANCELAITEM_DAV.
  • Inclusão de comentários Procedimentos para Assinatura explicando como utilizar RegistraAcesso ao invés de ASSINA_DAV.
  • Inclusão de novas colunas nos parâmetros de ConcatenaIOR.
  • Bloqueio para reimpressão de DAV.

Categorias ​