Ejemplos: | Bloco de código |
---|
firstline | 1 |
---|
linenumbers | true |
---|
| #INCLUDE "PROTHEUS.CH"
User Function MT161CPO() |
|
Local Local aPropostas := PARAMIXB[1] // Array con los |
| com | os | dados | das | propostas | dos | Fornecedoresproveedores
Local aItens := PARAMIXB[2] // Array |
| com | os | dados | da | ProdutosProductos"
Local aCampos := {"C8_PRECO"} // Array |
| com | os | adicionados | na | Item | da | Propostapropuesta"
Local aCposProd := {"C8_QTSEGUM","C8_SEGUM"} // Array |
| com | os | adicionados | na | ProdutosProductos"
Local aRetorno := {}
Local nX := 0
Local nY := 0
Local nZ := 0
Local nCount := 0
Local aAreaSC8 := SC8->(GetArea())
For nX := 1 To Len(aPropostas)
For nY := 1 To Len(aPropostas[nX])
For nZ := 1 To Len(aPropostas[nX][nY][2])
nCount++
//C8_FILIAL+C8_NUM+C8_FORNECE+C8_LOJA+C8_ITEM+C8_NUMPRO
If Len(aPropostas[nX][nY][1]) > 0
AADD(aPropostas[nX][nY][2][nZ], Posicione("SC8",1,SC8→(C8_FILIAL+C8_NUM)+aPropostas[nX][nY][1][1]+aPropostas[nX][nY][1][2]+aPropostas[nX][nY][2][nZ][2]+aPropostas[nX][nY][2][nZ][12], "C8_PRECO"))
Else
AADD(aPropostas[nX][nY][2][nZ],0)
EndIf
Next nZ
Next nY
Next nX
For nX := 1 To Len(aItens)
//C8_FILIAL+C8_NUM+C8_FORNECE+C8_LOJA+C8_ITEM+C8_NUMPRO
AADD(aItens[nX], Posicione("SC8",1,SC8→(C8_FILIAL+C8_NUM)+aItens[nX][10]+aItens[nX][11]+aItens[nX][12]+aItens[nX][13], "C8_QTSEGUM"))
AADD(aItens[nX], Posicione("SC8",1,SC8→(C8_FILIAL+C8_NUM)+aItens[nX][10]+aItens[nX][11]+aItens[nX][12]+aItens[nX][13], "C8_SEGUM"))
Next nX
AADD(aRetorno, aPropostas)
AADD(aRetorno, aCampos)
AADD(aRetorno, aItens)
AADD(aRetorno, aCposProd)
RestArea(aAreaSC8)
Return aRetorno
|
Bloco de código |
---|
firstline | 1 |
---|
linenumbers | true |
---|
| #INCLUDE "PROTHEUS.CH"
User Function MT161CPO() |
|
Local Local aPropostas := PARAMIXB[1] // Array con los |
| com | os | dados | das | propostas | dos | Fornecedoresproveedores
Local aItens := PARAMIXB[2] // Array |
| com | os | dados | da | ProdutosProductos"
Local aCampos := {"C8_XTESTE"} // Array |
| com | os | adicionados | na | Item | da | Propostapropuesta"
Local aCposProd := {"C8_XVALOR"} // Array |
| com | os | adicionados | na | ProdutosProductos"
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], "TESTE "+Str(nCount,2))
Next nZ
Next nY
Next nX
For nX := 1 To Len(aItens)
AADD(aItens[nX], nX)
Next nX
AADD(aRetorno, aPropostas)
AADD(aRetorno, aCampos)
AADD(aRetorno, aItens)
AADD(aRetorno, aCposProd)
Return aRetorno |
|
Informações adicionaisInformaciones adicionales: | Os nomes dos campos devem ser incluídos nos arrays de retorno na mesma ordem em que foram incluídos nas informações dos produtos e das propostas.
No array de produtos, todos os produtos devem ter os mesmos campos incluídos e no array de dados 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 Los nombres de los campos se deben incluir en los array de devolución en la misma orden en que se incluyeron en las informaciones de los productos y de las propuestas. En el array de productos, todos los productos deben tener los mismos campos incluidos y, en el array de datos de las propuestas, todas las propuestas deben tener los mismos campos incluidos. Este punto de entrada no realiza la grabación de campos en la tabla SC8 y tampoco permite editar la información de los campos personalizados en la pantalla, solo muestra la información.
Estructura del Array aPropostas //aItens[n,x]: | Numero do itemNúmero del ítem //aItens[n,1]: C8_PRODUTO //aItens[n,2]: C8_IDENT //aItens[n,3]: C8_QUANT //aItens[n,4]: C8_ UM //aItens[n,5]: C8_ DATPRF //aItens[n,6]: C8_ FILENT //aItens[n,7]: valor | do produto por proposta escolhidadel producto por propuesta elegida //aItens[n,8]: | Descrição do ProdutoDescripción del producto //aItens[n,9]: Flag finalizado //aItens[n,10]: | FornecedorProveedor //aItens[n,11]: | LojaTienda //aItens[n,12]: | ItemÍtem //aItens[n,13]: | Numero da propostaNúmero de la propuesta //aItens[n,14]: | Item da solicitacaoÍtem de la solicitud //aItens[n,15]: | Preco UnitárioPrecio unitario //aItens[n,16]: B1_CODITE [ | Integração Gestão Integración Gestión de | Concessionárias Concesionarias - MV_VEICULO = S] //aItens[n,17]: B1_GRUPO [ | Integração Gestão Integración Gestión de | Concessionárias Concesionarias - MV_VEICULO = S] // | CABEÇALHOENCABEZADO //aPropostas[n] : Número | da de la página //aPropostas[n,p] : | Posição do pedido na Posición del pedido en la página (1,2) //aPropostas[n,p,1,x] : | Dados do cabeçalho da proposta Datos del encabezado de la propuesta //aPropostas[n,p,1,1 ] : | Cod Fornecedor Cód Proveedor //aPropostas[n,p,1,2 ] : | Loja Tienda //aPropostas[n,p,1,3 ] : | Nome Nombre //aPropostas[n,p,1,4 ] : | Proposta Propuesta //aPropostas[n,p,1,5 ] : Cond | pagto pago //aPropostas[n,p,1,6 ] : | Frete Flete //aPropostas[n,p,1,7 ] : Valor total ( | soma suma de nCusto | dos itensde los ítems) //
| ITENS DA PROPOSTAÍTEMS DE LA PROPUESTA// //aPropostas[n,p,2,x] : | Itens da proposta Ítems de la propuesta //aPropostas[n,p,2,x,1] : Flag | vencendor vencedor (lWin) //aPropostas[n,p,2,x,2] : | Item Ítem (SC8->C8_ITEM) //aPropostas[n,p,2,x,3] : | Cod produto Cód producto (SC8->C8_PRODUTO) //aPropostas[n,p,2,x,4] : Valor total (nCusto) //aPropostas[n,p,2,x,5] : | Data Fecha de entrega ((DATE()+SC8->C8_PRAZO)) //aPropostas[n,p,2,x,6] : | Observações Observaciones (SC8->C8_OBS) //aPropostas[n,p,2,x,7] : | Filial Sucursal Entrega (SC8->C8_FILENT) //aPropostas[n,p,2,x,8] : Flag finalizado (lFim) //aPropostas[n,p,2,x,9] : Recno SC8 (SC8->(Recno())) //aPropostas[n,p,2,x,10] : Ident. (SC8->C8_IDENT) //aPropostas[n,p,2,x,11] : Total | de Itens da Cotação de ítems de la cotización (Len(aItens)) //aPropostas[n,p,2,x,12] : | Nro. da Proposta Nº de la propuesta (SC8->C8_NUMPRO) //aPropostas[n,p,2,x,13] : | Preco Unitario Precio unitario (SC8->C8_PRECO) //aPropostas[n,p,2,x,14] : Flag | vencendor vencedor (lWinAud) //aPropostas[n,p,2,x,15] : Motivo Vencedor (SC8->C8_MOTVENC) |