Árvore de páginas

Versões comparadas

Chave

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

...

Descrição:

O Ponto de Entrada MT161CPO permite incluir campos customizados na grid "Item da Proposta" na rotina de análise de cotação (MATA161).

Eventos:

A chamada do Ponto de Entrada MT161CPO ocorre ao clicar no botão "Análise da cotação" na rotina Analisa Cotações (MATA161).

Programa Fonte:

MATA161.PRW

Função:

MATA161 - Analise da cotação - Mapa de Cotação

Parâmetros:
ParâmetroTipoDescriçãoObrigatório
PARAMIXB[1]ArrayArray contendo os dados das propostas dos fornecedoresSim
Retorno:
NomeTipoDescriçãoObrigatório
aRetArrayArray com duas dimensões contendo:
1 - Os dados das propostas dos fornecedores na mesma estrutura do array recebido como parâmetro, acrescido das informações dos campos incluídos.
2 - Array com o nome dos campos incluídos. 
Sim
Exemplo:

User Function MT161CPO()

Local aPropostas := PARAMIXB[1] // Array com os dados das propostas dos Fornecedores
Local aCampos := {"C8_XTESTE","C8_XVALOR"}
Local aRetorno := {}
Local nX := 0
Local nY := 0
Local nZ := 0
Local nCount := 0

For nX := 1 To Len(aPropostas)
For nY := 1 To Len(aPropostas[nX])
For nZ := 1 To Len(aPropostas[nX][nY][2])
nCount++
AADD(aPropostas[nX][nY][2][nZ],"TEXTO "+Str(nCount,2))SC8->C8_XTESTE)
AADD(aPropostas[nX][nY][2][nZ],nCountC8->C8_XVALOR)
next nZ
Next nY
Next nX

AADD(aRetorno,aPropostas)
AADD(aRetorno,aCampos)

Return aRetorno

Informações adicionais:

Os nomes dos campos devem ser incluídos no array de retorno na mesma ordem em que foram incluídos nas informações das propostas.
Todas as propostas devem ter os mesmos campos incluídos.
Este ponto de entrada não efetua gravação de campos na tabela SC8 e também não permite editar as informações dos campos customizados na tela, somente exibição das informações.

Estrutura do Array aPropostas

//CABEÇALHO//
//aPropostas[n] : número da página
//aPropostas[n,p] : posição do pedido na página (1,2)
//aPropostas[n,p,1,x] : Dados do cabeçalho da proposta
//aPropostas[n,p,1,1 ] : Cod Fornecedor
//aPropostas[n,p,1,2 ] : Loja
//aPropostas[n,p,1,3 ] : Nome
//aPropostas[n,p,1,4 ] : Proposta
//aPropostas[n,p,1,5 ] : Cond pagto
//aPropostas[n,p,1,6 ] : Frete
//aPropostas[n,p,1,7 ] : Valor total (soma de nCusto dos itens)
//ITENS DA PROPOSTA//
//aPropostas[n,p,2,x] : Itens da proposta
//aPropostas[n,p,2,x,1] : Flag vencendor
//aPropostas[n,p,2,x,2] : Item
//aPropostas[n,p,2,x,3] : Cod produto
//aPropostas[n,p,2,x,4] : Valor total (nCusto)
//aPropostas[n,p,2,x,5] : Data de entrega
//aPropostas[n,p,2,x,6] : Observações
//aPropostas[n,p,2,x,7] : Filial Entrega
//aPropostas[n,p,2,x,8] : Flag finalizado
//aPropostas[n,p,2,x,9] : Recno SC8
//aPropostas[n,p,2,x,10]: Identificador de rastramento (C8_IDENT)
//aPropostas[n,p,2,x,11]: Posição do item dentro do array de itens
//aPropostas[n,p,2,x,12]: Número da proposta