Histórico da Página
Composition Setup |
---|
import.css=/download/attachments/327912/newLayout.css |
...
Pagetitle | ||||
---|---|---|---|---|
|
Função: Select
...
Retorna o número da área de trabalho de um alias especificado.
Sintaxe
Bloco de código | ||
---|---|---|
| ||
Select( [ cAlias ] ) |
...
Parâmetros
...
Nome | Tipo | Descrição | Obrigatório | Referência |
---|---|---|---|---|
cAlias |
...
caractere | Indica o |
...
alias que será |
...
pesquisado. |
Retorno
...
Nome | Tipo | Descrição |
---|---|---|
nRet | numérico | Retorna o número da |
...
área de trabalho |
...
do alias especificado |
...
. |
Observações
...
- nRet pode variar de 1 ao valor especificado pela chave "MaxWorkAreas" na seção do ambiente no arquivo ini do AppServer. O valor padrão da chave é 1024.
- Se o parâmetro cAlias não for especificado, o retorno será o número da área de trabalho corrente.
- Caso
...
- cAlias seja especificado e o alias não exista, o retorno será 0 (zero).
- A função Sele faz a mesma coisa que a função Select.
- O retorno dessa função pode ser passada como parâmetro da função DBSelectArea, que selecionará a área de trabalho informada.
- Cada área de trabalho corresponde às informações de um único alias.
- A passagem de parâmetros para a função Select, utilizando atribuição em linha, deve sempre estar cercada por parênteses quando utilizada como expressão da instrução "IF".
Exemplos
O exemplo abaixo utiliza a RDD "TOPCONN", mas a função pode ser utilizada com qualquer uma das RDDs válidas.
Bloco de código | |||
---|---|---|---|
|
//Este exemplo, apresenta como utilizar a função Select() para determinar qual área de trabalho//o comando Use...New selecionou.USE Sales NEWSELECT 1conout(SELECT("Sales")) // Resulta: 4//Para selecionar novamente o valor retornado da função Select(), utilize o comando Select com //a sintaxe Select (), da seguinte maneira:USE Sales NEWnWorkArea := Select()USE Customer NEWSELECT (nWorkArea)
...
| |||||
user function exemplo()
Local nHandle1 := TCLink( "MSSQL/DSN1", "127.0.0.1", 7890 )
Local cTable1 := "MYTABLE1"
Local cTable2 := "MYTABLE2"
Local cRDD := "TOPCONN"
// Cria a tabela
DBCreate( cTable1, { { "CPOC", "C", 10, 0 }, ;
{ "CPON", "N", 3, 0 }, ;
{ "CPOD", "D", 8, 0 } }, cRDD )
DBCreate( cTable2, { { "CPOL", "L", 1, 0 }, ;
{ "CPOM", "M", 20*1024, 0 } }, cRDD )
// Abre a tabela 1 em modo exclusivo para leitura criando uma área de trabalho
DBUseArea( .T., cRDD, cTable1, (cTable1), .F., .T. )
conout( Select() ) // Exibe: 1
// Abre a tabela 2 em modo exclusivo para leitura criando uma área de trabalho
DBUseArea( .T., cRDD, cTable2, (cTable2), .F., .T. )
// Exibe o número da área de trabalho atual
conout( Select() ) // Exibe: 2
// Exibe o número da área de trabalho da tabela 1
conout( Select( cTable1 ) ) // Exibe: 1
// Exibe o número da área de trabalho da tabela 2
conout( Select( cTable2 ) ) // Exibe: 2
// Exibe o número da área de trabalho de um alias inexistente
conout( Select( "wrongalias" ) ) // Exibe: 0
// Fecha todas as áreas de trabalho
DBCloseAll()
// Abre a tabela 1 em modo exclusivo para leitura criando uma área de trabalho
DBUseArea( .T., cRDD, cTable1, (cTable1), .F., .T. )
// Abre a tabela 2 em modo exclusivo para leitura reaproveitando a área de trabalho atual
DBUseArea( .F., cRDD, cTable2, (cTable2), .F., .T. )
// Exibe o número da área de trabalho da tabela 2
conout( Select( cTable2 ) ) // Exibe: 1
// Exibe o número da área de trabalho da tabela 1
conout( Select( cTable1 ) ) // Exibe: 0, pois o alias da tabela 1 foi fechado pelo alias da tabela 2
// Fecha todas as áreas de trabalho
DBCloseAll()
// Apaga a tabela 1
TCDelFile( cTable1 )
// Apaga a tabela 2
TCDelFile( cTable2 )
// Desconecta
TCUnlink( nHandle1 )
return
|
Veja também
Visão Geral
Import HTML Content
Conteúdo das Ferramentas
Tarefas