Escolar Documentos
Profissional Documentos
Cultura Documentos
CLOSE ________________________________________________________________ 13
O que um algoritmo? _________________________________________6
COMMENT ______________________________________________________________13
Estrutura de um Banco de dados _________________________________6
COUNT contar registros ___________________________________________________13
Como definir os tipos de dados atravs do ACL?_____________________6
CROSS-TABULATE tabulao cruzada ________________________________________14
Avisos sobre direitos autorais ___________________________________8 DEFINE FIELD definido campo _____________________________________________ 14
Convenes das sintaxes de comando _____________________________9 DEFINE RELATION relacionar tabelas ________________________________________15
DO REPORT______________________________________________________________16
Layout da tabela _________________________________________________________10
DUMP __________________________________________________________________16
Origem dos dados ________________________________________________________10
DUPLICATES duplicidade _________________________________________________16
Exibio ______________________________________________ __________________10
END ____________________________________________________________________17
Scripts______________________________________________________10
EVALUATE ______________________________________________________________17
Logs________________________________________________________10
EXPORT exportar para outro aplicativo_______________________________________17
Comandos___________________________________________________11
EXTRACT extrair ________________________________________________________17
ACCEPT _________________________________________________________________11
FIELDSHIFT ______________________________________________________________18
AGE perodo ___________________________________________________________ 11
FIND __________________________________________________________________ 18
ASSIGN _________________________________________________________________11
GAPS____________________________________________________________________18
BENFORD _______________________________________________________________12
GROUP __________________________________________________________________18
CALCULATE campo calculado _____________________________________________ 12
HELP ____________________________________________________________________18
RJUSTIFY( )_______________________________________________________________34
ROOT( )_________________________________________________________________ 35
ROUND( )_______________________________________________________________ 35
SHIFT( )_________________________________________________________________ 35
SOUNDEX( )_____________________________________________________________ 35
SOUNDSLIKE( )___________________________________________________________ 35
SPLIT( )__________________________________________________________________35
STRING( )________________________________________________________________ 35
SUBSTRING( )_____________________________________________________________35
TEST( )__________________________________________________________________ 35
TIME( )__________________________________________________________________35
TRANSFORM( )____________________________________________________________36
TRIM( )__________________________________________________________________36
UNSIGNED( )_____________________________________________________________ 36
UPPER( )_________________________________________________________________36
VALUE( )_________________________________________________________________36
VERIFY( )________________________________________________________________ 36
ZONED( )________________________________________________________________ 36
ZSTAT ( )________________________________________________________________ 36
O que um algoritmo?
Um algoritmo uma seqncia de passos a ser percorridos para soluo de al- Cabe ressaltar que cada campo possui um tipo de dado que pode ser numrico
gum problema ou para se alcanar algum objetivo. (inteiro ou ponto flutuante), alfanumrico, texto, data, especial, etc. Esta carac-
terstica define os dados que so possveis inserir nos registros.
Os algoritmos podem ser escritos em diversas linguagens de programao, cada
uma com caractersticas e finalidades distintas. Exemplos:
Por exemplo, o ACL um sistema aplicativo com finalidade de anlise de dados. 1) Em um campo do tipo data no possvel inserir caracteres alfabticos;
Ele tem uma linguagem prpria que nos permite passar instrues ao computa- 2) Em um campo alfanumrico so aceitos quaisquer tipos de caractere, po-
dor sobre como proceder em uma anlise de dados. Essas instrues podem ser rm no permite efetuar clculos, mesmo que nos registros a informao
passadas atravs de procedimentos pr-configurados (assistentes) ou atravs da contida seja somente nmero.
escrita de cdigos SQL. No caso dos assistentes, toda instruo convertida para
Desta forma, importante ter em mente que o tipo de dado declarado para cada
o formato nativo SQL.
campo determina as aes que podemos efetuar.
Estrutura de um Banco de dados
Como definir os tipos de dados atravs do ACL?
Atravs do ACL ns podemos interpretar dados oriundos de banco de dados. Um
importante ter em mos o layout do arquivo ou tabela que importamos atravs
sistema gerenciador de banco de dados (SGBD) possui uma ou mais tabelas, sen-
do ACL. Atravs do layout definimos todas as propriedades de uma tabela
do que cada tabela contempla uma coleo organizada de dados de uma mesma
(campos, tipo de dado, tamanho, informaes sobre compactao, etc.).
natureza.
Exemplos: Tabela de funcionrios ativos; Tabela de funcionrios inativos; Tabela de folha Ex: Campos disponveis, tipo de dado de cada campo (numrico, alfabtico, alfanumrico,
de pagamentos, etc. data, etc.), tamanho dos campos; indicao do campo que uma chave primria, etc.
Coleo de dados referente a uma nica instncia; Estes dados so representados atravs de tabelas porm no ficam dentro de um projeto
ACL.
Exemplos: Conjunto de dados referentes a cada funcionrio ativo na base do RH
(Informaes cadastrais sobre o Zezinho, Joozinho, Huguinho, etc...) Por este motivo no possvel realizar alteraes na estrutura de dados em um projeto
ACL.
Campos
Exibio
Subconjunto de um registro. Qualificador do tipo da informao;
Trata-se de uma apresentao visual da totalidade dos dados contidos em uma tabela ou
Exemplo: Conjuntos de dados individuais disponveis referente a voc na base do RH
de um conjunto de dados filtrados mediante critrios e condies especficas.
(Funcional, Data de admisso, Salrio, Unidade de lotao, etc.)
Scripts
Conjunto ou seqncia de comandos nativos do ACL que podem ser executados de forma
repetida.
Logs
Um log contm o histrico das aes executadas pelo auditor em um projeto ACL.
reas de Trabalho
Pastas
ACCEPT
Caixa de texto que armazena valores em uma varivel. O parmetro opcional
FIELDS permite criar uma lista suspensa que exibe qualquer campo, varivel, ou
tipos de itens que voc especifica: campos caractere (C),campos numricos (N),
campos, data (D), campos lgicos (L), variveis caractere (c), variveis numricas
(n),variveis data (d), variveis lgicas (l), scripts(xb), ndices (xi), tabelas (xf),
relatrios e exibies (xr), e reas de trabalho (xw). O tipo de item especificado
no parmetro FIELDS deve estar entre aspas.
Quando usar o parmetro FIELDS, no misture campo ou varivel com tipos de
item de documentos. Ou seja, tipos Cc, Nn, Dd, Ll, no deveriam ser misturados
com xb, xi, xf, xr or xw.
AGE <ON> campo_data <CUTOFF aaaammdd> <SUPRESS> <ACCUMULATE cam-
ACCEPT mensagem_texto <FIELDS tipo_campo> TO nome_varivel
po_numrico>
<INTERVALS ponto_inicial_intervalo, ..........., ponto_final_intervalo>
ASSIGN
Armazena um valor em uma varivel.
COMMENT
Insere uma notificao explcita ou uma explicao na seo do ACL sem afetar o
processamento.
COMMENT comment_line
Ou
COMMENT
comment_line1
comment_line2
END
coluna_alternativo>
valor1 IF condio1
valor2 IF condio2
CROSSTAB <ON> campo_caracter COLUMNS campo_caracter <ACCUMULATE valor padro
Campos_numrico> <TO {SCREEN |nome_arquivo {<.TXT> | .FIL} | GRAPH
PRINT}> <IF condio> <WHILE condio> <{FIRST | NEXT} intervalo> <COUNT> Nota: Voc deve colocar a segunda linha da sintaxe acima em uma linha nica. Se colocar
<APPEND> uma quebra de linha antes de terminar a linha que comea com <IF condio> e termina
com <AS titulo_coluna_ alternativo >, o comando no ir funcionar. Manter consistente o
tipo de dados para a expresso. Por exemplo, no possvel especificar um campo caracte-
re para expresses e campos numricos para outros campos.
DELETE
Remove arquivos, campos, variveis, ou relacionamentos do ambiente atual do
ACL ou deleta arquivos.
DELETE <nome_campo | nome_varivel | nome_arquivo| ALL> <BATCH nome_script>
DEFINE RELATION campo_chave WIDTH nome_tabela_relacionada INDEX nome_ndice
<FOLDER nome_pasta> <FORMAT nome_tabela> <HISTORY nmero_a_reter> <RELATION
<AS nome_relacionamento>
nome_relacionamento> <REPORT nome_exibio> <WORKSPACE
nome_arquivo>
DO
DO REPORT
Produz um relatrio do ACL.
DO REPORT nome_relatrio
DUMP
Exibe o contedo de um arquivo ou o registro atual no formato hexadecimal,
ASCII e EBCDIC.
DUMP nome_arquivo <SKIP nmero_bytes> <COLUMNS tamanho_coluna>
DUPLICATE<ON>arquivos chave<OTHER arquivos><GAPS<MISS nmero>><ERROR
<HORIZONTAL>
nmero><UNFORMATTED><TO{<SCREEN>|nome_arquivo{<.TXT>|<.FIL>}|PRINT}><IF
DUMP RECORD <COLUMNS nmero_bytes> <HORIZONTAL>
condio><{FIRST|NEXT}intervalo><WHILEcondio><PRESORT><HEADERcabealho>
<FOOTERrodap><APPEND><OPEN>
ELSE
EVALUATE teste> <APPEND> {<ASCII> | DBASE |DELIMITED | EXCEL | LOTUS | WORD | WDPF6
|CLIPBOARD}
Determina o efeito dos erros dos registros detectados nos resultados da amos-
tra. campo1 <AS novo_campo_nome>
EVALUATE RECORD CONFIDENCE nvel_de_confiana SIZE tamanho_amostra ERROR campo2 <AS novo_campo_nome>
EXTRACT TO nome_arquivo < IF condio > Indica se um campo chave numrico na tabela atual contm uma falha na se-
qncia.
field1 < AS novo_nome_arquivo>
GAPS <ON> nome_campo <ERROR nmero><UNFORMATTED><DUPLICATE><MISS nme-
field2 < AS novo_nome_arquivo>
ro><TO {<SCREEN> |nome_arquivo | PRINT}> <APPEND> <OPEN> <IF condio><{FIRST|
{Blank Line}
NEXT} intervalo> <WHILE condio> <HEADER cabealho> <FOOTER rodap>
FIELDSHIFT <PRESORT>
Corrige definies de campos que esto deslocados por um nmero fixo de by- GROUP
tes. Deslocar a posio inicial do campo em uma tabela de dados, automatica-
Executa uma srie de comandos com apenas uma passagem na tabela.
mente desloca as posies iniciais de todos os campos subseqentes direita
desse campo. Campos computados no so afetados. Pode ser necessrio ajus- GROUP <IF condio> <WHILE condio> <FIRST | NEXT intervalo>
tar o tamanho do registro para acomodar o comprimento combinado dos cam- comandos
pos que esto sendo deslocados.
...
FIELDSHIFT START posio_inicial COLUMNS bytes_para_deslocar <nome_filtro_
<ELSE> <IF condio>
dados> <OK>
comandos
FIND ...
END
Move diretamente para o primeiro registro contendo uma chave de pesquisa de
caractere especificada em um arquivo indexado. HELP
FIND chave_de_pesquisa_de_caractere
Fornece explicaes online dos comandos ACL, tipo de dados, funes e funcio-
nalidades.
HELP | F1
<MAXIMUN largura_mx_do_texto><FIELDSlista_de_campos...>
IMPORT PRINT
IMPORT PRINT <TO nome_tabela> <nome_tabela.fil> FROM <nome_arquivo_
nmero_pgina_de_cdigo >
INDEX <ON> campo_chave <D>... TO nome_ndice <IF condio> <WHILE
LOCATE
Use o comando LOCATE para mover-se a um nmero de registro especificado ou
para o primeiro registro de uma tabela que satisfaa a uma determinada condi-
o.
LOCATE<IF condio><WHILE condio><FIRST|NEXT intervalo>LOCATE RECORD n
LOOP
Use o comando LOOP com o comando GROUP para processar um registro mais
de uma vez. Os loops so utilizados com freqncia quando um registro contm
Antes de usar o JOIN: informaes repetidas, s vezes chamadas de buckets ou segmentos, que voc
quer processar. Os comandos entre LOOP e END so executados repetidamente
OPEN Abc SECONDARY
no registro atual at que o resultado do condio seja falso.
Sintaxe do JOIN:
LOOP WHILE condio
JOIN PKEY campos_chave_primrios FIELDS campos_primrios SKEY
comandos
campo_chave_secundrio <WITH campos_secundrios> TO nome_tabela{PRIMARY
...
|SECONDARY | PRIMARY | SECONDARY | BOTH | UNMATCHED | MANY} <IF condio>
END
<FIRST | NEXT intervalo><WHILE condio><LOCAL> <OPEN> <APPEND> <PRESORT>
<SECSORT>
OPEN QUIT
Use o comando OPEN para abrir uma tabela ou arquivo dBASE ou para associar Finaliza a sesso do ACL e retorna para o ponto onde o ACL foi chamado.
Dados de origem a uma tabela. QUIT
OPEN nome_tabela
RENAME <DATA | FILE | LOG | TEXT> nome_antigo <AS | TO> novo_nome <OK>
SEEK
Para renomear outro item: Indica diretamente o primeiro registro em uma arquivo indexado contendo o
RENAME {BATCH | FORMAT | INDEX | REPORT | WORKSPACE} nome_antigo <AS | TO> caractere chave de pesquisa especificado.
SAMPLE<ON>campo_numrico<SUBSAMPLE>{<FIELDS>nomes_campos|RECORD}<CUTOFF
<UNFORMATTED><GAPS |MISS n><TO nome_tabela | PRINT> <APPEND> <OPEN> <IF SET ECHO {ON | NONE}
condio> <FIRST | NEXT intervalo> <WHILE condio> <HEADER cabealho> SET FILTER <TO> condio
SORT ON campo_chave <D>... TO nome_de_tabela <IF condio>< WHILEcondio> STATISTICS ON <listagem_do_campo_numrico|lista_do_campo_de_data| ALL>
<FIRST|NEXT intervalo> <APPEND> <OPEN>
<STD> <NUMBER num_de_maiores_e_menores> <TO no-
me_do_arquivo|<SCREEND|PRINT>
S-
<ON> campo_numrico MINIMUM = min <MAXIMUM = max> FREE <TO nome_tabela|<SCREEN|PRINT>> <IF condio> <WHILE condio> <FIRST|NEXT
|NEXT intervalo> <SUPPRESS> <SUBTOTAL campos_numricos> <HEADER cabea- Posiciona a tabela atual no primeiro registro.
TOTAL campos_numricos <ALL> <IF condio> <{FIRST | NEXT} intervalo> VERIFY <IF condio> <WHILE condio> <FIRST | NEXT intervalo> <ERRORLIMIT
TYPE
Exibe o contedo de qualquer arquivo de texto na tela.
TYPE nome_arquivo
DOW( )
Funes Financeiras
PVLUMPSUM( ) RATE( )
Funes Caractere/Bit
ROUND( )
AGE( )
Funes de Acesso a String
Retorna o perodo, em dias, de uma expresso , caractere ou data. Compara o
ALLTRIM( ) AT( ) BLANKS( ) valor DATA com a data do sistema se no for passado nenhum parmetro.
AGE(data <;data_limite_aaaammdd>)
CLEAN( ) DTOU( ) EXCLUDE( )
BIT( ) CTOD( )
Retorna o valor binrio de um byte em uma determinada posio do registro Converte uma expresso de caractere ou numrica em uma expresso de data
atual. vlida.
BIT(localizao_byte) CTOD(campo <;formato_data>)
BLANKS( ) CUMIPMT( )
Cadeia de caracteres em branco com o tamanho especificado. Calcula o valor dos juros pagos em um emprstimo durante um perodo especfi-
BLANKS(nmero_de_espaos_em_branco) co.
CUMIPMT(taxa; perodos; valor; perodo_inicial; perodo_final <;tipo>)
BYTE( )
CUMPRINC( )
Retorna o byte de uma determinada posio do registro atual.
BYTE(localizao_byte) Calcula o valor pago em relao ao montante principal de um emprstimo para
um perodo especfico.
CDOW( ) CUMPRINC(taxa; perodos; valor; perodo_inicial; perodo_final <;tipo>)
DIGIT( ) FILESIZE( )
Retorna o valor superior ou inferior de um byte compactado em uma posio Retorna o valor de um arquivo especificado em bytes. (Retorna -1 se i arquivo
especfica do registro. no existir)
DIGIT(localizao_byte; posio) FILESIZE(nome_arquivo)
DOW( ) FIND( )
Retorna o dia da semana como um valor numrico para data, por exemplo, Do- Procura por uma cadeia dentro de um campo ou do registro inteiro, se parme-
mingo = 1. tro <campo> no for informado.
DOW(data) FIND(cadeia <;campo>)
EFFECTIVE( ) FREQUENCY( )
Calcula a taxa de juros efetiva anual de um emprstimo. Retorna a freqncia de Benford esperada para dgitos numricos positivos inici-
EFFECTIVE(taxa_nominal; perodos) ais seqenciais com uma preciso de oito dgitos.
FREQUENCY(nmero)
EXCLUDE( )
Retorna uma cadeia de comprimento varivel, excluindo do resultado os carac-
teres especificados.
EXCLUDE(cadeia; caracteres_a_excluir)
MOD( ) PMT( )
Retorna o resto da diviso entre dois nmeros. Calcula o valor do pagamento peridico em um emprstimo.
MOD(nmero; nmero_divisor) PMT(taxa; perodos; valor <;tipo>)
NOMINAL( ) PPMT( )
Calcula a taxa de juros anual nominal de um emprstimo. Calcula o montante principal liquidado em um emprstimo durante um perodo
NOMINAL(taxa_efetiva; perodos) especfico do termo.
PPMT(taxa; perodo_especificado; perodos; valor <;tipo>)
NPER( )
PROPER( )
Calcula o nmero de perodos necessrios para liquidar um emprstimo.
NPER(taxa; pagamento; valor <;tipo>) Converte caracteres de uma cadeia em maisculo ou minsculo de forma apro-
priada para representar os nomes prprios.
OCCURS( ) PROPER(cadeia)
RATE( ) REPEAT( )
Retorna uma cadeia que repete um valor constante por um nmero especificado
Calcula a taxa de juros por perodo que est implcita em uma anuidade.
de vezes. Use REPEAT() para inicializar uma varivel com valores constantes ou
RATE(perodos; pagamento; valor) espaos em branco, ou para configurar um valor padro para um campo calcula-
do. Essa funo til para aplicativos avanados de programao.
RECLEN( )
REPEAT(cadeia; quantidade)
Retorna o comprimento do registro atual.
RECLEN( )
REPLACE( )
Substitui todas as instncias de uma cadeia de caracteres especificada por uma
RECNO( ) nova cadeia de caracteres.
Retorna o nmero do registro atual. REPLACE(cadeia; texto_anterior; texto_novo)
RECNO( )
REVERVE( )
RECOFFSET( ) Inverte a posio dos caracteres de uma cadeia.
Retorna o valor de um campo de um registro que est a um nmero especifica- REVERSE(cadeia)
do de registros em relao ao registro atual.
RECOFFSET(campo; nmero_de_registros)
RJUSTIFY( )
Retorna uma cadeia de mesmo tamanho que a expresso original com os dados
alinhados a direita.
RJUSTIFY(cadeia)
ROUND( ) STRING( )
Retorna o valor arredondado de uma expresso numrica.
Converte uma expresso numrica em uma cadeia de caracteres de tamanho
ROUND(nmero) especfico.
STRING(nmero; comprimento <;formato>)
SHIFT( )
Desloca o primeiro caractere de uma expresso para a direita ou para a esquerda, de acor- SUBSTRING( )
do com a quantidade especificada.
Retorna uma subcadeia de uma expresso caractere.
SHIFT(caractere; nmero_de_bits)
SUBSTRING(cadeia; incio; comprimento)
SOUNDEX( ) TEST( )
Retorna o valor de 4 caracteres para uma cadeia especfica que voc pode comparar com o
valor de outras cadeias para ver se ambas so foneticamente parecidas. Procura por uma cadeia de caracteres no lugar especificado de um registro.
SOUNDSLIKE( ) TIME( )
Retorna Verdadeiro ou Falso, respectivamente, para indicar se duas cadeias so ou no Retorna a hora do sistema como uma cadeia de caracteres no formato
foneticamente semelhantes. hh:mm:ss.
SOUNDSLIKE(nome; soa_como_nome) TIME( )
TRIM( )
Retorna uma cadeia de tamanho variado com todos os espaos em branco finais
ZSTAT ( )
removidos. Calcula a estatstica-Z, padro para uso em diversas tarefas de soluo de proble-
TRIM(cadeia) mas incluindo anlise digital.
Ela retorna uma resposta com trs casas decimais.
UNSIGNED( )
ZSTAT(proporo_real; proporo_esperada; populao)
Converte um nmero em um tipo de dados sem sinal, com um comprimento
especfico.
UNSIGNED(nmero; comprimento_do_resultado)
UPPER( )
Converte todos os caracteres de um expresso em letras maisculas.
UPPER(cadeia)
VALUE( )
Converte uma cadeia de caracteres ou campo em seu equivalente numrico.
VALUE(cadeia; decimais)
VERIFY( )
Determina se um campo contm dados vlidos.
VERIFY(campo)