Árvore de páginas

Versões comparadas

Chave

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

Tempo aproximado para leitura: 10  11 min


01. DADOS GERAIS

Linha de Produto:Microsiga Protheus
Segmento:Supply Chain - Logística
Módulo:SIGAOMS - Gestão de Distribuição
Função:

OMSXCPL6 - Envio do Pedido de Venda

OMSXCPL6A - Alteração da Quantidade de Integração

OMSXCPL - Funções para o Envio do XML de Integração


02. SITUAÇÃO/REQUISITO

Necessidade da implementação da integração parcial do Pedido de Venda com o Cockpit Logístico (CPL).

03. SOLUÇÃO

Alteração da Quantidade da Integração

Para possibilitar o envio parcial do Pedido foi incluído o botão Alterar Quantidade da Integração, que também pode ser acessado via tecla de atalho F10, na rotina de Envio de Pedidos de Venda (OMSXCPL6), o qual será responsável por acessar uma tela que permite a alteração da quantidade de integração dos itens do Pedido posicionado no Browse. 

Ao salvar a tela de alteração, o sistema armazenará a quantidade de envio para o item, contudo, o envio do Pedido ao CPL continuará sendo por intermédio da seleção do Pedido e utilização do botão Enviar Dados.

Se a quantidade de integração não for alterada antes do envio do Pedido, o sistema enviará a quantidade disponível total do Pedido de Venda.

Ainda sobre a tela de Alteração da Quantidade para Integração, o campo Saldo Pedido é calculado conforme informado nos parâmetros da rotina. Se este for informado serão enviadas apenas as quantidades liberadas igual à sim, sendo que o saldo do Pedido será calculado da seguinte maneira:

Informações
iconfalse

Soma da quantidade liberada do pedido (C9_QTDLIB) do produto/item menos a quantidade já integrada (DK3_QTDINT) do produto/item.

Caso contrário, o saldo do Pedido será calculado por meio da seguinte lógica:

Informações
iconfalse

Soma da quantidade de venda do pedido (C6_QTDVEN) do produto/item menos a quantidade já integrada (DK3_QTDINT) do produto/item.

Para garantir a integridade das informações enviadas para o CPL, antes de efetivar envio do XML de integração com o CPL o sistema revalidará se o saldo atual do Pedido de Venda está de acordo com a quantidade digitada para a integração. Se o saldo do Pedido for menor que a quantidade de integração, o Pedido não será enviado e será gravado um registro de falha (DJW) informando que o saldo deste não encontra-se disponível.

Ao final do finalizar o processamento do envio dos Pedidos será apresentado um resumo do envio, que mostrará o qual apresentará as falhas¹, quando houveremexistirem, e os Pedidos/sequências enviadas enviados com sucesso. Tal resumo foi desenvolvido para evidenciar as falhas ocorridas e as sequências de integração geradas para cada Pedido.

Além disso, os Pedidos com falha de integração apresentarão status de falha (vermelho) na tela de Envio de Pedidos, para melhor identificação dos Pedidos que não foram enviados.

Observamos que alguns comportamentos da rotina de Envio de Pedidos de Venda, tais como, se for selecionado para o Refresh da tela (teclas de atalho F5 e F12) e existirem quantidades integradas alteradas, estas serão perdidas, contudo, antes disso ocorrer será apresentada uma mensagem para que seja confirmada a ação de Refresh. Quando selecionado, via parâmetros do pergunte, que se deseja enviar apenas as quantidades liberadas, isso não obriga que todas as quantidades do Pedido estejam liberadas para então realizar o envio, ou seja, o sistema permitirá o envio de qualquer quantidade liberada do Pedido.

Card documentos
InformacaoPara que o item do Pedido não seja enviado, basta que a quantidade de integração informada seja 0 (zero). Os campos de quantidades são apresentados sempre na primeira unidade de medida do produto.
TituloIMPORTANTE!

¹ As falhas apresentadas são as retornadas pelo Cockpit e que, em muitos casos, pode conter apenas o código do erro, por exemplo: ObjectDoesntExist. Para visualizar a mensagem tratada, é necessário consultar via rotina de Log do próprio Cockpit.

Status da Integração

Os Pedidos da integração da tela de Envio de Pedidos passarão a contar com mais um status, denominado de Integrado Parcial, para filtro e visualização na rotina de Envio de Pedidos de Venda. Sendo assim, cada status possuirá o seguinte significado:

Estado
colourYellow
titleNão Integrado
 - Status apresentado quando o Pedido não possuí quantidades integradas.

Estado
colourGreen
titleIntegrado
 - Status apresentado quando o Pedido possuí todas as quantidades integradas, de todos os  itens.

Estado
colourBlue
titleIntegrado Parcial
 - Status apresentado quando o Pedido possuí alguma quantidade integrada em qualquer um dos itens, mas nem todas as quantidades foram integradas.

Estado
colourRed
titleFalha de Integração
 - Status apresentado quando o Pedido possuí algum registro de falha gravado para qualquer um dos itens.

Status do Pedido

Os status do Pedido da tela de Envio de Pedidos não sofreram alterações, contudo, seguem as definições de quando será apresentado cada um deles:

Estado
colourGreen
titlePedido em Aberto
 - Status apresentado quando o Pedido possuí quantidades que ainda não estão liberadas. Expressão: SC5.C5_LIBEROK = ' ' AND SC5.C5_NOTA = ' ' AND SC5.C5_BLQ = ' '

Estado
colourRed
titlePedido Encerrado
 - Status apresentado quando o Pedido encontra-se faturado. Expressão: SC5.C5_NOTA <> ' ' OR (SC5.C5_LIBEROK = 'E' AND SC5.C5_BLQ = ' ')

Estado
colourYellow
titlePedido Liberado
 - Status apresentado quando o Pedido possuí quantidades liberadas. Expressão: SC5.C5_LIBEROK <> ' ' AND SC5.C5_NOTA = ' ' AND SC5.C5_BLQ = ' '

Estado
colourBlue
titlePedido Bloqueado por Regra
 - Status apresentado quando o Pedido encontra-se bloqueado por regra. Expressão: SC5.C5_BLQ = '1'.

Estado
titlePedido Bloqueado por Verba
 - Status apresentado quando o Pedido encontra-se bloqueado por verba. Expressão: SC5.C5_BLQ = '2'

Envio do Pedido

No momento do envio do Pedido a tag identify do XML enviado será formada pelas seguintes informações:  EMPRESA¹ + FILIAL + SEQUÊNCIA DE INTEGRAÇÃO + NÚMERO DO PEDIDO.

Portanto, dentro do Cockpit Logístico o código do Pedido será uma concatenação dessas informações. Por exemplo, o Pedido da empresa 01, filial 05, sequência de integração 000002 e número do Pedido 000023 será identificado da seguinte maneira: 0105-000002-000023.

Ao confirmar o envio do Pedido para o CPL, o sistema gravará a sequência de integração², os Pedidos, os itens e as quantidades integradas na tabela de Sequência de Integração CPL (DK3) Essa tabela é responsável por manter as quantidades já enviadas para o CPL. 

¹ O código da empresa apenas é enviado quando o parâmetro DefaultCompany não estiver informado no appserver.ini, na seção NEOLOG.

² A sequência de integração é gerada pelo sistema para cada vez que o Pedido é enviado para o CPL. Essa sequência é única por Pedido.

Alterações de Dicionário

As alterações de dicionário necessárias para que a funcionalidade seja utilizada são:

Tabela DK3 - Sequência de Integração CPL
Índice Único: DK3_FILIAL+DK3_PEDIDO+DK3_ITEMPE+DK3_PRODUT+DK3_SEQUEN
CampoTítuloDescriçãoTipoTamanhoExibe BrowseVisualContextoUtilização
DK3_FILIALFilialFilial do sistemaC2NãoAlterarRealNão utilizado
DK3_SEQUENSeq. Integ.Sequência de IntegraçãoC6SimVisualizarRealUtilizado por todos os módulos
DK3_PEDIDOPedidoPedido de VendaC6SimVisualizarRealUtilizado por todos os módulos
DK3_ITEMPEItem Ped.Item do Pedido de VendaC2SimVisualizarRealUtilizado por todos os módulos
DK3_PRODUTProdutoCódigo do ProdutoC15SimVisualizarRealUtilizado por todos os módulos
DK3_QTDINTQtd.Integra.Quantidade IntegraçãoN9SimAlterarRealUtilizado por todos os módulos
DK3_VIAGIDViagem CPLIdentificador Viagem CPLC10SimVisualizarRealUtilizado por todos os módulos
DK3_STATUSStatus Int.Status IntegraçãoC1SimVisualizarRealUtilizado por todos os módulos

Tabela SC6 - Itens do Pedido de Venda

Campo

Lista de Opções

C6_INTROT

1=Não Integrado;

2=Integrado;

3=Falha de Integração;

4=Integrado Parcial

Pergunte Grupo OMSXCPL6

Ordem

Pergunta

Tipo

Tamanho

Objeto

Pré-seleção

Item 1

Item 2

Item 3

Item 4

Item 5

20

Status Integração? 

C

1

Combo

5

Não integrado

Integrado

Integrado Parci

Falha de Integr.

Todos Status

22

Enviar Apenas Qtd. Liberadas? 

C

1

Combo

1

Sim

Não





04. DEMAIS INFORMAÇÕES

Requisitos: DLOGWMSMSP-5569 / DLOGWMSMSP-5838


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>