Histórico da Página
ÍNDICE
- Visão Geral;
- Eventos;
- Parâmetros;
- Retorno;
- Exemplo de utilização;
- Documentos relacionados.
...
O ponto de entrada CTB231PR permite a edição da stored procedure para seleção das informações de origem no momento da consolidação.
02. EXEMPLO DE UTILIZAÇÃO
Ponto de Entrada CTB231PR
...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
...
User Function CTB231PR()
Local aMyHeader := aClone(ParamIxb[1])
//aHeader
Local aMyCols := aClone(ParamIxb[2])
//aCols
Local nItem := ParamIxb[3]
//Linha do aCols
Local nTipo := ParamIxb[4]
//Tipo de manipulação de dado (1 - Carga do aCols; 2- Salvamento na tabela)
Local nPxTeste := aScan(aMyHeader,{|x| Alltrim(x[2]) ==
"CTG_XTESTE"
})
If ( nPxTeste > 0 .And. nTipo == 2 )
Replace CTG_XTESTE With aMyCols[nItem,nPxTeste]
ElseIf (nPxTeste > 0)
aMyCols[nItem,nPxTeste] := IIf(Empty(CTG->CTG_XTESTE),space(Len(CTG->CTG_XTESTE)),CTG->CTG_XTESTE)
EndIf
//Essencial Clonar o array para o aCols (array de escopo privado)
aCols := aClone(aMyCols)
Return()
Deve-se observar com cuidado pois o ponto de entrada é chamado em dois momentos diferentes, no primeiro é para tratar a query referente ao saldo inicial, e o segundo é o processamento das informações a serem consolidadas.
02
...
. EXEMPLO DE UTILIZAÇÃO
Bloco de código | ||||
---|---|---|---|---|
| ||||
//P_E************************************************************************************** //P_E - Ponto de entrada utilizado para customizar novos botões editar query da seleção dos dados de origem //P_E - Parâmetros : aRotina - Array 01 parâmetro - recebe a query que já foi filtrada pela rotina padrão //P_E - 02 parâmetro - recebe a indicação de qual função esta chamando o PE //P_E - 1 - Retorno : aBotoes - Array chamada pela função de saldos iniciais //P_E - 2 - chamada pela função de processamento da consolidação //P_E**************************************************************************************** User Function CT030BUT() Local aBotoes := ParamIXB aAdd(aBotoes,{ "PE" , "Processa( { || CTBA080() })", 0, 0} ) Return aBotoes |
06. DOCUMENTOS RELACIONADOS
...
CTB231PR()
Local cSQLPE := ParamIxb[1]
Local nOper := ParamIxb[2] //Identificação da função que esta chamando, para que seja possível realizar as tratativas em separado.
Local cMsg := ""
If nOper = 1
cMsg := "A função chamadora é a de saldo inicial"
Else
cMsg := "A função chamadora é a de processamento da aglutinação"
Endif
//Atribuindo a variável da nova query a query oriunda do fonte principal.
cSQLPE := cSQLPE
//Retornando a query em branco, para garantir que não irá ocorrer erro.
//cSQLPE := " "
//Atribuindo novas informações a query
//cSQLPE += "declare @dtlp1 char(8)"
Alert(cMsg)
Return cSQLPE
|
Nota | ||
---|---|---|
| ||
Caso a rotina retorne mensagem informando que houve erro na criação ou execução da Stored Procedure, é necessário verificar a escrita da mesma, pois ao passar pelo MsParse alguma instrução não foi reconhecida da forma como é preciso. |
HTML |
---|
<!-- esconder o menu --> <style> div.theme-default .ia-splitter #main { margin-left: 0px; } .ia-fixed-sidebar, .ia-splitter-left { display: none; } #main { padding-left: 10px; padding-right: 10px; overflow-x: hidden; } .aui-header-primary .aui-nav, .aui-page-panel { margin-left: 0px !important; } .aui-header-primary .aui-nav { margin-left: 0px !important; } </style> |