Árvore de páginas

A função OrdSetFocus retorna a ordem de índice corrente e, opcionalmente, define o foco para uma nova ordem.

Sintaxe

OrdSetFocus( [ xExp ], [ cOrdBagName ] )

Parâmetros

Nome

Tipo

Descrição

Obrigatório

Referência

xExp

qualquer

Indica o índice que será pesquisado.

 

 

cOrdBagName

caractere

Recebe o nome de um arquivo no disco contendo uma ou mais ordens de índice.

 

 

Retorno

Nome

Tipo

Descrição

cRet

caractere

Retorna o nome da ordem de controle anterior.

Observações

  • O primeiro parâmetro da função OrdSetFocus pode ser do tipo Caractere ou Numérico. Qualquer parâmetro de outro tipo será desconsiderado pela função e o retorno será o último válido.
  • Para a RDD TOPCONN, caso o primeiro parâmetro seja do tipo Caractere, o preenchimento do segundo parâmetro será obrigatório e deve-se informar o nome da ordem de índice.
  • Caso a função OrdSetFocus seja executada sem uma área ativa, a seguinte mensagem de erro será exibida: Work area not in use
  • Caso a função OrdSetFocus não encontre o índice passado como parâmetro, a seguinte mensagem de erro será exibida: SetOrder - Index not found
  • Na tentativa de utilizar um arquivo de índice do disco local, a seguinte mensagem de erro será exibida: Data base files can only be opened on the server

Exemplos

O exemplo abaixo utiliza a RDD "TOPCONN", mas a função pode ser utilizada com qualquer uma das RDDs válidas.

user function test()
  local cT1 := "T1"
  local nI

  TCLink()
  if TcCanOpen(cT1)
    TCDelFile(cT1)
  endif

  DBCreate(cT1,  {{"T1_COD"  , "N",  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())

  DBSetIndex("T1INDEX1")
  DBSetIndex("T1INDEX2")

  DBSetOrder(2)

  MsgInfo( "Nova ordem definida: T1INDEX2" + chr(10) + "Ordem anterior: " + OrdSetFocus("T1INDEX1", "T1INDEX1") )

  DBCloseArea()
  TCUnLink()

return

Veja também


  • Sem rótulos