Árvore de páginas

Versões comparadas

Chave

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

ÍNDICE

  1. Visão Geral;
  2. Eventos;
  3. Parâmetros;
  4. Retorno;
  5. Exemplo de utilização;
  6. 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
languagejs
titleCT030BUTCTB231PR
//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
titleIMPORTANTE

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>