Árvore de páginas

Versões comparadas

Chave

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

Ponto de Entrada para incluir campos adicionais no Resultado, pasta Laboratório - Ensaios

Descrição:

QP215E01 - Inclusão de campos adicionais nos ensaios dos Resultados

Versões:

Microsiga Protheus 12

Idioma:

Português (Brasil)

Sistemas Operacionais Suportados:

Todos

Compatível com as Bases de Dados:

Todos

Retorno:

{aConteudos, aTitulos, aTamanhos}


Sendo:

→ aConteudos: array utilizado quando cOperacao for QP7 ou QP8 com os campos (não é usado quando for FOLDER)

→ aTitulos: array com o conteúdo dos títulos dos campos;

→ aTamanhos: array com o tamanho dos campos;

Parâmetro:

cOperacao := ParamIxb[1]

→ QP7 - trecho de análise de query QP7, checar alias cAliasOPQP7

→ QP8 - trecho de análise de query QP8, checar alias cAliasOPQP7

→ FOLDER - trecho de troca de folder


aEnsaios := ParamIxb[2] (utilizado quando cOperacao == "FOLDER")

Eventos de chamada de Ponto de Entrada:Na abertura da tela de Resultados
Programa Fonte:QIPA215.PRW
Bloco de código
languagedelphi
themeMidnight
firstline1
titleExemplo
linenumberstrue
User Function QP215E01()
 
    Local aConteudos := {}
	Local aEnsaios   := Nil
    Local aTamanhos  := {}
    Local aTitulos   := {}
	Local cOperacao  := Nil
	Local nCampo     := 0
	Local nCampos    := 0
	Local nEnsaio    := 0
	Local nIndResult := 0
	Local nNovos     := 0

	aTitulos  := { "Nivel1", "Campo Teste" }
    aTamanhos := { 70, 50 }
	nNovos    := Len(aTitulos)

	If ParamIXB != Nil
		aEnsaios  := ParamIXB[2]
		cOperacao := ParamIXB[1]
	EndIf

	If  cOperacao  == Nil .OR. cOperacao != "FOLDER"
	    //Variável Private disponível para consulta do alias relacionado: cAliasOPQP7 
		aConteudos := {;
    	    (Posicione("SX5",1,xFilial("SX5")  + "Q6" + QP7->QP7_NIVEL,"X5_DESCRI")) + (Posicione("SX5",1,xFilial("SX5")  + "Q6" + QP8->QP8_NIVEL,"X5_DESCRI")),; 
	        "Valor teste"+ cValtoChar(Random(0,1000));
	    }  

	ElseIf cOperacao == "FOLDER" 
		For nEnsaio := 1 To Len(aEnsaios)
			nCampos    := Len(aResultados[nPosOpe,3, nFldLab, nEnsaio])
			For nCampo := 1 To Len(aTitulos)
				nIndResult := (nCampos - nNovos + nCampo)
				//If aEnsaios[nEnsaio][nIndResult] == aEnsaios[nEnsaio][nIndResult]
					aResultados[nPosOpe, 3, nFldLab, nEnsaio, nIndResult] += "_"+ cValtoChar(Random(0,1000));
				//EndIf
			Next nCampo
		Next nEnsaio

	EndIf

Return {aConteudos,aTitulos,aTamanhos}