MCP - Procedures de Inserção
1. Introdução
As procedures de inserção possibilitam na integração a inclusão de novos dados vindos da plataforma Vtrina, basta a mesma realizar a chamada da procedure que necessita, passando os parâmetros que ela espera para inclusão. No grupo de procedures de inserção contamos com as seguintes procedures:
P_VT_CRIA_PEDIDO - Responsável pela criação do cabeçalho de novos pedidos
P_VT_CRIA_ITEMPEDIDO - Responsável pela criação das informações de itens dos pedidos
P_VT_CRIA_PEDIDOXML - Responsável pela gravação do XML da NFe emitida por terceiros
2. Responsável pela criação do cabeçalho de novos pedidos
A procedure P_VT_CRIA_PEDIDO é responsável pela criação do cabeçalho do pedido que é feito nas plataformas digitais, o mesmo realiza a inserção de dados na tabela WECPEDIDO do banco. Os parâmetros esperados são:
Parâmetro | Tipo | Obr. | Informação |
---|---|---|---|
I_PEDCODIGO | VARCHAR2 | S | Código do Pedido no e-Commerce |
I_CLICNPJF | VARCHAR2 | S | CPF ou CNPJ do Cliente |
I_CLIEMAIL | VARCHAR2 | N | Email do Cliente |
I_CLIENDERECO | VARCHAR2 | S | Endereço do Cliente |
I_CLINUMERO | VARCHAR2 | S | Número do Cliente |
I_CLICOMPL | VARCHAR2 | N | Complemento do Endereço |
I_CLIBAIRRO | VARCHAR2 | S | Bairro do Cliente |
I_CLICEP | VARCHAR2 | S | CEP do Cliente |
I_CLICIDADE | VARCHAR2 | S | Cidade do Cliente |
I_CLIESTADO | VARCHAR2 | S | Estado do Cliente |
I_CLIPAIS | VARCHAR2 | S | País do Cliente |
I_CLITEL | VARCHAR2 | S | Telefone do Cliente |
I_PEDIDOSTATUS | VARCHAR2 | S | Status do Pedido |
I_PEDSUBTOTAL | NUMBER | S | Sub Total do Pedido |
I_PEDFORMAPAGTO | VARCHAR2 | S | Forma de Pagamento do Pedido |
I_PEDPARCELAS | NUMBER | S | Quantidade de Parcelas do Pedido |
I_PEDTOTAL | NUMBER | S | Total do Pedido |
I_ENTENDERECO | VARCHAR2 | S | Endereço de entrega do Pedido |
I_ENTNUMERO | VARCHAR2 | S | Número de entrega do Pedido |
I_ENTCOMPL | VARCHAR2 | N | Complemento de Entrega do Pedido |
I_ENTBAIRRO | VARCHAR2 | S | Bairro de Entrega do Pedido |
I_ENTCEP | VARCHAR2 | S | CEP de Entrega |
I_ENTCIDADE | VARCHAR2 | S | Cidade de Entrega |
I_ENTESTADO | VARCHAR2 | S | Estado de Entrega |
I_ENTPAIS | VARCHAR2 | S | País de Entrega |
I_ENTTEL | VARCHAR2 | S | Telefone de Entrega |
I_PEDFRETE | NUMBER | N | Valor do Frete |
I_PEDDATA | DATE | S | Data do Pedido |
I_OBS | VARCHAR2 | N | Observações |
I_CLIINSCEST | VARCHAR2 | S | Inscrição estadual do Cliente |
I_MARKETPLACE | VARCHAR2 | N | Marketplace da venda |
I_PEDMARKET | VARCHAR2 | N | Código do pedido no Marketplace |
I_DATADOWNLOAD | TIMESTAMP | S | Data do Download |
I_IDPARCELA | NUMBER | S | Código do Parcelamento |
I_IDCARTAO | NUMBER | N | Código do Cartão |
2.1 View
Abaixo segue o SQL da procedure usada na criação dos pedidos:
P_VT_CRIA_PEDIDO
CREATE OR REPLACE PROCEDURE VIASOFTVTRINA.P_VT_CRIA_PEDIDO (
I_PEDCODIGO VARCHAR2,
I_CLINOMERAZAOSOC VARCHAR2,
I_CLICNPJF VARCHAR2,
I_CLIEMAIL VARCHAR2,
I_CLIENDERECO VARCHAR2,
I_CLINUMERO VARCHAR2,
I_CLICOMPL VARCHAR2,
I_CLIBAIRRO VARCHAR2,
I_CLICEP VARCHAR2,
I_CLICIDADE VARCHAR2,
I_CLIESTADO VARCHAR2,
I_CLIPAIS VARCHAR2,
I_CLITEL VARCHAR2,
I_PEDIDOSTATUS VARCHAR2,
I_PEDSUBTOTAL NUMBER,
I_PEDFORMAPAGTO VARCHAR2,
I_PEDPARCELAS NUMBER,
I_PEDTOTAL NUMBER,
I_ENTENDERECO VARCHAR2,
I_ENTNUMERO VARCHAR2,
I_ENTCOMPL VARCHAR2,
I_ENTBAIRRO VARCHAR2,
I_ENTCEP VARCHAR2,
I_ENTCIDADE VARCHAR2,
I_ENTESTADO VARCHAR2,
I_ENTPAIS VARCHAR2,
I_ENTTEL VARCHAR2,
I_PEDFRETE NUMBER,
I_PEDATA DATE,
I_OBS VARCHAR2,
I_CLIINSCEST VARCHAR2,
I_MARKETPLACE VARCHAR2,
I_PEDMARKET VARCHAR2,
I_DATADOWNLOAD TIMESTAMP,
I_IDPARCELA NUMBER,
I_IDCARTAO NUMBER,
I_ESTABPED NUMBER
)
AS
BEGIN
INSERT INTO VIASOFTMCP.WECPEDIDO
(PEDCODIGO,
CLINOMERAZAOSOC,
CLICNPJF,
CLIEMAIL,
CLIENDERECO,
CLINUMERO,
CLICOMPL,
CLIBAIRRO,
CLICEP,
CLICIDADE,
CLIESTADO,
CLIPAIS,
CLITEL,
PEDIDOSTATUS,
PEDSUBTOTAL,
PEDFORMAPAGTO,
PEDPARCELAS,
PEDTOTAL,
ENTENDERECO,
ENTNUMERO,
ENTCOMPL,
ENTBAIRRO,
ENTCEP,
ENTCIDADE,
ENTESTADO,
ENTPAIS,
ENTTEL,
PEDFRETE,
PEDATA,
OBS,
CLIINSCEST,
MARKETPLACE,
PEDMARKET,
DATADOWNLOAD,
IDPARCELA,
IDCARTAO,
ESTABPED
)
VALUES
(
I_PEDCODIGO,
I_CLINOMERAZAOSOC,
I_CLICNPJF,
I_CLIEMAIL,
I_CLIENDERECO,
I_CLINUMERO,
I_CLICOMPL,
I_CLIBAIRRO,
I_CLICEP,
I_CLICIDADE,
I_CLIESTADO,
I_CLIPAIS,
I_CLITEL,
I_PEDIDOSTATUS,
I_PEDSUBTOTAL,
I_PEDFORMAPAGTO,
I_PEDPARCELAS,
I_PEDTOTAL,
I_ENTENDERECO,
I_ENTNUMERO,
I_ENTCOMPL,
I_ENTBAIRRO,
I_ENTCEP,
I_ENTCIDADE,
I_ENTESTADO,
I_ENTPAIS,
I_ENTTEL,
I_PEDFRETE,
I_PEDATA,
I_OBS,
I_CLIINSCEST,
I_MARKETPLACE,
I_PEDMARKET,
I_DATADOWNLOAD,
I_IDPARCELA,
I_IDCARTAO,
I_ESTABPED
);
COMMIT;
END P_VT_CRIA_PEDIDO;
3. Responsável pela criação das informações de itens dos pedidos
A procedure P_VT_CRIA_ITEMPEDIDO é responsável pela criação dos itens do pedido que é feito nas plataformas digitais, o mesmo realiza a inserção de dados na tabela WECPEDIDOITEM do banco. Os parâmetros esperados são:
Parâmetro | Tipo | Obr. | Informação |
---|---|---|---|
I_IDITEM | VARCHAR2 | S | Código do Item |
I_DESCRICAO | VARCHAR2 | S | Descrição do Item |
I_SUBTOTAL | NUMBER | S | Sub-Total do Item |
I_QUANTIDADE | NUMBER | S | Quantidade do Item |
I_DESCONTO | NUMBER | S | Desconto do Item |
I_VALORTOTAL | NUMBER | S | Valor total do Item |
I_SEQITEM | NUMBER | S | Sequência do Item |
I_PEDCODIGO | VARCHAR2 | S | Código do Pedido |
3.1 View
Abaixo segue o SQL da procedure usada na criação dos itens de pedidos:
P_VT_CRIA_ITEMPEDIDO
CREATE OR REPLACE PROCEDURE VIASOFTVTRINA.P_VT_CRIA_ITEMPEDIDO (
I_IDITEM VARCHAR2,
I_DESCRICAO VARCHAR2,
I_SUBTOTAL NUMBER,
I_QUANTIDADE NUMBER,
I_DESCONTO NUMBER,
I_VALORTOTAL NUMBER,
I_SEQITEM NUMBER,
I_PEDCODIGO VARCHAR2
)
AS
BEGIN
INSERT INTO VIASOFTMCP.WECPEDIDOITEM
(
IDITEM,
DESCRICAO,
SUBTOTAL,
QUANTIDADE,
DESCONTO,
VALORTOTAL,
SEQITEM,
PEDCODIGO
)
VALUES
(
I_IDITEM,
I_DESCRICAO,
I_SUBTOTAL,
I_QUANTIDADE,
I_DESCONTO,
I_VALORTOTAL,
I_SEQITEM,
I_PEDCODIGO
);
COMMIT;
END P_VT_CRIA_ITEMPEDIDO;
4. Grava o XML da NFe emitida por terceiros (MERCADO LIVRE FULL) que está relacionada ao pedido
A procedure P_VT_CRIA_PEDIDOXML é responsável por inserir o XML da NFe que foi emitida por sistemas de terceiros, no processo, onde esse terceiro é responsável pela venda do produto, como é caso do MERCADO LIVRE FULL. Onde o Contrushow faz o envio do produto fisicamente para o armazém do mercado livre, através de uma nota com CFOP para transferência de produto para estoque de produto em posse de terceiros, e quando o consumidor final faz o pedido, o próprio mercado livre faz a emissão da NFe. O trabalho da VTRINA nessa situação, além de inserir o cabeçalho do produto na WECPEDIDO, também é gravar o XML dessa NFe para que o Construshow possa (através de job automatizado) importar essa NFe para dentro do da base de dados do Construshow.
Parâmetro | Tipo | Obr. | Informação |
---|---|---|---|
I_PEDCODIGO | VARCHAR2 | S | Código do Pedido |
I_XML | CLOB | S | XML da NFe de Venda |
4.1 View
P_VT_CRIA_PEDIDOXML
create or replace PROCEDURE VIASOFTVTRINA.P_VT_CRIA_PEDIDOXML (
I_PEDCODIGO VARCHAR2,
I_XML CLOB
) AS
BEGIN
IF ( LENGTH(I_XML) > 0 ) THEN
INSERT INTO VIASOFTMCP.WECPEDIDOXML(PEDCODIGO, XMLNFE)
VALUES(I_PEDCODIGO, I_XML);
END IF;
COMMIT;
END P_VT_CRIA_PEDIDOXML;