Ponto-de-Entrada: GP650ACM - Agrupamento dos Títulos
Abrangências: | Microsiga Protheus 8.11 , Microsiga Protheus 10 |
Versões: | Microsiga Protheus 8.11 , Microsiga Protheus 10 |
Compatível Países: | Todos |
Sistemas Operacionais: | Todos |
Compatível às Bases de Dados: | Todos |
Idiomas: | Espanhol , Inglês |
Descrição:
O ponto de entrada GP650ACM é utilizado no momento do agrupamento dos títulos, sendo possível armazenar no array “aAliasFields” os dados que identificam a origem do título. Exemplo: filial, matricula, verba, centro de custo, valor.
Eventos
Um exemplo de utilização deste ponto de entrada é a necessidade de criar uma tabela para listar todos os lançamentos que fazem parte de um determinado título.
Neste caso é necessário utilizar também o ponto de entrada GP650CHK para obter o número do título.
Programa Fonte
gpem650
Sintaxe
GP650ACM - Agrupamento dos Títulos ( [ ] )
Parâmetros:
Nome | Tipo | Descrição | Default | Obrigatório | Referência | ||||||||||||
Array of Record |
Retorno
-
()
Observações
O exemplo a seguir ilustra a necessidade de criar uma tabela contendo o detalhamento do título, com os lançamentos que o compõe.
Utiliza-se os dois pontos de entrada: GP650ACM e GP650CHK.
Exemplos
============================================||Exemplo de utilização do ponto de entrada GP650ACM||============================================User Function GP650ACM()//ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿//³ Declaracao de Variaveis ³//ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙLocal aArea := GetArea()Local cFil := &cFilLanLocal cMat := &cMatLanLocal cCC := &cCcLanLocal cPD := &cPDLanLocal nSeq := 0 nPos:= Ascan( aAliasFields ,{|x|x[1]+x[2]+x[3]+x[4]==cFil+cMat+cCC+cPD }) If nPos == 0 Aadd( aAliasFields, { cFil, ; cMat, ; cCC, ; cPD, ; "001" } )Else nSeq := VAL(aAliasFields[nPos,5])+1 Aadd( aAliasFields, { cFil, ; cMat, ; cCC, ; cPD, ; strZero(nSeq,3) } )EndIf RestArea(aArea)Return=============================================||Exemplo de utilização do ponto de entrada GP650CHK:||=============================================User Function GP650CHK()Local nX := 1Local aArea := getArea() For nX := 1 to Len(aAliasFields) If Z01->(!dbSeek(aAliasFields[nX,1]+cNovoTit+aAliasFields[nX,2]+aAliasFields[nX,3]+ ; aAliasFields[nX,4]+aAliasFields[nX,5] )) RecLock("Z01", .T. ) Z01->Z01_FILIAL := aAliasFields[nX,1] Z01->Z01_TIT := cNovoTit Z01->Z01_MAT := aAliasFields[nX,2] Z01->Z01_CC := aAliasFields[nX,3] Z01->Z01_PD := aAliasFields[nX,4] Z01->Z01_SEQ := aAliasFields[nX,5] MsUnLock() EndIf Next nXRestArea( aArea )Return
Variáveis
Nome | Tipo | Escopo | Pode Alterar | descrição | ||||||||||
aAliasFields | Array of Record | Global | Não | |||||||||||
cFilLan | Caracter | Global | Não | |||||||||||
cCpoAgrup | Caracter | Global | Não | |||||||||||
cCcLan | Caracter | Global | Não | |||||||||||
cMatLan | Caracter | Global | Não | |||||||||||
cPDLan | Caracter | Global | Não | |||||||||||
cValLan | Caracter | Global | Não |
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas