Beruflich Dokumente
Kultur Dokumente
EVAL
Revisão: 16/07/2002
Abrangência
Versão 5.07 Versão 5.08 Versão 6.09 Versão 7.10 Versões Anteriores
Sintaxe
Parâmetros
Retorno
Tipo Descrição
EVAL() retorna o valor da última expressão dentro do bloco. Um bloco de código
(Qualquer)
pode retornar um valor de qualquer tipo.
Descrição
EVAL() é uma função de tratamento de blocos de código. Ela é o dispositivo mais básico no
sistema Advpl para avaliar blocos de código. Um bloco de código é um valor de dados especiais
que se refere a uma parte do código de programa compilado. Para maiores informações sobre
blocos de código, consulte o capítulo Conceitos Básicos neste livro.
Para executar ou avaliar um bloco de código, você pode chamar EVAL() com o valor de bloco e
quaisquer parâmetros. Os parâmetros são Fornecidos ao bloco quando ele é executado. Blocos
de código pode ser uma série de expressões separadas por vírgulas. Quando um bloco de
código é avaliado, o valor retornado é o valor da última expressão no bloco.
Um bloco de código geralmente é compilado em tempo de compilação pelo compilador do
Advpl. Existem, porém, ocasiões em tempo de execução quando pode ser necessário que você
compile um bloco de código a partir de uma cadeia de caracteres. Isto pode ser feito utilizando-
se o operador macro (&).
EVAL() é frequentemente utilizado para criar funções iterator. Estas funções aplicam um bloco
para cada membro de uma estrutura de dados. AEVAL(), ASORT(), ASCAN(), e DBEVAL() são
funções iterator. AEVAL(), por exemplo, aplica um bloco para cada elemento dentro de um
vetor.
GETREMOTETYPE
Revisão: 19/11/2004
Abrangência
Versão 8.11
Sintaxe
Retorno
Tipo Descrição
Numérico nRmtType corresponde ao número correspondente à interface utilizada.
Descrição
Através da função GetRemoteType(), é possível identificar sob qual interface o programa atual
está em execução.
ISSRVUNIX
Revisão: 12/06/2003
Abrangência
Sintaxe
Retorno
Tipo Descrição
Se .T. o servidor está sendo executado em ambiente Unix(r) ou Linux(r)
Lógico
Se .F. o servidor está sendo executado em ambiente Windows(r)
Descrição
Informa se o servidor Advanced Protheus está sendo executado em ambiente UNIX ou Linux.
MSCRC32
Revisão: 03/07/2003
Abrangência
Versão 5.07 Versão 5.08 Versão 6.09 Versão 7.10 Versão 8.11
Sintaxe
Parâmetros
Retorno
Tipo Descrição
Um número inteiro , com até 10 (dez) dígitos , correspondente ao CRC da string
Numérico
informada como parâmetro.
Descrição
Calcula um CRC de uma string. A função MSCRC32() calcula um CRC de uma string informada e
retorna um número com esse cálculo.
Note que strings iguais retornam CRC iguais, porém, nem sempre strings diferentes retornam
CRC diferentes.
MSCRC32STR
Revisão: 02/07/2003
Abrangência
Versão 5.07 Versão 5.08 Versão 6.09 Versão 7.10 Versão 8.11
Sintaxe
Parâmetros
Retorno
Tipo Descrição
Caracter Uma string com o CRC da string informada.
Descrição
MSCRC32STR() calcula um CRC de uma string informada , retornando uma string com esse
cálculo.
Note que strings iguais retornam CRC iguais, porém nem sempre strings diferentes retornam
CRC diferentes.
RANDOMIZE
Revisão: 11/12/2003
Abrangência
Sintaxe
Parâmetros
Retorno
Tipo Descrição
Numero randômico , compreendido no intervalo entre (nMinimo) e (nMaximo-1)
Numérico : O numero gerado pode ser maior ou igual à nMinimo e menor ou igual a
nMaximo-1 .
Descrição
Observação :
O limite inferior recebido através do parâmetro nMinimo é "maior ou igual a ", podendo ser
sorteado e fazer parte do retorno; porém o limite superior é "menor que", de modo a nunca
será atingido ou devolvido no resultado. Por exemplo , a chamada da função randomize(1,2)
sempre retornará 1 .
SENDTOFORE
Revisão: 14/07/2003
Abrangência
Versão 5.07 Versão 5.08 Versão 6.09 Versão 7.10 Versão 8.11
Sintaxe
Retorno
Tipo Descrição
(NULO) Esta função não retorna valor
Descrição
Esta função torna a aplicação do Remote foreground na estação em que está sendo executado.
Faz com que a janela ativa do Remote fique acima de todas as janelas de outras aplicações
executadas na estação.
Revisão: 16/07/2002
Abrangência
Sintaxe
Retorno
Tipo Descrição
Retorna o status da ultima operação de Criação de Objeto XML realizado pelo
Caracter
comando CREATE oXml ...
Descrição
A funcao XmlError() retorna um status da execução da ultima rotina de criação de Objeto XML
realizada pelo comando CREATE oXML. Podemos utilizar-nos das constantes definidas no
arquivo # INCLUDE "XmlxFun.CH" para realizar o tratamento de erro. Vide tabelas de
constantes abaixo :
----------------------------------------
Constante Valor
----------------------------------------
XERROR_ONLYFIRSTNODE -1
XERROR_SUCCESS 0
XERROR_FILE_NOT_FOUND 1
XERROR_OPEN_ERROR 2
XERROR_INVALID_XML 3
----------------------------------------
Funções de Banco de Dados
ALIAS
Revisão: 25/07/2002
Abrangência
Versão 5.07 Versão 5.08 Versão 6.09 Versão 7.10 Versões Anteriores
Sintaxe
Parâmetros
Retorno
Tipo Descrição
ALIAS() retorna o alias da área de trabalho especificada na forma de uma cadeia
de caracteres, em letra maiúscula. Caso < nAreaTrabalho> nao seja especificada,
Caracter é retornado o alias da área de trabalho corrente. Se nao houver nenhum arquivo
de banco de dados em USo na área de trabalho especificada, ALI AS() retorna
uma cadeia de caracteres nula ("").
Descrição
ALI AS() é uma funçao de banco de dados utilizada para determinar o alias da área de trabalho
especificada. Alias é o nome atribuido a uma área de trabalho quando um arquivo de banco de
dados está em uso. O nome real atribuido é o nome do arquivo de banco de dados, ou um
nome que foi explicitamente atribuido através da cláusula ALIAS do comando USE.
ALI AS() é o inverso da funçao SELECT(). ALIAS() retorna o alias através do número da área de
trabalho, e SELECT() retorna o número da área de trabalho através do alias.
BTVCANOPEN
Revisão: 30/08/2002
Abrangência
Sintaxe
Parâmetros
Retorno
Tipo Descrição
Retorna falso se não foi possível abrir a tabela a ser testada. Principais motivos:
Não existe o arquivo da tabela ou
(NULO) do índice fisicamente; ou as definições da tabela ou índice em questão não
foram encontradas.
Retorna verdadeiro se a tabela testada pode ser aberta.
Descrição
BTVCONOPEN() é uma função que verifica se a tabela definida pelo parâmetro cNome pode ser
aberta e, se existir, o parâmetro cIndice verifica, também, se o índice pode ser aberto. Para
tanto, é testado se os arquivos envolvidos existem fisicamente, caso afirmativo, é verificado se
as definições envolvidas são encontradas nos arquivos do DDF's.
Exemplo
// Este exemplo demonstra o uso típico de BTVCanOpen().
Se não falhar, a tabela e o índice testados serão abertos. Se falhar,
uma mensagem é apresentada.
BTVCREATEDDFS
Revisão: 30/08/2002
Abrangência
Versão 5.07 Versão 5.08 Versão 6.09 Versão 7.10
Sintaxe
Parâmetros
Retorno
Tipo Descrição
Retorna falso se não conseguiu gerar os novos arquivos de definição. Principais
erros: RDD não é Btrieve; diretório não está dentro do Protheus; não pode
carregar as informações de definição
(NULO)
ou não pode gravar os novos arquivos de definição.
Descrição
BTVDROPIDXS
Revisão: 30/08/2002
Abrangência
Retorno
Tipo Descrição
Retorna Falso se não conseguiu apagar os índices. Principais erros: RDD não é
Lógico Btrieve, não achou as definições no DDF, o arquivo não está exclusivo;
Retorna Verdadeiro se a deleção de índices ocorrida com sucesso;
Descrição
BTVDropIdxs() apaga os índices da tabela corrente, com exceção do índice interno, apenas se o
mesmo for Btrieve e estiver aberto exclusivo. Para tanto ela executa os seguintes passos:
- Fecha todos os índices;
- Apaga as definições dos índices nos arquivos do diretório DDF;
- Apaga os índices do arquivo da tabela corrente. Todos os índices criados de
forma permanente ficam guardados na estrutura da tabela. Quando a tabela
for aberta, todos os índices criados de forma permanente e o índice interno
serão abertos também. Por isso, é recomendada a criação de índices de
forma temporária.
Exemplo:
/ / Este exemplo demonstra o uso típico de BTVDropIdxs(). Se não falhar, os índices são
apagados e o processo continua. Se falhar, uma mensagem é apresentada.
BTVTABLES
Revisão: 30/08/2002
Abrangência
Sintaxe
Retorno
Tipo Descrição
Retorna NIL se não conseguiu montar o array. Principais erros: RDD não é
Btrieve ou não conseguiu recuperar as informações corretamente do arquivo
Array
FI LE.BTV do DDFs.
Retorna um Array com a lista com os nomes das tabelas extraídas do DDF.
Descrição
BTVTABLES retorna array composto por nomes das tabelas definidas no DDF do Protheus. Para
tanto verifica todos os nomes das tabelas armazenados no arquivo FILE.BTV do DDF e retorna
um array com todos eles. Toda tabela criada possui o nome acrescentado neste arquivo de
definições.
Exemplo:
/ / Este exemplo demonstra o uso típico de BTVTables(). Se não falhar, é montado um array
com os nomes das tabelas e esses nomes são mostrados no servidor. Se falhar, uma
mensagem é apresentada.
a:= BTVTables()
IF a= Nil
Messagebox("Não foi possível montar o array com os nomes das tabelas","Erro", 0)
ELSE
FOR i:= 1 to LEN(a)
ConOut(a[i])
NEXT
ENDIF
CTREEDELIDXS
Revisão: 26/08/2003
Abrangência
Sintaxe
Retorno
Tipo Descrição
Retorna Falso se não conseguiu deletar os índices. Principais
erros: RDD não é Ctree, não fechou a tabela, não apagou o arquivo de índice ou
Lógico
não atualizou as informações da tabela; não abriu a tabela novamente.
Retorna Verdadeiro se a deleção de índices ocorrida com sucesso.
Descrição
CtreeDelIdxs() apaga os índices da tabela corrente, com exceção do índice interno, apenas se o
mesmo for CTree e estiver exclusiva. Para tanto, ela executa os seguintes passos:
- Fecha os índices abertos;
- Fecha a tabela;
- Deleta os arquivos de índice fisicamente;
- Atualiza as informações da tabela, removendo os índices de sua estrutura;
- Abre novamente a tabela.
Todos os índices criados de forma permanente ficam guardados na estrutura
da tabela. Portanto, não adianta deletar os arquivos de índices, pois quando a tabela for aberta,
todos os índices criados de forma permanente e o índice interno serão recriados fisicamente (se
não existirem); caso contrário, a tabela não será aberta. Por isso, é recomendada a criação de
índices de forma temporária.
Importante: Após a remoção dos índices a tabela será posicionada no primeiro registro.
Exemplo:
/ / Este exemplo demonstra o uso típico de CtreeDelIdxs(). Se não falhar,
os índices são apagados e o processo continua. Se falhar, uma mensagem
é apresentada.
USE Clientes SHARED NEW
IF !CtreeDelIdxs()
Messagebox('Não foi possível deletar os índices da tabela corrente','Erro',0)
ENDIF
CTREEDELINT
Revisão: 22/07/2003
Abrangência
Versão 5.07 Versão 5.08 Versão 6.09 Versão 7.10
Sintaxe
Parâmetros
Retorno
Tipo Descrição
Retorna Falso se não conseguiu deletar o índice interno. Principais
erros: tabela não está dentro do diretório do Protheus, não abriu a tabela ou não
Lógico
deletou o arquivo de índice interno.
Retorna Verdadeiro se a deleção do índice interno ocorrida com sucesso.
Descrição
CTREEDELINT() apaga o índice interno de tabela Ctree, estando a mesma fechada. Para tanto,
são executados os seguintes procedimentos:
- Abre a tabela especificada pelo parâmetro cNome;
- Verifica o nome do arquivo do índice interno na tabela;
- Fecha a tabela;
- Deleta fisicamente o arquivo do índice interno.
A tabela deve ser apagada após a chamada desta função, pois a tabela CTree não pode ser
aberta sem índice interno.
Exemplo:
/ / Este exemplo demonstra o uso típico de CtreeDelInt(). Sendo que a tabela
'\ dadosadv\ sa1990.dtc' deve estar fechada. Se não falhar, o índice interno é apagado e o
processo continua. Se falhar, uma mensagem é apresentada.
IF !CtreeDelInt('\ dadosadv\ sa1990.dtc')
Messagebox('Não foi possível deletar o índice da tabela','Erro', 0)
ENDIF
fErase('\ dadosadv\ sa1990.dtc')
DBAPPEND
Revisão: 07/05/2003
Abrangência
Sintaxe
DBAPPEND ( [ lLiberaBloqueios ] ) --> uRet
Parâmetros
Retorno
Tipo Descrição
(NULO) Retorno nulo.
Descrição
DBAPPEND() acrescenta mais um registro em branco no final da tabela corrente. Se não houver
erro da RDD, o registro é acrescentado e bloqueado.
DBCLEARALLFILTER
Revisão: 07/05/2003
Abrangência
Sintaxe
Retorno
Tipo Descrição
(NULO) Nenhum
Descrição
DBCLEARALLFILTER
Revisão: 07/05/2003
Abrangência
Retorno
Tipo Descrição
(NULO) Nenhum
Descrição
DBCLEARFILTER
Revisão: 07/05/2003
Abrangência
Sintaxe
Retorno
Tipo Descrição
(NULO) Nenhum
Descrição
DBCLEARINDEX
Revisão: 07/05/2003
Abrangência
Sintaxe
Tipo Descrição
(NULO) Nenhum
Descrição
DBCLOSEALL
Revisão: 30/08/2002
Abrangência
Sintaxe
Retorno
Tipo Descrição
(NULO) Nenhum
Descrição
Exemplo
// Este exemplo demonstra como se pode utilizar o DBCLOSEALL para fechar a área de trabalho
atual.
USE Clientes NEW
DBSETINDEX("Nome") // Abre o arquivo de índice "Nome"
USE Fornecedores NEW
DBSETINDEX("Idade") // Abre o arquivo de índice "Idade"
...
DBCLOSEALL() //Fecha todas as áreas de trabalho, todos os indices e ordens
DBCLOSEAREA
Revisão: 07/05/2003
Abrangência
Versão 5.07 Versão 5.08 Versão 6.09 Versão 7.10
Sintaxe
Retorno
Tipo Descrição
(NULO) Nenhum
Descrição
Revisão: 30/08/2002
Abrangência
Sintaxe
Retorno
Tipo Descrição
(NULO) Nenhum
Descrição
Exemplo:
/ / Este exemplo demonstra como se pode utilizar o DBCOMMIT para salvar todas as alterações
realizadas na área de trabalho atual.
USE Clientes NEW
DBGOTO(100)
Nome := "Jose"
USE Fornecedores NEW
DBGOTO(168)
Nome := "Joao"
DBCOMMIT() // Salva em disco apenas as alterações realizadas na tabela Fornecedores
DBCOMMITALL
Revisão: 30/08/2002
Abrangência
Sintaxe
Retorno
Tipo Descrição
(NULO) Nenhum
Descrição
Exemplo:
/ / Este exemplo demonstra como se pode utilizar o DBCOMMITALL para salvar todas as
alterações realizadas nas áreas de trabalho abertas no momento.
USE Clientes NEW
DBGOTO(100)
Nome := "Jose"
USE Fornecedores NEW
DBGOTO(168)
Nome := "Joao"
DBCOMMITALL()
// Salva em disco as alterações realizadas nas tabelas Clientes e Fornecedores
DBCREATE
Revisão: 30/08/2002
Abrangência
Sintaxe
DBCREATE ( < cNOME > , < aESTRUTURA > , [ @cDRIVER ] ) --> uRet
Parâmetros
Retorno
Tipo Descrição
Caracter Nenhum
Descrição
DBCREATEINDEX
Revisão: 30/08/2002
Abrangência
Sintaxe
DBCREATEINDEX ( < cNOME > , < cEXPCHAVE > , [ bEXPCHAVE ] , [ lUNICO ] ) --> uRet
Parâmetros
Retorno
Tipo Descrição
(NULO) Nenhum
Descrição
DBDELETE
Revisão: 30/08/2002
Abrangência
Sintaxe
Retorno
Tipo Descrição
Caracter Nenhum
Descrição
DBDELETE() marca o arquivo corrente como deletado. Para filtrar os arquivos marcados pode-
se utilizar o comando SET DELETED e para deletá-los fisicamente pode-se utilizar o comando
PACK.
Exemplo:
/ / Este exemplo demonstra como se pode utilizar a função DBDELETE() para marcar alguns
registros como deletados e o PACK para deletá-los fisicamente.
USE Clientes NEW
DBGOTO(100)
DBDELETE()
DBGOTO(105)
DBDELETE()
DBGOTO(110)
DBDELETE()
PACK
DBEVAL
Revisão: 30/08/2002
Abrangência
Sintaxe
DBEVAL ( < bBLOCO > , [ bFORCOND ] , [ bWHILECOND ] , [ nPROXREGS ] , [ nRECNO ] , [
lRESTANTE ] ) --> uRET
Parâmetros
Retorno
Tipo Descrição
Caracter Retorno nulo.
Descrição
Exemplo:
/ / Este exemplo mostra como se pode usar o DBEVAL para contar quantos registros estão
dentro do escopo especificado em toda a tabela, pois como o parâmetro lRestante foi omitido a
tabela irá para o topo antes de iniciar a processar os registros. Supondo que a tabela está sobre
um índice no campo idade, serão processados registros com o Nome cuja ordem alfabética é
maior que "FFFFF" e até encontrar algum registro de idade igual a 40:
/ / Este exemplo mostra como se pode usar o DBEVAL para contar quantos registros estão
dentro do escopo especificado (como o exemplo anterior) a partir do registro atual (100):
/ / Este exemplo mostra como se pode usar o DBEVAL para colocar numa variável um nome
inicial que está definido em um registro de recno definido (100):
/ / Este exemplo mostra como se pode usar o DBEVAL para verificar qual é o recno do décimo
registro a partir do corrente dentro do escopo definido:
USE Cliente VIA "DBFCDX" NEW
LOCAL nRecno := 0;
DBGOTO(100)
DBEVAL( {|| nRecno := RECNO()}, {|| Nome > "FFFFF"}, {|| Idade < 40},10,,.T.)
DBF
Revisão: 30/08/2002
Abrangência
Sintaxe
Retorno
Tipo Descrição
Caracter Retorna o Alias corrente. Caso não exista Alias corrente retorna "" (String vazia).
Descrição
Exemplo:
/ / Este exemplo mostra como o DBF corrente pode ser mostrado para o usuário.
dbUseArea( .T.,"dbfcdxads", "\ dadosadv609\ sa1990.dbf","SSS",.T., .F. )
MessageBox("O Alias corrente é: "+DBF(),"Alias", 0) //Resultado: "O Alias corrente é: SSS"
DBFIELDINFO
Revisão: 30/08/2002
Abrangência
Sintaxe
Parâmetros
Retorno
Tipo Descrição
Retorna NIL se não há tabela corrente ou a posição do campo
especificado está inválida.
(Qualquer)
Informação do campo I nformação requisitada pelo usuário (pode ser de tipo
numérico se for tamanho ou casas decimais, tipo caracter se for nome ou tipo).
Descrição
DBFI ELDINFO() é utilizada para obter informações sobre determinado campo da tabela
corrente. O tipo de informação (primeiro argumento) é escolhido de acordo com as constantes
abaixo:
DBS_DEC - Número de casas decimais (tipo numérico)
DBS_LEN - Tamanho (tipo numérico)
DBS_TYPE - Tipo (tipo caracter)
A posição do campo não leva em consideração os campos internos do Protheus (recno e
deleted).
Exemplo:
// Este exemplo demonstra como se pode utilizar o DBFIELDINFO para obter as informações do
primeiro campo da tabela Clientes.
USE Clientes NEW
DBFI ELDINFO(DBS_NAME,1) // Retorno: Nome
DBFI ELDINFO(DBS_TYPE,1) // Retorno: C
DBFIELDINFO(DBS_LEN,1) // Retorno: 10
DBFIELDINFO(DBS_DEC,1) // Retorno: 0
DBFILTER
Revisão: 30/08/2002
Abrangência
Versão 5.07 Versão 5.08 Versão 6.09 Versão 7.10
Sintaxe
Retorno
Tipo Descrição
Retorna a expressão do filtro ativo na área de trabalho atual. Caso não exista
Caracter
filtro ativo retorna "" (String vazia).
Descrição
DBFI LTER() é utilizada para verificar a expressão de filtro ativo na área de trabalho corrente.
Exemplo:
/ / Este exemplo demonstra como se pode utilizar o DBFILTER para verificar a expressão do
filtro corrente.
USE Cliente INDEX Ind1 NEW
SET FI LTER TO Nome > "Jose"
DBFI LTER() // retorna: Nome > "Jose"
SET FI LTER TO Num < 1000
DBFILTER() // retorna: Num < 1000
DBGOBOTTOM
Revisão: 30/08/2002
Abrangência
Sintaxe
Retorno
Tipo Descrição
(NULO) Nenhum
Descrição
Exemplo:
/ / Este exemplo demonstra como se pode utilizar o DBGOBOTTOM para posicionar no último
registro físico.
USE Cliente
DBGOBOTTOM() // Posiciona no último registro físico, pois não há ordem ativa
/ / Este exemplo demonstra como se pode utilizar o DBGOBOTTOM para posicionar no último
registro lógico.
USE Cliente INDEX Ind1 NEW
DBGOBOTTOM() // Posiciona no último registro lógico (último registro na seqüência gerada pelo
índice)
DBGOTOP
Revisão: 30/08/2002
Abrangência
Sintaxe
Retorno
Tipo Descrição
(NULO) Nenhum
Descrição
Exemplo:
/ / Este exemplo demonstra como se pode utilizar o DBGOBOTOP para posicionar no primeiro
registro físico.
USE Cliente
DBGOTOP() / / Posiciona no primeiro registro físico, pois não há ordem ativa
/ / Este exemplo demonstra como se pode utilizar o DBGOTOP para posicionar no primeiro
registro lógico.
USE Cliente INDEX Ind1 NEW
DBGOTOP() // Posiciona no primeiro registro lógico (primeiro registro na següência gerada pelo
índice)
DBGOTO
Revisão: 30/08/2002
Abrangência
Sintaxe
Retorno
Tipo Descrição
(NULO) Retorno nulo.
Descrição
Exemplo:
/ / Este exemplo demonstra como se pode utilizar o DBGOTO para posicionar a tabela corrente
em determinado registro.
USE Cliente INDEX Ind1 NEW
DBGOTO(100) // Posiciona no registro de recno 100
DBINFO
Revisão: 30/08/2002
Abrangência
Sintaxe
Parâmetros
Retorno
Tipo Descrição
Informação da Tabela Informação requisitada pelo usuário (o tipo depende da
(Qualquer)
informação requisitada). Se não houver tabela corrente retorna NIL.
Descrição
DBINFO() é utilizada para obter informações sobre a tabela corrente. O tipo de informação
(primeiro argumento) é escolhido de acordo com as constantes abaixo:
DBI_GETRECSIZE - Tamanho do registro em número de bytes similar a RECSI ZE (tipo
numérico)
DBI_TABLEEXT - Extensão do arquivo da tabela corrente (tipo caracter)
DBI_FULLPATH - Nome da tabela corrente com caminho completo (tipo caracter)
DBI_BOF - Verifica se está posicionada no início da tabela similar a BOF (tipo lógico)
DBI_EOF - Verifica se está posicionada no final da tabela similar a EOF (tipo lógico)
DBI_FOUND - Verifica se a tabela está posicionada após uma pesquisa similar a FOUND (tipo
lógico)
DBI_FCOUNT - Número de campos na estrutura da tabela corrente similar a FCOUNT (tipo
numérico)
DBI_ALIAS - Nome do Alias da área de trabalho corrente similar a ALIAS (tipo caracter)
DBI_LASTUPDATE - Verifica a data da última modificação similar a LUPDATE (tipo data)
Exemplo:
/ / Este exemplo demonstra como se pode utilizar o DBINFO para obter as informações da
tabela corrente (Clientes).
USE Clientes NEW
DBINFO(DBI_FULLPATH) // Retorno: C:\Teste\ Clientes.dbf
DBINFO(DBI_FCOUNT) // Retorno: 12
DBGOTOP()
DBINFO(DBI_BOF) // Retorno: .F.
DBSKIP(-1)
DBINFO(DBI_BOF) // Retorno: .T.
DBORDERINFO
Revisão: 30/08/2002
Abrangência
Sintaxe
Parâmetros
Retorno
Tipo Descrição
Retorna a informação da Ordem requisitada pelo usuário (pode ser de tipo
numérico se for número de ordens no índice, tipo caracter se for nome do
Caracter
arquivo de índice). Caso não exista ordem corrente ou a posição da ordem
especificada está inválida retorna NIL.
Descrição
Exemplo:
/ / Este exemplo demonstra como se pode utilizar o DBORDERINFO para obter informações
sobre o nome do arquivo de índice da ordem corrente.
DBORDERINFO(DBOI _BAGNAME) // retorna: Ind
DBORDERINFO(DBOI_FULLPATH) // retorna: C:\ AP6\Teste\Ind.cdx
DBORDERNICKNAME
Revisão: 30/08/2002
Abrangência
Sintaxe
Parâmetros
Retorno
Tipo Descrição
Retorna Falso se não conseguiu tornar a ordem ativa. Principais erros: Não
Lógico existe tabela ativa ou não foi encontrada a ordem com o apelido.
Retorna Verdadeiro se a ordem foi setada com sucesso.
Descrição
DBORDERNICKNAME() é utilizada para selecionar a ordem ativa através de seu
apelido. Esta ordem é a responsável seqüência lógica dos registros da tabela corrente.
Exemplo:
//Este exemplo demonstra como se pode utilizar o DBORDERNICKNAME para setar nova ordem.
USE Cliente NEW
SET INDEX TO Nome, Idade
IF !DBORDERNICKNAME("IndNome")
Messagebox("Registro não encontrado","Erro", 0)
ENDIF
DBRECALL
Revisão: 30/08/2002
Abrangência
Sintaxe
Retorno
Tipo Descrição
(NULO) Nenhum
Descrição
DBRECALL() é utilizada para retirar a marca de registro deletado do registro atual. Para ser
executada o registro atual deve estar bloqueado ou a tabela deve estar aberta em modo
exclusivo. Se o registro atual não estiver deletado, esta função não faz nada. Ela é o oposto da
função DBDELETE que marca o registro atual como deletado.
Exemplo:
/ / Este exemplo demonstra como se pode utilizar o DBRECALL para retornar o estado do
registro atual para normal.
USE Cliente
DBGOTO(100)
DBDELETE()
DELETED() // Retorna: .T.
DBRECALL()
DELETED() // Retorna: .F.
/ / Este exemplo demonstra como se pode utilizar o DBRECALL para desfazer todas as deleções
da tabela corrente.
USE Cliente
DBGOTOP()
WHILE !EOF()
DBRECALL()
DBSKIP()
ENDDO
DBRECORDINFO
Revisão: 30/08/2002
Abrangência
Sintaxe
Parâmetros
Retorno
Tipo Descrição
Não há tabela corrente ou registro inválido.
(Qualquer) Informação do Registro. Informação requisitada
pelo usuário (o tipo depende da informação requisitada).
Descrição
Exemplo:
/ / Este exemplo demonstra como se pode utilizar o DBRECORDINFO para se obter as
informações sobre registros da tabela corrente.
USE Clientes NEW
DBGOTO(100)
DBRECORDINFO(DBRI _DELETED) // Retorno: .F.
DBDELETE()
DBRECORDINFO(DBRI _DELETED) // Retorno: .F.
DBRECALL()
DBRECORDINFO(DBRI _RECSI ZE) // Retorno: 230
NOME := "JOAO"
DBGOTO(200)
DBRECORDINFO(DBRI _UPDATED) // Retorno: .F.
DBRECORDINFO(DBRI_UPDATED,100) // Retorno: .T.
DBREINDEX
Revisão: 30/08/2002
Abrangência
Sintaxe
Retorno
Tipo Descrição
(NULO) Nenhum
Descrição
Exemplo:
/ / Este exemplo demonstra como se pode utilizar o DBREINDEX para reconstruir os índices
depois que um novo índice foi gerado.
USE Clientes NEW
DBSETINDEX("IndNome")
DBREINDEX()
DBRLOCK
Revisão: 30/08/2002
Abrangência
Sintaxe
Parâmetros
Retorno
Tipo Descrição
Retorna Falso se não conseguiu bloquear o registro. Principal motivo: o registro
Lógico já foi bloqueado por outro usuário.
Retorna Verdadeiro se o registro foi bloqueado com sucesso
Descrição
DBRLOCK() é utilizada quando se tem uma tabela aberta e compartilhada e se deseja bloquear
um registro para que outros usuários não possam alterá-lo.
Se a tabela já está aberta em modo exclusivo, a função não altera seu estado.
O usuário pode escolher o registro a ser bloqueado através do parâmetro
(recno), mas se este for omitido será bloqueado o registro corrente como na função RLOCK().
Esta função é o oposto à DBRUNLOCK, que libera registros bloqueados.
Exemplo
// Este exemplo mostra duas variações do uso de DBRLOCK.
DBUSEAREA( .T.,"dbfcdxads", "\ dadosadv609\ sa1990.dbf","SSS",.T., .F. )
DBGOTO(100)
DBRLOCK() // Bloqueia o registro atual (100)
DBRLOCK(110) // Bloqueia o registro de número 110
DBRLOCKLIST
Revisão: 30/08/2002
Abrangência
Sintaxe
Retorno
Tipo Descrição
Retorna NI L se não existe tabela corrente ou não existe nenhum
Array registro locado.
Retorna a lista com os recnos dos registros locados na tabela corrente.
Descrição
DBRLOCKLIST() é utilizada para verificar quais registros estão locados na tabela corrente. Para
tanto, é retornada uma tabela unidimensional com os números dos registros.
Exemplo:
/ / Este exemplo mostra como é utilizada a função DBRLOCKLIST para verificar quais registros
estão bloqueados na tabela corrente:
DBUSEAREA( .T.,"dbfcdxads", "\ dadosadv609\ sa1990.dbf","SSS",.T., .F. )
DBGOTOP()
DBRLOCK() // Bloqueia o primeiro registro
DBRLOCK(110) // Bloqueia o registro de número 110
DBRLOCK(100) // Bloqueia o registro de número 100
DBRLOCKLIST() // Retorna: {1,100,110}
DBRUNLOCK
Revisão: 30/08/2002
Abrangência
Sintaxe
Parâmetros
Retorno
Tipo Descrição
(NULO) Sem retorno.
Descrição
DBRUNLOCK() é utilizada para liberar determinado registro bloqueado. O usuário pode escolher
o registro a ser desbloqueado através do parâmetro
(recno), mas se este for omitido será desbloqueado o registro corrente como na função
DBUNLOCK().
Esta função é o oposto à DBRLOCK, que bloquea os registros.
Exemplo:
// Este exemplo mostra duas variações do uso de DBRUNLOCK.
DBUSEAREA( .T.,"dbfcdxads", "\ dadosadv609\ sa1990.dbf","SSS",.T., .F. )
DBGOTO(100)
DBRUNLOCK() / / Desbloqueia o registro atual (100)
DBRUNLOCK(110) // Desbloqueia o registro de número 110
DBSEEK
Revisão: 30/08/2002
Abrangência
Sintaxe
Retorno
Tipo Descrição
Retorna Falso se não foi encontrado nenhum registro com o valor
Lógico especificado.
Retorna Verdadeiro se foi encontrado um registro com o valor especificado
Descrição
DBSEEK() é utilizada para encontrar um registro com determinado valor da expressão de chave
de índice. Antes da chamada do DBSEEK deve-se certificar de que existe uma ordem ativa no
momento com os campos que se deseja pesquisar o valor. Se a expressão possuir apenas uma
campo numérico, o primeiro parâmetro deve ser do tipo numérico, mas nos demais casos deve-
se utilizar um valor do tipo caracter para este parâmetro (mesmo se forem apenas dois campos
numéricos ou do tipo data).
Quando o segundo parâmetro for especificado como .T. (softseek), mesmo
que a expressão pesquisada não encontrar nenhum registro com este valor,
a tabela será posicionada no próximo valor maior que o especificado no
primeiro parâmetro, mas mesmo posicionando no próximo valor esta função
retornará .F. (pois não encontrou).
Quando não for especificado este valor ou estiver .F. e falhar o valor de pesquisa, a tabela será
posicionada em LASTREC + 1 e será setada a flag de EOF.
Se o terceiro parâmetro for especificado com valor .T. a função posiciona a tabela no último
registro com o valor procurado, caso não seja especificado
ou for .F., será posicionada na primeira ocorrência.
Exemplo:
/ / Este exemplo demonstra como se pode utilizar o DBSEEK para busca de valores numéricos.
USE Clientes NEW
ORDLI STADD ("/ teste/ ind1.cdx") // Expressão é Num (campo numérico)
DBSEEK(100) // Retorna: .F.
EOF() // Retorna: .T.
DBSEEK(100,.T.) // Retorna: .F.
EOF() // Retorna: .F. (pois o softseek posicionou no próximo registro)
/ / Este exemplo demonstra como se pode utilizar o DBSEEK para percorrer todos os registros
de Clientes com o nome joao e vencimentos a partir de janeiro de 2001.
USE Clientes NEW
ORDLI STADD ("/ teste/ ind2.cdx") / / Expressão é Nome+ Venc (campo caracter + data)
DBSEEK("joao200101",.T.) // Procura a primeira ocorrência de Nome "joao" e vencimento maior
que Janeiro de 2001
WHILE !EOF() .AND. Nome == "joao"
DBSKIP()
ENDDO
DBSETDRIVER
Revisão: 30/08/2002
Abrangência
Sintaxe
Parâmetros
Retorno
Tipo Descrição
Caracter Nome do RDD padrão corrente
Descrição
DBSETDRIVER() pode ser utilizada apenas para verificar qual o RDD que está definido como
padrão quando for omitido seu parâmetro.
Ela também pode ser utilizada para especificar outro RDD como padrão,
especificando-o através do parâmetro.
Exemplo:
/ / Este exemplo demonstra como se pode utilizar o DBSETDRIVER para alterar o valor do RDD
padrão.
DBSETDRIVER("CTREECDX") // Retorna: DBFCDX
DBSETDRIVER() // Retorna: CTREECDX
DBSETFILTER
Revisão: 30/08/2002
Abrangência
Sintaxe
Parâmetros
Argumento Tipo Descrição
bCONDICAO Code-Block Expressão do filtro na forma executável.
cCONDICAO Caracter Expressão do filtro na forma de string.
Retorno
Tipo Descrição
(NULO) Sem retorno.
Descrição
DBSETFILTER é utilizada para setar um filtro nos registros da tabela corrente especificado
através do bloco de código no primeiro parâmetro. Quando um registro não está dentro do
filtro setado ele continua existindo fisicamente, mas não logicamente (nas funções de
manipulação de banco de dados como DBGOTOP, DBSEEK, DBSKIP, etc).
Exemplo:
/ / Este exemplo demonstra como se pode utilizar o DBSETFI LTER para filtrar todos os clientes
com menos de 40 anos.
USE Cliente NEW
DBSETFILTER( { | | Idade < 40} , "I dade < 40" )
DBGOTOP()
DBSETINDEX
Revisão: 30/08/2002
Abrangência
Sintaxe
Parâmetros
Retorno
Tipo Descrição
(NULO) Sem retorno.
Descrição
DBSETINDEX() é utilizada para acrescentar uma ou mais ordens de determinado índice na lista
de ordens ativas da área de trabalho. Quando o arquivo de índice possui apenas uma ordem, a
mesma é acrescentada à lista e torna-se ativa. Quando o índice possui mais de uma ordem,
todas são acrescentadas à lista e a primeira torna-se ativa.
Para se utilizar arquivos de extensão padrão do RDD, este dado pode ser omitido no primeiro
parâmetro, mas caso contrário deve ser especificado.
Exemplo:
/ / Este exemplo demonstra como se pode utilizar o DBSETINDEX para acrescentar novos
índices à lista de ordens.
USE Cliente NEW
DBSETINDEX("Ind1")
DBSETINDEX("\ teste\ Ind2.cdx")
DBSETNICKNAME
Revisão: 30/08/2002
Abrangência
Versão 5.07 Versão 5.08 Versão 6.09 Versão 7.10
Sintaxe
Parâmetros
Retorno
Tipo Descrição
Retorna "" (String vazia) se não conseguiu encontrar a ordem especificada, não
Caracter conseguiu setar o apelido ou não havia apelido.
Retorna o apelido corrente.
Descrição
Exemplo:
/ / Este exemplo demonstra como se pode utilizar o DBSETNICKNAME para setar um novo
apelido e verificar qual o apelido atual.
USE Cliente NEW
DBSETNI CKNAME("IndNome") // retorna: ""
DBSETNI CKNAME("IndNome","NOME") // retorna: ""
DBSETNICKNAME("IndNome") // retorna: "NOME"
DBSETORDER
Revisão: 09/04/2003
Abrangência
Versão 5.07 Versão 5.08 Versão 6.09 Versão 7.10 Versões Anteriores
Sintaxe
Parâmetros
Retorno
Tipo Descrição
(NULO) Esta função sempre retorna NIL.
Descrição
Esta função é utilizada para selecionar a ordem ativa da área de trabalho. Esta ordem é a
responsável seqüência lógica dos registros da tabela corrente.
Exemplo:
Caso seja setada a ordem 0 , a tabela corrente na area de trabalho será colocada na ordem
natural , isto é, a ordem na qual os registros foram acrescentados, porém os indexadores são
mantidos abertos. Vale salientar que , quando alteramos a ordem atual de uma determinada
tabela , o registro atual não é desposicionado.
DBSKIP
Revisão: 07/05/2003
Abrangência
Sintaxe
Parâmetros
Retorno
Tipo Descrição
Caracter Sem retorno.
Descrição
Desloca para outro registro na tabela corrente. Esta função é utilizada para deslocar para outro
registro a partir do registro atual. O deslocamento é lógico, ou seja, leva em consideração
ordem no índice e também filtro (se existir).
Caso passe do início da tabela, posiciona no primeiro registro e seta BOF. Caso passe do final
da tabela, posiciona no registro "LastRec()+ 1" e seta EOF. Neste último caso, se a RDD for
TopConnect, o Recno() retornado será por convenção "LastRec() + 5000".
DBSTRUCT
Revisão: 08/05/2003
Abrangência
Sintaxe
Retorno
Tipo Descrição
Array com a estrutura dos campos. Cada elemento é um subarray contendo
Array
Nome, Tipo, Tamanho e Decimais.
Descrição
Retorna a estrutura da tabela corrente. Esta função é utilizada para verificar a estrutura da
tabela corrente da mesma forma que é utilizada para criar a tabela com a função DBCREATE.
Para isto ela cria um array para gravar as informações e as retorna.
Veja Também
AFields( )
DBUNLOCK
Revisão: 08/05/2003
Abrangência
Sintaxe
Retorno
Tipo Descrição
Caracter Sem retorno.
Descrição
DBUNLOCKALL
Revisão: 08/05/2003
Abrangência
Sintaxe
Retorno
Tipo Descrição
Caracter Sem retorno.
Descrição
Retira o bloqueio de todos os registros e arquivos de todas as tabelas abertas. Esta função é
utilizada para liberar todos os registros bloqueados e é equivalente a executar DBUNLOCK para
todas as tabelas da área de trabalho.
DELETED
Revisão: 09/05/2003
Abrangência
Sintaxe
Retorno
Tipo Descrição
Se for .T. o registro tem a marca de excluído, se for .F., o registro não tem a
Lógico
marca (ou não há área em uso).
Descrição
Verifica se o registro está com marca de excluído. Quando o registro é excluído, permanece
fisicamente na tabela, mas fica marcado como excluído. Esta função verifica este estado. Se
nenhuma área está selecionada, retorna .F.. Quando é executada a função DBPACK todos os
registros marcados como deletados são apagados fisicamente. A função DBRECALL retira todas
as marcas.
Exemplo
/ / Este exemplo verifica se determinado registro está deletado, caso positivo, mostra uma
mensagem:
USE "\ DADOSADV\ AA1990.DBF" SHARED NEW
DBGOTO(100)
IF DELETED()
Messagebox("O registro atual foi deletado","Erro", 0)
ENDIF
FIELDBLOCK
Revisão: 12/06/2003
Abrangência
Parâmetros
Retorno
Tipo Descrição
Code-Block Bloco de código para o campo especificado na tabela corrente.
Descrição
Retorna um bloco de código para um campo determinado da tabela corrente. Esta função é
utilizada para retornar um bloco de código executável com o campo especificado. Quando o
bloco resultante é executado sem parâmetro, recupera o valor armazenado no campo. Quando
é executado com um valor, seta este valor no determinado campo.
Portanto, o bloco retornado é similar a: &("{ | Valor| IF(Valor= = NIL, Campo, Campo:= Valor)} ")
Sendo: Campo = parâmetro da função FIELDBLOCK()
Valor = valor executado no bloco de código
Exemplo
/ / Este exemplo mostra como se pode usar o FIELDBLOCK para criar o bloco de código para o
campo 'Nome' da tabela corrente na variável bBloco:
Revisão: 03/10/2002
Abrangência
Versão 5.07 Versão 5.08 Versão 6.09 Versão 7.10 Versões Anteriores
Sintaxe
Retorno
Tipo Descrição
HEADER() retorna a quantidade de bytes no cabeçalho do arquivo de banco de
Caracter
dados corrente na forma de um valor numérico inteiro.
Descrição
LUPDATE
Revisão: 19/10/2002
Abrangência
Versão 5.07 Versão 5.08 Versão 6.09 Versão 7.10 Versões Anteriores
Sintaxe
Retorno
Tipo Descrição
Retorna um valor do tipo Data , indicando a data da ultima modificação e
Data fechamento da Tabela. Caso não haja tabela selecionada na área de trabalho
atual , a função retornará uma data vazia (ctod ("")) .
Descrição
Verifica a data da última modificação da tabela corrente. Esta função verifica qual a data da
última modificação e fechamento da tabela corrente, caso não exista tabela corrente é
retornada uma data em branco.
Exemplo :
SELECT
Revisão: 24/02/2003
Abrangência
Sintaxe
Parâmetros
Retorno
Tipo Descrição
SELECT() retorna a área de trabalho do alias especificado na forma de um valor
Numérico
numérico inteiro.
Descrição
SELECT() é uma funçao de tratamento de bancos de dados que determina o número da área de
trabalho de um alias. O número retornado pode variar de zero a 250. Se < cAlias> não for
especificado, é retornado o número da área de trabalho corrente. Caso < cAlias> seja
especificado e o alias nao existir, SELECT() retorna zero.
Exemplos
* O exemplo a seguir ilustra como utilizar SELECT() para determinar qual área de trabalho o
comando USE...NEW selecionou:
USE Sales NEW
SELECT 1
conout(SELECT("Sales")) // Resulta: 4
* Para re-selecionar o valor retornado da funçao SELECT(), use o comando SELECT com a
sintaxe SELECT (<idVarMem>), desta forma:
TCGENQRY
Revisão: 25/07/2003
Abrangência
Sintaxe
Parâmetros
Retorno
Tipo Descrição
Caracter Sempre retorna uma string vazia.
Descrição
Define a execução de uma Query. Esta função determina que a próxima chamada à DBUseArea
será a abertura
de uma Query e não de tabela.
Exemplo
cQuery := ChangeQuery(cQuery)
USED
Revisão: 09/07/2003
Abrangência
Versão 5.07 Versão 5.08 Versão 6.09 Versão 7.10 Versão 8.11
Versões Anteriores
Sintaxe
Retorno
Tipo Descrição
USED() retorna verdadeiro (.T.) caso haja um arquivo de banco de dados em
Lógico
uso; caso contrário, retorna falso (.F.).
Descrição
Revisão: 09/05/2003
Abrangência
Sintaxe
Retorno
Tipo Descrição
(NULO) Retorno nulo.
Descrição
Remove todos os registros com marca de excluído da tabela. Esta função apaga (fisicamente)
todos os registros "excluídos" da tabela corrente.
Exemplo
/ / Este exemplo demonstra como se pode utilizar a função DBDELETE() para marcar alguns
registros como deletados e o comando PACK para deletá-los fisicamente.
ADIR
Revisão: 16/07/2002
Abrangência
Versão 5.07 Versão 5.08 Versão 6.09 Versão 7.10 Versões Anteriores
Sintaxe
Parâmetros
Retorno
Tipo Descrição
ADIR() retorna a quantidade de arquivos que correspondem ao esqueleto de
Numérico
diretório especificado.
Descrição
ADIR() é uma funçao de tratamento de vetor que executa duas operaçoes básicas. Primeiro, ele
retorna a quantidade de arquivos que correspondem à especificaçao de arquivo. Segundo,
preenche uma série de vetores com nomes de arquivos, tamanhos, datas, horas e atributos.
ADI R() é uma funçao de compatibilidade e portanto desaconselhada. Ele está superado pela
funçao DIRECTORY(), que retorna todas as informaçoes de arquivo em um vetor multi-
dimensional.
OBSERVAÇÃO
Diretórios: Caso o argumento < aAtributos> seja especificado e < cEspecArq> seja especificado
como * .* , os diretórios serao incluidos em < aNomesArq> . No vetor < aAtributos> , os diretórios
sao indicados com um valor atributo de "D." Se ADIR() for executado dentro de um
subdiretório, as duas primeiras entradas do vetor < aNomesArq> sao "." e "..", os "alias" dos
diretórios corrente e raiz. A data e hora da última atualizaçao sao informadas para diretórios,
mas o tamanho de um diretório é sempre zero.
CPYS2T
Revisão: 19/10/2002
Abrangência
Sintaxe
CPYS2T ( < cOrigem > , < cDestino > , [ lCompacta ] ) --> lSucess
Parâmetros
Retorno
Tipo Descrição
lSucess retorna .T. caso o arquivo seja copiado com sucesso , ou .F. em caso de
Lógico
falha na cópia.
Descrição
Copia um arquivo, do servidor para o cliente (Remote). Caso a compactação seja habilitada
(lCompacta ), os dados serão transmitidos de maneira compactada e descompactados antes do
uso.
Exemplo :
CpyS2T( "\ BKP\ MANUAL.DOC", "C:\TEMP", .T. ) / / Copia arquivos do servidor para o remote
local, compactando antes de transmitir
CpyS2T( "\ BKP\ MANUAL.DOC", "C:\ TEMP", .F. ) / / Copia arquivos do servidor para o remote
local, sem compactar antes de transmitir
CPYT2S
Revisão: 19/10/2002
Abrangência
Sintaxe
CPYT2S ( < cOrigem > , < cDestino > , [ lCompacta ] ) --> lSucess
Parâmetros
Retorno
Tipo Descrição
lSucess indica , caso verdadeiro , que a cópia foi realizada com sucesso. Caso
Lógico
retorne .F. , houve erro na copia do arquivo.
Descrição
Copia um arquivo, do cliente ( Remote ) para o servidor,. Caso a compactação seja habilitada (
lCompacta ), os dados serão transmitidos de maneira compacta e
descompactados antes do uso.
Exemplo
CpyT2S( "C:\TEMP\ MANUAL.DOC","\ BKP", .T. ) / / Copia arquivos do cliente( remote ) para o
Servidor compactando antes de transmitir
CpyT2S( "C:\ TEMP\ MANUAL.DOC", "\ BKP" ) / / Copia arquivos do cliente( remote ) para o
Servidor sem compactar.
CURDIR
Revisão: 28/04/2003
Abrangência
Sintaxe
Parâmetros
Retorno
Tipo Descrição
Caracter Diretório corrente, sem a primeira barra.
Descrição
Caso seja passado o parâmetro cNovoPath , este path é assumido como sendo o Path atual.
Caso o path recebido como parÂmetro não exista , seja inválido , ou seja um path absoluto (
iniciado com uma letra de drive ou caimnho de rede ) , a função não irá setar o novo path ,
mantendo o atual .
DIRECTORY
Revisão: 17/07/2002
Abrangência
Versão 5.07 Versão 5.08 Versão 6.09 Versão 7.10 Versões Anteriores
Sintaxe
Parâmetros
Argumento Tipo Descrição
< cDirSpec> especifica o drive, diretório e arquivo para a
pesquisa no diretório. Caracteres do tipo coringa sao permitidos
na especificaçao de arquivos. Caso < cDirSpec> seja omitido, o
cDirSpec Caracter valor padrao é * .* .
O caminho especificado pode estar na estação (remote) , ou no
servidor , obedecendo às definicões de Path Absoluto / Relativo
de acesso
< cAtributos> especifica que arquivos com atributos especiais
devem ser incluidos na informaçao retornada. < cAtributos>
<cAtributos> Caracter consiste em uma cadeia de caracteres que contém um ou mais
dos seguintes caracteres, contidos na tabela adicional A ,
especificada abaixo:
Retorno
Tipo Descrição
DIRECTORY() retorna um vetor de sub-vetores, sendo que cada sub-vetor
Array contém informaçoes sobre cada arquivo que atenda a < cDirSpec> .Veja maiores
detalhes na Tabela B, abaixo discriminada.
Descrição
DIRECTORY() é uma funçao de tratamento de ambiente que retorna informaçoes a respeito dos
arquivos no diretório corrente ou especificado. É semelhante a ADIR(), porém retorna um único
vetor ao invés de adicionar valores a uma série de vetores existentes passados por referência.
Para tornar as referências aos vários elementos de cada sub-vetor de arquivo mais legíveis, é
fornecido o arquivo header Directry.ch, que contém os #defines para os subarray subscripts.
Arquivos normais sao sempre incluidos na pesquisa, a nao ser que V seja especificado.
DIRREMOVE
Revisão: 01/05/2003
Abrangência
Sintaxe
Parâmetros
Retorno
Tipo Descrição
lSucesso será .T. caso o diretório tenha sido eliminado , ou .F. caso não seja
possível excluir o diretório. Quando a função DirRemove retornar .F. , é possível
Lógico
obter mais detalhes da ocorrência recuperando o código do Erro através da
função FError().
Descrição
DISKSPACE
Revisão: 01/05/2003
Abrangência
Parâmetros
Retorno
Tipo Descrição
Numérico Número de bytes disponíveis no disco informado como parâmetro.
Descrição
DI SKSPACE() é uma função de ambiente que determina quantos bytes estão disponíveis em
uma determinada uinidade de disco. Esta função obtém a informação sempre relativa à estação
onde está sendo executado o Protheus Remote. Através do parâmetro nDRive , selecionamos
qual a unidade de disco que desejamos obter a informação do espaço livre , onde:
FCLOSE
Revisão: 09/04/2003
Abrangência
Sintaxe
Parâmetros
Retorno
Tipo Descrição
FCLOSE() retorna falso (.F.) se ocorre um erro enquanto os buffers estao sendo
Lógico
escritos; do contrário, retorna verdadeiro (.T.).
Descrição
FCLOSE() é uma funçao de tratamento de arquivos de baixo nível utilizada para fechar arquivos
binários e forçar que os respectivos buffers do DOS sejam escritos no disco. Caso a operaçao
falhe, FCLOSE() retorna falso (.F.). FERROR() pode entao ser usado para determinar a razao
exata da falha. Por exemplo, ao tentar-se usar FCLOSE() com um handle (tratamento dado ao
arquivo pelo sistema operacional) inválido retorna falso (.F.) e FERROR() retorna erro 6 do
DOS, invalid handle. Consulte FERROR() para obter uma lista completa dos códigos de erro.
Aviso
Esta funçao permite acesso de baixo nível aos arquivos e dispositivos do DOS. Ela deve ser
utilizada com extremo cuidado e exige que se conheça a fundo o sistema operacional utilizado.
Exemplos
O exemplo a seguir utiliza FCLOSE() para fechar um arquivo binário recém criado e exibe uma
mensagem de erro caso o fechamento falhe:
# include "Fileio.ch"
If !FCLOSE(nHandle)
conout( "Erro ao fechar arquivo, erro numero: ", FERROR() )
EndIf
FCREATE
Revisão: 01/05/2003
Abrangência
Sintaxe
Parâmetros
Argumento Tipo Descrição
Nome do arquivo a ser criado , podendo ser especificado um
cArquivo Caracter path absoluto ou relativo , para criar arquivos no ambiente local
( Remote ) ou no Servidor , respectivamente .
Atributos do arquivo a ser criado (Vide Tabela de atributos
nAtributo Numérico
abaixo). Caso não especificado , o DEFAULT é FC_NORMAL.
Retorno
Tipo Descrição
A função retornará o Handle do arquivo para ser usado nas demais funções de
manutenção de arquivo. O Handle será maior ou igual a zero. Caso não seja
Numérico
possível criar o arquivo , a função retornará o handle -1 , e será possível obter
maiores detalhes da ocorrencia através da função FERror()
Descrição
FCREATE() é uma função de baixo-nível que permite a manipulação direta dos arquivos textos
como binários. Ao ser executada FCREATE() cria um arquivo ou elimina o seu conteúdo, e
retorna o handle (manipulador) do arquivo, para ser usado nas demais funções de manutenção
de arquivo. Após ser utilizado , o Arquivo deve ser fechado através da função FCLOSE().
Na tabela abaixo , estão descritos os atributos para criação do arquivo , definidos no arquivo
header fileio.ch
Caso desejemos especificar mais de um atributo , basta somá-los . Por exemplo , para criar um
arquivo protegiro contra gravação e escondido , passamos como atributo FC_READONLY +
FC_HIDDEN .
ATENÇÃO : Caso o arquivo já exista , o conteúdo do mesmo será ELI MI NADO , e seu
tamanho será truncado para 0 ( ZERO ) bytes.
FERASE
Revisão: 01/05/2003
Abrangência
Sintaxe
Parâmetros
Retorno
Tipo Descrição
A função retornará 0 caso o arquivop seja apagado com sucesso , e -1 caso não
Numérico seja possível apagar o arquivo. Caso a função retorne -1 , é possível obter
mauires detalhes da ocorrência através da função fError()
Descrição
Através da função Ferase , é possível apagar um arquivo no disco . O Arquivo pode estar no
Servidor ou na estação local (Remote).
O Arquivo para ser apagado deve estar fechado. Não é permitido a utilização de caracteres
coringa (wildcards).
FILE
Revisão: 04/05/2003
Abrangência
Sintaxe
Parâmetros
Retorno
Tipo Descrição
O retorno será .T. caso o arquivo especificado exista. Caso o mesmo não exista
Lógico
no path especificado , a função retorna .F.
Descrição
FOPEN
Revisão: 05/05/2003
Abrangência
Versão 5.07 Versão 5.08 Versão 6.09 Versão 7.10 Versões Anteriores
Sintaxe
Parâmetros
Retorno
Tipo Descrição
FOPEN() retorna o handle de arquivo aberto na faixa de zero a 65.535. Caso
Numérico
ocorra um erro, FOPEN() retorna -1.
Descrição
Caso o arquivo especificado seja aberto, o valor retornado é o handle (manipulador) do Sistema
Operacional para o arquivo. Este valor é semelhante a um alias no sistema de banco de dados,
e ele é exigido para identificar o arquivo aberto para as outras funçoes de tratamento de
arquivo. Portanto, é importante sempre atribuir o valor que foi retornado a uma variável para
uso posterior, como mostra o exemplo desta função.
Aviso
Esta funçao permite acesso de baixo nível a arquivos e dispositivos. Ela deve ser utilizada com
extremo cuidado e exige que se conheça a fundo o sistema operacional utilizado.
Notas
Constante
Modo Operação
(fileio.ch)
0 FO_COMPAT Modo de Compatibilidade (Default)
16 FO_EXCLUSIVE Acesso total exclusivo
32 FO_DENYWRITE Acesso bloqueando a gravação de outros processos ao arquivo.
48 FO_DENYREAD Acesso bloqueando a leitura de outros processos ao arquivo.
Acesso compartilhado. Permite a leitura e gravação por outros
64 FO_DENYNONE
processos ao arquivo..
64 FO_SHARED Igual à FO_DENYNONE
FREAD
Revisão: 19/10/2002
Abrangência
Sintaxe
FREAD ( < nHanvle > , < cBuffer > , < nQtdBytes > ) --> nBytesLidos
Parâmetros
Retorno
Tipo Descrição
Quantidades de bytes lidos. Caso a quantidade seja menor que a solicitada, isto
Numérico indica erro de leitura ou final de arquivo, Verifique a função FERROR() para
maiores detalhes.
Descrição
A variável String a ser utiilzada como buffer de leitura deve ser sempre pré-alocado e passado
como referência. Caso contrário, os dados não poderão ser retornados.
FREAD() lê a partir da posição atual do ponteiro atual do arquivo , que pode ser ajustado ou
modificado pelas funções FSEEK() , FWRITE() ou FREADSTR().
FREADSTR
Revisão: 02/06/2003
Abrangência
Sintaxe
Parâmetros
Retorno
Tipo Descrição
Retorna uma string contendo os caracteres
Caracter
lidos.
Descrição
FREADSTR() lerá até o número de bytes informado em nQtdBytes ou até encontrar um CHR(0).
Caso aconteça algum erro ou o arquivo chegue ao final, FREADSTR() retornará uma string
menor do que nQdBytes e colocará o erro em FERROR().
FREADSTR() lê a partir da posição atual do ponteiro, que pode ser ajustado pelo FSEEK(),
FWRITE( ) ou FREAD().
FRENAME
Revisão: 11/06/2003
Abrangência
Sintaxe
Parâmetros
Retorno
Tipo Descrição
Se o status retornado for -1 , ocorreu algum erro na mudança de nome :
Verifique se os dois caminhos estão no mesmo ambiente, verifique a existência
Numérico do arquivo de origem, se ele não está em uso no momento por outro processo ,
e verifique se o nome do arquivo de destino já não existe no path de destino
especificado.
Descrição
Através da função FRENAME() é possível renomear um arquivo para outro nome, tanto no
servidor como na estação. Ao renomear um arquivo não esqueça que esta arquivo deverá
estar fechado ( isto é , não pode estar em uso por nenhum outro processo ou estação). Caso o
arquivo esteja aberto por outro processo , a operação de renomear o arquivo não é possível. A
função fRename() não aceita wildcards (* e/ ou?).
Vale lembrar que não é possível renomear um arquivo especificando nos parâmetros
simultaneamente um caminho de servidor e um de estação remota, bem como especificar dois
arquivos remotos e executar a função fername() através de um JOB. Caso isto ocorra, a função
retornará -1 , e fError() retornará também -1.
I mportante : Quando especificamos um path diferente nos arquivos de origem e
destino , a função fRename( ) realiza a funcionalidade de MOVER o arquivo para o
Path especificado.
FSEEK
Revisão: 05/05/2003
Abrangência
Parâmetros
Retorno
Tipo Descrição
FSEEK() retorna a nova posiçao do ponteiro de arquivo com relaçao ao início do
arquivo (posiçao 0) na forma de um valor numérico inteiro. Este valor nao leva
Numérico
em conta a posiçao original do ponteiro de arquivos antes da execução da
função FSEEK().
Descrição
FWRITE
Revisão: 27/05/2003
Abrangência
Sintaxe
FWRITE ( < nHandle > , < cBuffer > , [ nQtdBytes ] ) --> nBytesEscritos
Parâmetros
Retorno
Tipo Descrição
FWRITE() retorna a quantidade de bytes escritos na forma de um valor numérico
inteiro. Caso o valor retornado seja igual a < nQtdBytes> , a operaçao foi bem
Numérico sucedida. Caso o valor de retorno seja menor que < nBytes> ou zero, ou o disco
está cheio ou ocorreu outro erro. Neste caso , utilize a função FERROR() para
obter maiores detalhes da ocorrência.
Descrição
Você pode escrever todo ou parte do conteúdo do buffer , limitando a quantidade de Bytes
através do parâmetro nQtdBytes. A escrita começa a partir da posição corrente do ponteiro de
arquivos, e a função FWRITE retornará a quantidade real de bytes escritos.
GETCLIENTDIR
Revisão: 04/05/2003
Abrangência
Sintaxe
Tipo Descrição
Caracter Retona o path onde está instalado o Protheus Remote.
Descrição
Retorna o diretório completo onde o Remote está instalado, informando inclusive a unidade de
disco.
Observação : Esta função apenas retornará um resultádo válido caso seja executada
em um programa através do Protheus Remote . Caso esta função seja chamada em
JOB , a mesma ocasionará um erro de execução ( Error to comunicate with Remote )
.
GETREMOTEININAME
Revisão: 12/06/2003
Abrangência
Sintaxe
Retorno
Tipo Descrição
Caracter Path e nome do arquivo de configuração
Descrição
GETSRVPROFSTRING
Revisão: 03/09/2002
Abrangência
Versão 5.07 Versão 5.08 Versão 6.09 Versão 7.10 Versões Anteriores
Sintaxe
Parâmetros
Argumento Tipo Descrição
cChave Caracter Chave do INI do environment a ser lida,
cDefault é o conteudo da chave a ser retornado caso a chave
cDefault Caracter
não seja encontrada no .ini
Retorno
Tipo Descrição
Caracter Conteudo da chave especificada
Descrição
MAKEDIR
Revisão: 12/06/2003
Abrangência
Sintaxe
Parâmetros
Retorno
Tipo Descrição
Retorno zero ( 0 ),o diretório foi criado com sucesso. Caso contrário, houve erro
Numérico
na criação do diretório.
Descrição
Caso o diretório comece com um drive ( Ex: C:, X: ) o diretório será criado na estação, caso
contrário será criado no servidor.
MSCOMPRESS
Revisão: 07/05/2003
Abrangência
Sintaxe
Parâmetros
Retorno
Tipo Descrição
Caso a compactação seja executada com sucesso , a função retornará uma sring
contendo o nome do arquivo gerado . Caso não seja possível a compactação ,
Caracter
por falta de espaço em disco ou erro de acesso a algum dos arquivos a ser(em)
compactado(s), a função retornará uma string em branco ("").
Descrição
MSDECOMP
Revisão: 07/05/2003
Abrangência
Sintaxe
Parâmetros
Retorno
Tipo Descrição
Caso a descompactação foi executada com sucesso, a função retornará .T. , Em
caso de erro durante a descompactação, a função retrornará .F. Verifique o
Lógico espaço disponível na unidade de disco para descompactar o(s) arquivo(s) e/ ou
se existe amgum arquivo a ser descompactado no pacote que já exista na
unidade de disco , atribuído como "REad-Only".
Descrição
Caso o arquivo seja protegido por senha, apenas com a senha poderemos descompactá-lo.
SPLITPATH
Revisão: 05/05/2003
Abrangência
Sintaxe
SPLITPATH ( < cArq > , [ @cDrive ] , [ @cCaminho ] , [ @cNome ] , [ @cExt ] ) --> NIL
Parâmetros
Retorno
Tipo Descrição
Caracter Esta função sempre retorna NIL.
Descrição
A função SplitPath() divide um caminho completo em todas as suas subpartes ( Drive , Caminho
, Nome e Extensão ) .
Tanto arquivos locais ( Remote ) quanto arquivos no servidor, podem ser informados.
O caminho, caso informado, incluirá uma barra como último caracter. A extensão , quando
retornada , inclui sempre o ponto ( . ) antes da extensão.
Todos os parâmetros , a partir do segundo , quando passados devem ser por referência.
Observação : Vale lembrar que a função SplitPath não valida a sintaxe do caminho
e/ ou arquivo digitados , nem a existência do mesmo . Esta função é utilizada para
determinar em uma string os elementos que compõe um caminho para a localização
de um arquivo.
WRITEPPROSTRING
Revisão: 05/05/2003
Abrangência
Sintaxe
WRITEPPROSTRING ( < cSecao > , < cChave > , < cConteudo > , < cArqIni > ) --> lSucess
Parâmetros
Argumento Tipo Descrição
cSecao corresponde ào nome da seção do íni a ser utilizada.
cSecao Caracter
Caso a seção não exista , a mesma será criada.
Chave da seção do ini a ter seu conteúco alterado . Caso a
cChave Caracter
chave não esxista na seção especificada, a mesma será criada.
cConteudo Caracter cConteudo corresponde ào conteúdo da chave a ser atualizado.
cArqI ni corresponde ao nome do arquivo de inicialização a ser
alterado. Caso o arquivo não exista , ele será criado . Caso o
path do arquivo não seja informado , o mesmo será
cArqIni Caracter criado/ atualizado no diretório onde está instalado o Protheus
Server, no servidor. Caso especificado um path absoluto , com
unidade de disco , o arquivo .ini será criado e/ ou atualizado na
estação remota , no path informado.
Retorno
Tipo Descrição
Caso a chave seja incluida e/ ou alterada com sucesso , a função retornatá .T.
(true) , e caso ocorra alguma falha ou impossibilidade de acesso ao arquivo .ini ,
Lógico
a função retornará .F. (false). Dentre as causas mais comuns de falha , podemos
citar erro de sintaxe no nome do arquivo e/ou path inexistente ou inacessível.
Descrição
ALLTRIM
Revisão: 26/02/2003
Abrangência
Versão 5.07 Versão 5.08 Versão 6.09 Versão 7.10 Versões Anteriores
Sintaxe
Parâmetros
Retorno
Tipo Descrição
ALLTRIM() retorna uma cadeia de caracteres cujos espaços em branco à direita
Caracter
e à esquerda foram removidos.
Descrição
ALLTRIM() é uma função de tratamento de dados do tipo caractere que remove os espaços em
branco à direita e à esquerda de uma cadeia de caracteres. É relacionada a LTRIM() e RTRIM(),
que removem espaços em branco à esquerda e à direita de uma cadeia de caracteres,
respectivamente. O inverso de ALLTRIM(), LTRIM(), e RTRIM() sao as funçoes PADC(), PADR(),
e PADL(), as quais centralizam, alinham à direita, ou alinham à esquerda cadeias de caracteres
através da inserção de caracteres de preenchimento.
DESCEND
Revisão: 08/09/2002
Abrangência
Sintaxe
Parâmetros
Argumento Tipo Descrição
< cString> corresponde à sequência de caracteres a ser
cString Caracter
analisada.
Retorno
Tipo Descrição
DESCEND() retorna a string especificada como parâmetro de uma forma
Caracter
complementada. Um DESCEND() de CHR(0) sempre retorna CHR(0).
Descrição
LTRIM
Revisão: 26/02/2003
Abrangência
Versão 5.07 Versão 5.08 Versão 6.09 Versão 7.10 Versões Anteriores
Sintaxe
Parâmetros
Retorno
Tipo Descrição
LTRIM() retorna uma cópia de < cString> , sendo que os espaços em branco à
esquerda foram removidos. Caso < cString> seja uma cadeia de caracteres nula
Caracter
("") ou toda composta de espaços em branco, LTRIM() retorna uma cadeia de
caracteres nula ("").
Descrição
Revisão: 26/02/2003
Abrangência
Versão 5.07 Versão 5.08 Versão 6.09 Versão 7.10 Versões Anteriores
Sintaxe
PADL / PADR / PADC ( < exp > , < nTamanho > , [ cCaracPreench ] ) --> cStringPreench
Parâmetros
Retorno
Tipo Descrição
PADC(), PADL(), e PADR() retornam o resultado de < exp> na forma de uma
Caracter cadeia de caracteres preenchida com < cCaracPreench> , para totalizar o
tamanho especificado por <nTamanho>.
Descrição
PADC(), PADL(), e PADR() sao funçoes de tratamento de caracteres que inserem caracteres de
preenchimento em valores caractere, data ou numéricos a fim de criar uma nova cadeia de
caracteres de tamanho especificado. PADC() centraliza < exp> , adicionando caracteres de
preenchimento à direita e à esquerda; PADL() adiciona caracteres de preenchimento à
esquerda; e PADR() adiciona caracteres de preenchimento à direita. Caso o tamanho de < exp>
exceda o argumento < nTamanho> , todas as funçoes PAD() truncam cStringPreench ao
< nTamanho> especificado.
PADC(), PADL(), e PADR() sao utilizadas para exibir cadeias de caracteres de tamanho variável
em uma área de tamanho fixo. Elas podem ser usadas, por exemplo, para assegurar o
alinhamento com comandos ?? consecutivos. Outra utilizaçao é exibir textos em uma tela de
tamanho fixo, para certificar-se de que o texto anterior foi completamente sobreescrito.
PADC(), PADL(), e PADR() sao o contrário das funçoes ALLTRIM(), LTRIM(), e LTRI M(), as
quais eliminam espaçoes em branco à esquerda e à direita de cadeias de caracteres.
RTRIM
Revisão: 26/02/2003
Abrangência
Versão 5.07 Versão 5.08 Versão 6.09 Versão 7.10 Versões Anteriores
Sintaxe
Parâmetros
Retorno
Tipo Descrição
RTRI M() retorna uma cópia de < cString> , sendo que os espaços em branco à
direita foram removidos. Caso <cString> seja uma cadeia de caracteres nula ("")
Caracter
ou totalmente composta por espaços, RTRIM() retorna uma cadeia de caracteres
nula ("").
Descrição
LTRIM() é relacionada a RTRIM(), que remove espaços em branco à direita, e a ALLTRIM(), que
remove espaços em branco à direita e à esquerda. O contrário de ALLTRIM(), LTRIM(), e
RTRIM() sao as funçoes PADC(), PADR(), e PADL(), as quais centralizam, alinham à direita, ou
alinham à esquerda cadeias de caracteres, inserindo caracteres de preenchimento.
Funcöes de Tratamento de Data / Hora
CDOW
Revisão: 04/08/2002
Abrangência
Versão 5.07 Versão 5.08 Versão 6.09 Versão 7.10 Versões Anteriores
Sintaxe
Parâmetros
Retorno
Tipo Descrição
CDOW() retorna o nome do dia da semana na forma de uma cadeia de
caracteres. A primeira letra será maiúscula e o resto dos caracteres virá em
Caracter
minúsculas. Para um valor de data nulo ou inválido, CDOW() retorna uma cadeia
de caracteres vazia ("").
Descrição
CDOW() é uma função utilizada para obter, a partir de uma data, a cadeia de caracteres
contendo o dia da semana correspondente.
CMONTH
Revisão: 04/08/2002
Abrangência
Versão 5.07 Versão 5.08 Versão 6.09 Versão 7.10 Versões Anteriores
Sintaxe
Parâmetros
Tipo Descrição
CMONTH() retorna o nome do mês a partir de uma data como sendo uma cadeia
Caracter de caracteres com a primeira letra maiúscula e o restante da string em letras
minúsculas. Para uma data nula, CMONTH() retornará uma string nula ("").
Descrição
CMONTH() é uma função de conversão de datas que , a partir de uma data , retorna uma
cadeia de caracteres correspondendo ao nome do mês correspondente.
DATE
Revisão: 04/08/2002
Abrangência
Versão 5.07 Versão 5.08 Versão 6.09 Versão 7.10 Versões Anteriores
Sintaxe
Retorno
Tipo Descrição
DATE() retorna a data do sistema como sendo um valor do tipo data.
Data
Descrição
Revisão: 22/09/2002
Abrangência
Versão 5.07 Versão 5.08 Versão 6.09 Versão 7.10 Versões Anteriores
Sintaxe
Parâmetros
Retorno
Tipo Descrição
DAY() retorna um número na faixa de 0 até 31, sendo este um valor numérico
inteiro. Caso o mês seja Fevereiro, os anos bissextos sao considerados. Se o
Numérico
argumento de data é 29 de Fevereiro e o ano nao é bissexto, DAY() retornará
zero. Se o argumento de data é vazio, DAY() também retornará zero.
Descrição
Retorna o dia do mês como valor numérico. DAY() é uma funçao de conversao de datas
utilizada para converter um valor do tipo data para o dia do mês correspondente. Esta função é
usada em conjunto com CMONTH() e YEAR() para formatar datas. Além disso, é geralmente
usada em cálculos que envolvam datas.
DOW
Revisão: 13/10/2002
Abrangência
Versão 5.07 Versão 5.08 Versão 6.09 Versão 7.10 Versões Anteriores
Sintaxe
Parâmetros
Tipo Descrição
DOW() retorna o dia da semana na forma de um número entre zero e sete. O
Numérico primeiro dia da semana é um (Domingo) e o último é sete (Sábado). Se
<dData> estiver vazio, DOW() retorna zero.
Descrição
DOW() é uma funçao de conversao de datas que converte um valor data para um número que
identifica o dia da semana. Ela é útil quando você deseja cálculos de data em uma base
semanal. DOW() é semelhante a CDOW(), a qual retorna o dia da semana na forma de uma
cadeia de caracteres ao invés de um número.
DTOC
Revisão: 13/10/2002
Abrangência
Versão 5.07 Versão 5.08 Versão 6.09 Versão 7.10 Versões Anteriores
Sintaxe
Parâmetros
Retorno
Tipo Descrição
DTOC() retorna uma cadeia de caracteres que representa uma data. O valor de
retorno é formatado de acordo com o formato de datas corrente. O formato
Caracter
padrao é mm/ dd/ aa. Uma data nula retorna uma cadeia de caracteres em
branco igual em tamanho ao formato de data corrente.
Descrição
DTOC() é uma funçao de conversao de datas utilizada por motivos de Formataçao quando você
deseja exibir a data no formato SET DATE e é necessária uma expressao caractere. Caso você
precise de um formato de data específico, você pode utilizar TRANSFORM() ou uma expressao
customizada.
Se você estiver INDEXando uma data juntamente com uma cadeia de caracteres, use DTOS()
ao invés de DTOC() para converter o valor data para uma cadeia de caracteres.
ELAPTIME
Revisão: 08/09/2002
Abrangência
Sintaxe
Parâmetros
Retorno
Tipo Descrição
A diferença de tempo no formato hh:mm:ss, onde hh é a hora ( 1 a 24 ), mm os
Caracter
minutos e ss os segundos
Descrição
Revisão: 22/09/2002
Abrangência
Sintaxe
Parâmetros
Retorno
Tipo Descrição
MONTH() retorna um valor numérico inteiro na faixa de 0 (zero) a 12. Uma data
Numérico
nula (CTOD("")) retorna zero.
Descrição
MONTH() é uma funçao de conversao de datas que é útil quando você precisa de um valor de
mês numérico durante cálculos para, por exemplo, relatórios periódicos. MONTH() faz parte de
um grupo de funçoes que retornam componentes de um valor data na forma de valores
numéricos. O grupo inclui DAY() e YEAR(), que retornam os valores de dia e ano na Forma de
númericos. CMONTH() é uma funçao relacionada, que permite a você retornar o nome do mês
a partir de um valor data.
SECONDS
Revisão: 09/10/2002
Abrangência
Versão 5.07 Versão 5.08 Versão 6.09 Versão 7.10 Versões Anteriores
Sintaxe
Retorno
Tipo Descrição
Numérico SECONDS() retorna a hora do sistema como um valor numérico na forma
segundos.centésimos. O valor numérico retornado é a quantidade de segundos
decorridos desde a meia-noite, e tem base em um relógio de vinte e quatro
horas em uma faixa de zero a 86399.
Descrição
SECONDS() é uma funçao de horas utilizada para fornecer um método simples de calcular o
tempo decorrido, com base no relógio do sistema, durante a execuçao do programa. É
relacionado à funçao TIME(), a qual retorna a hora do sistema como uma cadeia de caracteres
na forma hh:mm:ss.
TIME
Revisão: 13/10/2002
Abrangência
Versão 5.07 Versão 5.08 Versão 6.09 Versão 7.10 Versões Anteriores
Sintaxe
Retorno
Tipo Descrição
TIME() retorna a hora do sistema como uma cadeia de caracteres na forma
Caracter hh:mm:ss. hh indica a hora no formato de 24 horas, mm indica os minutos, e ss
indica os segundos. Horas, minutos e segundos sao separadas por dois pontos.
Descrição
TI ME() é uma funçao de tratamento de tempo, utilizada para exibir ou imprimir a hora do
sistema em um relatório ou na tela. TIME() está relacionada a SECONDS(), que retorna a
quantidade de segundos decorridos desde a meia-noite. SECONDS() geralmente é utilizada em
lugar de TIME() para cálculos sobre o tempo.
YEAR
Revisão: 13/10/2002
Abrangência
Versão 5.07 Versão 5.08 Versão 6.09 Versão 7.10 Versões Anteriores
Sintaxe
Parâmetros
Retorno
Tipo Descrição
YEAR() retorna o ano do valor data especificado, inclusive dígitos indicativos de
século, na forma de um valor numérico de quatro dígitos. O valor retornado nao
Numérico
é influenciado pelo formato de DATE ou CENTURY corrente. A especificaçao de
uma data nula (CTOD("")) retorna zero.
Descrição
YEAR() é uma funçao de conversao de datas utilizada para converter um valor data para um
valor numérico indicativo do ano. Pode ser utilizada em cálculos de, por exemplo, relatórios
periódicos, ou para Formataçao de exibiçoes de data.
AADD
Revisão: 26/07/2002
Abrangência
Versão 5.07 Versão 5.08 Versão 6.09 Versão 7.10 Versões Anteriores
Sintaxe
Parâmetros
Retorno
Tipo Descrição
Avalia expValor e retorna seu Valor. Se expValor não for especificado, AADD()
(Qualquer)
retorna NIL.
Descrição
AADD() é uma função de tratamento de vetor que adiciona um elemento ao vetor. Ao elemento
de vetor recém criado é atribuido o valor especificado por < expValor> .
AADD() é semelhante à função ASIZE(), mas adiciona apenas um elemento por vez; ASIZE()
pode aumentar ou diminuir um vetor a um tamanho especificado. AADD(), porém, possui a
vantagem de poder atribuir um valor ao novo elemento, enquanto que ASIZE() nao pode.
AADD() pode também parecer ser igual a AI NS(), mas isso nao é verdade: AINS() move
elementos dentro de um vetor, mas nao modifica o tamanho do vetor.
OBSERVAÇÃO : Caso < expValor> seja um outro vetor, o novo elemento no vetor destino
conterá uma referência ao vetor especificado por <expValor>.
ACLONE
Revisão: 13/07/2002
Abrangência
Versão 5.07 Versão 5.08 Versão 6.09 Versão 7.10 Versões Anteriores
Sintaxe
Parâmetros
Retorno
Tipo Descrição
Array Array idêntico ao aFonte , porem sem nenhuma referência ao mesmo.
Descrição
ACLONE() é uma funçao de vetor que cria uma duplicata completa do vetor de <aFonte>. Caso
< aFonte> contenha sub-vetores, ACLONE() cria sub-vetores correspondentes e os preenche
com cópias dos valores contidos nos sub-vetores de < aFonte> .
ACOPY
Revisão: 13/07/2002
Abrangência
Sintaxe
ACOPY ( < aFonte > , < aDestino > , [ nInicio ] , [ nCont ] , [ nPosDestino ] ) --> aDestino
Parâmetros
Retorno
Tipo Descrição
Array ACOPY() retorna uma referência ao vetor destino, <aDestino>.
Descrição
ACOPY() é uma funçao de tratamento de vetor que copia elementos do vetor < aFonte> para o
vetor < aDestino> . O vetor < aDestino> já deve existir e ser grande o suficiente para conter os
elementos copiados. Caso o vetor < aFonte> tenha mais elementos, alguns elementos nao
serao copiados.
ACOPY() copia valores de todos os tipos de dados, inclusive NIL e blocos de código. Se um
elemento do vetor < aFonte> for um sub-vetor, o elemento correspondente no vetor
< aDestino> conterá uma referência ao sub-vetor. Consequentemente, ACOPY() nao cria
duplicatas completas de vetores multi-dimensionais. Para fazer isto, use a funçao ACLONE().
ADEL
Revisão: 16/07/2002
Abrangência
Versão 5.07 Versão 5.08 Versão 6.09 Versão 7.10 Versões Anteriores
Sintaxe
Parâmetros
Retorno
Tipo Descrição
ADEL() retorna uma referência ao vetor destino, <aFonte>.
Array
Descrição
AEVAL
Revisão: 16/07/2002
Abrangência
Versão 5.07 Versão 5.08 Versão 6.09 Versão 7.10 Versões Anteriores
Sintaxe
AEVAL ( < aVetor > , < bBloco > , [ nInicio ] , [ nCont ] ) --> aVetor
Parâmetros
Retorno
Tipo Descrição
AEVAL() retorna uma referência a <aVetor>.
Array
Descrição
AEVAL() é uma funçao de tratamento de vetor que avalia um bloco de código uma vez para
cada elemento de um vetor, passando o valor do elemento como um parâmetro de bloco. O
valor de retorno do bloco é ignorado. Todos os elementos no < aVetor> sao processados a nao
ser que o argumento < nInicio> ou < nCont> seja especificado.
AEVAL() nao faz suposiçoes sobre o conteúdo dos elementos de vetor que ele está passando
para o bloco. É assumido que o bloco sabe qual o tipo de dados haverá em cada elemento.
AEVAL() é semelhante a DBEVAL(), que aplica um bloco para cada registro de um arquivo de
banco de dados. Da mesma forma que DBEVAL(), AEVAL() pode ser utilizado como base para a
construçao de comandos de interaçao tanto para estruturas de vetor complexas como simples.
Consulte a seçao Blocos de Código no na seção A Linguagem Advpl para maiores informações
sobre Code-Blocks.
AFILL
Revisão: 16/07/2002
Abrangência
Sintaxe
AFILL ( < aDestino > , < ValorExp > , [ nInicio ] , [ nCont ] ) --> aDestino
Parâmetros
Retorno
Tipo Descrição
Array AFILL() retorna uma referência ao <aDestino>.
Descrição
AFILL() é uma funçao de vetor que preenche um vetor especificado com um único valor de
qualquer tipo de dados (inclusive vetores, blocos de código ou NI L) atribuindo < ValorExp> a
cada elemento de vetor na faixa especificada.
ATENÇÃO : AFILL() nao pode ser utilizado para preencher vetores multi-dimensionais. Este tipo
de vetores em Clipper sao implementados aninhando-se vetores dentro de outros vetores. A
utilizaçao de AFILL() com vetores multi-dimensionais sobre-escreverá vetores para as outras
dimensoes do vetor.
AINS
Revisão: 16/07/2002
Abrangência
Versão 5.07 Versão 5.08 Versão 6.09 Versão 7.10 Versões Anteriores
Sintaxe
Parâmetros
Retorno
Tipo Descrição
Retorna uma referência ao vetor aDestino
Array
Descrição
AINS() é uma função de vetor que insere um novo elemento em um vetor especificado. O
elemento recém inserido é NIL até que um novo valor seja atribuido a ele. Após a inserção, o
último elemento no vetor é descartado, e todos os elementos depois do novo elemento descem
uma posição.
¤ AVISO : AINS() deve ser utilizado com cuidado quando se tratar de vetores multi-
dimensionais. Vetores multi-dimensionais em Advpl sao implementados através do aninhamento
de vetores dentro de outros vetores. Utilizar AINS() com um vetor multi-dimensional descarta o
último sub-vetor no vetor destino especificado, o que causa a perda de uma ou mais
dimensoes. Para inserir uma nova dimensao em um vetor, primeiramente adicione um novo
elemento ao final do vetor utilizando AADD() ou ASIZE() antes de usar AINS().
ARRAY
Revisão: 26/07/2002
Abrangência
Versão 5.07 Versão 5.08 Versão 6.09 Versão 7.10 Versões Anteriores
Sintaxe
ARRAY ( < nElementos,... > ) --> aVetor
Parâmetros
Retorno
Tipo Descrição
Array ARRAY() retorna um vetor de dimensoes especificadas.
Descrição
ARRAY() é uma funçao de tratamento de vetor que retorna um vetor nao inicializado com a
quantidade especificada de elementos e dimensoes. Se for especificado mais de um argumento
< nElementos> , é criado um vetor multi-dimensional ou aninhado, sendo que a quantidade de
dimensoes é igual à quantidade de argumentos < nElementos> especificada.
No Advpl, há várias formas de se criar um vetor. Você pode declarar um vetor utilizando LOCAL
ou STATIC; você pode criar um vetor utilizando PRIVATE ou PUBLIC; você pode atribuir um
vetor literal a uma variável existente; ou você pode usar a funçao ARRAY(). ARRAY() tem a
vantagem de possibilitar a você a criaçao de vetores dentro de expressoes ou blocos de código.
ASCAN
Revisão: 26/07/2002
Abrangência
Sintaxe
ASCAN ( < aDestino > , < ProcuraExp > , [ nInicio ] , [ nCont ] ) --> nParouEm
Parâmetros
Retorno
Tipo Descrição
ASCAN() retorna um valor numérico que representa a posiçao ocupada no vetor
pelo último elemento varrido. Se < ProcuraExp> for um valor simples, ASCAN()
Numérico retorna a posiçao do primeiro elemento que corresponder ao valor procurado, ou
zero caso nao haja correspondência. Se < ProcuraExp> for um bloco de código,
ASCAN() retorna a posiçao do elemento onde o bloco retornou verdadeiro (.T.).
Descrição
ASCAN() é uma funçao de tratamento de vetor que varre um vetor procurando um valor
especificado e opera da mesma forma que o comando SEEK quando pesquisa um valor simples.
O valor < ProcuraExp> é comparado ao elemento de vetor destino que começa com o caractere
mais à esquerda no elemento destino e prossegue até que nao haja mais nenhum caractere em
<ProcuraExp>. Caso nao haja correspondência, ASCAN() vai para o próximo elemento no vetor.
Como ASCAN() utiliza o operador (= ) para comparaçoes, ele é sensível ao status de EXACT.
Caso EXACT esteja ON, o elemento de vetor destino deve ser exatamente igual ao resultado de
< ProcuraExp> para que haja correspondência.
Se o argumento de < ProcuraExp> seja um bloco de código, ASCAN() varre o vetor < aDestino>
executando o bloco para cada elemento acessado. À medida em que cada elemento é
encontrado, ASCAN() passa o valor do elemento como um argumento para o bloco de código, e
depois executa um EVAL() no bloco. A operaçao de pesquisa pára quando o bloco de código
retorna verdadeiro (.T.), ou quando ASCAN() atinge o último elemento no vetor.
ASIZE
Revisão: 13/07/2002
Abrangência
Sintaxe
Parâmetros
Retorno
Tipo Descrição
Array Retorna uma referência ao array aDestino.
Descrição
ASIZE() é uma função de tratamento de vetor que muda o valor real do vetor < aDestino> . O
vetor é diminuido ou aumentado para corresponder ao tamanho especificado. Caso o vetor seja
diminuido, os elementos no final do vetor sao perdidos. Se o vetor for aumentado, novos
elementos sao adicionados ao final do vetor e a eles atribuido NI L.
ASORT
Revisão: 26/07/2002
Abrangência
Sintaxe
Parâmetros
Retorno
Tipo Descrição
Array ASORT() retorna uma referência ao vetor <aDestino>.
Descrição
ASORT() é uma funçao de vetor que coloca em ordem todo ou parte de um vetor que contém
elementos de um único tipo de dados. Os tipos de dados que podem ser ordenados incluem
caractere, data, lógico e numérico.
Se o argumento < bOrdem> nao for especificado, a ordem padrao é ascendente. Elementos
com valores baixos sao colocados no início do vetor (primeiro elemento), enquanto elementos
com valores altos sao colocados no final do vetor (último elemento).
Caso o argumento de bloco < bOrdem> seja especificado, ele é utilizado para determinar a
ordem em que os elementos serao colocados. Cada vez que o bloco é avaliado, dois elementos
do vetor destino sao passados como parâmetros de bloco. O bloco deve retornar verdadeiro
(.T.) se os elementos estiverem ordenados. Isto pode ser usado para criar uma ordem
descendente ou de dicionário. Veja os exemplos abaixo.
Quando ordenadas, as cadeias de caracteres sao colocadas na sequência ASCII; valores lógicos
sao ordenados com falso (.F.) sendo considerado o valor menor; valores data sao ordenados
cronologicamente; e numéricos sao ordenados por magnitude.
GETIMPWINDOWS
Revisão: 05/05/2003
Abrangência
Sintaxe
Parâmetros
Retorno
Tipo Descrição
Array com nome das impressoras disponíveis. Vale lembrar que esta função não
Array
verifica o status atual da(s) impressora(s) encontrada(s).
Descrição
Caso não seja encontrada nenhuma impressora , é retornado um array com 1 elemento ,
contendo a String "Nenhuma Impressora Disponivel".
Observação : Caso a função seja passada com o argumento .F. ( buscar impressoras
da estação Remote ) , porém a função seja executada a partir de um JOB ( programa
sem a interface Remota ) , o array retornado terá apenas 1 elemento , contendo a
String "Nenhuma Impressora Disponivel".
GETPORTACTIVE
Revisão: 23/12/2004
Abrangência
Versão 5.07 Versão 5.08 Versão 6.09 Versão 7.10 Versão 8.11
Sintaxe
Parâmetros
Retorno
Tipo Descrição
Array Array com as portas de impressão disponíveis.
Descrição
Retorna lista de portas de impressão disponíveis. A função GETPORTACTI VE( ) retorna uma
lista de portas de impressão disponíveis do Protheus Server ou Remote. Se o Protheus Server
está em ambiente Unix, a GETPORTACTI VE() retornará uma lista com os nomes de devices
possíveis para impressão.
Caso não sejam encontradas portas para impressão , é retornado um array com apenas um
elemento , contendo a string "Nao existem portas disponiveis".
Observação : Caso a função seja chamada com o parâmetro .F. , para obter as portas
de impressão da estação remota , porém a função seja chamada através de um JOB
( programa sem a interface Remote ) , a mesma retornará um array com um
elemento , contendo a string "Nao existem portas disponiveis".
GETWEBJOB
Revisão: 16/10/2002
Abrangência
Sintaxe
Retorno
Tipo Descrição
cJobName corresponde ào nome do job que configura a working Thread atual
em uso. Caso a chamada da função seja realizada a partir de uma thread que
Caracter
não seja uma Working Thread ( como por exemplo , uma thread iniciada a partir
de um ApxRemote ) , a função GetWebJob() retornará uma string vazia ("").
Descrição
Através desta função , é possível recuperar o nome da configuração de Working Threads ( Job )
que está sendo utilizada pela Working Thread atual.
Observação : Esta função está disponível a partir dos Build's Ap6 gerados a partir de
05/09/2002.
HTTPCACHE
Revisão: 16/09/2002
Abrangência
Sintaxe
Parâmetros
Retorno
Tipo Descrição
Esta função retorna a definição atualmente utilizada para a etiqueta Cache-
Caracter
Control do Header HTTP.
Descrição
HTTPCOUNTSESSION
Revisão: 25/08/2002
Abrangência
Sintaxe
Retorno
Tipo Descrição
nCount corresponde ao número de usuários que possuem variáveis de session
Numérico
em uso no Server PRotheus.
Descrição
Esta função retorna o número de Sessions de usuários que estão atualmente em uso na
memória.
* * ATENÇÃO : Devemos atentar ao fato que esta função apenas terá o efeito
desejado caso o ambiente atual em uso pelo Projeto WEB seja WEBEX ( Web
Extended ) **
OBSERVAÇÃO : Esta função foi implementada na Ferramenta Ap6 Server , sendo necessário
adquirir um Build de Protheus Server com data igual ou superior a 22/04/2002.
HTTPFREESESSION
Revisão: 25/08/2002
Abrangência
Sintaxe
Retorno
Tipo Descrição
(NULO) Esta função sempre retorna NIL
Descrição
* * ATENÇÃO : Devemos atentar ao fato que esta função apenas terá o efeito
desejado caso o ambiente atual em uso pelo Projeto WEB seja WEBEX ( Web
Extended ) **
OBSERVAÇÃO : Esta função foi implementada na Ferramenta Ap6 Server , sendo necessário
adquirir um Build do Servidor Protheus Server com data igual ou superior a 22/04/2002.
HTTPGET
Revisão: 16/08/2002
Abrangência
Sintaxe
Parâmetros
Retorno
Tipo Descrição
Caracter String Html correspondendo ao documento solicitado.
Descrição
A função HttpGet() permite a emulação de um Client HTTP através de uma função Advpl,
acessando um determinado documento html publicado em um servidor Web, utiliando o
método GET , permitindo a passagem de parâmetros via URL, aguardando por um tempo
determinado (time-out) pela resposta do servidor solicitado.
Observações :
--- Na passagem de parâmtros GET , devemos atentar ao formato da string a ser passada como
parâmetros , pois a mesma segue o formato URI (Uniform Resource Identifiers) : Query
Component.
--- Caso nao seja retornado o documento antes do término do Time-out especificado na
chamada da função; ou caso não seja possível localizar o servidor ; seja por falha de resolução
de DNS , ou por erro de sintaxe ao especificar a URL , a função retornará Nulo (NIL).
--- Caso nao seja possível o acesso ao documento , como por exemplo o documento não exista
, será retornado uma string html com a mensagem de erro html enviada pelo servidor
correspondente.
OBSERVACAO : Esta funcão está disponivel apenas em Builds Ap6 gerados a partir de
10/07/2002
HTTPLEAVESESSION
Revisão: 25/08/2002
Abrangência
Sintaxe
Retorno
Tipo Descrição
(NULO) A função HttpLeaveSession() sempre retorna NIL
Descrição
* * ATENÇÃO : Devemos atentar ao fato que esta função apenas terá o efeito
desejado caso o ambiente atual em uso pelo Projeto WEB seja WEBEX ( Web
Extended ) **
OBSERVAÇÃO : Esta função foi implementada na Ferramenta Ap6 Server , sendo necessário
adquirir um build de Server PRotheus com data igual ou superior a 22/04/2002.
HTTPLOGONUSER
Revisão: 24/09/2002
Abrangência
Sintaxe
Retorno
Tipo Descrição
String contendo o login do usuário, no formato DOMINIO\ login. Caso a função
não seja executada em uma thread iniciada em uma interface http , ou o acesso
Caracter
anônimo ào site no IIS esteja habilitado , a função retornará uma string em
branco ("").
Descrição
Observação : Para que o usuário seja obrigado a informar um login individual , deve
ser desabilitado no I I S a configuração que permite acesso anônimo ao site. Caso
esta configuração não seja alterada , todos os usuários serão identificados como
"anônimos" pelo IIS, e a função retornará uma String em branco.
HTTPOTHERCONTENT
Revisão: 10/09/2002
Abrangência
Versão 7.10
Sintaxe
Retorno
Tipo Descrição
cContent é a string correspondendo ao conteúdo do corpo do pacote HTML
Caracter
postado no Server.
Descrição
Caso a requisição não tenha sido realizada por um client HTTP através do método de postagem
, ou a postagem já possua tratamento nativo no Server Protheus , ou a função seja chamada
em um ambiente que não esteja atendendo à uma requisição Http ( como um JOB , por
exemplo) , a função retornará uma string em branco ("").
HTTPPOST
Revisão: 07/08/2003
Abrangência
Parâmetros
Retorno
Tipo Descrição
Através de cHtml será retornada a String Html correspondendo ao documento
Caracter
solicitado.
Descrição
A função HttpPost() permite a emulação de um Client HTTP através de uma função Advpl,
postando um bloco de informações para um determinado documento publicado em um servidor
Web, utiliando o método POST , permitindo a passagem de parâmetros adicionais via URL e
aguardando por um tempo determinado (time-out) pela resposta do servidor solicitado.
Observações :
ATENÇÃO
1. Esta funcão está disponivel apenas em Builds Ap6 gerados a partir de 10/07/2002 .
2. O parametro aHeadStr apenas está disponível em Build's Ap6 e posteriores gerados
apos 01/10/2002.
HTTPPRAGMA
Revisão: 16/09/2002
Abrangência
Sintaxe
Parâmetros
Retorno
Tipo Descrição
Caracter A função HttpPragma retornará a definição anterior de PRAGMA utilizada.
Descrição
Revisão: 10/09/2002
Abrangência
Versão 7.10
Sintaxe
Retorno
Tipo Descrição
cCtDisp corresponde ào conteudo do identificador Content-disposition , recebido
Caracter
quando um Web Browser realiza uma requisição via HTTP ao servidor.
Descrição
Caso a requisição tenha sido realizada por um client HTTP que não enviou este identificador no
Header HTTP , ou a função seja chamada em um ambiente que não esteja atendendo à uma
requisição Http ( como um JOB , por exemplo) , a função retornará uma String em branco ("").
HTTPRCTLEN
Revisão: 10/09/2002
Abrangência
Versão 7.10
Sintaxe
Retorno
Tipo Descrição
nCtLen corresponde ào conteudo do identificador Content-length , recebido
Numérico
quando um Web Browser realiza uma requisição via HTTP ao servidor.
Descrição
A função HttpRCtLen() , quando utilizada em uma thread montada e/ ou inicializada para
atender à uma requisição Http ( .apl , .apw ) , retorna o conteúdo do identificador Content-
length do Header HTTP , como um dado numérico .
Caso a requisição tenha sido realizada por um client HTTP que não enviou este identificador no
Header HTTP , ou a função seja chamada em um ambiente que não esteja atendendo à uma
requisição Http ( como um JOB , por exemplo) , a função retornará 0 ( Zero ) .
HTTPRCTTYPE
Revisão: 10/09/2002
Abrangência
Versão 7.10
Sintaxe
Retorno
Tipo Descrição
cCtType corresponde ào conteudo do identificador Content-type , recebido
Caracter
quando um Web Browser realiza uma requisição via HTTP ao servidor.
Descrição
Caso a requisição tenha sido realizada por um client HTTP que não enviou este identificador no
Header HTTP , ou a função seja chamada em um ambiente que não esteja atendendo à uma
requisição Http ( como um JOB , por exemplo) , a função retornará uma String em branco ("").
HTTPSEND
Revisão: 10/09/2002
Abrangência
Sintaxe
Parâmetros
Retorno
Tipo Descrição
Caso a função obtenha sucesso em enviar a String cHtmlStr para o Browse
solicitante , o retorno será uma string vazia ("").
Caracter Caso não seja possível o envio da string , devido ào recurso de envio simultâneo
estar desabilitado ; ou ocorra uma falha de comunicação, ou a função
HttpSend() seja executada a partir de uam thread que não uma Working Thread
, a função irá retornar a string passada como parâmetro.
Descrição
Através desta função, é possivel retornar uma string Html à um browser durante o
processamento de uma requisição realizada através de um link .APW , utilizando Working
Threads , durante o processamento da mesma.
HTTPSETPART
Revisão: 10/09/2002
Abrangência
Sintaxe
Parâmetros
Retorno
Tipo Descrição
(NULO) Esta função sempre retorna NIL
Descrição
Através desta funcão , podemos habilitar ou desabilitar o envio parcial de Html , realizado pela
função HttpSend() , para o Browser solicitante de um processamento Advpl através de uma
Working Thread.
SOAPRACTION
Revisão: 10/09/2002
Abrangência
Versão 7.10
Sintaxe
Retorno
Tipo Descrição
cSoapAction corresponde ào conteudo do identificador soapaction , recebido
Caracter
quando um Web Browser realiza uma requisição via HTTP ao servidor.
Descrição
Caso a requisição tenha sido realizada por um client HTTP que não enviou este identificador no
Header HTTP , ou a função seja chamada em um ambiente que não esteja atendendo à uma
requisição Http ( como um JOB , por exemplo) , a função retornará uma string em branco ("").