Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.
Composition Setup
import.css=/download/attachments/327912/newLayout.css

Pagetitle
IndexKey
IndexKey

Função: IndexKey

...

IndexKey ( [ nOrdem] ) --> cRet

 

Identifica a expressão da chave de índice especificado na área de trabalho corrente, e o retorna na forma de uma string.

Sintaxe

Bloco de código
collapsefalse
IndexKey( [ nOrdem ] )

Parâmetros

Nome

Tipo

Descrição

Obrigatório

Referência

nOrdem

...

numérico

Indica a ordem do índice na lista de índices abertos

...

na área de trabalho corrente.
O valor padrão 0 (zero) especifica o índice corrente,

...

independente de sua posição real na lista.

...



Retorno

...

Nome

...

Tipo

...

Descrição

cRet

...

caractere

Retorna a expressão da chave do índice especificado na forma de uma string.
Caso não haja um índice correspondente, a função IndexKey() retorna uma string

...

vazia ("").

...

Observações

  • Por padrão, a função IndexKey()

...

  • opera na área de trabalho

...

  • selecionada.

...

  • Contudo, é possível fazê-la operar em uma área de trabalho não selecionada

...

  • , através de expressão aliasada.
  • Caso a pesquisa por uma ordem de índice falhe, seu retorno será uma string vazia ("").
  • Caso a pesquisa por uma ordem de índice falhe para uma área não aberta, seu retorno será uma string vazia ("") e ocorrerá a mensagem de erro Work area not in use.

Exemplos

Bloco de código
languagecpp
themeEclipse
linenumberstrue
collapsefalse
user function test()
  local cT1 := "T1"
  
  TCLink()
  if TcCanOpen(cT1)
    TCDelFile(cT1)
  endif
  
  DBCreate(cT1,  {{"T1_COD" , "C",  2, 0}, ;
                  {"T1_NAME", "C", 10, 0}}, "TOPCONN")
                  
  DBUseArea(.T., "TOPCONN", cT1, (cT1), .F., .F.)
    
  DBCreateIndex("T1INDEX1", "T1_COD"         , {|| T1_COD         })
  DBCreateIndex("T1INDEX2", "T1_COD+T1_NAME" , {|| T1_COD+T1_NAME })
  (cT1)->( DBClearIndex() ) //Força o fechamento dos indices abertos

  dbSetIndex("T1INDEX1") //acrescenta a ordem de indice para a área aberta
  dbSetIndex("T1INDEX2") //acrescenta a ordem de indice para a área aberta
  
  dbSetOrder(2)
  msgInfo("Chave de índice ativo: " + IndexKey(IndexOrd()))
  dbSetOrder(1)
  msgInfo("Chave de índice ativo: " + IndexKey(IndexOrd()))
   
  DBCloseArea()
  tcUnLink()

return

Veja também

cExpr:= SA1->(IndexKey())
Advanced Protheus 6.09 , Advanced Protheus 7.10 , Microsiga Protheus 8.11 , Protheus 10 , TOTVS Application Server 10 , ByYou Application Server

 

...