Retorna o número da área de trabalho de um alias especificado.
Sintaxe
Select( [ cAlias ] ) |
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. |
O exemplo abaixo utiliza a RDD "TOPCONN", mas a função pode ser utilizada com qualquer uma das RDDs válidas.
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 |