Descrição: | Este Ponto de Entrada permite a manipulação das colunas do browse de Pedidos/Itens dos Pedidos de Venda apresentados na tela de Montagem de Cargas. Exemplo: | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Localização: | Localizado na função OsA200Mont da rotina OMSA200, logo após a criação do array que contém as colunas padrão do browse em questão. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Parâmetros: | O Ponto de Entrada recebe como parâmetro o array aCpoBrw, contendo informações sobre as colunas que serão apresentadas no browse:
¹ Campo exigido pela função MsSelect() apenas para compatibilidade. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Retorno: | Este Ponto de Entrada deve retornar um array nos mesmos moldes que o recebido por parâmetro. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Versões: | 10 ou superiores |
#INCLUDE "PROTHEUS.CH"
User Function DL200BRW()
Local aCpoBrw := 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 a rota e sequência de entrega
// -------------------------------------------------------------------- //
For nI := 1 To Len(aCpoBrw)
// Aumenta o tamanho de cada vetor com objetivo de criar o elemento base da ordenação
ASize(aCpoBrw[nI],5)
// Atribui um valor para o novo elemento conforme a ordem que se deseja alcançar
If aCpoBrw[nI,1] $ "PED_MARCA|PED_ROTA|PED_SEQROT"
aCpoBrw[nI,5] := 100 + nI
ElseIf aCpoBrw[nI,1] $ "PED_CODCLI|PED_LOJA|PED_NOME"
aCpoBrw[nI,5] := 200 + nI
Else
aCpoBrw[nI,5] := 300 + nI
EndIf
Next nI
// Realiza a reordenação, efetivamente
ASort(aCpoBrw,,,{|x,y| x[5] < y[5]})
For nI := 1 To Len(aCpoBrw)
// Retorna o tamanho dos vetores para o padrão
ASize(aCpoBrw[nI],4)
Next nI
Return aCpoBrw