01. DADOS GERAIS

Produto:

Linha de Produto:

Segmento:

Módulo:SIGAOMS - Gestão de Distribuição
Função:OMSA200 - Montagem de Carga
País:Todos Países
Ticket:-
Requisito/Story/Issue (informe o requisito relacionado) :-


02. DESCRIÇÃO

Este Ponto de Entrada permite manipular as colunas do browse de Pedidos/Itens dos Pedidos de Venda, exibido na tela de Montagem de Carga da rotina de Montagem de Carga (OMSA200).

Na manipulação é possível remover, reordenar ou alterar características dos campos a serem apresentados.

03. LOCALIZAÇÃO

Localizado após a criação das colunas a serem exibidas no produto padrão e antes da abertura da tela de Montagem de Carga.

04. PARÂMETROS

Nome

Tipo

DescriçãoObrigatório
aColumnsArray

Array contendo informações sobre as colunas da rotina padrão que serão apresentadas no browse.

Para a estrutura do array, consulte o documento MarkBrow.

Sim


Abaixo a relação dos itens existentes no array:

CódigoCompatibilidade¹TítuloPicture
PED_MARCA


PED_ROTA
Rota
PED_SEQROT
Entrega
PED_PEDIDO
Pedido
PED_ITEM
Item
PED_SEQLIB
Seq. Liberação
PED_CODPRO
Código²
PED_DESPRO
Produto²
PED_FILORI
Filial³
PED_CODCLI
Cliente
PED_LOJA
Loja
PED_NOME
Nome
PED_VALOR
Valor@E 99999999.99 (Número de decimais de acordo com o número de decimais do campo DAK_VALOR).
PED_VOLUM
Volume@E 99999999.99 (Número de decimais de acordo com o número de decimais do campo DAK_CAPVOL).
PED_PESO
Peso@E 99999999.99 (Número de decimais de acordo com o número de decimais do campo DAK_PESO).
PED_CARGA
Carga
PED_QTDLIB
Quantidade
PED_EST
Estado
PED_MUN
Município
PED_BAIRRO
Bairro
PED_CEP
CEP
PED_ENDCLI
Endereço

¹ Campo exigido pela função MsSelect() apenas para compatibilidade.
² Somente se a montagem de carga estiver sendo efetuada a partir dos itens do Pedido (pergunta Aglutina Por? igual a 2 - Itens).
³ Somente se o Template de Operador Logístico estiver ativo.

05. RETORNO

NomeTipoDescriçãoObrigatório
aColumnsArrayArray manipulado pelo Ponto de Entrada.Sim
Em caso de inclusão de itens no array, estes devem ser considerados também nos Pontos de Entrada DL200TRB e OM200GRV.


06. VERSÕES

10 ou superiores.

07. OBSERVAÇÃO

Todos os parâmetros são recebidos na User Function via PARAMIXB, conforme consta em Execblock / Customização.

08. EXEMPLO

#INCLUDE "PROTHEUS.CH" 
User Function DL200BRW() 
Local aColumns := PARAMIXB 
Local nI := 1 // ----------- Exemplo de reordenção das colunas do browse ----------- // 
// Esta regra tem por objetivo posicionar o código do cliente/loja e nome, 
// em frente ao número do pedido, logo após rota e sequência de entrega. 
// -------------------------------------------------------------------- 
// For nI := 1 To Len(aColumns) 
// Aumenta o tamanho de cada vetor com objetivo de criar o elemento base da ordenação ASize(aColumns[nI],5) 
// Atribui um valor para o novo elemento conforme a ordem que se deseja alcançar If aColumns[nI,1] $ "PED_MARCA|PED_ROTA|PED_SEQROT" aColumns[nI,5] := 100 + nI ElseIf aColumns[nI,1] $ "PED_CODCLI|PED_LOJA|PED_NOME" aColumns[nI,5] := 200 + nI Else aColumns[nI,5] := 300 + nI EndIf Next nI 
// Realiza a reordenação, efetivamente ASort(aColumns,,,{|x,y| x[5] < y[5]}) For nI := 1 To Len(aColumns) 
// Retorna o tamanho dos vetores para o padrão ASize(aColumns[nI],4) Next nI Return aColumns