Comandos Do Clipper

Embed Size (px)

Citation preview

Comandos do ClipperAqui voc encontrar 107 comandos do Clipper neste pequeno Guia de Referncia. //Sintaxe: // Propsito: O comando barra-dupla (//) permite que sejam colocados comentrios em linhas de instrues de um programa. Os tradicionais comando *, NOTE e && esto obsoletos na verso 5.0 do Clipper, tendo sido mantidos apenas por questes de compatibilidade. Voc deve substitu-los pelo novos comando // e /* e */. Argumentos: Define a cadeia de caracteres que constitui o texto do comentrio, colocada aps o comando //.

?/??Sintaxe: ? ou ?? Propsito: O comando INTERROGAO apresenta dados ou resultados de expresses, na tela ou na impressora, separados por um espao. Argumentos: Define uma lista de valores ou expresses, de qualquer tipo de dado, a serem apresentados. Esta lista poode conter qualquer combinao de tuipos de dados, incluindo campios memo. Se no for especificada, o comando ? causar uma mudana de linha e ?? no ter nenhum efeito.

@ . . . BoxSintaxe: @ BOX Propsito: O comando @ . . . BOX desenha caixas ou molduras retangulares na tela. Podem ser especificados o tamanho e a posio relativa da moldura na tela, alm de at nove diferentes caracteres que podem ser utilizados para constru-la. Argumentos: Define uma cadeia de caracteres de at nove posies, na qual os oito primeiros caracteres formam as bordas da moldura e o ltimo preenche o seu interior. Se apenas um caractere for especificado, este mesmo caractere ser utilizado para desenhar todas a moldura.

@ . . . ClearSintaxe: @ [clear [to ] ] Propsito: O comando @ . . . CLEAR limpa ou apaga uma regio retangular da tela. Argumentos: Definem as coordenadas da regio da tela a ser limpa. Os valores para as linhas podem variar de zero a MAXROW( ), geralmente 24, e os valores para as colunas podem variar de zero a MAXCOL( ), geralmente 79. Se a clusula TO no for especificada, os valores para lid e cid sero assumidos como sendo, respectivamente, MAXROW( ) e MAXCOL( ).

@ . . . PromptSintaxe: @ prompt [message ] Propsito: O comando @ . . . PROMPT apresenta um menu de opes na tela. Cada opo apontada por um cursor luminoso, sendo escolhido atravs das setas de direo , ou atravs do pressionamento da letra inicial de cada opo. Uma mensagem explicativa sobre a funo de cada opo, pode ser apresentada para facilitar a escolha do usurio. Com este comando, menus parecidos com os do Lotus 1 - 2- 3 podem ser automaticamente criados. Argumentos: So valores ou expresses numricas que definem as coordenadas onde dever ser apresentada uma opo do menu. Os valores da linha podem variar de zero a MAXROW( ), em geral 24; os valores das colunas podem variar de zero a MAXCOL( ), em geral 79. Define uma cadeia de caracteres que contm o nome da opo do menu a ser apresentada para escolha do usurio.

Define uma cadeira de caracteres contendo a mensagem explicativa associada a cada opo do menu. Cada vez que a correspondente opo for apontada, a mensagem ser apresentada na linha determinada pelo comando SET MESSAGEM TO.

@ . . . SaySintaxe: @ [ say [ picture ] ] Propsito: O comando @ . . . SAY permite formatar a sada de dados, na tela ou na impressora, apresentando os dados nas posies desejadas, de acordo com as coordenadas das linhas e colunas especificadas. Argumentos: So expresses numricas que definem as coordenadas da posio da tela ou da impressora na qual os dados sero apresentados. Para apresentao na tela, utiliza-se SET DEVICE TO SCREEN, sendo que as linhas podero variar de zero a MAXROW( ) (normalmente 24) e as colunas de zero a MAXCOL( ) (normalmente 79). Para impresso, utiliza-se SET DEVICE TO PRINTER, sendo que os valores das linhas e colunas podero variar de zero a 32.766. Define uma expresso de qualquer tipo de dado (caractere, data, lgico, numrico ou campo), que ser apresentada na posio definida, do dispositivo selecionado (tela ou impressora). Picture Define uma mscara ou funo de formatao para os dados a serem apresentados. No Clipper podem ser utilizados funes ou mscara de formatao para os dados a serem apresentados, permitindo a definio de como os dados sero apresentados ao usurio.

@ . . . ToSintaxe: @ to [double] Propsito: O comando @ . . . TO desenha na tela uma moldura ( ou caixa) com linhas grficas simples ou duplas. Argumentos: e Definem as coordenadas da moldura ou caixa a ser desenhada. Os valores para as linhas podem variar de zero a MAXROW( ), geralmente 24, e os valores para as colunas podem variar de zero a MAXCOL( ), geralmente 79. Double: Opcionalmente desenha uma moldura com linhas duplas. Se no for especificado ser desenhada uma moldura com linhas simples.

APPEND BLANKSintaxe: APPEND BLANK Propsito: O comando APPEND BLANK adiciona um novo registro vazio (em branco), no final do arquivo de dados que estiver em uso na rea de trabalho selecionada. Argumentos: Nenhum.

APPEND FROMSintaxe: APPEND FROM [FIELDS ] [] [FOR ] [WHILE ] [SDF / DELIMITED [WITH BLANK / ] ] Propsito: O comando APPEND FROM importa registros de um arquivo existente (arquivo-origem), e os adiciona no final do arquivo de dados em uso (arquivo-destino), na rea de trabalho que estiver selecionada. O arquivoorigem no precisa ser um arquivo de dados padro .DBF; poder ser um arquivo tipo texto padro ASCII. O comando APPEND FROM permite importar dados de arquivos no .DBF para arquivos .DBF. Argumentos: FROM Especifica o nome do arquivo-origem, ou seja, do qual os registros sero importados. O pode ser especificado como uma cadeia de caracteres ou como uma expresso caractere envolta por parnteses. Se a extenso no for especificada, ser assumida a extenso-padro .DBF. Se for especificada a clusula SDF ou a clusula DELIMITED, a extenso-padro assumida ser .TXT. FIELDS Especifica os campos dos registros do arquivo-origem que devem ser copiados para o arquivo-destinho. A deve conter o nome dos campos separados por vrgula. Se no for especificada, todos os campos do arquivo-origem sero copiados para o arquivo-destino.

Especifica a quantidade de registros do arquivo-origem que dever ser importada para o arquivo-destino; ALL, todos os registros; NEXT , os prximos n registros, a partir do atual; RECORD , apenas o registro de nmero n; e REST, os registro restantes, a partir do registro atual. Se um escopo no for especificado, ser assumido o escopo ALL, ou seja, todos os registros sero copiados para o arquivo-destino. FOR Especifica uma lgica para selecionar os registros que devero ser importados para o arquivo em uso (arquivo-destino), de acordo com o escopo especificado. Apenas os registros que a satisfizerem (tornarem-na verdadeira) sero copiados. WHILE Especifica os registros que devero ser importados para o arquivo em uso (arquivo-destino), a partir do registro em que estiver posicionado o apontador de registros, enquanto a especificada permanecer verdadeira. Para a utilizao da clusula WHILE, o arquivo-origem dever estar ordenado ou indexado de acordo com a especificada. SDF A clusula SDF (System Data Format) especifica que o arquivo-orgiem do tipo texto, padro ASCII. Os dados so importados caractere por caractere, partindo-se da esquerda. Cada registro possui um comprimento fixo (que corresponde soma do tamanho de todos os campos a serem copiados), sendo finalizados com um "carriage return/ine feed", ou seja, cada linha do arquivo-origem corresponde a um registro. Os campos do arquivo-destino so preenchidos seqncialmente com os caracteres do arquivo-origem lidos da esuquerda para a direita. DELIMITED Especifica que o arquivo-origem do tipo texto delimitado, padro ASCII. Os dados so importados caractere por caractere, partindo-se da esquerda.- Cada registro do arquivo-origem dever ter um tamanho varivel e terminar com um REturn e um avano de linha (carriage return/life feed), ou seja, ser importado um registro por linha. Cada campo do arquivo-origem poder ter uma tamanho varivel e dever estar separado do seguinte por uma vrgula. Os campos com dados tipo caractere podero ou no estar delimitados por aspas (" "). A extenso-poadro dos arquivos-origem copiados com esta opo .TXT. DELIMITED WITH BLANK Identifica uma arquivo-origem tipo texto delimitado, no qual os campos so separados por um espao em branco e os campos tipo caractere no so delimitados por nenhum caractere. DELIMITED WITH Identifica um arquivo-origem tipo texto delimitado, no qual os campos tipo caractere so delimitados por qualquer outro caractre diferente do padro, que so as aspas. Por exemplo: colchetes ( [ ] ). O apropriado pode ser especificado como uma cadeia de caracteres ou como uma expresso caractere envolta por parnteses. Esta clusula dever ser sempre a ltima a ser especificada no comando APPEND FROM.

AVERAGESintaxe: AVERAGE TO [] [FOR ] [WHILE ] Propsito: O comando AVERAGE calcula a mdia aritmtica de campos numricos de um arquivo de dados, armazenando o resultado em variveis de memria. Argumentos: Define uma lista de nomes de campos numricos do arquivo de dados em uso na rea de trabalho selecionada ou expresses envolvendo-os. Este argumento deve ser obrigatoriamente especificado para que as respectivas mdias sejam calculadas. Cada item da lista deve estar separado do seguinte por uma vrgula. Identica as variveis que devero receber os resultados da mdias calculadas. Deve haver, obrigatoriaente, uma varivel para o armazenamento de cada uma das mdias calculadas. Caso as variveis ainda no existam, ou no sejam visveis, sero automaticamente criadas como sendo de classe privada. Define a quantidade de registros a ser processada pelo comando AVERAGE: ALL, todos os registros; NEXT os registros seguintes, a partir do atual; RECORD , apenas para o registro de nmero ; e REST, os registros restantes do arquivo, a partir do registro atual. FOR Especifica uma para selecionar os registros que devero ser processados dentro do determinado. Apenas os registros que a satisfizerem (tornarem-na verdadeira) participao do clculo da mdia. WHILE Seleciona os registros a serem processados, a partir do registro atual, enquanto uma especificada for satisfeita (permanecer verdadeira). Assim que a condio se tornar falsa (.F.), o clculo da mdia ser interrompido e o resultado armazenado nas variveis especificadas. Para o funcionamento correto desta clusula, o arquivo de dados dever estar indexado ou ordenado de acordo com a especificada.

BEGIN SEQUENCE . . . END

Sintaxe: BEGIN SEQUENCE . . [BREAK []] . . [RECOVER [USING ]] . . END [SEQUENCE] Propsito: O comando BEGIN SEQUENCE define uma estrutura seqncial de controle, dentro do fluxo de execuo de um programa, e permite sua interrupo na ocorrncia de um determinado evento. Argumentos: BREAK Causa o desvio do fluxo de execuo para a linha de instruo imediatamente seguinte ao prximo comando RECOVER, se um tiver sido especificado, ou ao prximo comando END SEQUENCE. A um valor a ser atribudo especificada pela clusula USING do comando RECOVER. RECOVER USING Define um ponto de "recuperao" dentro do bloco de seqncia construdo, para o qual fluxo de execuo ser desviado aps a execuo de um comando BREAK. Se a clusula USING for especificada, a receber o valor fornecido pelo comando BREAK. Em geral, este valor corresponde a um objeto-erro. END Define o fim do bloco de seqncia. Se no for especificado um comando RECOVER dentro da seqncia, aps um comando BREAK ser executado, o fluxo de execuo ser desviado para a primeira linha de instruo aps o comando END.

CALLSintaxe: CALL WITH Propsito: O comando CALL executa rotinas compiladas separadamente em outras linguagens, como C e Assembler, a serem utilizadas "dentro" das aplicaes desenvolvidas em Clipper. O comando CALL est obsoleto, tendo sido mantido na verso 5.0 apenas por questes de compatibilidade. Caso voc deseje utilizar rotinas externas em C ou Assembler, deve usar o Sistema Estentido do Clipper (Extend System), que fornece funes para a passagem de dados entre o Clipper e rotinas escritas em C e Assembler. O Sistema Estendido, entretanto, no ser abordado neste livro por exigir conhecimento aprofundado de outras linguagens de programao, que esto alm de nossos objetivos. Argumentos: Define o nome da rotina externa a ser chamada e executada. Define uma lista opcional de at sete parmetros ou expresses de qualquer tipo de dado, a serem passados para a rotina externa chamada.

CANCELSintaxe: CANCEL Propsito: O comando CANCEL cancela a execuo de um programa e retorna o controle do equipamento para sistema opracional, fechando todos os arquivos que estiverem abertos. O comando CANCEL est obsoleto, tendo sido mantido na verso 5.0 apenas por questes de compatibilidade. No recomendamos o seu uso, mas sim o do comando QUIT que equivalente. Argumentos: Nenhum.

CLEAR ALLSintaxe: CLEAR ALL Propsito: O comando CLEAR ALL fecha todos os arquivos que estiverem abertos, em qualquer rea de trabalho, e cancela todas as variveis de memria pblicas e privadas ativas. O comando CLEAR ALL est obsoleto, tendo sido mantido na verso 5.0 apenas por questes de compatibilidade com as anteriores. O fechamento de arquivos deve ser feito pelo comando CLOSE, atravs de suas vrias opes. O cancelamento explcito de variveis pblicas e

privadas pode ser feito pelo comando RELEASE, embora essa operao no seja recomendvel, pois fere vrios princpios da programao modular. Argumentos: Nenhum.

CLEAR GETSSintaxe: Clear Gets Propsito: O comando CLEAR GETS cancela todos os objetos Get da matriz GetList que estiver ativa (atual e visvel). Argumentos: Nenhum.

CLEAR MEMORYSintaxe: Clear memory Propsito: O comando CLEAR MEMORY cancela todas as variveis de memria pblicas e privadas que estiverem ativas na tabela de variveis da aplicao em execuo. Argumentos: Nenhum.

CLEARSintaxe: Clear [Screen] / Cls Propsito: O comando CLEAR limpa toda a tela, reposicionando o cursor no canto superior esquerdo (coordenadas 00,00). Se for utilizado sem a clusula SCREEN, tambm cancela todos os objetos Get, definidos pelos comandos @ . . . GET, que ainda no foram editados pelo comando READ. Argumentos: Screen A clusula SCREEN evita que os objetos Get, da matriz GetList ativa (atual e visvel), sejam cancelados quando a tela for limpa.

CLOSESintaxe: CLOSE [] [ALL/ALTERNATE/DATABASES/FORMAT/INDEXES] Propsito: O comando CLOSE fecha todos os arquivos abertos ou conjuntos de arquivos especfico, de diversos tipos; texto (alternate files .TXT), dados (database files .DBF), formatao de tela (format files .FMT) e ndices (index files .NTX). Argumentos: Especifica o nome da rea de trabalho na qual os arquivos a serem fechados esto abertos. ALL Fecha todos os arquivos-texto (alternate), todos os arquivos de dados e todos os arquivos de ndice de todas as reas de trabalho, cancelando todos os filtros (SET FILTER), relacionamentos (SET RELATION) e definies de formatao de tela (SET FORMAT) que estiverem ativos. ALTERNATE Fecha apenas o arquivo-texto (alternate file .TXT), definido pelo comando SET ALTERNATE TO. O comando SET ALTERNATE TO, sem nenhum argumento, tambm fecha o arquivo-texto associado que estiver aberto. DATABASES Fecha todos os arquivos de dados (.DBF), e os arquivos de campos memo (.DBT) e de ndice (.NTX) a eles associados, abertos em qualquer rea de trabalhos. Tambm so cancelados todos os filtros estabelecidos pelo comando SET FILTER, e todos os relacionamentos estabelecidos pelo comando SET RELATION. Contudo, os arquivos de formatao de tela (.FMT) que estiverem abertos no so fechados. FORMAT Fecha o arquivo de formato de tela (format file .FMT), aberto pelo comando SET FORMAT, na rea de trabalho que estiver selecionada. O comando SET FORMAT, sem nenhum argumento, tambm fecha o arquivo de formatao de tela que estiver aberto. INDEXES Fecha todos os arquivos de ndice (.NTX), que estiverem abertos, na rea de trabalho selecionada.

COMMITSintaxe: COMMIT Propsito: O comando COMMIT grava no disco todos os dados que estiverem nos buffers de memria (rea temporrias auxiliares), de todas as reas de trabalho ativas. Argumentos: Nenhum.

CONTINUESintaxe: CONTINUE

Propsito: O comando CONTINUE retorna a pesquisa iniciada pelo comando LOCATE, aps ter sido encontrado o primeiro registro que satisfez a especificada. O comando CONTINUE reinicia a pesquisa para encontrar o prximo registro do arquivo de dados selecionado, que satisfaa a especificada pelo ltimo comando LOCATE executado sobre o mesmo arquivo na mesma rea de trabalho. Argumentos: Nenhum.

COPY FILESintaxe: COPY FILE . TO . Propsito: O comando COPY FILE copia um arquivo de qualquer tipo para um novo arquivo, ou seja, cria uma cpia duplicata de um arquivo. Argumentos: Define o nome do arquivo a ser copiado. A extenso deve obrigatoriamente ser especificada. Este argumento pode ser especificado como uma cadeia de caracteres ou como ua expresso caractere entre por parnteses. Define o nome do arquivo duplicata a ser criado. A extenso deve obrigatoriamente ser especificada. Este argumento pode ser especificado como uma cadeia de caracteres ou como uma expresso caractere entre parnteses.

COPY STRUCTURE EXTENDEDSintaxe: COPY STRUCTURE EXTENDED TO Propsito: O comando COPY STRUCTURE EXTENDED cria um arquivo de dados que contm em seus registros, a definio da estrutura do arquivo de dados em uso, isto , um arquivo de definio de estrutura ou de estrutura estendida. Argumentos: TO Define o nome do arquivo de estrutura estendida que ser criado para receber a estrutura do arquivo de dados em uso.Este argumento pode ser especificado atravs de uma cadeia de caracteres ou de uma expresso caractere entre parnteses. Se no for especificada uma extenso, ser automaticamente assumida a extenso-padro .DBF.

COPY STRUCTURESintaxe: COPY STRUCTURE [FIELDS ] TO Propsito: O comando COPY STRUCTURE cria um novo arquivo de dados .DBF vazio (sem registros), com estrutura idntica do arquivo de dados .DBF que estiver em uso na rea de trabalho selecionada. Argumentos: FIELDS Define o conjunto de campos que edeve ser copiadom, na ordem especificada, para formar a estrutura do novo arquivo de dados .DBF. Se este argumento no for especificado, todos os campos do arquivo em uso sero copiados para o novo arquivo. TO Define o nome do novo arquivo de dados .DBF que ser criado, podendo ser especificado atravs de uma cadia de caracteres ou de uma expresso caractere entre parnteses. Se no for especificada uma extenso, ser automaticamente assumida a extenso-padro .DBF.

COPY TOSintaxe: COPY [FIELDS ] TO [] [FOR ] [while ] [SDF / DELIMITED [WITH BLANK / ] ] Propsito: O comando COPY TO copia todo ou parte do arquuivo de dados em uso (arquivo-origem), para um novo arquivo de dados .DBf ou para um arquivo-texto (arquivo-destino). Este comando e o principal recurso pra a exportao de dados para arquivos de outros formatos, que no os utilizados pelo Clipper. Argumentos: FIELDS Especifica os campos do arquivo-origme que devem ser copiados para o arquivo-destino. A deve conter o nome dos campos a serem copiados, separados por vrgulas. Se no for especificada, todos os campos do arquivo-origem sero copiados para o arquivo-destino. TO Especifica o nome do arquivo-destino, ou seja, para o qual os dados sero copiados. O nome pode ser especificado por uma cadeia de caracteres ou por uma expresso caractere entre parnteses. Quando a clusula SDF ou DELIMITED for especificada, ser assumida a extenso .TXT; em caso contrrio, ser assumida a extenso .DBF, amenos que outra extenso diferente seja explicitamente fornecida. FOR Especifica uma lgica para selecionar os registros que devero ser copiados, dentro do escopo especificado. Apenas os registros que a satisfizerem (tornarem-na verdadeira) sero copiados.

WHILE Especifica os registros que devero ser copiados, a partir do registro em que estiver posicionado o apontador de registros, enquanto uma permanecer verdadeira. Para a utilizao da clusula WHILE, o arquivo-origem ever estar indexado de acordo com a especificada. SDF A clusula SDF(System Data Format) especifica o tipo do arquivo-destino, como um arquivo texto padro ASCII. Os dados so copiados, caractere por caractere, partindo-.se da esquerda. Cada registro possuir um comprimento fixo(que corresponde soma do tamanho de todos os campos a serem copiados), sendo finalizados com um "carriage return/line feed", ou seja, ser gravado um registro por linha. Os campos possuiro o mesmo tamanho que no arquivo .DBF original e no sero separados por nenhum caractere especial. Os brancos,, esquerda e direita dos campos, sero mantidos. Os campos datra sero converticdos para o formato "aaaammdd", ou seja, "ano ms dia", e os campos lgicos para T (verdadeiro) ou F (falso). A extenso-padro dos arquivos copiados com esta opo .TXT e seu final ser marcado por um Ctrl-Z ou CHR(26), marca-padro de fim de arquivo. DELIMITED Especifica o tipo do arquivo-dedstino, como sendo u arquivo com "formato delimitado", tipo ASCII. Os dados so copiados, caractere por caractere partindo-se da esquerda. Cada registro ter um tamanho varivel e terminar com um "return" e um avano de linha (carriage return/line feed), ou seja, ser gravado um registro por linha. Cada campo ter um tamanho varivel e ser separado do seguinte por uma vrgula. A menos que seja especificado um outro delimitador, aspas ( " " ) sero usadas para delimitar os campos com dados do tipo caractre. Os espas em branco, esquerda ou direita dos campos sero eliminados. Campos tipo data sero convertidos para o formato "aaaammdd", ou seja, "ano ms dia", e os campos lgicos sero convertidos para T (verdadeiro) ou F (falso). A extenso-padro dos arquivos copiados com esta opo .TXT, e um Ctrl-Z (CHR(26)) marcar o fim do novo arquivo criado. DELIMITED WITH BLANK Permite que os campos de um arquivo copiado com "formato delimitado" sejam separados por um espao em branco e os campos caracteres no sejam delimitados por nenhum caractere. DELIMITED WITH Permite que os campos tipo caractere de um arquivo copiado com "formato delimitado" sejam delimitados por qualquer outro caractere diferente do padro, que so as aspas. Por exemplo: colchetes ([ ]). O desejado pode ser especificado como uma cadeia de caracteres iou como uma expresso caractere entre parnteses.

COUNTSintaxe: COUNT TO [] [FOR ] [WHILE ] Propsito: O comando COUNT conta o nmero de registros de um arquivo de dados, de acordo com um escopo especificado, que satisfaz uma determianda condio. O resultado armazenado em uma varivel de memria. Argumentos: TO Identifica a varivel na qual ser armazenado o resultado da contagem efetuada. Se a especificada ainda no existir, ou se no for visvedl par a rotina atual, ser criada como sendo de classe privada. Define a quantidade de registros a ser processada pelo comando COUNT: ALL, todos os registros; NEXT , os registros seguintes, a partir do registro atual; RECORD , apenas o registro de nmero ; ou REST, os registros restantes no arquivo, a partir do atual. FOR Especifica uma para selecionar os registros que devero ser processados dentro do definido. Apenas os registros que a satisfizerem (tornarem-na verdadeira) sero contados. WHILE Seleciona os registros a serem processados, a partir do registro atual, enquanto uma especificada for satisfeita (permanecer verdadeira). Assim que a condio se tornar false (.F.), a contagem ser interompida e o resultado armazenado na varivel especificada. Para o funcionamento correto da clusula WHILE, o arquivo de dados dever estar indexado ou ordenado de acordo com a especificada.

CREATE FROMSintaxe: CREATE FROM Propsito: O comando CREATE FROM cria um novo arquivo de dados .DBF a partir de dados .DBF a partir de um arquivo de estrutura estendida, ou de deginio de estrutura, previamente definido pelo comando CREATE. Argumentos: Especifica o nome do novo arquivo de dados padro .DBF, a ser criado, a partir do arquivo de um estrutura estendida ou definio de estrutura. Especifica o nome do arquivo de estrutura estendida que ser utilizado para definir a estrutura do novo arquivo de dados a ser criado pelo comando CREATE FROM. Em ambos os casos, os argumentos podem ser especificados atravs de uma cadeia de caracteres ou de expresses caractere envolvidas por parnteses. Se uma extenso no for explicitamente especificada, ser assumida a extensopadro .DBF.

CREATESintaxe: CREATE Propsito: O comando CREATE cria um arquivo de definio de estrutura vazio, para posterior criao de um arquivo de dados, atravs do comando CREATE FROM. Argumentos: Define o nome do arquivo de definio de estrutura a ser criado. Pode ser especificado atravs de uma cadeia de caracteres ou de uma expresso caractere entre parnteses. Se no for fornecida uma extenso, ser assumida a extenso-padro .DBF.

DECLARESintaxe: Declare [[:= ], ...] Propsito: O comando DECLARE cria e inicializa uma ou mais variveis e matrizes privadas, com o nmero de dimenses e de elementos por dimenso definidos. O comando DECLARE est obsoleto, sendo mantido na verso 5.0 apenas por razes de compatibilidade. Em seu lugar deve ser utilizado o comando PRIVATE. Argumentos: Define o nome que identifica a varivel privada ou a matriz a ser criada. Se o for seguido por colchetes ([]), ser criada uma matriz. Neste caso, a sintaxe para especificar o nmero de dimenses e o nmero de elementos por dimenso poder ser: matriz[,,...] matriz[][nelementos2>]... O nmero mximo de elementos por dimenso de uma matriz 4.096. O nmero mximo de dimenses limitado apenas pela quantidade de memria disponvel no um valor ou resultado de uma expresso que pode ser opcionalmente atribudo nova varivel privada criada. Ele consiste no operador em linha (in-line : = ), seguido por qualquer expresso vlida para o Clipper, incluindo uma matriz literal e uma chamada a uma funo. Se um no for especificado, ser automaticamente atribudo o valor NIL, para a nova varivel privada criada. No caso de uma matriz, a cada elemento ser atribudo o valor NIL, no podendo ser especificado um .

DELETESintaxe: DELETE [] [FOR ] [WHILE ] Propsito: O comando DELETE marca registro do arquivo de dados em uso, na rea de trabalho selecionada, para eliminao lgica, e posterior excluso fsica do arquivo, atravs do comando PACK. Argumentos: Define a quantidade de registro a serem "deletados" (marcados para eliminao): ALL todos os registros do arquivo; NEXT os prximo n registros, a partir do atual; RECORD apenas o registro de nmero n; e REST os registros restantes no arquivo, a partir do registro atual. FOR Especifica uma para selecionar os registros que devero ser "deletados". Apenas os registros que satisfizerem a (tornarem-na verdadeira) sero marcados para eliminao. WHILE Permite selecionar os registros a serem "deletados", a partir do registro atual, enquanto uma especificada for satisfeita, ou seja, permanecer verdadeira. Para o correto funcionamento desta clusula, o arquivo de dados dever estar ordenado ou indexado de acordo com a especificada.

DIRSintaxe: DIR [:][] [] Propsito: O comando DIR apresenta a lista de arquivos existentes no disco e diretrio definidos, ou no corrente, de acordo com uma seleo de arquivos especificada. Na verso 5.0 o comando DIR est obsoleto, tendo sido mantido apenas por questes de compatibilidade. Recomendamos que voc utilize a funo DIRECTORY( ), quer fornece uma matriz com todas as informaes de diertrio sobre os arquivos especificados. Argumentos: Especifica o acionador de discos do qual ser fornecida a lista de arquivos. Se no for especificado, ser assumido o drive corrente. Especifica o diretrio do qual ser fornecida a lista de arquivos. Se no for especificado, ser assumido o diretrio corrente. Define uma mscara de seleo de arquivos padro DOS para a especificao dos arquivos a serem listados. Podem ser includos os smbolos ? e * para a especificao de conjuntos de arquivos com nomes

semelhantes. Este argumento pode ser especificado como uma cadeia de caracteres ou como uma expresso caractere entre parnteses.

DISPLAYSintaxe: Display [to printer] [to file ] [off] [] [for ] [While ] Propsito: O comando DISPLAY apresenta o contedo dos registros de um arquivo de dados, de acordo com o resultdo de uma ou mais expresses, para cada registro selecionado. Argumentos: Define uma lista obrigatria de campos, ou expresses envolvendo-os, cujos resultados devero ser apresentados. Os nomes dos campos, ou as diferentes expresses, devem vir separados por vrgulas. Os campos especificados devem existir no arquivo que estiver em uso na rea de trabalho selecionada, ou serem referidos atravs do alias da rea de trabalho na qual o arquivo correspondente estiver aberto. To printer Redireciona a sada do comando DISPLAY da tela, que o padro normal, para a impressora. TO FILE Redireciona a sada do comando DISPLAY para um arquivo no disco do computador. O deve ser especificado como uma cadeia de caracteres ou como ua expresso caractere entre parnteses. Se uma extenso no for fornecida, ser automaticamente assumida a extenso .TXT. OFF Inibe a apresentao do nmero dos registros, quando os mesmo forem apresentados na tela. Determina a quantidade de registros a ser processada, podendo ser: ALL, para todos os registros; NEXT , para os n registros seguintes, a partir do registro atual; RECORD para o registro do nmero n; e REST para os registros restantes no arquivo, processados a partir do resgistro atual. Se o no for especificado, ser assumido NEXT 1, ou ALL, dependendo da especificao ou no de uma condio FOR ou WHILE. FOR Permite a especificao de uma condio, para a seleo dos registros que devero ser processados. Cada registro do arquivo ou aqueles especificados pelo sero testados de acordo com esta . Se o teste da resultar verdadeiro, o registro ser processado, ou seja, apresentado. Em caso contrrio, o comando passar para o registro seguinte, at que todos os registros especificados tenham sido testados e processados. WHILE Permite a especificao de uma condio, para a seleo dos registros que devero ser processados, enquanto a permanecer verdadeira.Os registros, a partir do registro atual, sero seqncialmente testados, de acordo com a especificada. Enquanto o teste da resultar verdadeiro, os registros sero processados, ou seja, apresentados na tela. Se o teste resultar falso para algum registro, o comando DISPLAY ser imediatamente finalizado. Para a utilizao correta da clusula WHILE, o arquivo dever estar indexado ou sorteado de acordo com a especificada.

DO CASESintaxe: DO CASE CASE . . [CASE ] . . [OTHERWISE] . . END[CASE] Propsito: O comando DO CASE . . . ENDCASE um comando de programao estruturada que seleciona apenas um caminho entre um conjunto de caminhos alternativos para o curso do fluxo de execuo. O caminho selecionado o primeiro para o qual uma condio especificada for avaliada como verdadeira. Argumentos: CASE Define um bloco de instrues a ser executado caso a especificada seja avaliada como verdadeira (.T.). OTHERWISE Define um bloco de instrues a ser executado se nenhuma das clusulas CASE especificada for avaliada como verdadeira.

DO WHILESintaxe: [DO] WHILE . . [LOOP] . . [EXIT] . . END[DO] Propsito: O DO WHILE um comando de controle de programao estruturada que permite que um bloco instrues contido entre o DO WHILE e o associado ENDDO seja executado repetidamente enquanto uma determinada condio permanecer verdadeira. Normalmente este tipo de estrutura de programao chamado de "loop" ou repetio. Argumentos: uma expresso lgica para controlar a repetio do comando DO WHILE. A repetio termina quando a for avaliada como falsa (.F.). EXIT Finaliza incondicionalmente a repetio do DO WHILE, desviando o fluxo de execuo para a primeira linha de instruo aps o ENDDO. LOOP Desvia o fluxo de execuo para o incio do bloco de instrues DO WHILE . . . ENDDO no qual estiver contido, fazendo com que a seja reavaliada.

DO*Sintaxe: DO [WITH ] Propsito: O comando DO invoca e executa um procedimento ou programa, permitindo a passagem dos parmetros (dados), necessrios execuo da rotinha invocada. O comando DO est obsoleto na verso 5.0, tendo sido mantido apenas por razes de compatibidade. Voc deve utilizar a sintaxe das funes para a criao de procedimentos e funes-de-usurio, e invoc-los diretamente na prpria linha de instrues, sem a necessidade do comando DO. Argumentos: Define o nome do procedimento ou programa a ser executado. WITH Especifica uma lista de at 128 argumentos, separados por vrgulas, a serem passados ao programa ou procedimento chamado. A pode conter variveis, variveis-campo, matrizes, elementos de matrizes, objetos ou quaisquer expresses vlidas do Clipper. As expresses sero avaliadas e apenas o seu resultado ser passado como parmetro. No obrigatria a especificao de todos os argumentos, eles podero ser pulados ou simplesmente no informados.

EJECTSintaxe: Eject Propsito: O comando EJECT avana a cabea de impresso da impressora para o topo de uma nova pgina do formulrio, ou seja, ejeta uma pgina de formulrio na impressora. Argumentos: Nenhum.

ERASESintaxe: ERASE / DELETE FILE . Propsito: O comando ERASE ou DELETE FILE remove um arquivo especificado do disco. Argumentos: . Define o nome do arquivo a ser removido do disco. Este argumento pode ser especificado como uma cadeia de caracteres ou como uma expresso caractere entre parnteses. O nome do arquivo deve ser especificado por completo, ou seja, incluindo sua extenso e, se no estiver localizado no diretrio corrente, a designao do drive e do diretrio correspondente.

EXITSintaxe: EXIT Propsito: O comando EXIT causa a sada de um ciclo de repetio DO WHILE . . . ENDDO ou FOR . . . NEXT, transferindo o fluxo de execuo do programa para a primeira linha de instrues imediatamente seguinte ao ENDDO ou ao NEXT. Argumentos: Nenhum.

EXTERNALSintaxe: EXTERNAL Propsito: O comando EXTERNAL declara uma lista de smbolos ou rotinas externas (procedimentos ou funesde-usurio) para o linkeditor. Argumentos: Define uma lista de rotinas a ser adicionada s listas de rotinas que sero linkeditadas dentro de um determinado arquivo executvel .EXE.

FINDSintaxe: FIND Propsito: O comando FIND pesquisa sobre um arquivo de dados indexado, pelo primeiro registro que possua uma chave (expresso-chave do ndice) coincidente com a cadeia de caracteres especificada, posicionando o apontador de registro sobre o registro correspondente. O comando FIND est obsoleto, sendo mantido na verso 5.0 do Clipper apenas por razes de compatibilidade. Recomendamos que voc utilize o comando SEEK, ao invs do comando FIND. Argumentos: Especifica a chave a ser localizada; pode ser toa ou apenas parte da expressochave do ndice. O registro ser encontrado desde que parte ou toda a chave do ndice coincida com a especificada. Este argumento pode ser especificado como uma cadeia de caracteres ou como uma expresso caractere entre parnteses; neste ltio caso, o comando FIND opera exatamente como o comando SEEK.

FOR . . . NEXTSintaxe: FOR = TO [STEP ] . . [LOOP] . [EXIT] . . NEXT Propsito: O comando FOR. . . NEXT permite a repetio de um bloco de instrues, localizado entre o FOR e o NEXT, por um determinado nmero de vezes, avaliado por um contador automaticamente incrementado atravs de uma expresso numrica. Argumentos: Define o nome da varivel de memria que ser utilizada como contador para realizar o controle do nmero de repeties. Se a especificada no existir ou no for visvel, ser automaticamente criada uma varivel privada. uma expresso numrica que define o valor inicial a ser assumido pela varivel de controle ou contador. TO uma expresso numrica que define o valor final (mximo ou mnimo) que poder ser assumido pela varivel de controle ou contador. STEP Define o incremento da varivel de controle. Cada vez que completado um ciclo de repetio, a varivel de controle ou contador incrementado atravs do resultado da , que deve ser numrica. O incremento poder ser positivo ou negativo. Se for positivo, a deve ser maior que a , pois o contador ser crescente. Se for negativo, a deve ser

menor que a , pois o contador ser decrescente. Caso este argumento no seja especificado, ser assumido automaticamente um incremento igual a 1(um) a cada ciclo completado. EXIT Finaliza a repetio do FOR . . . NEXT, desviando incondicionalmente o fluxo de execuo do programa para a primeira linha de instruo aps o NEXT. LOOP Reinicia um ciclo de repetio a partir de um ponto intermedirio do bloco de instrues contido num FOR . . .NEXT, evitando que uma parte das instrues deste bloco seja executada.

FUNCTIONSintaxe: [STATIC] FUNCTION [(] [LOCAL [ [ : = ], . . .] ] [STATIC [ [ : = ] , . . . ] ] [FIELD [IN ] [MEMVAR ] . . RETURN Propsito: O comando FUNTION declara uma funo definida pelo usurio (funo-de-usurio) e seus parmetros formais. Argumentos: Define o nome que identificar a funo-de-usurio declarada. Um nome poder ter qualquer tamanho, mas apenas os 10 primeiros caracteres so usados para identificar a funo. Podero ser utilizados quaisquer caracteres, inclusive nmeros e o grifo ( _ ), contudo, um nome no poder se iniciar pelo grifo, que reservado para as funes-de-biblioteca do Clipper. Declara uma ou mais variveis para receber os parmetros formais passados funo. As variveis especificadas na lista so automaticamente declaradas como locais. Cada nome de varivel deve ser separado do seguinte por uma vrgula. STATIC FUNCTION Define uma funo-de-usurio que poder ser invocada apenas por procedimentos ou outras funes declaradas no mesmo programa, ou seja, no mesmo arquivo .PRG que contm o seu cdigo. LOCAL Declara e opcionalmente inicializa uma lista de variveis ou matrizes locais, ou seja, cuja visibilidade e tempo de vida se restringiro funo declarada. STATIC Declara e opcionalmente inicializa uma lista de variveis ou matrizes estticas, ou seja, visveis apenas dentro da funo declarada mas com tempo de vida equivalente a toda durao do programa. FIELD Declara uma lista de identificadores a serem utilizados como nomes de campos. Se a clusula IN for especificada, referncias aos identificadores declarados incluiro implicitamente uma referncia ao especificado. MEMVAR Declara uma lista de identificadores a serem utilizados como variveis pblicas, privadas ou matrizes. RETURN Finaliza a funo devolvendo o controle do fluxo de execuo rotina que chamou a funo declarada, fornecendo o resultado da como o valor da funo. Cada funo-de-usurio deve ter obrigatoriamente pelo menos um comando RETURN que fornea um valor de retorno. Diversos comandos RETURN podero ser includos em qualquer ponto dentro do corpo da funo, de acordo com sua estrutura de programao.

GOSintaxe: GO [TO] / BOTTOM / TOP Propsito: O comando GO posiciona o apontador de registros (registro corrente) em um determinado registro especificado, do arquivo de dados aberto na rea de trabalho selecionada. Argumentos: uma expresso numrica que especifica o nmero do registro do arquivo de dados em uso, para o qual o apontador de registro deve deslocar-se. BOTTOM Especifica o ltimo registro lgico (determinado pelo ndice de controle do arquivo de dados) da rea de trabalho selecionada. Se no houver um ndice aberto, ou se SET ORDER estiver em 0, o apontador de registros ser posicionado no ltimo registro fsico do arquivo. TOP Especifica o primeiro registro lgico (determinado pelo ndice de controle do arquivo de dados) da rea de trabalho selecionada. Se no houver um ndice aberto, ou se SET ORDER estiver em 0, o apontador de registros ser posicionado no primeiro registro fsico do arquivo.

IF . . . ENDIF

Sintaxe: IF . . [ELSE] . . END[IF] Propsito: O comando IF . . . ENDIF um comando de programao estruturada que permite executar condicionalmente um bloco de instrues, tambm conhecido como desvio condicional. Argumentos: uma expresso lgica de controle a ser avaliada como verdadeira (.T.) ou falsa (.F.). Se for verdadeira, o bloco de instrues logo a seguir ao IF ser executado at ser encontrado o ELSE ou o ENDIF. ELSE Identifica o bloco de instrues a ser executado caso a do IF seja falsa (.F.). Neste caso, no sero executadas as instrues entre o IF e o ELSE, mas as que vierem entre o ELSE e o ENDIF.

INDEXSintaxe: INDEX ON TO [UNIQUE] Propsito: O comando INDEX cria um arquivo de ndice, associaod ao arquivo de daedos em uso na rea de trabalho selecionada, de acordo com uma expresso-chave, atravs da qual o aruivo de dados ordenado e passa a ser acessado alfabtica, cronolgica ou numericamente. O Clipper permite organizar ou classificar aruivos de daod de duas formas: 1. Organizao fsica dos registros, atravs da criao de um arquivo cpia classificado, obtido a partir do arquivo de dados .DBF que se deseja organizar. Para isso, utiliza-se o comando SORT, que produz uma cpia ordenada de um arquivo de dados, ou de um subconunto de seus registros. 2. Organizao lgica dos registros, atravs da criao de um arquivo auxiliar de ndices, do tipo .NTX, associado ao arquivo de dados. Para isso, utiliza-se o comando INDEX. O comando INDEX no cria uma cpia fsica dos registros do arquivo de dados, mas apenas um arquivo auxiliar que automatiamente atualizado cada vez que um novo valor-chave includo no arquivo de dados. Argumentos: uma expresso, do tipo caractere, data, lgica ou numrica, que fornece, para cada registro do arquivo de dados, um valor-chave a ser posicionado em ordem ascendente, dentro de um arquivo de ndice. O nmero mximo que posies que uma pode ter 250 caracteres. TO Especifica o nome do arquivo de ndice a ser criado. O nome do arquivo pode ser especificaod como uma cadeia de caracteres ou como uma expresso caractere entre parnteses,. Se a extenso no for informada,a extenso-padro .NTX ser assumida. Quando se estiver trabalhando com ndices compatveis com os do dBASE III PLUS, a extenso-padro ser .NDX. UNIQUE Determina que sejam includos no especificado apenas valores-chave que sejam nicos. Isto , se dois ou mais registros do arquivo de daod s.DBF possurem valores idnticos para a especificada, apenas uma referncia ao primeiro registro ser includa no arquivo de ndice. Cada valorchave ser, portanto, nico num arquivo de ndice criado com a clusula UNIQUE.

JOINSintaxe: JOIN WITH TO FOR [FIELDS ] Propsito: O comando JOIN cria um novo arquivo de dados (arquivo-destino) a partir de outros dois arquivos de dados .DBF, abertos em reas de trabalhos diferentes, efetuando um "merge" (unio) de registros e campos dos dois arquivos atravs de condies especificadas. Argumentos: WITH Especifica a rea de trabalho na qual est aberto o arquivo a ser unido com o arquivo em uso na rea de trabalho selecionada. O pode ser especificado como uma cadeia de caracteres ou como uma eexpresso caractere entre parnteses. TO Especifica o nome do arquivo a ser criado, a partir da unio do arquivo aberto na rea de trabalho atual com o arquivo cujo foi especificado. O nome do arquivo-destino tambm pode ser especificado como uma cadeia de caracteres ou como uma expresso caractere entre parnteses. FOR Especifica uma para selecionar os registros que devero ser processados. Apenas os registros que a satisfizerem (tornarem-na verdadeira) sero gravados no novo arquivo criado como resultado da unio.

FIELDS Especifica os campos que devero ser copiados para o novo arquivo. A pode conter campos de ambos os arquivos participantes do JOIN (unio). Se no for especificada, todos os campos do arquivo aberto na rea selecionada sero includos no arquivo-destino. Para especificar qualquer compo do arquivo de dados, da outra rea de trabalho que participa do JOIN, deve ser usado seu atravs da seguinte sintaxe: -> . Obviamente, no poderao aparecer campos duplicados no arquivodestino gerado.

KEYBOARDSintaxe: KEYBOARD Propsito: O comando Keyboard limpa o buffer do teclado e, em seguida, o preenche com a expresso caractere especificada. Argumentos: Especifica uma cadeia de caracteres que dever preencher o buffer do teclado.

LISTSintaxe: List [to printer] [to file ] [off] [escopo] [for ] [while ] Propsito: O comando LIST lista o contedo de um ou mais campos dos registros de um arquivo de dados, ou de expresses envolvendo-os, de acordo com o escopo e condies especificadas, que permitem a seleo dos registros a serem processados. Argumentos: Define uma lista dos campos do arquivo em uso, na rea de trabalho selecionada, ou expresses envolvendo-os. Cada item da lista deve ser separado por vrgula e ser vlido para o arquivo aberto na rea de trabalho selecionada. As expresses contidas na lista sero abaliadas para cada registro processado e o seu resultado ser listado. Campos memo tambm podem ser lsitados. Para listar campos de arquivos abertos em outras reas de trabalho, que no a selecionada, o respectivo alias deve preceder os nomes dos campos. TO PRINTER Redireciona a sada do comando LIST da tela, padro normal, para a impressora. TO FILE Redireciona a sada co comando LIST para um arquivo no disco, cujo nome seja especificado. Se uma extenso no for atribuda, ser assumida a extenso-padro .TXT. O nome do arquivo pode ser especificado como uma cadeia de caracteres ou como uma expresso caractere envolvida por parnteses. OFF A clusula OFF inibe a apresentao do nmero dos registros durante a execuo do comando LIST. Define a quantidade de registros a ser processada pelo comando LIST: ALL, todos os registros sero processados; NEXT , apenas os n registros seguintes, a partir do atual; RECORD , paenas o registro nmero n ser processado; e REST processa os registro restantes, a partir do atual. Se o no for especificado ser assumido o escopo ALL. FOR Especifica uma , dentro do fornecido, para selecionar os registros que devero ser processados. Apenas os registros que a satisfizerem (tornarem a condio verdadeira) sero listados. WHILE Permite selecionar os registros a serem processados, a partir do registro atual, enquanto uma especificada for satisfeita (permanecer verdadeira). Para tanto, o arquivo de dados devera estar indexado de acordo com a especificada.

LOCALSintaxe: Local [[ : = , ...] Propsito: Declara e inicializa variveis e matrizes locais. Variveis e matrizes locais so visveis apenas para a rotina que as criou, sendo canceladas ao seu trmino. Argumentos: Define o nome de varivel ou matriz a ser declarada como local. Se o nome do identificador for seguido por colchetes ([]), criada uma matriz. Define um valor opcional a ser atribudo como contedo incial da nova varivel local criada. Matrizes locais no podem receber um valor de inicializao dentro do prprio comando LOCAL. Se no for especificada uma , as variveis locais criadas assumiro o valor NIL como contedo. No caso de matrizes, todos os elementos sempre assumem como contedo inicial o valor NIL.

LOCATESintaxe: LOCATE [] FOR [WHILE ]

Propsito: O comando LOCATE localiza o primeiro registro que satisfaz uma condio especificada, atravs da realizao de uma busca seqncial pelos registros do arquivo de dados em uso na rea de trabalho selecionada. Argumentos: Define a quantidade de registros do arquivo de dados a serem processados pelo comando LOCATE: ALL, todos os registros; NEXT , os registros seguintes, a partir do registro atual; e REST, os registros restantes, a partir do atual. Se o no for especificado, sero assumidos todos os registros(ALL). Os escopos NEXT e REST limitam a pesquisa ao nmero de resgistros especificados, indiciando-a a partir do registro corrente e no do primeiro, como o padro normal do comando LOCATE. FOR Especifica a , dentro do fornecido, que se utilizada para pesquisar os registros. A uma expresso lgica, do tipo nome="JOSE", codigo="1234" ou salario