Escolar Documentos
Profissional Documentos
Cultura Documentos
Versão: 14.1
Publicado quarta-feira, 19 de junho de 2019
Índice
Índice 3
Introdução 13
Conceitos básicos dos scripts do Analytics 14
Comentários 19
Tipos de dados 21
Expressões 22
Definição de campos calculados com expressões 24
Funções 26
Variáveis 28
Estruturas de controle 30
Agrupamento e loops 33
As 30 principais funções do Analytics 41
Comandos 53
Comando ACCEPT 54
Comando ACCESSDATA 59
Comando ACTIVATE 66
Comando AGE 68
Comando APPEND 73
Comando ASSIGN 81
Comando BENFORD 84
Comando CALCULATE 88
Comando CLASSIFY 90
Comando CLOSE 95
Comando CLUSTER 97
Comando COMMENT 100
Comando COUNT 102
Comando CREATE LAYOUT 105
Comando CROSSTAB 107
Comando CVSEVALUATE 111
Comando CVSPREPARE 115
Página 3 de 966
Índice
Página 4 de 966
Índice
Página 5 de 966
Índice
Página 6 de 966
Índice
Página 7 de 966
Índice
Página 8 de 966
Índice
Página 9 de 966
Índice
Página 10 de 966
Índice
PARAM 879
PASSWORD 891
DATA 894
RESULT 899
PUBLISH 904
Desenvolvimento de análises 905
Adição de cabeçalhos de análise 909
Práticas recomendadas para o desenvolvimento de análises 913
Empacotamento de aplicativos de análise 919
Amostras de scripts de análise (aplicativo de análise) 922
Anexo 927
Requisitos do sistema 928
Instalando o ACL para Windows 931
Configuração do Python para uso com o Analytics 933
Edição Unicode vs. edições não Unicode 936
Conversão de análises para Unicode 937
Verificação de compatibilidade com Unicode 940
Execução de scripts do R no Servidor AX 943
Execução de scripts do Python no Servidor AX 948
Códigos de erro do mecanismo de análise 953
Variáveis criadas por comandos do Analytics 960
Palavras-chave reservadas 965
Página 11 de 966
Introdução
Introdução
Página 13 de 966
Introdução
Comandos
Cada linha em um script executa um comando do ACLScript e inicia com o nome do comando. Um
comando é uma instrução para executar uma operação no Analytics.
O nome do comando é seguido por um ou mais parâmetros, especificados como nome_parâmetro valor_
parâmetro.
Dica
Dependendo do comando, alguns parâmetros são obrigatórios e outros opcionais. Você
não precisa especificar os parâmetros opcionais. Se omitidos, o comando será exe-
cutado sem eles. No entanto, se você omitir um parâmetro obrigatório, o Analytics usará
o valor padrão para esse parâmetro.
Página 14 de 966
Introdução
Comentários
Como qualquer linguagem de script, o ACLScript permite a adição de comentários com a palavra-chave
COMMENT. Use comentários para facilitar a compreensão do seu código e para comunicar-se com qual-
quer pessoa que tente ler, usar ou compreender o script. O ACLScript permite dois tipos de comentários:
l comentários de uma linha: todo o texto após COMMENT é ignorado até alcançar o final da linha
l blocos de comentários de várias linhas: começam com COMMENT e cada linha subsequente é
ignorada até alcançar a palavra-chave END ou uma linha em branco
Para obter mais informações e exemplos, consulte "Comentários" Na página 19.
Tipos de dados
O ACLScript permite quatro tipos de dados básicos:
l lógico: é o tipo de dados mais simples. Os dados lógicos expressam um valor de verdade, que pode
ser verdadeiro ou falso
l numérico: contém dígitos de 0 a 9 e, opcionalmente, um sinal negativo e um ponto decimal
l caractere: uma série de um ou mais caracteres
l datahora: um valor de data, datahora ou hora expresso em um formato permitido
Cada tipo de dados é tratado de forma diferente pelo Analytics e pode ser usado em diversos comandos e
funções. Para obter mais informações sobre tipos de dados, consulte "Tipos de dados" Na página 21.
Expressões
Uma expressão em qualquer instrução que tem um valor. A forma mais simples de expressão é uma literal
como 2 ou "teste". No entanto, as expressões normalmente são cálculos e podem ser tão complexas
quanto você conseguir imaginar, usando qualquer combinação válida de operadores, condições, funções e
valores:
As expressões normalmente são usadas no Analytics para preencher campos calculados ou como entrada
para lógica condicional. Para obter mais informações sobre expressões, consulte "Expressões" Na
página 22.
Página 15 de 966
Introdução
Funções
As funções são rotinas incorporadas que aceitam um número específico de parâmetros e retornam um
único valor. Use funções para manipular conteúdo e variáveis de campo usadas em comandos.
Nota
As funções não modificam dados de campos. Elas geram e retornam um novo valor com
base em um cálculo ou algoritmo que usa dados de campos ou variáveis como entrada.
Use o valor retornado pela função como entrada para um comando.
As funções iniciam com o nome da função, seguido imediatamente por um parêntese de abertura, uma
lista de zero ou mais valores passados para a função como argumentos separados por ponto e vírgula e
um parêntese de fechamento.
Exemplo
A função BETWEEN(valor; mín; máx) recebe três argumentos e retorna verdadeiro se o valor está no
intervalo ou falso se o valor está fora do intervalo:
l valor – a expressão ou valor a testar
l mín – o valor mínimo do intervalo
l máx – o valor máximo do intervalo
Variáveis
Uma variável é um local de armazenamento temporário usado para manter um valor. As variáveis têm um
identificador associado que permite referenciar e trabalhar com o valor armazenado na memória do com-
putador.
O ACLScript usa o comando ASSIGN para criar uma variável e atribuir-lhe um valor ao mesmo tempo:
ASSIGN v_age_in_years = 3
Para simplificar, você pode omitir a palavra-chave ASSIGN. No entanto, ASSIGN é usado implicitamente
e o mesmo comando é executado:
v_age_in_years = 3
Página 16 de 966
Introdução
Nota
O ACLScript não permite valores nulos. Todas as variáveis devem ter um valor associado
de um dos tipos de dados compatíveis. O interpretador de scripts avalia o tipo de dados
usando o formato e o qualificador de dados usados para atribuir o valor. Para obter mais
informações, consulte "Tipos de dados" Na página 21.
Utilizar variáveis
Após criar uma variável, você poderá referenciá-la em qualquer lugar onde referencia nomes de campos
ou variáveis. Você também pode atribuir um novo valor à variável usando o comando ASSIGN.
Você também pode usar interpolação de cadeias ou substituição de variáveis para incluir uma variável em
um literal de cadeia, colocando o nome da variável entre caracteres %. Quando o Analytics encontra a vari-
ável substituída, troca o espaço reservado pelo seu valor correspondente:
Estruturas de controle
Uma estrutura de controle é um componente de um script que decide a direção a tomar com base nos parâ-
metros fornecidos. O ACLScript oferece lógica condicional e estruturas de loop.
Lógica condicional
O ACLScript implementa lógica condicional como um comando IF e como um parâmetro opcional em diver-
sos comandos da linguagem.
Dica
Use o comando IF para controlar se um comando é executado ou não, e use o parâmetro
IF para decidir qual a tabela usada na execução de um comando.
Comando IF
Página 17 de 966
Introdução
Parâmetro IF
Loop
O comando LOOP fornece a estrutura de controle de loops no ACLScript. Esse comando processará as
instruções dentro do loop enquanto a expressão do teste de controle for avaliada como verdadeira.
Para obter mais informações sobre estrutura de controle, consulte "Estruturas de controle" Na página 30
Página 18 de 966
Introdução
Comentários
Como uma linguagem de script, o ACLScript permite a adição de comentários com a palavra-chave
COMMENT. Use comentários para facilitar a compreensão do seu código e para comunicar-se com qual-
quer pessoa que tente ler, usar ou compreender o script.
Tipos de comentário
O ACLScript permite dois tipos de comentários:
l comentários de uma linha: todo o texto após COMMENT é ignorado até alcançar o final da linha
l blocos de comentários de várias linhas: começam com COMMENT e cada linha subsequente é
ignorada até alcançar a palavra-chave END ou uma linha em branco
COMMENT
**********************
** Esta seção do script prepara dados para importação
**********************
END
COMMENT
************************************************************
*** Nome do script: {ID_aplicativo}{Nome do script}
*** Parâmetros: {Descrição detalhada}
Página 19 de 966
Introdução
Página 20 de 966
Introdução
Tipos de dados
O ACLScript permite quatro tipos de dados básicos: lógico, numérico, caractere e datahora.
Caractere Uma série de um ou mais caracteres. 32.767 Apóstrofos ou aspas o 'John Doe'
bytes o "John Doe"
Página 21 de 966
Introdução
Expressões
Uma expressão em qualquer instrução que tem um valor. A forma mais simples de expressão é uma lite-
ral. No entanto, as expressões podem ser tão complexas quanto você conseguir imaginar, usando qual-
quer combinação correta de operadores, condições, funções e valores.
Operadores
Os operadores são símbolos que instruem o interpretador de scripts a executar avaliações aritméticas, de
cadeia, de comparação ou lógicas nos valores especificados:
Página 22 de 966
Introdução
o = igualdade
o >= maior ou igual a
o <= menor ou igual a
o <> diferente
Nota
Operadores comparativos
têm precedência igual
entre si e são avaliados
da esquerda para a
direita.
Funções
As expressões são avaliadas usando os valores retornados pelas funções. As funções são executadas
com a maior precedência entre os componentes da expressão. Para obter mais informações sobre fun-
ções, consulte "Funções" Na página 26.
Exemplos de expressões
Avaliado como 6
(2 + (3 - 2)) * 2
Página 23 de 966
Introdução
Dica
Acrescente o prefixo c_ aos nomes de campos calculados para identificá-los como dados
calculados em vez de dados da origem.
Quando a primeira expressão condicional for avaliada como verdadeira, o valor especificado para esse
caso será usado. Nesse exemplo, valor * taxa_geral é o valor padrão usado quando nenhuma das
expressões condicionais é avaliada como verdadeira.
Página 24 de 966
Introdução
Nota
Você precisa adicionar uma linha vazia entre o comando de linha e as condições, a menos
que inclua os parâmetros IF, WIDTH, PIC ou AS no comando DEFINE FIELD. Para obter
mais informações, consulte "Comando DEFINE FIELD . . . COMPUTED" Na página 132.
Página 25 de 966
Introdução
Funções
As funções são rotinas incorporadas que aceitam um número específico de parâmetros e retornam um
único valor. Use funções para manipular conteúdo e variáveis de campo usadas em comandos.
Nota
As funções não modificam dados de campos. Elas geram e retornam um novo valor com
base em um cálculo ou algoritmo que usa dados de campos ou variáveis como entrada.
Use o valor retornado pela função como entrada para um comando.
Sintaxe da função
As funções iniciam com o nome da função, seguido imediatamente por um parêntese de abertura, uma
lista de zero ou mais valores passados para a função como argumentos separados por ponto e vírgula e
um parêntese de fechamento.
Exemplo
A função BETWEEN(valor; mín; máx) recebe três argumentos e retorna verdadeiro se o valor está no
intervalo ou falso se o valor está fora do intervalo:
l valor – a expressão ou valor a testar
l mín – o valor mínimo do intervalo
l máx – o valor máximo do intervalo
Argumentos da função
Um argumento de uma função é um valor de entrada específico passado à função.
Os argumentos da função são passados à função por meio de uma lista de argumentos. Essa lista con-
tém valores literais, variáveis ou expressões avaliadas como valores do tipo de dados parâmetro, sepa-
rados por vírgula. Para obter mais informações sobre como trabalhar com tipos de dados, consulte "Tipos
de dados" Na página 21.
Nota
Se o projeto opera com formatos de número europeus, ou se você está criando scripts
que são portáteis entre regiões, separe os argumentos da função com um espaço, em
vez de vírgula, a menos que esteja passando um valor numérico com sinal. As funções
que aceitam valores numéricos com sinal exigem um delimitador específico.
Página 26 de 966
Introdução
Funções Comandos
Usam campos, valores ou registros como entrada e Usam tabelas como entrada e geram novos registros e
geram um novo valor, que é retornado. tabelas.
Usadas em expressões, campos calculados, valores de Usados para analisar dados, importar dados e gerar resul-
parâmetros de comando, variáveis e filtros para auxiliar e tados.
modificar a execução do comando.
Não podem ser uma etapa independente em um script. Podem ser uma etapa independente em um script.
Página 27 de 966
Introdução
Variáveis
Uma variável é um local de armazenamento temporário usado para manter um valor. As variáveis têm um
identificador associado que permite referenciar e trabalhar com o valor armazenado na memória do com-
putador.
ASSIGN v_age_in_years = 3
Para simplificar, você pode omitir a palavra-chave ASSIGN. No entanto, ASSIGN é usado implicitamente
e o mesmo comando é executado:
v_age_in_years = 3
Nota
O ACLScript não permite valores nulos. Todas as variáveis devem ter um valor associado
de um dos tipos de dados compatíveis. O interpretador de scripts avalia o tipo de dados
usando o formato e o qualificador de dados usados para atribuir o valor. Para obter mais
informações, consulte "Tipos de dados" Na página 21.
Utilizar variáveis
Após criar uma variável, você poderá referenciá-la em qualquer lugar onde referencia nomes de campos
ou variáveis. Você também pode atribuir um novo valor à variável usando o comando ASSIGN.
Você também pode usar interpolação de cadeias ou substituição de variáveis para incluir uma variável em
um literal de cadeia, colocando o nome da variável entre caracteres %. Quando o Analytics encontra a
variável substituída, troca o espaço reservado pelo seu valor correspondente:
Página 28 de 966
Introdução
Tipos de variáveis
O Analytics usa os tipos de variáveis a seguir:
l variáveis criadas pelo sistema: criadas automaticamente após a execução de um comando
l variáveis permanentes: permanecem na memória do computador até que você as exclua e per-
sistem após o fechamento do projeto do Analytics
Nota
Para definir uma variável permanente, acrescente o prefixo '_' ao identificador: _v_
nome_empresa = 'Acme'.
l variáveis de sessão: permanecem na memória do computador até que você as exclua ou feche o
projeto do Analytics
Identificadores de variáveis
Os identificadores de variáveis não distinguem maiúsculas de minúsculas e seguem determinadas con-
venções a respeito do tipo da variável:
l identificadores de variáveis geradas pelo sistema usam maiúsculas: PASTADESAÍDA
l identificadores de variáveis permanentes devem ter um prefixo '_': _v_permanente
l identificadores de variáveis de sessão usam o formato v_nomedavariável por convenção, mas o uso
dessa convenção não é obrigatório
DISPLAY v_período_em_anos
Quando o script encontra esse comando, grava o comando no arquivo de log. Para exibir o valor da vari-
ável nessa fase da execução do script, clique na entrada no log.
Dica
Você também pode usar variáveis como auxílio de depuração, inserindo pontos de inter-
rupção no script e inspecionando os valores das variáveis na guia Variáveis do
Navegador.
Página 29 de 966
Introdução
Estruturas de controle
Uma estrutura de controle é um componente de um script que decide a direção a tomar com base nos
parâmetros fornecidos. O ACLScript oferece lógica IF condicional e estruturas de loop.
O comando IF
Ao usar o comando IF, especifique uma expressão condicional, seguida pelo comando a executar se a
expressão for avaliada como verdadeira:
Essa estrutura condicional controla qual código é executado. Portanto, você pode usar o comando IF
quando precisa processar uma tabela inteira com base na expressão de teste. Se a expressão for ava-
liada como verdadeira, o comando será executado em todos os registros da tabela. Para obter mais infor-
mações sobre o comando IF, consulte "Comando IF" Na página 240.
Parâmetro IF
Muitos comandos aceitam um parâmetro IF opcional que pode ser usado para filtrar os registros pro-
cessados pelo comando:
Quando essa instrução for executada, o script classificará todos os registros da tabela em que o valor do
campo estado for 'SP'.
Loop
O comando LOOP
O comando LOOP fornece a estrutura de controle de loops no ACLScript.
Página 30 de 966
Introdução
Nota
O comando LOOP deve ser executado dentro do comando GROUP e não pode ser exe-
cutado isoladamente.
Esse comando processará as instruções dentro do loop enquanto a expressão WHILE especificada for ver-
dadeira:
ASSIGN v_contador = 10
GROUP
LOOP WHILE v_contador > 0
v_total = v_total + valor
v_contador = v_contador - 1
END
END
Essa estrutura interage 10 vezes e adiciona o valor do campo valor à variável v_total. Ao final de cada inte-
ração, a variável v-contador é decrementada em 1 e testada na expressão WHILE. Quando a expressão
for avaliada como falsa, o loop encerrará e o script prosseguirá.
Na conclusão do loop, a variável v_total contém a soma dos campos valor dos 10 registros.
Para obter mais informações sobre loops, consulte "Comando LOOP" Na página 341.
Exemplo
Você precisa importar todos os arquivos CSV da pasta C:\dados para o projeto. É possível usar o
comando DIRECTORY para obter uma lista de arquivos da pasta. No entanto, não é possível usar o
comando IMPORT dentro da estrutura GROUP. Você precisa de outra forma de fazer o looping na tabela
criada por DIRECTORY.
Para isso, crie um script principal que:
1. Executa o comando DIRECTORY e salva os resultados em uma tabela.
2. Obtenha o número de registros na tabela para uso como contador.
Página 31 de 966
Introdução
3. Chame um subscript uma vez por registro na tabela para executar o comando IMPORT com o regis-
tro atual.
Script principal
Subscript de importação
COMMENT Subscript_importação
OPEN T_Tabela_Para_Loop
LOCATE RECORD v_Contador
COMMENT o código para importar o arquivo CSV do registro deve estar aqui...
As variáveis são compartilhadas entre todos os scripts executados no projeto. Portanto, os scripts prin-
cipais chamam o subscript até que o valor de v_Contador exceda o valor de v_Num_Registros. A cada
vez que o subscript é executado, incrementa v_Contador.
Essa estrutura permite chamar o comando IMPORT para cada registro durante o loop pela tabela.
Quando o script principal concluir, todos os arquivos CSV da pasta C:\dados terão sido importados.
Página 32 de 966
Introdução
Agrupamento e loops
Os comandos GROUP e LOOP oferecem duas formas de execução repetida de uma série de comandos.
GROUP executa uma única iteração de um ou mais comandos em cada registro. LOOP executa várias ite-
rações de uma série de comandos em um único registro e somente pode ser usada dentro de um bloco de
GROUP.
Para calcular esse valor, use o comando GROUP. Dentro de cada interação de GROUP, você:
1. Calcula o total acumulado até o registro atual.
2. Extrai o número, o valor, a data e o total acumulado da fatura para uma tabela de resultados.
OPEN Trans_Cp
COMMENT itera cada registro da tabela para calcular e extrair o total acumulado
GROUP
ASSIGN v_total_acumulado = v_total_acumulado + Valor_Fatura
EXTRACT Número_Fatura, Valor_Fatura, Data_Fatura, v_total_acumulado AS "Total acumulado"
TO resultados1
END
Na execução do script, os comandos dentro do bloco de GROUP são processados para cada registro da
tabela, do início ao fim da tabela, e o total acumulado é calculado e extraído. Se pudéssemos acompanhar
a execução do GROUP, teríamos o seguinte:
Página 33 de 966
Introdução
Página 34 de 966
Introdução
Página 35 de 966
Introdução
2. Se o primeiro caso for avaliado como falso, a próxima condição ELSE IF (Valor_Fatura >= 100)
será testada. Da mesma forma, se esse teste for avaliado como verdadeiro, o código desse caso
será executado e nenhum outro caso será testado.
3. Finalmente, se nenhum dos casos IF ou ELSE IF for avaliado como verdadeiro, o caso padrão no
bloco ELSE processará o registro.
Nota
Se um registro for avaliado como verdadeiro em mais de um caso, será processado ape-
nas pelo primeiro bloco IF/ELSE testado. Os registros nunca são processados por mais
de um bloco IF/ELSE em um comando GROUP.
OPEN Trans_Cp
COMMENT usa GROUP IF para executar comandos ASSIGN e EXTRACT diferentes, dependendo
do valor da fatura
GROUP IF Valor_Fatura >= 1000
ASSIGN v_total_acumulado_alto = v_total_acumulado_alto + Valor_Fatura
EXTRACT Número_Fatura, Valor_Fatura, Data_Fatura, v_total_acumulado_alto AS "Total acu-
mulado" TO resultados_alto
GROUP IF Valor_Fatura >= 100
ASSIGN v_total_acumulado_medio = v_total_acumulado_medio + Valor_Fatura
EXTRACT Número_Fatura, Valor_Fatura, Data_Fatura, v_total_acumulado_medio AS "Total acu-
mulado" TO resultados_medio
ELSE
ASSIGN v_total_acumulado = v_total_acumulado_baixo + Valor_Fatura
EXTRACT Número_Fatura, Valor_Fatura, Data_Fatura, v_total_acumulado_baixo AS "Total acu-
mulado" TO resultados_baixo
END
Quando o script é executado, o comando GROUP testa o valor da fatura de cada registro. Dependendo
do valor, o registro será usado para atualizar um dos três totais acumulados (alto, médio, baixo), gerando
três tabelas de resultados.
Página 36 de 966
Introdução
COMMENT Use GROUP para contar as vírgulas em cada campo de código de departamento como
forma de identificar quantos departamentos estão associados a ao registro Execute um "LOOP" em
cada registro para cada código do campo, extraindo cada código em seu próprio registro END GROUP
v_quantidade_departamentos = OCCURS(Código_Departamento;',') v_contador = 0 LOOP WHILE
v_contador <= v_quantidade_departamentos v_dept = SPLIT(Código_Departamento; ','; (v_contador
+ 1)) EXTRACT FIELDS Número_Fatura; Valor_Fatura; v_dept AS "Departamento" TO resultado1 v_
contador = v_contador + 1 END END
Na execução do script, os comandos dentro do bloco de GROUP são processados para cada registro da
tabela, do início ao fim da tabela. Para cada registro, o comando LOOP itera o registro uma vez por código
departamento na lista delimitada por vírgulas e extrai um registro. Se pudéssemos acompanhar a exe-
cução do GROUP e do Loop, teríamos o seguinte:
Página 37 de 966
Introdução
l v_depart = CCD
O registro a seguir é extraído e o valor de v_contador é incrementado para 1. Portanto, LOOP itera
novamente:
l v_depart = RDR
O registro a seguir é extraído e o valor de v_contador é incrementado para 2. Portanto, LOOP itera
novamente e GROUP prossegue para o próximo registro:
Página 38 de 966
Introdução
Para o terceiro registro na tabela, o valor de v_quantidade_departamentos é 2. Portanto, LOOP itera três
vezes:
1. Para a primeira iteração do LOOP:
l v_contador = 0
l v_depart = CCD
O registro a seguir é extraído e o valor de v_contador é incrementado para 1. Portanto, LOOP itera
novamente:
l v_depart = LMO
O registro a seguir é extraído e o valor de v_contador é incrementado para 2. Portanto, LOOP itera
novamente:
l v_depart = RDR
O registro a seguir é extraído e o valor de v_contador é incrementado para 3. Portanto, LOOP itera
novamente e GROUP prossegue para o próximo registro:
Página 39 de 966
Introdução
Página 40 de 966
Introdução
ALLTRIM( )
Retorna uma cadeia com os espaços iniciais e finais removidos da cadeia de entrada.
Nota
É uma prática recomendada usar ALLTRIM() em qualquer campo de caractere que você
estiver usando como entrada para outra função para que nenhum espaço à direita ou à
esquerda afete o valor retornado.
Exemplo
O campo Número_Fornecedor contém o valor " 1254". É necessário remover esse espaço extra de
Número_Fornecedor para que seja possível harmonizar o campo com os dados em outra tabela.
UPPER( )
Retorna uma cadeia com caracteres alfabéticos convertidos em maiúsculas.
Exemplo
O campo Sobrenome contém o valor "Fernando". Você precisa transformar esse valor em maiúsculas para
Página 41 de 966
Introdução
LOWER( )
Retorna uma cadeia com caracteres alfabéticos convertidos em minúsculas.
Exemplo
O campo Sobrenome contém o valor "Fernando". Você precisa transformar esse valor em minúsculas
para compará-lo com o valor em minúsculas de outra tabela.
PROPER( )
Retorna uma cadeia com o primeiro caractere de cada palavra em letra maiúscula e os caracteres res-
tantes em minúsculas.
Exemplo
O campo Sobrenome contém o valor "fernando". Você precisa exibi-lo como um nome próprio na saída.
SUBSTR( )
Retorna uma subcadeia especificada de uma cadeia.
Exemplo
O campo Código_Conta_LR contém o valor "001-458-873-99". Você precisa extrair os três primeiros
Página 42 de 966
Introdução
LAST( )
Retorna um número especificado de caracteres do final de uma cadeia.
Exemplo
O campo Código_Conta_LR contém o valor "001-458-873-99". Você precisa extrair os dois últimos bytes,
ou caracteres, da cadeia.
SPLIT( )
Retorna um segmento especificado de uma cadeia.
Exemplo
O campo Código_Conta_LR contém o valor "001-458-873-99". Você precisa extrair o segundo segmento
de código da cadeia.
AT( )
Retorna um número especificando a localização inicial de uma determinada ocorrência de uma subcadeia
dentro de um valor de caracteres.
Exemplo
O campo Código_Conta_LR contém o valor "001-458-873-99". Você precisa determinar a posição de byte
inicial do valor "458" para testar se o segundo segmento do código de LR é "458" (posição inicial "5").
Página 43 de 966
Introdução
OCCURS( )
Retorna a contagem de quantas vezes um trecho de cadeia ocorre em um valor de caracteres espe-
cificado.
Exemplo
O campo Código_Conta_LR contém o valor "001-458-873-99". Você precisa determinar se o código de
LR está formatado corretamente, garantindo que os dados contêm três caracteres hífen.
LENGTH( )
Retorna o número de caracteres em uma cadeia.
Exemplo
O campo Código_Conta_LR contém o valor "001-458-873-99". Você precisa determinar se o código de
LR está formatado corretamente, garantindo que os dados contêm 14 caracteres.
STRING( )
Converte um valor numérico em uma sequência de caracteres.
Exemplo
Página 44 de 966
Introdução
O campo Valor_Fatura contém o valor 12345,67. Você precisa converter isso em dados de caracteres.
VALUE( )
Converte uma sequência de caracteres em um valor numérico.
Dica
VALUE() é usado frequentemente com ZONED() para adicionar zeros à esquerda.
Exemplo
O campo Valor_Fatura contém o valor "12345,67". Você precisa converter isso em dados numéricos.
CTOD( )
Converte um valor em caractere ou numérico de data em uma data. Também é possível extrair a data de
um valor de datahora em formato de caracteres ou numérico e retorná-lo como uma data. Abreviação de
"Caractere para Data".
Exemplo
O campo Data_Envio contém o valor "April 25, 2016". Você precisa converter isso em dados datahora.
DATE( )
Extrai a data a partir de uma data ou datahora específica e retorna como sequência de caracteres. Tam-
bém pode retornar a data atual do sistema operacional.
Exemplo
O campo Data_Envio contém o valor `20160425`. Você precisa converter isso em dados de caracteres.
Página 45 de 966
Introdução
ZONED( )
Converte dados numéricos em dados de caracteres e adiciona zeros à esquerda na saída.
Exemplo
O campo Número_Funcionário contém o valor "254879". Você precisa converter o valor para uma cadeia
de 10 dígitos com zeros à esquerda.
Dica
Você precisa usar a função VALUE() para converter os caracteres em dados numéricos
antes de usar o numeral como entrada para ZONED().
BINTOSTR( )
Retorna os dados de caracteres Unicode convertidos de dados de caracteres ZONED ou EBCDIC. Abre-
viação de "Binário para Cadeia".
Nota
Somente para a edição Unicode. Para edições não Unicode, consulte ZONED() acima.
Exemplo
O campo Número_Funcionário contém o valor "254879". Você precisa converter o valor para uma cadeia
de 10 dígitos com zeros à esquerda.
Página 46 de 966
Introdução
Dica
Você precisa usar a função VALUE() para converter os caracteres em dados numéricos
antes de usar o numeral como entrada para ZONED(). Então, você usa BINTOSTR() para
converter os dados ASCII retornados de ZONED() em Unicode.
MONTH( )
Extrai o mês de uma data ou datahora específica e retorna o mês como valor numérico (1 a 12).
Exemplo
O campo Data_Transação contém o valor `20160815 100252`. Você precisa extrair o mês como dados de
caracteres com um zero à esquerda.
DAY( )
Extrai o dia de um mês a partir de uma data ou datahora específica e retorna o dia como valor numérico (1 a
31).
Exemplo
O campo Data_Transação contém o valor `20160815 100252`. Você precisa extrair o dia como dados de
caracteres.
Página 47 de 966
Introdução
YEAR( )
Extrai o ano de uma data ou datahora específica e retorna como valor numérico usando o formato AAAA.
Exemplo
O campo Data_Transação contém o valor `20160815 100252`. Você precisa extrair o ano como valor
numérico.
HOUR( )
Extrai a hora de uma hora ou datahora específica e retorna como valor numérico usando o relógio 24
horas.
Exemplo
O campo Data_Transação contém o valor `20160815 100252`. Você precisa extrair a hora como valor
numérico.
COMMENT retorna 10
HOUR(Data_Transação)
MINUTE( )
Extrai os minutos de uma hora ou datahora específica e retorna como valor numérico.
Exemplo
O campo Data_Transação contém o valor `20160815 100252`. Você precisa extrair os minutos como
valor numérico.
COMMENT retorna 2
MINUTE(Data_Transação)
SECOND( )
Extrai os segundos de uma hora ou datahora específica e retorna como valor numérico.
Página 48 de 966
Introdução
Exemplo
O campo Data_Transação contém o valor `20160815 100252`. Você precisa extrair os segundos como
valor numérico.
COMMENT retorna 52
SECOND(Data_Transação)
CDOW( )
Retorna o nome do dia da semana para uma data ou datahora especificada. Abreviação de "Caractere Dia
da Semana".
Exemplo
O campo Data_Transação contém o valor `20160815 100252`. Você precisa extrair o nome do dia como
dados de caracteres.
CMOY( )
Retorna o nome do mês do ano para uma data ou datahora especificada. Abreviação de "Caractere para o
Mês do Ano".
Exemplo
O campo Data_Transação contém o valor `20160815 100252`. Você precisa extrair o nome do mês como
dados de caracteres.
INCLUDE( )
Retorna uma cadeia que inclui apenas os caracteres especificados.
Exemplo
Página 49 de 966
Introdução
O campo Endereço contém o valor "12345 ABC Corporation". Você precisa extrair o número do ende-
reço e excluir o nome da empresa.
EXCLUDE( )
Retorna uma cadeia que exclui os caracteres especificados.
Exemplo
O campo Endereço contém o valor "12345 ABC Corporation". Você precisa extrair o nome da empresa e
excluir o número do endereço.
REPLACE( )
Substitui todas as instâncias de uma cadeia de caracteres especificada por uma nova cadeia de carac-
teres.
Exemplo
O campo Endereço contém o valor "12345 Acme&Sons". Você precisa substituir o caractere "&" pela pala-
vra " and ".
OMIT( )
Retorna uma cadeia com um ou mais subcadeias especificadas removidas.
Exemplo
O campo Endereço contém o valor "12345 Fake St". Você precisa extrair o endereço sem o sufixo de rua
("St").
Página 50 de 966
Introdução
REVERSE()
Retorna uma cadeia com os caracteres na ordem invertida.
Exemplo
O campo Linha_Relatório contém o valor "001 Correção 5874,39 CR ". Você precisa reverter o valor e omi-
tir qualquer espaço à esquerda ou à direita.
BLANKS( )
Retorna uma cadeia que contém um número especificado de espaços em branco.
Exemplo
Você precisa criar um campo calculado para um nome de região com base em um valor no campo código_
região. Você deve garantir que o valor padrão especificado no final do comando tenha um tamanho pelo
menos igual ao valor de entrada mais longo.
"Sul" IF código_região = 1
"Norte" IF código_região = 2
"Leste" IF código_região = 3
"Oeste" IF código_região = 4
BLANKS(v_comprimento)
Página 51 de 966
Comandos
Comandos
Página 53 de 966
Comandos
Comando ACCEPT
Cria uma caixa de diálogo que solicita interativamente um ou mais valores de entrada de script dos usu-
ários. Cada valor de entrada é armazenado em uma variável nomeada de caracteres.
Nota
Não é seguro usar o comando ACCEPT para inserir senhas. Em vez disso, use
"Comando PASSWORD" Na página 363.
O comando ACCEPT não é permitido em análises do Servidor AX.
Você pode criar uma caixa de diálogo interativa mais avançada com o "Comando
DIALOG" Na página 152.
Sintaxe
ACCEPT {texto_mensagem <FIELDS categoria_item_projeto> TO nome_variável} <...n>
Parâmetros
Nome Descrição
texto_men- O rótulo exibido na caixa de diálogo para solicitar informações. Deve ser uma cadeia entre aspas ou
sagem uma variável de caracteres.
Para inserir várias solicitações, separe-os com vírgulas. Embora não obrigatório, o uso de vírgulas faci-
lita a leitura do script:
ACCEPT "Especifique uma data inicial:" TO v_data_inicial, "Especifique uma data final:" TO v_
data_final
FIELDS Cria uma lista suspensa de itens o projeto para a entrada do usuário, em vez de uma caixa de texto. O
categoria_ usuário pode selecionar um único item, campo ou variável na lista.
item_pro-
categoria_item_projeto indica os tipos de item a serem exibidos na lista. Por exemplo, a especificação
jeto
de xf exibe todas as tabelas do projeto na lista. Coloque categoria_item_projetos entre aspas:
opcional
FIELDS "xf"
Para ver os códigos usados para especificar as categorias, consulte "Códigos para categorias de item
de projeto" Na página 57.
Você pode especificar mais de um código na mesma solicitação, mas não é possível misturar itens de
projeto, campos ou variáveis.
TO nome_ O nome da variável de caracteres a ser usada para armazenar a entrada do usuário. A variável será cri-
Página 54 de 966
Comandos
Nome Descrição
Exemplos
Solicitação para o usuário selecionar a tabela do Analytics a ser aberta
Você precisa de uma caixa de diálogo que solicita que o usuário selecione o nome da tabela a ser aberta. O
script abre a tabela selecionada pelo usuário:
Os sinais de porcentagem são obrigatórios porque indicam que o nome da tabela a ser aberta está arma-
zenado na variável v_nome_tabela. Se os sinais de porcentagem forem omitidos, o script tentará abrir uma
tabela denominada "v_nome_tabela".
Página 55 de 966
Comandos
Uso de uma única caixa de diálogo com várias solicitações para coletar as
entradas necessárias
Você quer criar uma única caixa de diálogo para todos os valores que devem ser inseridos pelo usuário
do script.
Use várias solicitações, separadas por vírgulas, no comando ACCEPT para solicitar que o usuário
informe os vários valores de entrada. A mesma caixa de diálogo contém solicitações para a data inicial e a
data final de um intervalo de datas:
ACCEPT "Especifique uma data inicial:" TO v_data_inicial, "Especifique uma data final:" TO v_data_
final
Observações
Interatividade
Use ACCEPT para criar um script interativo. Quando o comando ACCEPT é processado, o script é pau-
sado e uma caixa de diálogo é exibida solicitando informações do usuário que o Analytics usa pos-
teriormente no processamento.
É possível criar caixas de diálogo separadas que solicitam um item de cada vez ou criar uma que solicita
vários itens.
Página 56 de 966
Comandos
Categorias de projeto
Código Categoria
xf Tabelas
xb Scripts
xi Índices
xr Exibições e relatórios
xw Áreas de trabalho
Categorias de campo
Código Categoria
C Campos de caractere
N Campos numéricos
D Campos de datahora
L Campos lógicos
Categorias de variável
Código Categoria
c Variáveis de caractere
n Variáveis numéricas
d Variáveis de datahora
Página 57 de 966
Comandos
Código Categoria
l Variáveis lógicas
No exemplo, as datas inicial e final desse filtro são armazenadas como valores de caractere. Elas devem
ser convertidas em valores de dada para serem usadas com um campo de data que usa um tipo de dados
Datetime.
Delimitar o nome da variável com símbolos de porcentagem (%) substitui o valor do caractere contido pela
variável pelo nome da variável. A função CTOD( ) converte em seguida o valor do caractere em um valor
de data.
Página 58 de 966
Comandos
Comando ACCESSDATA
Importa dados de diversas origens de dados compatíveis com ODBC.
O comando assume a forma ACCESSDATA64 ou ACCESSDATA32, dependendo do driver do ODBC que
você estiver usando (64 ou 32 bits).
Sintaxe
{ACCESSDATA64 | ACCESSDATA32} {CONNECTOR | ODBC {"Driver"|"Dsn"|"File"}} NAME valor
<USER id_do_usuário> <PASSWORD num | PROMPT_PASSWORD> TO nome_tabela CHARMAX
comprimento_máx_do_campo MEMOMAX comprimento_máx_do_campo <ALLCHARACTER>
SOURCE (configurações_da_conexão) <HASH(valor_de_origem, campos)>
SQL_QUERY
(sintaxe_SQL)
END_QUERY
Parâmetros
Nome Descrição
USER id_do_usuário O ID de usuário para origens dos dados que exigem um ID de usuário.
opcional
Página 59 de 966
Comandos
Nome Descrição
Se usar PASSWORD num, você deverá especificar uma definição de senha criada ante-
riormente. Para obter mais informações, consulte "Comando PASSWORD" Na
página 363 e "Comando SET" Na página 424.
Dica
O uso do comando PASSWORD com PASSWORD num é semelhante ao
uso do parâmetro PROMPT_PASSWORD. As duas abordagens solicitam
ao usuário uma senha. PROMPT_PASSWORD tem o benefício de per-
mitir a atualização do id_do_usuário.
CHARMAX tamanho_ O tamanho máximo em caracteres de qualquer campo na tabela do Analytics originada
máximo_do_campo como dados caractere no arquivo de dados de origem que você está importando.
O valor padrão é 50. Dados que ultrapassem o comprimento máximo do campo são trun-
cados quando importados para o Analytics.
SOURCE configurações_ As configurações de conexão (cadeia de conexão) exigidas para conectar à origem de
Página 60 de 966
Comandos
Nome Descrição
de_conexão dados.
Para obter informações sobre a comparação entre valores com hash aplicado durante a
importação e valores com hash aplicado no ACLScript, consulte "Comparação entre
dados com hash aplicado pelo ACCESSDATA e dados com hash aplicado pela função
ACLScript HASH( )" Na página 65.
Exemplos
Importação de dados usando um conector de dados nativo do Analytics
Você precisa importar dados do serviço de dados de nuvem Amazon Redshift. Para fazer isso, você pre-
cisa do conector de dados para Amazon Redshift do Analytics:
Página 61 de 966
Comandos
char-
=0;c-
ache-
size-
=100-
;da-
taba-
se=-
usa-
ge;-
decla-
refet-
chmode=0;maxbytea=255;maxlongvarchar=8190;maxvarchar=255;port=5439;servername=acl_
test.-
high-
bond.-
com;-
singlerowmode=1;sslmode=require;textaslongvarchar=0;usemultiplestatments=0;useunicode=1)
SQL_QUERY(
SELECT
"histórico_de_direitos"."organização" AS "organização",
"histórico_de_direitos"."email_do_usuário" AS "email_do_usuário",
"histórico_de_direitos"."id_do_plano" AS "id_do_plano",
"histórico_de_direitos"."a_partir_de" AS "a_partir_de",
"histórico_de_direitos"."até" AS "até"
FROM
"prm"."histórico_de_direitos" "histórico_de_direitos"
)) END_QUERY
Página 62 de 966
Comandos
`Cliente`.`ID_Cliente` AS `ID_Cliente`,
`Cliente`.`Empresa` AS `Empresa`,
`Cliente`.`Endereço` AS `Endereço`,
`Cliente`.`Cidade` AS `Cidade`,
`Cliente`.`Região` AS `Região`,
`Cliente`.`Código_Postal` AS `Código_Postal`,
`Cliente`.`País` AS `País`,
`Cliente`.`Telefone` AS `Telefone`,
`Pedidos`.`ID_Pedido` AS `ID_Pedido`,
`Pedidos`.`ID_Cliente` AS `ID_Cliente_Pedidos`,
`Pedidos`.`ID_Prod` AS `ID_Prod`,
`Pedidos`.`Data_do_Pedido` AS `Data_do_Pedido`,
`Pedidos`.`Quantidade` AS `Quantidade`,
`Produto`.`ID_Prod` AS `ID_Prod_Produto`,
`Produto`.`Nome_do_Prod` AS `Nome_do_Prod`,
`Produto`.`Preço_Unitário` AS `Preço_Unitário`,
`Produto`.`Descrição` AS `Descrição`,
`Produto`.`Peso_Frete` AS `Peso_Frete`
FROM
(`Cliente` `Cliente`
INNER JOIN
`Pedidos` `Pedidos`
ON `Cliente`.`ID_Cliente` = `Pedidos`.`ID_Cliente`
)
INNER JOIN
`Produto` `Produto`
ON `Pedidos`.`ID_Produto` = `Produto`.`ID_Produto`
WHERE
(
`Cliente`.`Região` = 'RJ'
OR `Cliente`.`Região` = 'PR'
)
) END_QUERY
Página 63 de 966
Comandos
amostra\Trans_Abril.xls;defaultdir=C:\Users\lachlan_murray\Documents\ACL Data\Arquivos de
dados de amostra;driverid=1046;maxbuffersize=2048;pagetimeout=5)
SQL_QUERY(
SELECT
`Trans_Abr_`.`CARDNUM` AS `CARDNUM`,
`Trans_Abr_`.`AMOUNT` AS `AMOUNT`,
`Trans_Abr_`.`TRANS_DATE` AS `TRANS_DATE`,
`Trans_Abr_`.`CODES` AS `CODES`,
`Trans_Abr_`.`CUSTNO` AS `CUSTNO`,
`Trans_Abr_`.`DESCRIPTION` AS `DESCRIPTION`
FROM
`Trans_Abr$` `Trans_Abr_`
WHERE
(
`Trans_Abr_`.`TRANS_DATE` <= {ts '2003-04-15 00:00:00'}
)
) END_QUERY
Observações
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda
do Analytics.
Página 64 de 966
Comandos
Após aplicar hash aos valores do Analytics, você poderá compará-los com os valores com hash aplicado na
importação pelo comando ACCESSDATA.
Página 65 de 966
Comandos
Comando ACTIVATE
Adiciona definições de campos armazenadas em uma área de trabalho do Analytics ao conjunto existente
de definições de campos em um layout da tabela do Analytics.
Sintaxe
ACTIVATE <WORKSPACE> nome_da_área_de_trabalho <OK>
Parâmetros
Nome Descrição
Exemplos
Ativação de uma área de trabalho no projeto do Analytics
Ative a área de trabalho ComplexFormulas :
Página 66 de 966
Comandos
Observações
Como funciona?
O ACTIVATE disponibiliza as definições de campo de área de trabalho para a tabela ativa. Quando você
ativa uma área de trabalho, seus campos permanecem disponíveis para uso com a tabela ativa até que ela
seja fechada.
Página 67 de 966
Comandos
Comando AGE
Agrupa os registros em períodos de vencimento com base nos valores de um campo data ou datahora.
Conta os registros em cada período e subtotaliza os campos numéricos especificados em cada período.
Sintaxe
AGE <ON> campo_data <CUTOFF data_limite> <INTERVAL dias <;...n>> <SUPPRESS>
<SUBTOTAL campo_numérico <...n> |SUBTOTAL ALL> <IF teste> <WHILE teste> <FIRST inter-
valo|NEXT intervalo> <TO {SCREEN|nome_arquivo|GRAPH|PRINT}> <KEY campo_quebra>
<HEADER texto_cabeçalho> <FOOTER texto_rodapé> <APPEND> <LOCAL> <STATISTICS>
Parâmetros
Nome Descrição
ON campo_data O nome do campo de data ou datahora ou a expressão para ordenação por período.
Embora você possa estipular o vencimento em um campo datahora, apenas a parte da
data referente aos valores de datahora será levada em consideração. A parte referente
à hora é ignorada. Você não pode estipular o vencimento apenas em dados de hora.
INTERVAL dias <;...n> Os intervalos de data (ou seja, o número de dias) a utilizar no cálculo dos períodos de
vencimento.
opcional
dias representa o início de cada período de vencimento contado retroativamente a par-
tir da data_limite:
o o primeiro valor de dias identifica o início do primeiro período de vencimento
o um primeiro valor de dias igual a "0" especifica que o primeiro período de ven-
cimento deve começar na data_limite especificada
o o último valor de dias identifica o fim do último período de vencimento
Você deve especificar os intervalos como cadeia sem aspas com valores separados
por ponto e vírgula:
INTERVAL
0,90,180,270,365
Os períodos de vencimento padrão são 0; 30; 60; 90; 120 e 10.000 dias. Um intervalo
Página 68 de 966
Comandos
Nome Descrição
de 10.000 dias é utilizado para separar os registros com datas provavelmente invá-
lidas.
Caso necessário, os intervalos de datas podem ser personalizados para refletir outros
relatórios internos periodizados.
SUBTOTAL campo_numé- Um ou mais campos numéricos ou expressões a serem subtotalizadas para cada
rico <...n> | SUBTOTAL grupo.
ALL
Vários campos devem ser separados por espaço. Especifique ALL para subtotalizar
opcional todos os campos numéricos da tabela.
IF teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado apenas nos registros que atendem à condição.
opcional
Nota
O parâmetro IF é avaliado apenas em relação aos registros restantes
em uma tabela depois da aplicação dos parâmetros de escopo (WHILE,
FIRST, NEXT).
WHILE teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado até que a condição seja avaliada como falsa ou o fim da tabela
opcional
seja alcançado.
Nota
Se você usar WHILE juntamente com FIRST ou NEXT, o processamento
de registros será interrompido assim que um limite for alcançado.
Página 69 de 966
Comandos
Nome Descrição
KEY campo_quebra O campo ou expressão que agrupa cálculos de subtotal. Um subtotal é calculado cada
vez que o valor de campo_quebra muda.
opcional
campo_quebra deve ser um campo ou expressão de caracteres. Apenas um campo
pode ser especificado, mas é possível usar uma expressão que contém mais que um
campo.
HEADER texto_cabeçalho O texto a ser inserido na parte superior de cada página de um relatório.
opcional texto_cabeçalho deve ser especificado como uma cadeia entre aspas. O valor substitui
a variável de sistema HEADER do Analytics.
FOOTER texto_rodapé O texto a ser inserido na parte inferior de cada página de um relatório.
opcional texto_rodapé deve ser especificado como uma cadeia entre aspas. O valor substitui a
variável de sistema FOOTER do Analytics.
STATISTICS Nota
opcional Somente pode ser usado se SUBTOTAL também for especificado.
Calcula valores médios, mínimos e máximos para todos os campos de SUBTOTAL.
Exemplos
Vencimentos de faturas com subtotal de valores
Você quer calcular os vencimentos de uma tabela de contas a receber com base no campo Data_Fatura
Página 70 de 966
Comandos
OPEN Ar
AGE ON Data_Fatura CUTOFF 20141231 INTERVAL 0;30;60;90;120;10000 SUBTOTAL Valor_
Fatura TO SCREEN
Observações
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda do
Analytics.
Períodos de vencimento
O comando AGE agrupa os registros em períodos de vencimento com base nos valores de um campo data
ou datahora. Os resultados de saída contêm um único registro para cada período contendo a contagem dos
registros da tabela de origem que pertencem ao período.
Medição de intervalo
Períodos de vencimento são baseados em intervalos de datas (isto é, números de dias) contados para trás
na linha do tempo, a partir da data do sistema ou a partir da data de corte que você especificar, como uma
data final do período fiscal.
Períodos futuros
É possível criar períodos de vencimento mais recentes que a data limite especificando valores negativos
como intervalos de datas. Por exemplo, o comando a seguir cria períodos de vencimento antes e depois da
data limite:
INTERVAL -60;-30;0;30;60;90
Essa abordagem cria um perfil de dados de todos os registros em uma tabela usando pontos no tempo dife-
rentes.
Página 71 de 966
Comandos
Página 72 de 966
Comandos
Comando APPEND
Combina registros de duas ou mais tabelas do Analytics anexando-os em uma nova tabela do Analytics.
Sintaxe
APPEND tabela_1; tabela_2; <...n> TO nome_tabela <COMMONFIELDS> <OPEN> <ASCHAR>
<ALLCHAR>
Parâmetros
Nome Descrição
COMMONFIELDS Somente os campos comuns a todas as tabelas sendo anexadas são incluídos na tabela
de saída.
opcional
Se você omitir COMMONFIELDS, todos os campos de todas as tabelas serão incluídos
na tabela de saída. Valores em branco são exibidos na tabela de saída quando não exis-
tir nenhum campo nas tabelas de origem.
Página 73 de 966
Comandos
Nome Descrição
Dica
Para ver diagramas e capturas de tela ilustrando as duas opções, con-
sulte Anexando tabelas.
Nota
O comando APPEND não é compatível com a anexação de campos cal-
culados. Para obter mais informações, consulte "Campos calculados não
são compatíveis" Na página 78.
OPEN Abre a tabela criada pelo comando após a execução do comando. Válido apenas se o
comando criar uma tabela de saída.
opcional
ASCHAR Harmoniza campos com nomes idênticos, mas categorias de dados diferentes, con-
vertendo campos não caractere para a categoria de dados de caractere.
opcional
Por exemplo, você anexa duas tabelas em que o campo ID_Funcionário é definido como
dados de caractere em uma tabela e dados numéricos na outra tabela. O campo numé-
rico ID_Funcionário é convertido em dados de caractere e os dois campos são anexados
sem causar erro.
ASCHAR é ignorado se ALLCHAR também é especificado.
ALLCHAR Converte todos os campos não caractere para a categoria de dados de caractere em
todas as tabelas sendo anexadas.
opcional
Essa conversão global para dados de caractere garante que todos os campos com
nomes idênticos serão anexados sem causar erro.
Nota
Após a anexação, você pode alterar a categoria de dados de todo um
campo anexado, caso necessário para os dados contidos no campo.
Página 74 de 966
Comandos
Exemplos
Anexar três tabelas de transações mensais
O exemplo a seguir anexa três tabelas de transações mensais e gera uma tabela de transações trimestrais
que inclui todos os campos das três tabelas de origem:
O segundo exemplo converte campos não caractere para a categoria de dados de caractere, inde-
pendentemente de a conversão ser necessária para a harmonização ou não:
Observações
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda do
Analytics.
Página 75 de 966
Comandos
Como funciona?
O comando APPEND combina registros de duas ou mais tabelas anexando-os e criando uma nova
tabela. Anexar significa adicionar um grupo de registros na parte inferior de outro grupo de registros.
Campos da tabela de origem com nomes físicos idênticos e categorias de dados idênticas são dire-
tamente anexados uns aos outros.
Campos com nomes físicos únicos em todas as tabelas de origem são adicionados à tabela de saída, mas
não são diretamente anexados a nenhum outro campo.
Dica
Se quiser anexar diretamente campos com nomes inconsistentes, padronize os nomes
físicos dos campos nos layouts das respectivas tabelas antes de anexar. (Supondo que
os campos pertencem à mesma categoria de dados ou que você usa ASCHAR ou
ALLCHAR para harmonizar a categoria de dados dos campos.)
Página 76 de 966
Comandos
l uso idêntico do indicador de fuso horário, usado ou não usado, por todos os campos a serem ane-
xados
Se dois campos de datahora tiverem nome idêntico, mas não atenderem a uma das outras condições, uma
mensagem de erro é exibida e o comando APPEND não é executado.
A mensagem de erro contém todas as condições de falha no conjunto de tabelas especificado por
APPEND. A mensagem é salva no log de comando.
Nota
Você pode harmonizar campos datahora diferentes convertendo-os para a categoria de
dados de caractere para depois anexá-los. Essa abordagem permite combinar os dados
em uma única tabela. No entanto, dependendo da natureza dos dados de origem, pode
não ser possível converter os dados combinados em dados datahora.
Harmonização automática
Em algumas situações, o comando APPEND harmoniza automaticamente os campos para anexá-los:
Categorias de
dados de campos Harmonização executada
Numérico o Campos de comprimentos diferentes são harmonizados. Os campos são convertidos para o
tipo de dados do ACL.
o Números diferentes de casas decimais definidas são harmonizados. As casas decimais são
padronizadas como o maior número de casas, com zeros à direita adicionados aos valores
numéricos, se necessário. Os campos são convertidos para o tipo de dados do ACL.
o Os diferentes tipos de dados numéricos como impressão, flutuante, EBCDIC e micro são
harmonizados mediante a conversão dos campos para o tipo de dados do ACL.
Datahora o Formatos diferentes de data, datahora ou hora nos dados de origem são harmonizados con-
vertendo os campos para os formatos padrão do Analytics:
l AAAAMMDD
l AAAAMMDD hh:mm:ss
l hh:mm:ss
Página 77 de 966
Comandos
A harmonização de campos especificada pelo usuário para campos com nomes idên-
ticos, mas categorias de dados diferentes, é explicada acima. Para obter mais infor-
mações, consulte "ASCHAR" Na página 74 e "ALLCHAR" Na página 74.
Comprimento de registro
Se incluir todos os campos de todas as tabelas de origem ao anexar, o comprimento de registro na tabela
de saída poderá ser maior que o registro mais longo nas tabelas de origem.
Uma mensagem de erro é exibida se o comprimento de registro de saída ultrapassar o máximo de 32 KB
do Analytics.
Configuração decimal
O comando APPEND usa o número de casas decimais definido na configuração Dec na definição de
campo no layout da tabela.
Página 78 de 966
Comandos
Nota
A configuração Dec pode não ser a mesma que o número real de casas decimais nos
dados de origem. Casas decimais que ultrapassem a configuração Dec são não definidas
e arredondadas nos cálculos.
Ordenação
Qualquer ordem de classificação existente nas tabelas de origem é mantida separadamente nos res-
pectivos conjuntos de registros na tabela de saída.
Mesmo se todos os registros em todas as tabelas de origem forem ordenados, a tabela de saída é con-
siderada não ordenada, pois os registros de origem são anexados como grupos, sem considerar nenhuma
ordem de classificação existente nas tabelas de origem.
Por exemplo, se você anexar tabelas mensalmente ou trimestralmente para criar uma tabela anual, toda a
ordenação interna dos dados mensais ou trimestrais é mantida. Se necessário, é possível ordenar a tabela
de saída depois de realizar a operação de anexação.
Tabela Campos
Página 79 de 966
Comandos
A primeira tabela especificada no comando APPEND dita a ordem dos campos na tabela de saída. Por-
tanto, no exemplo acima, a ordem na tabela de saída é:
l Sobrenome | Nome | Nome_do_meio
Tabela Campos
Página 80 de 966
Comandos
Comando ASSIGN
Cria uma variável e atribui a ela um valor.
Sintaxe
ASSIGN nome_variável = valor <IF teste>
Dica
Você pode omitir a palavra-chave ASSIGN porque o Analytics interpreta automaticamente
a seguinte sintaxe como uma operação de atribuição:
nome_variável = valor
Parâmetros
Nome Descrição
nome_variável O nome da variável para a qual será atribuído o valor. A variável será criada, caso ela
não exista. Se a variável existir, ela será atualizada com o novo valor.
Não utilize caracteres não-ingleses, como "é", no nome das variáveis. Nomes variáveis
que contenham caracteres não-ingleses farão com que o script falhe.
Nota
Os nomes de variável são limitados a 31 caracteres alfanuméricos. O
nome pode incluir o caractere de sublinhado ( _ ) mas nenhum outro
caractere especial e nenhum espaço. O nome não pode começar com
um número.
valor O valor a ser atribuído para a variável. Se uma nova variável for criada, o tipo da variável
será baseado no tipo de dado em valor.
IF teste Uma expressão condicional que deve ser verdadeira para criar a variável ou atribuir o
valor à variável.
Opcional
Exemplos
Como atribuir um valor a uma variável
Atribua o valor do campo Valor no registro atual a uma variável denominada v_valor_atual. Como v_valor_
Página 81 de 966
Comandos
atual é uma variável, seu valor não muda a menos que seja explicitamente alterado por outro comando
ASSIGN:
Observações
Duração das variáveis
Variáveis com nomes que não forem precedidos de um sublinhado serão retidas apenas pela duração da
presente sessão do Analytics.
Se você quiser que uma variável seja salva permanentemente com um projeto do Analytics, acrescente
um sublinhado ao início do nome da variável:
Página 82 de 966
Comandos
Página 83 de 966
Comandos
Comando BENFORD
Conta o número de vezes que cada dígito (1 a 9) ou combinação de dígitos à esquerda ocorre em um
campo e compara a contagem real à contagem esperada. O resultado esperado é calculado usando a fór-
mula de Benford.
Sintaxe
BENFORD <ON> campo_numérico <LEADING n> <IF teste> <BOUNDS> <TO {SCREEN|nome_
tabela|GRAPH|PRINT}> <HEADER texto_cabeçalho> <FOOTER texto_rodapé> <WHILE teste>
<FIRST intervalo|NEXT intervalo> <APPEND> <OPEN> <LOCAL>
Parâmetros
Nome Descrição
IF teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado apenas nos registros que atendem à condição.
opcional
Nota
O parâmetro IF é avaliado apenas em relação aos registros restantes
em uma tabela depois da aplicação dos parâmetros de escopo (WHILE,
FIRST, NEXT).
BOUNDS Inclui os valores calculados dos limites superior e inferior que devem ser incluídos na
saída.
opcional
Se a contagem real de mais de um dígito ou combinação de dígitos nos resultados
exceder um dos limites, os dados poderão ter sido manipulados e devem ser inves-
tigados.
Página 84 de 966
Comandos
Nome Descrição
HEADER texto_cabeçalho O texto a ser inserido na parte superior de cada página de um relatório.
opcional texto_cabeçalho deve ser especificado como uma cadeia entre aspas. O valor substitui
a variável de sistema HEADER do Analytics.
FOOTER texto_rodapé O texto a ser inserido na parte inferior de cada página de um relatório.
opcional texto_rodapé deve ser especificado como uma cadeia entre aspas. O valor substitui a
variável de sistema FOOTER do Analytics.
WHILE teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado até que a condição seja avaliada como falsa ou o fim da tabela
opcional
seja alcançado.
Nota
Se você usar WHILE juntamente com FIRST ou NEXT, o processamento
de registros será interrompido assim que um limite for alcançado.
Página 85 de 966
Comandos
Nome Descrição
Nota
Você deve garantir que a estrutura da saída do comando e o arquivo
existente são idênticos:
l os mesmos campos
l a mesma ordem de campos
l os campos correspondentes têm o mesmo comprimento
l os campos correspondentes têm o mesmo tipo de dados
O Analytics anexa a saída a um arquivo existente, seja qual for sua
estrutura. Se a estrutura da saída e do arquivo existente não cor-
responderem, o resultado poderá ser dados misturados, ausentes ou
incorretos.
OPEN Abre a tabela criada pelo comando após a execução do comando. Válido apenas se o
comando criar uma tabela de saída.
opcional
Exemplos
Enviar resultados para gráficos
Execute o comando BENFORD para o campo Valor e envia os resultados para um gráfico:
Observações
Quais dados posso testar usando a análise de Benford?
Use a análise de Benford apenas para testar dados numéricos que consistem em "números que ocorrem
naturalmente" como valores contábeis, valores de transações, despesas ou números de endereços. A
análise de Benford não é adequada a dados numéricos restritos de qualquer forma.
Siga as diretrizes a seguir para identificar dados numéricos adequados à análise de Benford:
l Tamanho do conjunto de dados: O conjunto de dados deve ser grande o suficiente para oferecer
suporte a uma distribuição válida. A análise de Benford pode não fornecer resultados confiáveis
para menos de 500 registros.
Página 86 de 966
Comandos
l Requisito de dígito à esquerda: É necessário que todos os números de 1 a 9 possam ocorrer como
dígito à esquerda.
l Requisito de combinação de dígito à esquerda: É necessário que todos os números de 0 a 9 pos-
sam ocorrer como o segundo dígito à esquerda e como qualquer dígito sendo analisado.
l Dados restritos: Dados numéricos atribuídos ou gerados de acordo com um padrão pré-ordenado
não são adequados para a análise de Benford. Por exemplo, não utilize a análise de Benford para
analisar:
l números sequenciais de cheques ou faturas
l qualquer esquema de numeração com um intervalo que evita que certos números sejam exibidos
l Números randômicos: Números gerados por um gerador de números randômicos não são ade-
quados para a análise de Benford.
Página 87 de 966
Comandos
Comando CALCULATE
Calcula o valor de uma ou mais expressões.
Sintaxe
CALCULATE expressão <AS rótulo_resultado> <,...n>
Parâmetros
Nome Descrição
Exemplos
Realizar um cálculo simples
Use CALCULATE para multiplicar 4,70 por 18,50 e retornar o resultado 86,95:
Página 88 de 966
Comandos
Observações
Como funciona?
CALCULATE oferece a funcionalidade de uma calculadora combinada com o acesso a funções, variáveis e
dados do registro do Analytics selecionado no momento.
Saída do comando
Dependendo de onde CALCULATE é executado, os resultados são enviados a diferentes locais:
l Na linha de comando: o resultado é exibido na tela
l Em um script: o resultado é registrado no log
O valor rótulo_resultado não é uma variável que você pode usar em um script. Ele é usado somente para
identificar o cálculo na tela ou no log.
CALCULATE 365/52/7
Retorna 1,0027:
CALCULATE 365,0000/52/7
Página 89 de 966
Comandos
Comando CLASSIFY
Agrupa os registros com base em valores idênticos de um campo de caracteres ou numérico. Conta os
registros em cada grupo e subtotaliza os campos numéricos especificados em cada grupo.
Sintaxe
CLASSIFY <ON> campo_chave <SUBTOTAL campo_numérico <...n> |SUBTOTAL ALL>
<INTERVALS número> <SUPPRESS> <TO {SCREEN|nome_tabela|GRAPH|PRINT}> <IF teste>
<WHILE teste> <FIRST intervalo|NEXT intervalo> <HEADER texto_cabeçalho> <FOOTER texto_
rodapé> <KEY campo_quebra> <OPEN> <APPEND> <LOCAL> <STATISTICS>
Parâmetros
Nome Descrição
SUBTOTAL campo_numé- Um ou mais campos numéricos ou expressões a serem subtotalizadas para cada
rico <...n> | SUBTOTAL grupo.
ALL
Vários campos devem ser separados por espaço. Especifique ALL para subtotalizar
opcional todos os campos numéricos da tabela.
Página 90 de 966
Comandos
Nome Descrição
SUPPRESS Nota
opcional Somente pode ser usado se INTERVALS também for especificado.
SUPPRESS não está disponível na interface do usuário do Analytics e
somente pode ser usado como parte da sintaxe do ACLScript em um
script ou na linha de comando.
Exclui conjuntos de valores idênticos maiores que o máximo especificado pelo parâ-
metro INTERVALS da saída do comando.
IF teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado apenas nos registros que atendem à condição.
opcional
Nota
O parâmetro IF é avaliado apenas em relação aos registros restantes
em uma tabela depois da aplicação dos parâmetros de escopo (WHILE,
FIRST, NEXT).
WHILE teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado até que a condição seja avaliada como falsa ou o fim da tabela
opcional
seja alcançado.
Nota
Se você usar WHILE juntamente com FIRST ou NEXT, o processamento
de registros será interrompido assim que um limite for alcançado.
Página 91 de 966
Comandos
Nome Descrição
HEADER texto_cabeçalho O texto a ser inserido na parte superior de cada página de um relatório.
opcional texto_cabeçalho deve ser especificado como uma cadeia entre aspas. O valor substitui
a variável de sistema HEADER do Analytics.
FOOTER texto_rodapé O texto a ser inserido na parte inferior de cada página de um relatório.
opcional texto_rodapé deve ser especificado como uma cadeia entre aspas. O valor substitui a
variável de sistema FOOTER do Analytics.
KEY campo_quebra O campo ou expressão que agrupa cálculos de subtotal. Um subtotal é calculado cada
vez que o valor de campo_quebra muda.
opcional
campo_quebra deve ser um campo ou expressão de caracteres. Apenas um campo
pode ser especificado, mas é possível usar uma expressão que contém mais que um
campo.
OPEN Abre a tabela criada pelo comando após a execução do comando. Válido apenas se o
comando criar uma tabela de saída.
opcional
STATISTICS Nota
opcional Somente pode ser usado se SUBTOTAL também for especificado.
Calcula valores médios, mínimos e máximos para todos os campos de SUBTOTAL.
Página 92 de 966
Comandos
Exemplos
Valor total de transações por cliente
Você quer classificar uma tabela de contas a receber com base no campo Numero_Cliente e calcular o
subtotal do campo Valor_Trans . Os resultados da saída são agrupados por cliente e incluem o valor total
de transações para cada cliente:
OPEN Ar
CLASSIFY ON Numero_Cliente SUBTOTAL Valor_Trans TO "Total_cliente.FIL"
OPEN Ar
CLASSIFY ON Numero_Cliente SUBTOTAL Valor_Trans TO "Estatisticas_cliente.FIL" STATISTICS
OPEN Trans_Cp
CLASSIFY ON Valor_Fatura TO "Valores_fatura_agrupados.FIL" OPEN
SET FILTER TO COUNT > 1
Observações
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda do
Analytics.
Como funciona?
O CLASSIFY agrupa registros que têm o mesmo valor em um campo de caracteres ou numérico.
Página 93 de 966
Comandos
A saída consiste em um único registro para cada grupo, com uma contagem do número de registros na
tabela de origem que pertencem ao grupo.
Ordenar e CLASSIFY
CLASSIFY pode processar dados ordenados ou não ordenados. A saída é ordenada automaticamente
em ordem crescente.
Descrição de campo gerado Nome do campo na tabela de Título alternativo de coluna (nome de exi-
automaticamente saída bição) na tabela de saída
Campo de subtotal nome do campo subtotalizado na Total + título alternativo da coluna sub-
tabela de origem totalizada na tabela de origem
Campo de média a_ nome do campo subtotalizado Média + título alternativo da coluna sub-
na tabela de origem totalizada na tabela de origem
Campo de mínimo m_ nome do campo subtotalizado Mínimo + título alternativo da coluna sub-
na tabela de origem totalizada na tabela de origem
Campo de máximo x_ nome do campo subtotalizado Máximo + título alternativo da coluna sub-
na tabela de origem totalizada na tabela de origem
Página 94 de 966
Comandos
Comando CLOSE
Fecha uma tabela, um arquivo de índice ou um arquivo de log do Analytics, ou encerra uma sessão do Gra-
vador de Script.
Sintaxe
CLOSE < nome_tabela|PRIMARY|SECONDARY|INDEX|LOG|LEARN>
Parâmetros
Nome Descrição
Exemplos
Fechar uma tabela por nome
Você quer fechar uma tabela denominada Estoque:
CLOSE Estoque
Página 95 de 966
Comandos
CLOSE SECONDARY
Observações
Quando usar CLOSE
Normalmente, não é necessário fechar as tabelas do Analytics. A tabela ativa do Analytics fecha auto-
maticamente quando você abre outra tabela. A tabela principal também fecha automaticamente antes da
execução dos comandos OPEN ou QUIT.
Não é possível usar CLOSE para fechar um projeto do Analytics. Em vez disso, use QUIT.
Página 96 de 966
Comandos
Comando CLUSTER
Agrupa registros em clusters com base nos valores similares de um ou mais campos numéricos. Os clus-
ters podem ser unidimensionais ou multidimensionais.
Sintaxe
CLUSTER ON campo_chave <...n> KVALUE número_de_clusters ITERATIONS número_de_ite-
rações INITIALIZATIONS número_de_inicializações <SEED valor_de_origem> <OTHER campo <
...n>> TO nome_tabela <IF teste> <WHILE teste> <FIRST intervalo|NEXT intervalo> OPEN {sem_
palavra_chave|NOCENTER|NOSCALE}
Parâmetros
Nome Descrição
ON campo_chave <...n> Um ou mais campos numéricos a serem clusterizados. Vários campos devem ser sepa-
rados por espaço.
ITERATIONS número_de_ O número máximo de vezes que o cálculo do cluster é executado novamente.
iterações
INITIALIZATIONS número_ O número de vezes para gerar um conjunto inicial de centróides aleatórios.
de_inicializações
SEED valor_de_origem O valor de origem usado para inicializar o gerador de números aleatórios no Analytics.
opcional Se você omitir SEED, o Analytics selecionará aleatoriamente o valor de origem.
Página 97 de 966
Comandos
Nome Descrição
IF teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado apenas nos registros que atendem à condição.
opcional
Nota
O parâmetro IF é avaliado apenas em relação aos registros restantes em
uma tabela depois da aplicação dos parâmetros de escopo (WHILE,
FIRST, NEXT).
WHILE teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado até que a condição seja avaliada como falsa ou o fim da tabela
opcional
seja alcançado.
Nota
Se você usar WHILE juntamente com FIRST ou NEXT, o processamento
de registros será interrompido assim que um limite for alcançado.
OPEN Abre a tabela criada pelo comando após a execução do comando. Válido apenas se o
comando criar uma tabela de saída.
opcional
Página 98 de 966
Comandos
Exemplos
Clusterização em clusters por valor da fatura
Além de estratificar uma tabela de contas a receber com base no campo Valor_Fatura, você também
decide agrupar em clusters com base no mesmo campo.
l A estratificação agrupa os valores em estratos com limites numéricos predefinidos como, por exem-
plo, intervalos de US$ 1.000.
l O agrupamento em clusters descobre qualquer agrupamento orgânico de valores existente nos
dados, sem necessidade de definir previamente os limites numéricos.
Open Ar
CLUSTER ON Valor_Fatura KVALUE 8 ITERATIONS 30 INITIALIZATIONS 10 OTHER Tipo ref sem
data venc TO "Faturas_agrupadas_em_cluster" NOSCALE
Como forma rápida de descobrir quantos registros estão contidos em cada cluster de saída, você classifica
a tabela de saída Faturas_agrupadas_em_cluster pelo campo Cluster.
OPEN Faturas_agrupadas_em_cluster
CLASSIFY ON Cluster TO SCREEN
Observações
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda do
Analytics.
Página 99 de 966
Comandos
Comando COMMENT
Adiciona uma nota explicativa a um script sem afetar o processamento.
Sintaxe
Comentários de uma linha
COMMENT texto_do_comentário
Nota
Não use o caractere circunflexo ^ para iniciar linhas de texto de comentário. O circunflexo
tem um uso especial no arquivo de projeto .acl e o texto do comentário não será salvo se
a linha começar com um circunflexo.
Parâmetros
Nome Descrição
Exemplos
Comentários de uma linha
Use comentários de uma única linha antes de comando para adicionar documentação para os usuários que
manterão o script no futuro:
COMMENT
Esta análise identifica vários registros tendo em comum
IDs de originadores de transação (como ID do fornecedor ou ID do vendedor)
, onde os valores de data da transação são iguais ou estão a um dia um do outro.
Essa análise pode ser utilizada para faturas, pedidos de compra,
requisições e transações de cartão de crédito corporativo divididos.
END
Observações
Quando usar COMMENT
Use COMMENT para incluir informações sobre o propósito de um script, a lógica utilizada, e outras infor-
mações como as entradas necessárias para o script e o propósito de cada variável definida.
Os comentários em um script são registrados no log de comandos do Analytics cada vez que o script é exe-
cutado.
Comando COUNT
Conta o número total de registros na exibição atual ou apenas os registros que cumprem a condição espe-
cificada.
Sintaxe
COUNT <IF teste> <WHILE teste> <FIRST intervalo|NEXT intervalo>
Parâmetros
Nome Descrição
IF teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado apenas nos registros que atendem à condição.
opcional
Nota
O parâmetro IF é avaliado apenas em relação aos registros restantes
em uma tabela depois da aplicação dos parâmetros de escopo (WHILE,
FIRST, NEXT).
WHILE teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado até que a condição seja avaliada como falsa ou o fim da tabela
opcional
seja alcançado.
Nota
Se você usar WHILE juntamente com FIRST ou NEXT, o processamento
de registros será interrompido assim que um limite for alcançado.
Exemplos
Armazenar COUNT1
O resultado do comando COUNT é armazenado na variável de saída COUNT1. Você pode recuperar e
armazenar esse valor em uma variável definida pelo usuário.
O comando COUNT sobrescreve a variável COUNT1 a cada vez que é executado. Portanto, o valor precisa
ser armazenado em uma variável definida pelo usuário antes da execução do comando pela segunda vez
após a aplicação do filtro à tabela:
OPEN EndereçoCliente
COUNT
TotalReg = COUNT1
SET FILTER TO DataModificação > '20100101'
COUNT
TotalRegFiltrados = COUNT1
Observações
Quando usar COUNT
Use o comando COUNT para contar o número de registros em uma tabela do Analytics ou para contar o
número de registros que cumprem uma determinada condição de teste. Se nenhum teste for especificado,
o número total de registros na tabela do Analytics será exibido.
Sintaxe
CREATE LAYOUT nome_do_layout WIDTH caracteres <RECORD 0|RECORD 1>
Parâmetros
Nome Descrição
RECORD 0 | RECORD 1 o Se você especificar RECORD 0, ou omitir esse parâmetro, o layout da tabela será cri-
ado sem registros ou arquivo de dados de origem.
opcional o Se você especificar RECORD 1, ou omitir esse parâmetro, o layout da tabela será cri-
ado com um único registro vazio e um arquivo de dados de origem denominado
nome_do_layout.fil.
Exemplos
Criar um layout de tabela vazio sem nenhum registro
Crie um layout da tabela vazio com um comprimento de registro de 100 caracteres:
Observações
O layout da tabela vazio é criado com um único campo de caracteres denominado Field_1. O com-
primento do campo é igual ao comprimento do registro especificado com WIDTH.
Nota
Esse comando não é compatível para uso em análises do Analytics executadas no Ser-
vidor AX.
Comando CROSSTAB
Agrupa registros com base em combinações idênticas de valores em dois ou mais campos de caracteres
ou numéricos e exibe os grupos resultantes em uma grade de linhas e colunas. Conta os registros em cada
grupo e subtotaliza os campos numéricos especificados em cada grupo.
Sintaxe
CROSSTAB <ON> campo_linha <...n> COLUMNS campo_coluna <SUBTOTAL campo_numérico
<...n>|SUBTOTAL ALL> TO {SCREEN|nome_tabela|nome_arquivo|GRAPH|PRINT} <IF teste>
<WHILE teste> <FIRST intervalo|NEXT intervalo> <APPEND> <COUNT> <OPEN> <LOCAL>
<HEADER texto_cabeçalho> <FOOTER texto_rodapé>
Parâmetros
Nome Descrição
ON campo_linha <...n> O campo ou expressão a ser usado como linhas na matriz resultante de linhas e colu-
nas. Um ou mais campos ou expressões podem ser especificados como base das
linhas.
COLUMNS campo_coluna O campo ou expressão a ser usado como colunas na matriz resultante de linhas e colu-
nas. Apenas uma expressão ou campo pode ser especificado para as colunas.
SUBTOTAL campo_numé- Um ou mais campos numéricos ou expressões a serem subtotalizadas para cada grupo.
rico <...n> | SUBTOTAL
Vários campos devem ser separados por espaço. Especifique ALL para subtotalizar
ALL
todos os campos numéricos da tabela.
opcional
Nome Descrição
Nota
Os nomes de tabela são limitados a 64 caracteres alfanuméricos, sem
contar a extensão .FIL. O nome pode incluir o caractere de sublinhado
( _ ) mas nenhum outro caractere especial e nenhum espaço. O nome
não pode começar com um número.
o nome_arquivo: salva os resultados em um arquivo
Especifique nome_arquivo como uma cadeia entre aspas com uma extensão de
arquivo apropriada. Por exemplo: TO "Saída.TXT"
Por padrão, o arquivo é salvo na pasta que contém o projeto do Analytics.
Use um caminho de arquivo absoluto ou relativo para salvar o arquivo em uma pasta
diferente já existente:
l TO "C:\Saída.TXT"
l TO "Resultados\Saída.TXT"
o GRAPH: exibe os resultados em um gráfico na área de exibição do Analytics
o PRINT: envia os resultados para a impressora padrão
IF teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado apenas nos registros que atendem à condição.
opcional
Nota
O parâmetro IF é avaliado apenas em relação aos registros restantes em
uma tabela depois da aplicação dos parâmetros de escopo (WHILE,
FIRST, NEXT).
WHILE teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado até que a condição seja avaliada como falsa ou o fim da tabela
opcional
seja alcançado.
Nota
Se você usar WHILE juntamente com FIRST ou NEXT, o processamento
de registros será interrompido assim que um limite for alcançado.
Nome Descrição
Nota
Você deve garantir que a estrutura da saída do comando e o arquivo exis-
tente são idênticos:
l os mesmos campos
l a mesma ordem de campos
l os campos correspondentes têm o mesmo comprimento
l os campos correspondentes têm o mesmo tipo de dados
O Analytics anexa a saída a um arquivo existente, seja qual for sua estru-
tura. Se a estrutura da saída e do arquivo existente não corresponderem,
o resultado poderá ser dados misturados, ausentes ou incorretos.
COUNT Inclui as contagens de registro como colunas. As contagens são úteis com o uso de
SUBTOTAL.
opcional
Se nenhum campo de subtotal for selecionado, as contagens serão incluídas auto-
maticamente.
OPEN Abre a tabela criada pelo comando após a execução do comando. Válido apenas se o
comando criar uma tabela de saída.
opcional
HEADER texto_cabeçalho O texto a ser inserido na parte superior de cada página de um relatório.
opcional texto_cabeçalho deve ser especificado como uma cadeia entre aspas. O valor substitui a
variável de sistema HEADER do Analytics.
FOOTER texto_rodapé O texto a ser inserido na parte inferior de cada página de um relatório.
opcional texto_rodapé deve ser especificado como uma cadeia entre aspas. O valor substitui a
variável de sistema FOOTER do Analytics.
Exemplos
Tabulação cruzada de uma tabela de contas a receber com SUBTOTAL
Você quer realizar uma tabulação cruzada de uma tabela de contas a receber com base nos campos
Número do cliente e Tipo da transação. Você também quer calcular o subtotal do campo Valor da tran-
sação.
A saída é agrupada por cliente e, dentro de cada cliente, por tipo de transação. A saída inclui o valor total de
transações para cada cliente para cada tipo de transação:
OPEN Ar
CROSSTAB ON Numero_Cliente COLUMNS Tipo_Trans SUBTOTAL Valor_Trans COUNT TO
SCREEN
OPEN Ar
CROSSTAB ON Total_Transação COLUMNS Tipo_Trans TO SCREEN
Observações
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda
do Analytics.
Como funciona?
O CROSSTAB agrupa registros que têm a mesma combinação de valores em dois ou mais campos de
caracteres ou numéricos.
A saída contém uma grade de linhas e colunas, semelhante a uma tabela dinâmica. A saída inclui uma
única intersecção linha/coluna para cada grupo, com uma contagem do número de registros na tabela de
origem que pertencem ao grupo.
Ordenar e CROSSTAB
O CROSSTAB pode processar dados ordenados ou não ordenados. O campo_linha e o campo_coluna
na saída são automaticamente classificados em ordem crescente.
Se mais de um campo_linha for especificado, os campos utilizarão uma classificação aninhada, come-
çando com o primeiro campo_linha especificado.
Comando CVSEVALUATE
Para a amostragem clássica de variáveis, oferece quatro métodos diferentes para projetar resultados da
análise de amostra para toda a população.
Sintaxe
CVSEVALUATE BOOKED campo_valor_contábil AUDITED campo_valor_auditado ETYPE
{MPU|DIFFERENCE|RATIO SEPARATE|RATIO COMBINED} STRATA valor_limite <;...n>
POPULATION número_estratos;valor_contábil_estrato <;...n> CONFIDENCE nível_de_con-
fiabilidade CUTOFF valor;número_registros_estrato_certeza;valor_contábil_estrato_certeza
ERRORLIMIT número PLIMIT {BOTH|UPPER|LOWER} <TO {SCREEN|nome_arquivo}>
Parâmetros
Nota
Se você estiver usando os resultados de saída dos comandos CVSPREPARE e
CVSSAMPLE como entrada para o comando CVSEVALUATE, vários valores de parâ-
metro já estarão sendo especificados e armazenados em variáveis. Para obter mais infor-
mações, consulte "Comando CVSPREPARE" Na página 115 e "Comando
CVSSAMPLE" Na página 119.
Não inclua separadores de milhares ou símbolos de porcentagem ao especificar valores.
Nome Descrição
Nome Descrição
CONFIDENCE nível_de_ O nível de confiabilidade usado durante o estágio de preparação da amostra clássica de
confiabilidade variáveis.
CUTOFF valor; número_ o valor: o valor de limite do estrato de certeza usado durante a etapa de preparação e
registros_estrato_ amostragem da amostra clássica de variáveis
certeza, valor_contábil_ o número_registros_estrato_certeza: o número de registros no estrato de certeza
estrato_certeza o valor_contábil_estrato_certeza: o valor contábil total dos registros no estrato de cer-
teza
Exemplos
Projetar erros encontrados na amostra de dados para toda a população de
registros
Você concluiu os testes dos dados amostrados e registrou as afirmações incorretas encontradas. Agora,
você pode projetar os erros encontrados para toda a população.
O exemplo abaixo usa o tipo de estimativa por diferença para projetar os resultados da análise da amostra
para toda a população:
Observações
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda do
Analytics.
Diretrizes
As diretrizes abaixo ajudam você a selecionar um tipo de estimativa. Você pode repetir a etapa de ava-
liação com diferentes tipos de estimativa e comparar os resultados de cada um.
Comando CVSPREPARE
Estratifica uma população e calcula um tamanho de amostra estatisticamente válido para cada estrato na
amostragem clássica de variáveis.
Sintaxe
CVSPREPARE ON campo_valor_contábil NUMSTRATA número MINIMUM tamanho_mínimo_amos-
tra_estrato PRECISION valor CONFIDENCE nível_de_confiabilidade <CUTOFF valor> NCELLS
número PLIMIT {BOTH|UPPER|LOWER} ERRORLIMIT número <MINSAMPSIZE tamanho_
mínimo_amostra> TO {SCREEN|nome_arquivo}
Parâmetros
Nota
Não inclua separadores de milhares ou símbolos de porcentagem ao especificar valores.
Nome Descrição
ON campo_valor_contábil O campo numérico de valor contábil a ser utilizado como base para preparar a amostra
clássica de variáveis.
NUMSTRATA número O número de estratos a ser usado para estratificar numericamente o campo_valor_con-
tábil.
O número mínimo de estratos é 1 e o máximo é 256.
Se você especificar NUMSTRATA 1 e não especificar um CUTOFF, a população será
desestratificada antes da obtenção de uma amostra.
Nota
O número de estratos não pode exceder 50% do número de células espe-
cificado para NCELLS.
PRECISION valor O valor monetário que é a diferença entre a afirmação incorreta permitida e a afirmação
incorreta esperada na conta.
o Afirmação incorreta permitida: o valor total máximo de afirmação incorreta que pode
ocorrer no campo de amostra sem que a afirmação incorreta seja considerada rele-
vante
o Afirmação incorreta esperada: o valor total de afirmações incorretas esperado no
campo de amostra
Nome Descrição
A precisão estabelece o intervalo de aceitação para que uma conta seja considerada
declarada corretamente.
A redução da precisão diminui o intervalo de aceitação (a margem de erro), o que exige
um maior tamanho da amostra.
CONFIDENCE nível_de_ O nível de confiabilidade desejado de que a amostra resultante será representativa de
confiabilidade toda a população.
Por exemplo, 95 significa que você quer ter confiança de que 95% das vezes a amostra
será realmente representativa. A confiabilidade é o complemento do "risco de amos-
tragem". Um nível de confiabilidade de 95% é o mesmo que um risco de amostragem de
5%.
o Se PLIMIT for BOTH, o nível mínimo de confiabilidade será 10% e o máximo 99,5%.
o Se PLIMIT for UPPER ou LOWER, o nível mínimo de confiabilidade será 55% e o
máximo 99,5%.
Nome Descrição
S_TOP O valor limite do estrato de certeza especificado pelo usuário. Se nenhum valor for espe-
cificado, será o limite superior do estrato superior calculado pelo comando.
SBOUNDARY Todos os limites superiores de estratos calculados pelo comando e S_TOP. Não arma-
zena SBOTTOM.
SPOPULATION O número de registros e o valor monetário total em cada estrato. Exclui itens acima do
Nome Contém
Exemplos
Preparar uma amostra clássica de variáveis
Você decidiu usar amostragem clássica de variáveis para estimar o valor total de afirmações incorretas
monetárias em uma conta que contém faturas.
Antes de obter a amostra, você deve estratificar a população e calcular um tamanho de amostra esta-
tisticamente válido para cada estrato.
Você quer ter confiança de que, 95% das vezes, a amostra obtida pelo Analytics será representativa da
população como um todo.
Usando o seu nível de confiabilidade especificado, o exemplo abaixo estratifica uma tabela com base no
campo valor_fatura e calcula o tamanho da amostra para cada estrato e o estrato de certeza:
Observações
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda
do Analytics.
Comando CVSSAMPLE
Obtém uma amostra de registros usando o método de amostragem clássica de variáveis.
Sintaxe
CVSSAMPLE ON campo_valor_contábil NUMSTRATA número <SEED valor_de_origem> CUTOFF
valor STRATA valor_limite <,...n> SAMPLESIZE número <,...n> POPULATION número_
estratos,valor_estrato <,...n> TO nome_tabela
Parâmetros
Nota
Se você estiver usando os resultados de saída do comando CVSPREPARE como entrada
para o comando CVSSAMPLE, vários valores de parâmetro já estarão sendo espe-
cificados e armazenados em variáveis. Para obter mais informações, consulte "Comando
CVSPREPARE" Na página 115.
Não inclua separadores de milhares ou símbolos de porcentagem ao especificar valores.
Nome Descrição
ON campo_valor_contábil O campo numérico de valor contábil a ser utilizado como base para a amostra.
SEED valor_de_origem O valor de origem usado para inicializar o gerador de números aleatórios no Analytics.
opcional Se você omitir SEED, o Analytics selecionará aleatoriamente o valor de origem.
POPULATION número_ O número de registros em cada estrato e o valor total de cada estrato.
estratos; valor_estrato
<;...n>
Nome Descrição
S_TOPEV O valor limite do estrato de certeza especificado pelo usuário. Se nenhum valor for
especificado, será o limite superior do estrato superior calculado previamente pelo
comando CVSPREPARE.
Além disso, armazena o número de registros do estrato de certeza e eu valor monetário
total.
BOUNDARYEV Todos os limites inferiores de estratos preenchidos previamente pelo comando ou espe-
cificados pelo usuário. Não armazena S_TOPEV ou SBOTTOMEV.
SPOPULATION O número de registros e o valor monetário total em cada estrato. Exclui itens acima do
limite do estrato de certeza.
Exemplos
Obter uma amostra clássica de variáveis
Você vai usar amostragem clássica de variáveis para estimar o valor total de afirmações incorretas mone-
tárias em uma conta que contém faturas.
Após estratificar a população e calcular um tamanho de amostra estatisticamente válido para cada estrato,
você está pronto para obter a amostra.
O exemplo abaixo obtém uma amostra estratificada de registros de acordo com o campo valor_fatura e
grava os registros amostrados na tabela Amostra_faturas:
Observações
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda do
Analytics.
Sintaxe
DEFINE COLUMN nome_exibicao nome_campo <AS nome_exibicao> <POSITION n> <WIDTH
caracteres> <PIC formato> <SORT|SORT D> <KEY> <PAGE> <NODUPS> <NOZEROS> <LINE
n>
Parâmetros
Nome Descrição
AS nome_exibicao O nome de exibição (título alternativo da coluna) para o campo na exibição. Se você
quiser que o nome de exibição seja o mesmo que o nome do campo, não use AS.
opcional
Especifique nome_exibicao como uma cadeia entre aspas. Utilize um ponto e vírgula
(;) entre palavras se quiser uma quebra de linha no título da coluna.
Nome Descrição
Nota
Os caracteres especificados por WIDTH são caracteres de largura fixa.
A mesma quantidade de espaço é alocada a cada caractere, inde-
pendentemente da largura do caractere real.
Por padrão, as exibições do Analytics usam uma fonte de largura pro-
porcional que não corresponde ao espaçamento dos caracteres de lar-
gura fixa.
Se você quiser uma correspondência de um para um entre o valor de
WIDTH e os caracteres na exibição, poderá alterar a configuração
Fonte Proporcional na caixa de diálogo Opções para uma fonte de lar-
gura fixa, como Courier New.
KEY A coluna é designada como um campo de quebra nos relatórios. Os relatórios serão
subtotalizados e subdivididos quando o valor da coluna for alterado. As seguintes res-
opcional
trições se aplicam aos campos de quebra:
o deve ser um campo ou expressão de caracteres
o se um campo de quebra for definido na exibição, deverá ser a coluna mais à
esquerda
o a última coluna na exibição não pode ser um campo de quebra
o se você tiver mais de um campo de quebra, todas as colunas à esquerda de qual-
quer campo de quebra adicional também deverão ser campos de quebra
PAGE Insere uma quebra de página cada vez que o valor do campo de quebra muda.
opcional
Nome Descrição
LINE n O número de linhas na coluna. Se nenhum valor for especificado, a coluna adotará o
padrão de uma linha única. O valor de n deve estar entre 2 e 60.
opcional
Exemplos
Definição de uma exibição com seis colunas
Com a tabela AR aberta, você define uma exibição denominada Relatório_AR com seis colunas. As colu-
nas são exibidas na ordem de especificação:
OPEN Ar
DEFINE VIEW AR_Relatorio OK
DEFINE COLUMN AR_Relatorio Numero AS "Número do Cliente" WIDTH 7 KEY
DEFINE COLUMN AR_Relatorio Data AS "Data da Fatura" WIDTH 10
DEFINE COLUMN AR_Relatorio Vencto AS "Data de Vencimento" WIDTH 10
DEFINE COLUMN AR_Relatorio Referencia AS "Número de Referência" WIDTH 6
DEFINE COLUMN AR_Relatorio Tipo AS "Tipo de Transação" WIDTH 5
DEFINE COLUMN AR_Relatorio Qtde AS "Quantidade da Transação" WIDTH 12 PIC "-
9999999999.99"
Sintaxe
DEFINE FIELD nome_campo tipo_dados posição_inicial comprimento < decimais|formato_de_data>
<NDATETIME> <PIC formato> <AS nome_exibicao> <WIDTH caracteres> <SUPPRESS> < obser-
vação_do_campo>
Parâmetros
Nome Descrição
tipo_de_dados O tipo de dados a usar para interpretar os dados. Para obter uma lista de tipos de dados
compatíveis, consulte "Tipos de dados compatíveis" Na página 130.
Por exemplo, números de fatura podem ser armazenadas como valores numéricos na ori-
gem dos dados. Para tratar esses valores como cadeias em vez de números, você pode
definir o campo como dados de caracteres.
Nome Descrição
NDATETIME Valores de data, datahora ou hora armazenados em um campo numérico são tratados
como dados de datahora.
opcional
NDATETIME exige que você também especifique o formato de datahora da origem PIC
formato.
AS nome_exibicao O nome de exibição (título alternativo da coluna) para o campo na exibição. Se você qui-
ser que o nome de exibição seja o mesmo que o nome do campo, não use AS.
opcional
Especifique nome_exibicao como uma cadeia entre aspas. Utilize um ponto e vírgula (;)
entre palavras se quiser uma quebra de linha no título da coluna.
Nome Descrição
Exemplos
Definição de um campo de caracteres
Definição de um campo de caracteres denominado DescProd. O título da coluna na exibição é Descrição
do produto.
Para definir campos datahora que incluem dados de tempo, você deve usar PIC formato.
O exemplo abaixo define um campo datahora chamado carimbo_de_data_e_hora_do_email . Nos dados
de origem, o formato de datahora é AAAA/MM/DD hh:mm:ss-hh:mm.
l Começa em: byte 1
l Comprimento: 25 bytes
Para indicar com precisão quais números representam o dia, o mês e o ano, especifique o mesmo for-
mato de data do layout do registro compactado:
Observações
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda
do Analytics.
Caractere ASCII
CUSTOM
EBCDIC
NOTE
PCASCII
UNICODE
Numérico ACCPAC
ACL
BASIC
BINARY
FLOAT
HALFBYTE
IBMFLOAT
MICRO
NUMERIC
PACKED
UNISYS
UNSIGNED
VAXFLOAT
ZONED
Datahora DATETIME
Lógico LOGICAL
Sintaxe
Para definir um campo calculado:
Nota
A sintaxe de várias linhas deve ser estruturada exatamente como mostrado na sintaxe
genérica acima e nos exemplos abaixo.
Parâmetros
Nome Descrição
expressão Uma expressão válida do Analytics que define o valor do campo calculado.
IF teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado apenas nos registros que atendem à condição.
opcional
Nota
O parâmetro IF é avaliado apenas em relação aos registros restantes em
uma tabela depois da aplicação dos parâmetros de escopo (WHILE,
FIRST, NEXT).
STATIC O campo exibe o mesmo valor em cada linha da tabela até que um novo valor seja
encontrado.
opcional
Por exemplo, se houver um campo Sobrenome nos dados de origem, e:
o o primeiro registro exibe o valor "Smith"
o os cinco registros seguintes exibem linhas em branco
o o sétimo registro exibe o valor "Wong"
Neste caso, "Smith" será exibido em seis linhas consecutivas e "Wong" será exibido na
sétima linha.
AS nome_exibicao O nome de exibição (título alternativo da coluna) para o campo na exibição. Se você qui-
ser que o nome de exibição seja o mesmo que o nome do campo, não use AS.
opcional
Especifique nome_exibicao como uma cadeia entre aspas. Utilize um ponto e vírgula (;)
entre palavras se quiser uma quebra de linha no título da coluna.
Nome Descrição
Nome Descrição
Nota
A precisão decimal de todos os valores calculados é controlada pela pre-
cisão de valor_padrão. Por exemplo, se você especificar um valor padrão
de 0,00, todos os valores serão calculados com duas casas decimais e,
se necessário, arredondados. Para obter maior precisão, aumente o
número de casas decimais em valor_padrão.
Exemplos
Definição de um campo calculado
Defina um campo calculado chamado Valor que é o produto dos campos Custo e Quantidade:
Observações
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda
do Analytics.
Sintaxe
DEFINE RELATION campo_chave WITH nome_da_tabela_relacionada INDEX nome_do_índice
<AS nome_do_relacionamento>
Parâmetros
Nome Descrição
Exemplos
Relacionar duas tabelas
O exemplo abaixo relaciona a tabela aberta à tabela Cliente usando o campo do número do cliente (NumC-
liente) como o campo-chave:
OPEN Clientes
INDEX ON NumCliente TO Cliente_em_NumCliente
Open Ar
DEFINE RELATION NumCliente WITH Cliente INDEX Cliente_em_NumCliente
OPEN Comprovantes
INDEX ON número_comprovante TO "Comprovantes_por_número_comprovante"
OPEN Itens_comprovantes
DEFINE RELATION número_comprovante WITH Comprovantes INDEX Comprovantes_por_
número_comprovante
OPEN Funcionários
INDEX ON número_funcionário TO "Funcionários_por_número_funcionário"
OPEN Itens_comprovantes
DEFINE RELATION Comprovantes.criado_por WITH Funcionários INDEX Funcionários_por_
número_funcionário
Observações
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda
do Analytics.
Sintaxe
DEFINE REPORT nome_de_exibição
Parâmetros
Nome Descrição
Exemplos
Criação de uma nova exibição
Crie uma nova exibição denominada revisão_AR_quarto_trimestre:
Sintaxe
DEFINE TABLE DB {SOURCE perfil_banco_de_dados <PASSWORD num> <PASSWORD num>
| SERVER perfil_de_servidor <PASSWORD num>} <FORMAT nome_do_formato> SCHEMA
esquema <TITLED nome_tabela_acl> <PRIMARY|SECONDARY> {DBTABLE nometabela_bd
FIELDS {nomes_campos|ALL} <...n> <WHERE condição> <ORDER nomes_campos>
Parâmetros
SOURCE O perfil do banco de dados do Analytics a ser usado para acessar o mecanismo de banco de dados.
perfil_
Os perfis de bancos de dados contêm informações necessárias para se conectar ao mecanismo de
banco_
banco de dados, incluindo:
de_dados
o uma referência ao perfil de servidor associado
o o tipo de banco de dados
o o nome do banco de dados
o informações da conta do usuário
Nota
DEFINE TABLE DB somente permite conexão aos bancos de dados Microsoft SQL Ser-
ver, Oracle ou DB2.
A senha somente é necessária quando o perfil do banco de dados não contém senhas salvas. Use
PASSWORD duas vezes após a palavra-chave SOURCE. A primeira senha efetua o seu login no ser-
vidor e a segunda, no banco de dados.
FORMAT O nome de uma tabela ou arquivo de layout de tabela (.layout) do Analytics contendo o layout de tabela
nome_ a ser utilizado.
do_for-
mato
opcional
SCHEMA O esquema a ser conectado. O nome do esquema deve ser entre aspas.
esquema
PRIMARY Usar a tabela como tabela primária ou secundária em comandos multiarquivo. Se nenhuma opção for
| especificada, o valor padrão PRIMARY será aplicado.
SECOND-
ARY
opcional
DBTABLE A tabela do banco de dados que você deseja acessar. tabela_banco_de_dados deve ser uma cadeia
tabela_ entre aspas.
banco_
de_dados
Nota
Usando o Conector do AX, você pode acessar um número ilimitado de tabelas rela-
cionadas. No entanto, não recomendamos usar mais de cinco. O tempo de pro-
cessamento aumenta ao acessar várias tabelas.
WHERE Uma cláusula SQL WHERE que limita os dados aos registros que atendam à condição especificada.
condição
É preciso usar sintaxe SQL válida, inserida como uma cadeia entre aspas.
opcional
Quando você associa tabelas, o Analytics exibe a condição da associação na cláusula WHERE:
"Table_1.First_name = Table_2.First_name"
ORDER Os campos que o mecanismo de banco de dados utiliza para classificar registros. nomes_campos deve
nomes_ ser uma cadeia entre aspas.
campos
O comando é mais demorado quando ordena registros. Use ORDER apenas quando a classificação é
opcional importante.
Exemplos
Exemplo
Você quer acessar dados de um banco de dados Microsoft SQL Server usando o Conector do AX. Para
isso, você usa o comando DEFINE TABLE DB. Inclua o parâmetro SOURCE para conexão ao Conector
do AX por meio de um perfil de banco de dados:
Observações
Como funciona?
A tabela do servidor do Analytics é definida como uma consulta que usa um perfil de banco de dados para
se conectar a uma tabela de do banco de dados.
Sintaxe
DEFINE VIEW nome_exibição <RLINES n> <ALL> <SUPPRESS> <SUMMARIZED> <IF teste>
<WHILE teste> <HEADER texto_cabeçalho> <FOOTER texto_rodapé> <TO nome_do_arquivo_
relatório <HTML>><OK>
Parâmetros
Nome Descrição
RLINES n O espaçamento entre linhas em registros de detalhes nas exibições e relatórios. Por
padrão, as linhas de detalhes utilizam espaçamento simples.
opcional
ALL Todos os campos no layout da tabela ativa do Analytics são adicionados à exibição.
opcional
SUPPRESS Suprime linhas de detalhe em branco nos relatórios gerados a partir da exibição.
Quando o relatório é gerado, as linhas de detalhe em branco são omitidas do resul-
opcional
tado. Essa opção aplica-se aos relatórios baseados em exibições com várias linhas.
SUMMARIZED Especifica que os relatórios gerados a partir da exibição devem incluir subtotais e
totais, mas não as linhas de detalhe.
opcional
Os subtotais são gerados com base nos campos de quebra definidos na exibição. Se
esta opção não estiver selecionada, o relatório incluirá linhas de detalhe, bem como
subtotais para cada campo de quebra especificado.
IF teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado apenas nos registros que atendem à condição.
opcional
Nome Descrição
Nota
O parâmetro IF é avaliado apenas em relação aos registros restantes
em uma tabela depois da aplicação dos parâmetros de escopo (WHILE,
FIRST, NEXT).
WHILE teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado até que a condição seja avaliada como falsa ou o fim da tabela
opcional
seja alcançado.
Nota
Se você usar WHILE juntamente com FIRST ou NEXT, o processamento
de registros será interrompido assim que um limite for alcançado.
HEADER texto_cabeçalho O texto a ser inserido na parte superior de cada página de um relatório.
opcional texto_cabeçalho deve ser especificado como uma cadeia entre aspas. O valor substitui
a variável de sistema HEADER do Analytics.
FOOTER texto_rodapé O texto a ser inserido na parte inferior de cada página de um relatório.
opcional texto_rodapé deve ser especificado como uma cadeia entre aspas. O valor substitui a
variável de sistema FOOTER do Analytics.
Exemplos
Criação de uma exibição
Abra a tabela Ar e crie uma exibição chamada Relatório_AR, que inclui todos os campos no layout da
tabela:
OPEN Ar
DEFINE VIEW Relatório_AR HEADER "Relatório AR" ALL OK
Comando DELETE
Exclui um item de projeto do Analytics, um campo de um layout da tabela, uma variável, uma ou mais
entradas de histórico de tabela, uma relação entre tabelas ou um arquivo em uma pasta do Windows.
Além disso, remove uma coluna de uma exibição.
Sintaxe
Propósito Sintaxe
Parâmetros
Nome Descrição
Nome Descrição
nome_variavel | ALL O nome da variável a excluir. Use ALL para excluir todas as variáveis.
Nome Descrição
Se você especificar ALL, todas as ocorrências dos seguintes tipos de variáveis serão
excluídas do projeto:
o variáveis do sistema
o variáveis temporárias definidas pelo usuário
o variáveis permanentes definidas pelo usuário
Nota
Você não pode excluir uma variável ao qual um campo calculado faz
referência, a menos que exclua antes o campo calculado.
HISTORY manter_entra- Exclui todas as entradas de histórico da tabela, exceto o número de entradas mais
das_histórico recentes especificado por manter_entradas_histórico.
Omita manter_entradas_histórico para excluir todas as entradas.
RELATION <nome_ Exclui qualquer relacionamento que não tenha relacionamentos dependentes e que
tabela_filha | nome_rela- não tenha campos relacionados referenciados na exibição ativa ou no campo cal-
cionamento> culado ativo.
Use as opções para especificar a relação a ser excluída:
o nome_tabela_filha: use quando o relacionamento não foi nomeado explicitamente
(nome padrão quando um relacionamento é criado)
o nome_relacionamento: use quando o relacionamento foi nomeado especificamente
quando foi criado. Caso contrário, use nome_tabela_filha
Se você não usar nenhuma das opções, será excluída o último relacionamento defi-
nido.
Exemplos
Exclusão de um campo de data
Exclua o campo Data do layout da tabela associado à tabela Ar:
OPEN Ar
DELETE Data
comandos DELETE para que nenhuma solicitação de confirmação seja exibida quando o script for exe-
cutado:
OPEN Ar
DELETE COLUMN Relatório_AR Data OK
DELETE COLUMN Relatório_AR Data_fatura OK
Comando DIALOG
Cria uma caixa de diálogo personalizada que solicita interativamente um ou mais valores de entrada de
script dos usuários. Cada valor de entrada é armazenado em uma variável nomeada.
Nota
Não é seguro usar o comando DIALOG para inserir senhas. Em vez disso, use
"Comando PASSWORD" Na página 363.
O comando DIALOG não é permitido em análises do Servidor AX.
Você pode criar uma caixa de diálogo interativa básica com o "Comando ACCEPT" Na
página 54.
Dica
A maneira mais fácil de criar caixas de diálogo personalizadas é com o Construtor de diá-
logos . Para obter mais informações, consulte Criar caixas de diálogo personalizadas.
Sintaxe
DIALOG (DIALOG TITLE texto_título WIDTH pixels HEIGHT pixels) (BUTTONSET TITLE
"&OK;&Cancelar" AT pos_x pos_y <WIDTH pixels> <HEIGHT pixels> DEFAULT num_item
<HORZ>) <[sintaxe_rótulo]|[sintaxe_caixa_texto]|[sintaxe_caixa_seleção]|[sintaxe_botão_opção]|
[sintaxe_lista_suspensa]|[sintaxe_lista_itens_projeto]> <...n>
sintaxe_rótulo ::=
(TEXT TITLE texto_título AT pos_x pos_y <WIDTH pixels> <HEIGHT pixels> <CENTER|RIGHT>)
sintaxe_caixa_texto ::=
(EDIT TO nome_var AT pos_x pos_y <WIDTH pixels> <HEIGHT pixels> <DEFAULT cadeia>)
sintaxe_caixa_seleção ::=
(CHECKBOX TITLE texto_título TO nome_var AT pos_x pos_y <WIDTH pixels> <HEIGHT pixels>
<CHECKED>)
sintaxe_botão_opção ::=
(RADIOBUTTON TITLE lista_valores TO nome_var AT pos_x pos_y <WIDTH pixels> <HEIGHT
pixels> <DEFAULT num_item> <HORZ>)
sintaxe_lista_suspensa ::=
(DROPDOWN TITLE lista_valores TO nome_var AT pos_x pos_y <WIDTH pixels> <HEIGHT pixels>
<DEFAULT num_item>)
project_item_list_syntax ::=
(ITEM TITLE categoria_item_projeto TO nome_var AT pos_x pos_y <WIDTH pixels> <HEIGHT
pixels> <DEFAULT cadeia>)
Parâmetros
Parâmetros gerais
Nome Descrição
DIALOG TITLE texto_título Cria a caixa de diálogo principal e o título da caixa de diálogo.
texto_título deve ser especificado como uma cadeia entre aspas.
WIDTH pixels A largura do controle individual ou a largura da caixa de diálogo, se especificada para o
controle DIALOG.
O valor é especificado em pixels. Se nenhum valor for especificado para um controle, a
largura será calculada com base no maior valor contido pelo controle.
HEIGHT pixels A altura do controle individual ou a altura da caixa de diálogo, se especificada para o
controle DIALOG.
O valor é especificado em pixels.
AT pos_x pos_y O local do canto superior esquerdo do controle na caixa de diálogo personalizada:
o pos_x é a distância horizontal em pixels do lado esquerdo da caixa de diálogo
o pos_y é a distância vertical em pixels do lado superior da caixa de diálogo
DEFAULT num_item O valor numérico que corresponde ao valor de BUTTONSET que você deseja selecionar
como padrão.
Por exemplo, se os valores de BUTTONSET forem "&OK;&Cancelar", especifique
DEFAULT 1 para selecionar OK por padrão.
HORZ Exibe horizontalmente os valores para o controle BUTTONSET. Os valores são exibidos
verticalmente por padrão.
opcional
Nota
Para a maioria dos tipos de controle, o comando DIALOG cria uma variável para arma-
zenar a entrada do usuário. Não é possível usar caracteres que não estejam em inglês,
como "é", em nomes de variáveis que serão usadas na substituição de variáveis. Nomes
de variáveis com caracteres que não sejam em inglês provocam falhas no script.
Por padrão, algumas variáveis de DIALOG são criadas como variáveis de caractere. Se
usar uma variável de caracteres para armazenar valores numéricos ou datahora, você
deverá converter a variável para o tipo de dados necessário no processamento sub-
sequente em um script. Para obter mais informações, consulte "Tipo de dados de
entrada" Na página 158.
Parâmetros de rótulo
Nome Descrição
TO nome_var O nome da variável de caracteres que armazena o valor de entrada especificado pelo
usuário.
Se a variável já existir, o controle especificado será atribuído. Se a variável não existir,
será criada e o valor especificado será atribuído.
CHECKBOX Cria uma caixa de seleção para apresentar uma opção para o usuário.
Nome Descrição
TO nome_var O nome da variável lógica que armazena o valor verdadeiro ou falso especificado pelo
usuário.
Se a variável já existir, o controle especificado será atribuído. Se a variável não existir,
será criada e o valor especificado será atribuído.
RADIOBUTTON Cria botões de opção para apresentar opções mutuamente exclusivas ao usuário.
TO nome_var O nome da variável numérica que armazena a posição numérica do valor do botão de
opção selecionado pelo usuário.
Se a variável já existir, o controle especificado será atribuído. Se a variável não existir,
será criada e o valor especificado será atribuído.
DEFAULT num_item O valor numérico que corresponde ao item da lista que você deseja selecionar como
padrão.
opcional
Por exemplo, se a lista_valores for "Vermelho;Verde;Azul", especifique DEFAULT 2 para
selecionar Verde como padrão quando a lista suspensa for exibida.
HORZ Exibe horizontalmente os valores para o controle. Os valores são exibidos verticalmente
por padrão.
opcional
DROPDOWN Cria uma lista suspensa para apresentar uma lista de opções ao usuário.
Nome Descrição
TO nome_var O nome da variável de caracteres que armazena o valor da lista suspensa selecionado
pelo usuário.
Se a variável já existir, o controle especificado será atribuído. Se a variável não existir,
será criada e o valor especificado será atribuído.
DEFAULT num_item O valor numérico que corresponde ao item da lista que você deseja selecionar como
padrão.
opcional
Por exemplo, se a lista_valores for "Vermelho;Verde;Azul", especifique DEFAULT 2 para
selecionar Verde como padrão quando a lista suspensa for exibida.
ITEM Cria uma lista de itens de projeto para apresentar uma lista de itens de projeto do
Analytics, como campos, ao usuário.
TO nome_var O nome da variável de caracteres que armazena o nome do item do projeto sele-
cionado pelo usuário.
Se a variável já existir, o controle especificado será atribuído. Se a variável não existir,
será criada e o valor especificado será atribuído.
DEFAULT cadeia O nome exato do item do projeto que você deseja selecionar como padrão.
opcional cadeia deve ser especificada como uma cadeia entre aspas.
Exemplos
Como solicitar a tabela e o script ao usuário
Em um script, você precisa solicitar que o usuário selecione a tabela e o script do Analytics a serem usados
na execução de uma análise.
Especifique que a tabela Metaphor_Inventário_2012 do projeto do ACL_Demo.acl é selecionada como
padrão como a tabela do Analytics, mas o usuário pode selecionar qualquer tabela no projeto.
O script a ser executado também deve ser selecionado da lista de scripts no projeto do Analytics:
DIALOG (DIALOG TITLE "Análise de Inventário" WIDTH 500 HEIGHT 200) (BUTTONSET TITLE
"&OK;&Cancelar" AT 370 12 DEFAULT 1 ) (TEXT TITLE "Selecione os itens do projeto do Analytics
para analisar." AT 50 16 ) (TEXT TITLE "Tabela:" AT 50 50 ) (ITEM TITLE "f" TO "v_tabela" AT 50 70
DEFAULT "Metaphor_Inventário_2012" ) (TEXT TITLE "Script:" AT 230 50 ) (ITEM TITLE "b" TO "v_
script" AT 230 70 )
Observações
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda do
Analytics.
Interatividade
Use DIALOG para criar um script interativo. Quando o comando DIALOG é processado, o script é pausado
e uma caixa de diálogo é exibida solicitando informações do usuário que o Analytics usa posteriormente no
processamento.
É possível criar caixas de diálogo separadas que solicitam um item de cada vez ou criar uma que solicita
vários itens.
Categorias de projeto
Código Categoria
f Tabelas
bi Scripts
i Índices
r Exibições e relatórios
w Áreas de trabalho
Categorias de campo
Código Categoria
C Campos de caractere
N Campos numéricos
D Campos de datahora
L Campos lógicos
Categorias de variável
Código Categoria
c Variáveis de caractere
n Variáveis numéricas
d Variáveis de datahora
l Variáveis lógicas
No exemplo, as datas inicial e final desse filtro são armazenadas como valores de caractere. Elas devem
ser convertidas em valores de dada para serem usadas com um campo de data que usa um tipo de dados
Datetime.
Delimitar o nome da variável com símbolos de porcentagem (%) substitui o valor do caractere contido pela
variável pelo nome da variável. A função CTOD( ) converte em seguida o valor do caractere em um valor de
data.
Comando DIRECTORY
Gera uma lista de arquivos e pastas no diretório especificado.
Sintaxe
DIRECTORY < espec_arquivo> <SUPPRESS> <SUBDIRECTORY> <APPEND> <TO nome_
tabela|nome_arquivo>
Parâmetros
Nome Descrição
Nome Descrição
Nome Descrição
Se você omitir TO, a listagem de diretórios será exibida na área de exibição do Analy-
tics.
Exemplos
Opções diferentes para listar arquivos
A capacidade de listar arquivos é útil para investigação ad hoc e para incorporação em scripts.
Veja a seguir várias opções diferentes para listar arquivos com o comando DIRECTORY.
DIRECTORY
DIRECTORY *.fil
DIRECTORY Inv*.*
DIRECTORY "Resultados\*"
Observações
Propriedades exibidas por DIRECTORY
O comando DIRECTORY é semelhante ao comando DIR no Windows. Além de listar arquivos e subpastas
de uma pasta, o comando DIRECTORY também exibe as seguintes propriedades de arquivo e pasta:
Comando DISPLAY
Exibe informações sobre o tipo de item do Analytics especificado. Também pode exibir o resultado de uma
expressão ou a saída de uma função.
Sintaxe e parâmetros
Sintaxe Propósito
Sintaxe Propósito
Exemplos
Exibir o layout da tabela de uma tabela do Analytics
A exibição do layout de uma tabela pode ser útil em diversas situações. Por exemplo, pode ser necessário
combinar duas ou mais tabelas e examinar os comprimentos e os tipos de dados dos campos.
O exemplo abaixo exibe o layout da tabela Trans_Cp:
OPEN Trans_Cp
DISPLAY
Exibe na tela
Relação
"Fornecedor" relacionado por "Num_Fornecedor" usando o índice "Fornecedor_por_Num_Fornecedor"
Arquivo
"Trans_Cp.fil" (formato "Trans_Cp") é o arquivo PRIMARY.
O comprimento do registro é 59
Campos
O exemplo abaixo cria duas variáveis definidas pelo usuário e duas variáveis do sistema, e exibe os valo-
res dessas variáveis:
Exibe na tela
TOTAL1 N 278,641.33
OUTPUTFOLDER C "/Tabelas/Contas_a_Pagar"
v_nome_campo C "Valor_Fatura"
v_nome_tabela C "Trans_Cp"
DISPLAY AGE(Data_Fatura)
Observações
Localização dos resultados dos comandos
DISPLAY executado na linha de comando do Analytics: os resultados são exibidos na tela.
DISPLAY executado em um script: os resultados são gravados no log de comandos do Analytics. Você
pode clicar duas vezes na entrada do log de comandos para exibir os resultados na tela.
Comando DO REPORT
Gera o relatório do Analytics especificado.
Sintaxe
DO REPORT nome_do_relatório
Parâmetros
Nome Descrição
Exemplo
Impressão da exibição padrão
Abra a tabela Trans_Cp e imprima a exibição padrão:
OPEN Trans_CP
DO REPORT Exibição_Padrão
Observações
Comparação da execução de DO REPORT na linha de
comando e em um script
As configurações usadas para imprimir o relatório dependem do local da execução do comando:
l na linha de comando: a caixa de diálogo Imprimir será exibida para que você selecione as pági-
nas a imprimir e configure outras opções do relatório
l em um script: o relatório será impresso imediatamente usando as configurações padrão do rela-
tório
Comando DO SCRIPT
Executa um script secundário ou externo de dentro de um script do Analytics.
Sintaxe
DO <SCRIPT> nome_do_script {<IF teste|<WHILE teste>}
Parâmetros
Nome Descrição
SCRIPT nome_do_script O nome do script a ser executado. Você pode executar scripts secundários no projeto do
Analytics ou em scripts externos armazenados em arquivos de texto com extensões
como .aclscript, .txt. ou .bat.
Você pode especificar um caminho de arquivo para um script externo. O caminho deverá
estar entre aspas se tiver espaços.
Nota
Não é possível chamar um script que já está sendo executado. Por exem-
plo, se o ScriptA chamar o ScriptB, o ScriptB não pode chamar o ScriptA.
O ScriptA ainda está sendo executado enquanto espera pelo ScriptB ser
concluído.
IF teste Uma expressão condicional que é avaliada apenas uma vez para determinar se o script
deve ser executado. Se a condição for avaliada como verdadeira, o script será exe-
opcional
cutado, caso contrário, ele não será.
Não pode ser usada com WHILE no mesmo comando. Se ambos forem usados, WHILE
será ignorado quando o script for processado. Um comentário é inserido no log, mas o
script não é interrompido.
WHILE teste Uma expressão condicional que é avaliada após a execução do script para determinar
se o script deve ser executado novamente. Se o teste for avaliado como verdadeiro, o
opcional
script será executado novamente, caso contrário, ele não será.
Nota
Se usar WHILE, verifique se o teste é avaliado como false em algum
momento. Caso contrário, o script entrará em um loop infinito. Em caso de
loop infinito, pressione a tecla Esc para cancelar o processamento do
script.
Não pode ser usado com IF no mesmo comando. Se ambos forem usados, WHILE será
ignorado quando o script for processado. Um comentário é inserido no log, mas o script
não é interrompido.
Exemplos
Execução repetida de um subscript até que a entrada seja validada
Você tem um subscript que coleta entradas do usuário usando uma caixa de diálogo. O script faz o segu-
inte:
1. Solicita os valores necessários ao cliente.
2. Verifica a entrada do usuário.
3. Define a variável v_validado como verdadeira quando os valores de entrada do usuário são vali-
dados.
Para garantir que o usuário insira uma entrada válida, use DO SCRIPT e inclua uma condição WHILE
para que o script repita esse comando até a validação da entrada. Uma vez que o valor da variável for alte-
rado, o script principal passará ao comando seguinte:
Observações
Comandos relacionados
DO SCRIPT equivale ao comando DO BATCH encontrado em scripts criados com versões anteriores do
Analytics.
Você não pode usar o comando DO SCRIPT dentro de um comando GROUP.
Comando DUMP
Exibe o conteúdo de um arquivo ou do registro atual em codificações de caracteres hexadecimais, ASCII e
EBCDIC.
Nota
Esse comando só pode ser digitado na linha de comando. Não pode ser usado em scripts.
Sintaxe
DUMP {RECORD|nome_arquivo} <SKIP bytes> <COLUMN bytes> <HORIZONTAL>
Parâmetros
Nome Descrição
Nome Descrição
Exemplos
Exibir a codificação de caracteres da tabela Estoque
O exemplo abaixo exibe a codificação hexadecimal, ASCII e EBCDIC dos dados da tabela Estoque. A
saída é organizada em linhas horizontais (a codificação hexadecimal usa uma linha dupla). Cada linha
representa 97 bytes de dados na tabela do Analytics:
Comando DUPLICATES
Detecta quando valores duplicados ou registros inteiros duplicados existem em uma tabela do Analytics.
Sintaxe
DUPLICATES <ON> {campo_chave <D> <...n>|ALL} <OTHER campo <...n>|OTHER ALL>
<UNFORMATTED> <TO {SCREEN|nome_tabela|nome_arquivo|PRINT}> <APPEND> <IF teste>
<WHILE teste> <FIRST intervalo|NEXT intervalo> <HEADER texto_cabeçalho> <FOOTER texto_
rodapé> <PRESORT> <OPEN> <LOCAL> <ISOLOCALE código_local>
Parâmetros
Nome Descrição
ON campo_chave D <...n> O campo ou campos-chave, ou a expressão, onde será verificada a existência de dupli-
| ALL cidades.
o campo_chave: use o campo ou os campos especificados
Se você testar em mais de um campo, os registros identificados como duplicidades
exigem valores idênticos em todos os campos especificados.
Inclua D para ordenar o campo-chave em ordem decrescente. A ordem de clas-
sificação-padrão é crescente.
o ALL: use todos os campos na tabela
Se você testar em todos os campos de uma tabela, os registros identificados como
duplicidades devem ser inteiramente idênticos.
Uma ordem de classificação crescente é a única opção para ALL.
Nota
As partes indefinidas dos registros não são testadas.
Nome Descrição
opcional Especifique nome_tabela como uma cadeia entre aspas com uma extensão de
arquivo .FIL. For exemplo: TO "Saída.FIL"
Por padrão, o arquivo de dados da tabela (.fil) é salvo na pasta que contém o projeto
do Analytics.
Use um caminho de arquivo absoluto ou relativo para salvar o arquivo de dados em
uma pasta diferente já existente:
l TO "C:\Saída.FIL"
l TO "Resultados\Saída.FIL"
Nota
Os nomes de tabela são limitados a 64 caracteres alfanuméricos, sem
contar a extensão .FIL. O nome pode incluir o caractere de sublinhado
( _ ) mas nenhum outro caractere especial e nenhum espaço. O nome
não pode começar com um número.
o nome_arquivo: salva os resultados em um arquivo
Especifique nome_arquivo como uma cadeia entre aspas com uma extensão de
arquivo apropriada. Por exemplo: TO "Saída.TXT"
Por padrão, o arquivo é salvo na pasta que contém o projeto do Analytics.
Use um caminho de arquivo absoluto ou relativo para salvar o arquivo em uma pasta
diferente já existente:
l TO "C:\Saída.TXT"
l TO "Resultados\Saída.TXT"
o PRINT: envia os resultados para a impressora padrão
IF teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado apenas nos registros que atendem à condição.
opcional
Nota
O parâmetro IF é avaliado apenas em relação aos registros restantes em
uma tabela depois da aplicação dos parâmetros de escopo (WHILE,
FIRST, NEXT).
WHILE teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado até que a condição seja avaliada como falsa ou o fim da tabela
opcional
seja alcançado.
Nome Descrição
Nota
Se você usar WHILE juntamente com FIRST ou NEXT, o processamento
de registros será interrompido assim que um limite for alcançado.
HEADER texto_cabeçalho O texto a ser inserido na parte superior de cada página de um relatório.
opcional texto_cabeçalho deve ser especificado como uma cadeia entre aspas. O valor substitui a
variável de sistema HEADER do Analytics.
FOOTER texto_rodapé O texto a ser inserido na parte inferior de cada página de um relatório.
opcional texto_rodapé deve ser especificado como uma cadeia entre aspas. O valor substitui a
variável de sistema FOOTER do Analytics.
OPEN Abre a tabela criada pelo comando após a execução do comando. Válido apenas se o
comando criar uma tabela de saída.
opcional
Exemplos
Testar se há valores duplicados em um campo
O exemplo a seguir:
l testa se há valores duplicados no campo Número_Fatura
l exibe qualquer registro que contenha números de faturas duplicados em uma nova tabela do Analy-
tics
Comando ESCAPE
Encerra o script ou todos os scripts sendo processados, sem sair do Analytics.
Sintaxe
ESCAPE <ALL> <IF teste>
Parâmetros
Nome Descrição
IF teste Um teste que deve ser avaliado com verdadeiro antes que o comando seja executado.
Se o teste for avaliado como falso, o comando não será executado.
opcional
Exemplos
Encerramento condicional de um script
Conte o número de registros em uma tabela e use o comando ESCAPE para encerrar o script se o
número de registros for inferior a 100:
COUNT
ESCAPE IF COUNT1 < 100
Observações
Quando usar ESCAPE
Use ESCAPE para interromper a execução de um script ou subscript de acordo com uma condição, ou
parar a execução de todos os scripts em execução.
ESCAPE ALL
Comando EVALUATE
Para a amostragem por registro ou a amostragem por unidades monetárias, projeta os erros encontrados
em dados amostrados para toda a população e calcula os limites superiores de taxa de desvio ou o valor
da afirmação incorreta.
Amostragem por registro Amostragem por unidades monetárias
Sintaxe
EVALUATE RECORD CONFIDENCE nível_de_confiabilidade SIZE tamanho_da_amostra
ERRORLIMIT número_de_erros <TO {SCREEN|nome_arquivo}>
Parâmetros
Nota
Não inclua separadores de milhares ou símbolos de porcentagem ao especificar valores.
Nome Descrição
Nome Descrição
l TO "Resultados\Saída.TXT"
MLEn A taxa de frequência de limite de erro superior (taxa de desvio superior calculada) cal-
culada pelo comando.
Exemplos
Projetar erros encontrados na amostra de dados para toda a população de
registros
Você concluiu os testes dos dados amostrados e registrou os desvios de controle encontrados. Agora,
você pode projetar os erros encontrados para toda a população.
O exemplo abaixo projeta dois erros encontrados nos dados amostrados para toda a população e calcula
uma taxa de frequência de limite de erro superior (taxa de desvio superior calculada) de 6,63%.
Para obter uma explicação detalhada dos valores calculados pelo Analytics ao avaliar erros, consulte Ava-
liar erros em uma amostragem por registro.
Observações
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda do
Analytics.
Sintaxe
EVALUATE MONETARY CONFIDENCE nível_de_confiabilidade <ERRORLIMIT valor_contábil,
valor_afirmação_incorreta <;...n>> INTERVAL valor_intervalo <TO {SCREEN|nome_arquivo}>
Parâmetros
Nota
Não inclua separadores de milhares ou símbolos de porcentagem ao especificar valores.
Nome Descrição
1000,70,1250,-200
MLEn O valor do erro mais provável (afirmação incorreta projetada) calculado pelo comando.
UELn O valor limite de erro superior (limite de afirmação incorreta superior) calculado pelo
comando.
Exemplos
Projetar erros encontrados na amostra de dados para toda a população de
registros
Você concluiu os testes dos dados amostrados e registrou as afirmações incorretas encontradas. Agora,
você pode projetar os erros encontrados para toda a população.
O exemplo abaixo projeta três erros encontrados nos dados amostrados para toda a população e calcula
vários valores, incluindo:
l Precisão básica: quota básica para risco de amostragem (18.850,00)
l Erro mais provável: o valor da afirmação incorreta projetada para a população (1.201,69)
l Limite de erro superior: o limite de erro superior para a população (22.624,32)
Para obter uma explicação detalhada dos valores calculados pelo Analytics ao avaliar erros, consulte Ava-
liar erros em uma amostragem por unidades monetárias.
Observações
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda do
Analytics.
Comando EXECUTE
Executa um aplicativo ou processo externo ao Analytics. Emula o comando Run do Windows. Pode ser
usado para interagir com o prompt de comando do Windows.
Nota
Como o comando EXECUTE oferece a capacidade de interagir com o sistema ope-
racional e os aplicativos externos ao Analytics, podem surgir problemas técnicos além do
escopo da funcionalidade nativa do Analytics.
O Suporte pode auxiliar na operação do comando EXECUTE dentro do Analytics, mas os
problemas que ocorrem com os processos e aplicativos externos ao Analytics não são
cobertos pelo Suporte.
Sintaxe
EXECUTE sintaxe_comando_Run_Windows <ASYNC>
Parâmetros
Nome Descrição
sintaxe_comando_Run_ O nome do aplicativo a ser executado, a pasta ou arquivo a ser aberto ou o comando a
Windows ser executado, seguido por todos os argumentos ou chaves de comando necessários.
Exige uma sintaxe válida de comando Run do Windows entre aspas.
RETURN_CODE O código retornado por um aplicativo ou processo externo executado com o comando
EXECUTE.
Exemplos
Abrir um aplicativo
Abre o Microsoft Excel:
EXECUTE "Excel"
EXECUTE "AcroRd32.exe"
Fechar um aplicativo
Fecha o Microsoft Excel:
Nota
Use a chave /f com cuidado. Ela força o fechamento de um aplicativo sem apresentar
nenhuma caixa de diálogo, como as exibidas para salvar alterações.
Abrir um arquivo
Abre a pasta de trabalho do Excel Trans_CP.xlsx:
Nota
A execução de um script do Analytics em outro projeto inicia uma segunda instância do
Analytics. O script no segundo projeto deve terminar com o comando QUIT para que a
segunda instância do ACL feche e o controle seja devolvido à instância inicial do Analy-
tics.
Observações
Use EXECUTE para executar tarefas úteis
O comando EXECUTE permite a execução de comandos do Windows e do DOS a partir da linha de
comando do Analytics ou de um script do Analytics.
Você pode usar esse recurso para incrementar a automação dos scripts do Analytics executando várias
tarefas úteis que não são possíveis usando apenas a sintaxe do ACLScript.
Abrir outros programas e Passar parâmetros para Acessar dados de locais Incorporar listas de contas
aplicativos e executar as um arquivo em lotes de rede do Active Directory
tarefas exigidas pelo script
do Analytics
Abrir qualquer arquivo no Executar scripts do Analy- Usar o FTP para cessar Integrar-se com VBScript
seu aplicativo padrão tics em outros projetos do dados de locais remotos
Analytics
Executar tarefas admi- Incorporar períodos de Compactar ou des- Integrar-se com bancos de
nistrativas de arquivos e espera em scripts do Analy- compactar dados dados SQL
pastas como cópia, movi- tics
mentação, criação, exclu-
são ou comparação de
arquivos ou pastas exis-
tentes fora do Analytics
Executar scripts externos Incorporar o agendamento Criptografar ou des- Abrir páginas da web
ou arquivos em lotes não de tarefas do Windows em criptografar dados
Analytics (.bat) scripts do Analytics
Nota
Detalhes específicos sobre como executar qualquer dessas tarefas estão além do escopo da docu-
mentação de ajuda da Galvanize. Para obter auxílio, consulte a documentação adequada do sis-
tema operacional Windows ou outra documentação de terceiros.
o tarefas administrativas de arquivos e pastas o tarefas externas exibem uma caixa de diálogo de inter-
o especificação de períodos de espera face de aplicativo ou pop-up
o qualquer tarefa da qual tarefas subsequentes depen-
dem
o execução de scripts subsequentes depende do resul-
tado na variável RETURN_CODE
Aspas
A sintaxe do comando Run do Windows usada com o comando EXECUTE deve estar entre aspas ou após-
trofos.
O exemplo abaixo usa o comando MD do Windows para criar uma nova pasta:
Aspas aninhadas
Se qualquer caminho na sintaxe do comando Run contém espaços, os caminhos devem também estar
entre aspas.
Você tem duas opções para colocar caminhos entre aspas:
l Aspas dentro de apóstrofos: Coloque toda a cadeia do comando Run entre apóstrofos e, inter-
namente, os caminhos entre aspas:
Esse método pode ser mais fácil de entender que o segundo método.
Nota
A inversão da ordem de aninhamento, usando aspas para toda a cadeia e apóstrofos
para os caminhos, não funciona.
l Duas aspas: Coloque toda a cadeia do comando de execução entre aspas e, internamente, os cami-
nhos entre duas aspas:
Se você usar esse segundo método, as duas aspas usadas internamente devem ser adjacentes e
sem espaços entre elas.
Essa complicação pode ser evitada criando scripts ou arquivos de lote externos contendo comandos do
Windows e usando o comando EXECUTE apenas para iniciar o arquivo de lote. Por exemplo:
EXECUTE 'C:\Meu_lote.bat'
Método Exemplo
Repita o
comando EXECUTE 'cmd /c md "C:\Nova pasta de dados"' EXECUTE 'cmd /c copy C:\Arquivo_1.txt "C:\Nova
EXECUT- pasta de dados"'
E para
cada
comando
Run.
Combine
os EXECUTE 'cmd /c md "C:\Nova pasta de dados" & copy C:\Arquivo_1.txt "C:\Nova pasta de dados"'
coman-
dos Run
usando
'&'.
Crie um
script ou EXECUTE 'C:\Meu_lote.bat'
arquivo
de lote
externo
contendo
coman-
dos Run
de várias
linhas e
usando o
comando
EXECUT-
E ape-
nas para
iniciar o
arquivo
de lote.
Comando EXPORT
Exporta dados do Analytics para o formato de arquivo especificado ou para o módulo Resultados no
HighBond.
Sintaxe
EXPORT {<FIELDS> nome_campo <AS nome_de_exportação> <...n>|<FIELDS> ALL}
<UNICODE> tipo_de_exportação <SCHEMA>PASSWORD num TO {nome_arquivo|id_aclgrc}
<OVERWRITE> <IF teste> <WHILE teste> <{FIRST intervalo|NEXT intervalo}> <APPEND>
<KEEPTITLE> <SEPARATOR caractere> <QUALIFIER caractere> <WORKSHEET nome_
planilha> <DISPLAYNAME>
Parâmetros
Nome Descrição
Nome Descrição
tipo_de_exportação O formato do arquivo de saída ou destino usando uma das seguintes opções:
o ACCESS: Arquivo de banco de dados do Microsoft Access (.mdb)
Por padrão, os dados são exportados como Unicode.
o ACLGRC: Resultados no HighBond
o ASCII: texto simples ASCII (.txt)
o CLIPBOARD: área de transferência do Windows
o DBASE: arquivo compatível com dBASE (.dbf)
o DELIMITED: arquivo de texto delimitado (.del)
o EXCEL: – arquivo Microsoft Excel (.xls) compatível com o Microsoft Excel 1997 a 2003
o JSON: arquivo JSON (.json)
o LOTUS: arquivo Lotus 123
o WDPF6: arquivo Wordperfect 6
o WORD: arquivo MS Word (.doc)
o WP: arquivo do Wordperfect.
o XLS21: arquivo do Microsoft Excel versão 2.1.
o XLSX: arquivo .xlsx do Microsoft Excel
Por padrão, os dados são exportados como Unicode.
o XML: arquivo XML (.xml)
Nome Descrição
sintaxe do comando. A senha é um token de acesso do HighBond. Para obter mais infor-
mações, consulte "Exportar para o Resultados do HighBond" Na página 200.
Nota
Dependendo do ambiente em que o script é executado, PASSWORD
pode ou não ser obrigatório:
Robôs
Analytics Exchange
Nome Descrição
IF teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado apenas nos registros que atendem à condição.
opcional
Nota
O parâmetro IF é avaliado apenas em relação aos registros restantes em
uma tabela depois da aplicação dos parâmetros de escopo (WHILE,
FIRST, NEXT).
WHILE teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado até que a condição seja avaliada como falsa ou o fim da tabela
opcional
seja alcançado.
Nota
Se você usar WHILE juntamente com FIRST ou NEXT, o processamento
de registros será interrompido assim que um limite for alcançado.
Nome Descrição
Exemplos
Exportar dados para um arquivo .xlsx do Excel
Exporte campos específicos da tabela Fornecedor para um arquivo .xlsx do Excel:
OPEN Fornecedor
EXPORT FIELDS Num_Fornecedor Nome_Fornecedor Cidade_Fornecedor XLSX TO "Expor-
taçãoFornecedor"
OPEN Fornecedor
EXPORT FIELDS Num_Fornecedor Nome_Fornecedor Cidade_Fornecedor XLSX TO "Expor-
taçãoFornecedor" WORKSHEET Fornecedores_EUA
OPEN Fornecedor
EXPORT FIELDS ALL DELIMITED TO "ExportaçãoFornecedor"
GROUP
EXPORT FIELDS Num_fornecedor Nome_fornecedor DELIMITED TO "AaM" IF BETWEEN
(UPPER(NOME_FORNECEDOR); "A"; "M")
EXPORT FIELDS Num_fornecedor Nome_fornecedor DELIMITED TO "NaZ" IF BETWEEN
(UPPER(NOME_FORNECEDOR); "N"; "Z")
END
OPEN Exceções_CR
EXPORT FIELDS Sem Data de Vencimento Ref Tipo de Valor ACLGRC PASSWORD 1 TO
"10926@us" OVERWRITE
Observações
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda do
Analytics.
Nenhum arquivo Excel o TO o valor de nome_ Um novo arquivo Excel é Um novo arquivo Excel é
com nome cor- arquivo não cor- criado, com uma planilha criado, com uma planilha
respondente responde a nenhum com o nome especificado que usa o nome da tabela
nome de arquivo Excel do Analytics exportada
existente
Nome de arquivo Excel o TO o valor de nome_ Uma planilha com o nome O arquivo Excel existente
correspondente arquivo e um nome de especificado é adicionada é sobre escrito por um
arquivo Excel existente ao arquivo Excel existente novo arquivo Excel, com
Nenhum nome de planilha
são idênticos uma planilha que usa o
correspondente o WORKSHEET nome_ nome da tabela do Analy-
planilha não cor- tics exportada
responde a um nome
de planilha no arquivo
Excel
Nome de arquivo Excel e o TO o valor de nome_ Se a planilha existente foi O arquivo Excel existente
nome de planilha cor- arquivo e um nome de criada originalmente pelo é sobre escrito por um
respondente arquivo Excel existente Analytics, será sobrescrita novo arquivo Excel, com
são idênticos por uma planilha com o uma planilha que usa o
o WORKSHEET nome_ nome especificado. nome da tabela do Analy-
planilha corresponde a tics exportada
Se a planilha existente foi
um nome de planilha
criada originalmente no
no arquivo Excel
Excel, será exibida uma
mensagem de erro e ope-
ração exportação será can-
celada.
Item Detalhes
Permissões obri- A capacidade de exportar resultados para um teste de controle no módulo Resultados exige
gatórias uma atribuição de função específica do HighBond ou privilégios administrativos:
o Usuários com a função Usuário Profissional ou Gerente Profissional para uma coleção do
Resultados podem exportar os resultados para qualquer teste de controle na coleção.
Nota
Somente os usuários com a função Gerente Profissional podem exportar e
sobrescrever dados em um teste de controle.
o Os Administradores de Sistema do HighBond e os administradores do Resultados rece-
bem automaticamente a função Gerente Profissional em todas as coleções das orga-
nizações do HighBond que administram.
Item Detalhes
Anexação de cam- Independentemente da sua ordem em uma tabela do Analytics, os campos exportados são
pos anexados aos campos existentes em um teste de controle se tiverem nomes de campos físi-
cos correspondentes.
No Analytics, o nome do campo físico é o nome no layout da tabela. Campos exportados que
não corresponderem ao nome de nenhum campo existente serão acrescentados como colu-
nas adicionais na tabela no Resultados.
Os nomes de exibição de campos no Analytics e no Resultados não serão considerados. No
entanto, se você usar o parâmetro opcional AS nome_de_exportação, o valor de nome_de_
exportação será usado como o nome do campo físico se você não usar DISPLAYNAME.
Na anexação de dados a campos de questionários, o nome de exibição da coluna no Resul-
tados permanece o nome especificado na configuração do questionário.
Nota
Se você estiver executando um processo de ida e volta de dados entre o
Resultados e o Analytics, e os dados estiverem desalinhados no Resultados,
é provável que existam nomes de campos divergentes.
Para obter mais informações, consulte "Considerações sobre nomes de cam-
pos para importação e exportação de dados do Resultados" Na página 269.
Item Detalhes
PASSWORD em um script do Analytics, clique com o botão direito no Editor de script, sele-
cione Inserir > Token HighBond e faça login no HighBond. Um token de acesso é inserido
no script, na posição do cursor.
Cuidado
O token de acesso retornado corresponde à conta usada para fazer login no
HighBond. Como autor de scripts, usar seu próprio token de acesso pode não
ser apropriado se você estiver escrevendo um script para ser usado por
outras pessoas.
Sem AS Com AS
Comando EXTRACT
Extrai dados de uma tabela do Analytics e usa esses dados para gerar uma nova tabela do Analytics ou
anexá-los a uma tabela do Analytics existente. É possível extrair todos os registros ou campos sele-
cionados.
Sintaxe
EXTRACT {RECORD|FIELDS nome_campo <AS nome_exibição> <...n>|FIELDS ALL} TO nome_
tabela <IF teste> <WHILE teste> <FIRST intervalo|NEXT intervalo> <EOF> <APPEND> <OPEN>
<LOCAL>
Parâmetros
Nome Descrição
Nome Descrição
Nota
O parâmetro AS funciona apenas para extração para uma nova tabela.
Se estiver adicionando a uma tabela existente, os títulos de coluna alter-
nativos na tabela existente prevalecem.
IF teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado apenas nos registros que atendem à condição.
opcional
Nota
O parâmetro IF é avaliado apenas em relação aos registros restantes em
uma tabela depois da aplicação dos parâmetros de escopo (WHILE,
FIRST, NEXT).
WHILE teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado até que a condição seja avaliada como falsa ou o fim da tabela
opcional
seja alcançado.
Nota
Se você usar WHILE juntamente com FIRST ou NEXT, o processamento
de registros será interrompido assim que um limite for alcançado.
EOF Execute o comando uma ou mais vezes após alcançar o fim do arquivo.
opcional Isso garante que o registro final na tabela seja processado dentro de um comando
Nome Descrição
GROUP. Use EOF somente se todos os campos forem campos calculados referentes a
registros anteriores.
OPEN Abre a tabela criada pelo comando após a execução do comando. Válido apenas se o
comando criar uma tabela de saída.
opcional
Exemplos
Extração de todos os registros de uma tabela para uma nova tabela
Crie uma duplicata exata da tabela AR_Cliente extraindo todos os registros para uma nova tabela do Analy-
tics. Todos os campos calculados são preservados como campos calculados:
OPEN AR_Cliente
EXTRACT RECORD TO "AR_Cliente_2"
OPEN AR_Cliente
EXTRACT FIELDS ALL TO "AR_Cliente_2"
OPEN AR_Cliente
EXTRACT RECORD TO "AR_Cliente_Mestre" APPEND
OPEN AR_Cliente
EXTRACT RECORD TO "C:\Usuários\Dados do cliente\AR_Cliente_Mestre" APPEND
OPEN AR_Cliente
EXTRACT FIELDS Nome Prazo Data TO "AR_Datas_Cliente.fil"
OPEN AR_Cliente
EXTRACT FIELDS Nome AS "Cliente;Nome" Prazo AS "Prazo;Limite" Data AS "Data;Fatura" TO
"AR_Datas_Cliente.fil"
OPEN AR_Cliente
EXTRACT FIELDS Nome Prazo Data IF Prazo < `20140701` TO "Vencidos.fil"
Observações
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda do
Analytics.
Comando FIELDSHIFT
Desloca a posição inicial de uma definição de campo em um layout da tabela.
Sintaxe
FIELDSHIFT START posição_inicial COLUMNS bytes_a_deslocar <FILTER nome_filtro_dados>
<OK>
Parâmetros
Nome Descrição
START posição_inicial A posição inicial em bytes da primeira definição de campo que você quer deslocar.
Todas as definições de campos à direita da definição de campo especificada também
serão deslocadas.
Se você especificar uma posição não inicial em bytes, a próxima posição inicial em
bytes será usada.
Nota
Nome Descrição
Nota
FILTER nome_filtro_ O nome do filtro que identifica as definições de campos associados a uma definição de
dados registro específica.
opcional
Exemplos
Deslocamento de definições de campos
Desloque as definições de campos a partir do byte 11 e todas as definições de campos subsequentes por 4
bytes para a direita:
Observações
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda do
Analytics.
Lembre-se de que FIELDSHIFT move a definição de campo especificada e todas as definições de cam-
pos à direita da definição de campo especificada. Se o bloco de definições deslocadas exceder o com-
primento do registro em uma das direções, será exibida uma mensagem de erro e o comando não será
executado.
Dica
Se a mensagem de erro for exibida porque o fim do registro está sendo excedido, tente
remover a definição de campo final para abrir espaço para o deslocamento das defi-
nições de campos.
Comando FIND
Pesquisa um campo de caracteres indexado para encontrar o primeiro valor correspondente à cadeia de
caracteres especificada.
Nota
O comando FIND e a função FIND( ) são dois recursos distintos do Analytics com dife-
renças significativas. Para obter informações sobre a função, consulte "Função FIND( )"
Na página 582.
Sintaxe
FIND valor_da_pesquisa
Parâmetros
Nome Descrição
Exemplos
Pesquisa por um valor específico
Você quer localizar o primeiro valor no campo de caracteres Numero_Cartao que corresponde exa-
tamente ou inicia com "8590124".
Primeiro, indexe o campo Numero_Cartao em ordem crescente. Em seguida, execute FIND:
Observações
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda
do Analytics.
Requisito de INDEX
Para usar o comando, a tabela a ser pesquisada deve ser indexada em um campo de caracteres em
ordem crescente.
Se vários campos de caracteres forem classificados em ordem crescente, apenas o primeiro campo espe-
cificado no índice será pesquisado. O comando não pode ser usado para pesquisar campos indexados
não caracteres ou campos de caracteres indexados em ordem decrescente.
Correspondência parcial
A correspondência parcial é permitida. O valor pesquisado pode estar contido em um valor mais longo no
campo indexado. Porém, o valor pesquisado deve aparecer no início do campo para constituir uma cor-
respondência.
Comando FUZZYDUP
Detecta valores quase idênticos (duplicidades parciais) em um campo de caracteres.
Nota
Para usar correspondências parciais para combinar campos de duas tabelas do Analytics
em uma única tabela nova do Analytics, consulte "Comando FUZZYJOIN" Na página 218.
Sintaxe
FUZZYDUP ON campo_chave <OTHER campos> LEVDISTANCE valor <DIFFPCT porcentagem>
<RESULTSIZE porcentagem> <EXACT> <IF teste> TO nome_tabela <LOCAL> <OPEN>
Parâmetros
Nome Descrição
OTHER campos Uma lista dos campos ou expressões a serem incluídas na saída.
opcional
LEVDISTANCE valor A máxima distância de Levenshtein permitida entre duas cadeias para que elas sejam
identificadas como duplicidades parciais e incluídas nos resultados.
O valor LEVDISTANCE não pode ser menor que 1 ou maior que 10. O aumento do valor
de LEVDISTANCE aumenta o número de resultados, incluindo valores com um maior
grau de imprecisão, ou seja, valores que são mais diferentes entre si.
Para obter mais informações, consulte "Comportamento de FUZZYDUP" Na página 216.
DIFFPCT porcentagem Um limite que limita a "porcentagem de diferença" ou a proporção de uma cadeia que
pode ser diferente.
opcional
A porcentagem resultante de um cálculo interno do Analytics feito em pares de dupli-
catas parciais potenciais deve ser menor ou igual ao valor de DIFFPCT para que o par
seja incluído nos resultados. O valor de DIFFPCT não pode ser menor que 1 ou maior
que 99.
Se DIFFPCT for omitido, o limite será desligado e a porcentagem de diferença não será
considerada durante o processamento do comando FUZZYDUP.
Para obter mais informações, consulte "Comportamento de FUZZYDUP" Na página 216.
RESULTSIZE por- O tamanho máximo do conjunto de resultados de saída como porcentagem do número
centagem de registros no campo-chave.
opcional Por exemplo, para um campo-chave com 50.000 registros, um RESULTSIZE de 3 encer-
Nome Descrição
IF teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado apenas nos registros que atendem à condição.
opcional
Nota
O parâmetro IF é avaliado apenas em relação aos registros restantes em
uma tabela depois da aplicação dos parâmetros de escopo (WHILE,
FIRST, NEXT).
Nome Descrição
OPEN Abre a tabela criada pelo comando após a execução do comando. Válido apenas se o
comando criar uma tabela de saída.
opcional
Exemplos
Testar duplicidades parciais em um campo de sobrenome
Teste se há duplicidades parciais em um campo de sobrenome (o campo Sobrenome na tabela Lista_Fun-
cionários em ACL DATA\Arquivos de dados da amostra\Dados_Funcionários_Metap-
hor.ACL). Os resultados são enviados a uma nova tabela do Analytics.
l Além do campo de teste, outros campos são incluídos nos resultados.
l A distância máxima de Levenshtein permitida é 1.
l A proporção de uma cadeia que pode ser diferente é limitada a 50%.
l O tamanho dos resultados é limitado a 20% do tamanho do campo de teste.
l Além das duplicatas parciais, as duplicatas exatas são incluídas.
Observações
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda do
Analytics.
Como funciona?
O comando FUZZYDUP encontra valores quase idênticos (duplicidades parciais) ou localiza ortografia
inconsistente em dados inseridos manualmente.
Ao contrário da função ISFUZZYDUP( ), que identifica uma lista exaustiva de duplicatas parciais para um
único valor de caractere, o comando FUZZYDUP identifica todas as duplicidades parciais em um campo,
organiza-as em grupos e produz um conjunto de resultados não exaustivo.
Comportamento de FUZZYDUP
O comando FUZZYDUP tem dois parâmetros que permitem controlar o grau de diferença entre dupli-
cidades parciais e o tamanho dos resultados:
l LEVDISTANCE
l DIFFPCT
Pode ser necessário tentar diferentes combinações de configurações desses dois parâmetros para des-
cobrir a que funciona melhor para um conjunto de dados específico.
Mais informações
Para obter informações detalhadas sobre as configurações de diferença de duplicidades parciais, con-
trolar o tamanho do resultado e grupos de duplicidades parciais, consulte a visão geral das duplicidades
parciais.
A função OMIT( )
A função OMIT( ) pode melhorar também a eficácia do comando, removendo elementos genéricos, como
"Companhia" ou "Inc." de valores do campo.
A remoção de elementos genéricos focaliza a comparação de cadeia FUZZYDUP apenas na parte das
cadeias onde uma diferença significativa pode ocorrer.
Para obter mais informações, consulte "Função OMIT( )" Na página 692.
Comando FUZZYJOIN
Usa correspondências parciais para combinar campos de duas tabelas do Analytics em uma única tabela
nova do Analytics.
Nota
Para detectar valores quase idênticos (duplicidades parciais) em um único campo de
caracteres, consulte "Comando FUZZYDUP" Na página 213.
Para ver as diversas opções de associação de tabelas usando valores de campos-chave
com correspondência exata, consulte "Comando JOIN" Na página 328.
Sintaxe
FUZZYJOIN {DICE PERCENT porcentagem NGRAM comprimento_ngrama|LEVDISTANCE
DISTANCE valor} PKEY campo_chave_primária SKEY campo_chave_secundária {FIELDS cam-
pos_primários|FIELDS ALL} <WITH campos_secundários|WITH ALL> <IF teste> <OPEN>
<FIRSTMATCH> TO nome_tabela <WHILE teste> <FIRST intervalo|NEXT intervalo> <APPEND>
Nota
Não é possível executar o comando FUZZYJOIN localmente em uma tabela de servidor.
Você deve especificar o nome do comando FUZZYJOIN com todas as letras. Esse
comando não deve ser abreviado.
Parâmetros
Nome Descrição
Nome Descrição
FIELDS campos_pri- Os campos ou expressões da tabela primária a serem incluídos na tabela de saída
mários | FIELDS ALL associada.
o campos_primários: inclua o campo ou os campos especificados
o ALL: inclua todos os campos da tabela
Nota
Você deve especificar de forma explícita o campo-chave primário se
desejar incluí-lo na tabela associada. A especificação de ALL também
inclui esse campo.
WITH campos_secun- Os campos ou expressões da tabela secundária a serem incluídos na tabela de saída
dários | WITH ALL associada.
opcional o campos_secundários: inclua o campo ou os campos especificados
o ALL: inclua todos os campos da tabela
Nome Descrição
Nota
Você deve especificar de forma explícita o campo-chave secundário se
desejar incluí-lo na tabela associada. A especificação de ALL também
inclui esse campo.
IF teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado apenas nos registros que atendem à condição.
opcional
Nota
O parâmetro IF é avaliado apenas em relação aos registros restantes
em uma tabela depois da aplicação dos parâmetros de escopo (WHILE,
FIRST, NEXT).
Nota
A condição IF pode referenciar a tabela primária, a tabela secundária ou
as duas tabelas.
OPEN Abre a tabela criada pelo comando após a execução do comando. Válido apenas se o
comando criar uma tabela de saída.
opcional
FIRSTMATCH Especifica que cada valor de chave primária é associado unicamente à primeira ocor-
rência de qualquer chave secundária correspondente.
opcional
Se a primeira ocorrência for uma correspondência exata, nenhum das cor-
respondências parciais subsequentes para o valor de chave primária será incluída na
tabela de saída associada.
Se você omitir FIRSTMATCH, o comportamento padrão de FUZZYJOIN será associar
cada valor de chave primária a todas as ocorrências de todas as chaves secundárias
correspondentes.
FIRSTMATCH é útil se você quiser apenas saber se existem correspondências, exatas
ou parciais, entre as duas tabelas e desejar reduzir o tempo de processamento neces-
sário para identificar todas as correspondências.
Você também pode usar FIRSTMATCH se tiver certeza de que existe no máximo ape-
nas uma correspondência na tabela secundária para cada valor de chave primária.
Nota
FIRSTMATCH está disponível apenas como um parâmetro do ACLS-
cript. Essa opção não está disponível na interface do usuário do Analy-
tics.
Nome Descrição
l TO "C:\Saída.FIL"
l TO "Resultados\Saída.FIL"
Nota
Os nomes de tabela são limitados a 64 caracteres alfanuméricos,
sem contar a extensão .FIL. O nome pode incluir o caractere de subli-
nhado ( _ ) mas nenhum outro caractere especial e nenhum espaço.
O nome não pode começar com um número.
WHILE teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado até que a condição seja avaliada como falsa ou o fim da tabela
opcional
seja alcançado.
Nota
Se você usar WHILE juntamente com FIRST ou NEXT, o processamento
de registros será interrompido assim que um limite for alcançado.
Exemplos
Use a correspondência parcial para associar duas tabelas como forma de
descobrir empregados que também podem ser fornecedores
O exemplo a seguir associa as tabelas MestreFunc e Fornecedor usando o endereço como campo-chave
comum (os campos Endereço e Rua_Fornecedor).
O comando FUZZYJOIN cria uma nova tabela que contém registros primários e secundários com cor-
respondência exata ou registros primários e secundários com correspondência parcial. O resultado é
uma lista de funcionários e fornecedores com endereços idênticos ou com endereços similares.
Observações
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda do
Analytics.
Comando GAPS
Detecta se um campo numérico ou datahora em uma tabela do Analytics contém uma ou mais falhas em
dados sequenciais.
Sintaxe
GAPS <ON> campo_chave <D> <UNFORMATTED> <PRESORT> <MISSING limite> <HEADER
texto_cabeçalho> <FOOTER texto_rodapé> <IF teste> <WHILE teste> <FIRST intervalo|NEXT
intervalo> <TO {SCREEN|nome_tabela|nome_arquivo|PRINT}> <APPEND> <LOCAL> <OPEN>
Parâmetros
Nome Descrição
MISSING limite Os resultados de saída contêm itens ausentes individuais em vez de intervalos de
falha.
opcional
O valor limite especifica o número máximo de itens ausentes a ser relatado para cada
intervalo identificado. O valor padrão é 5. Se o limite for excedido em uma falha espe-
cífica, os itens ausentes são relatados como um intervalo dessa falha específica.
O valor limite não restringe o número total de itens ausentes relatados; apenas o
número de itens ausentes relatados dentro de uma falha específica.
HEADER texto_cabeçalho O texto a ser inserido na parte superior de cada página de um relatório.
opcional texto_cabeçalho deve ser especificado como uma cadeia entre aspas. O valor substitui
a variável de sistema HEADER do Analytics.
FOOTER texto_rodapé O texto a ser inserido na parte inferior de cada página de um relatório.
opcional texto_rodapé deve ser especificado como uma cadeia entre aspas. O valor substitui a
variável de sistema FOOTER do Analytics.
Nome Descrição
IF teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado apenas nos registros que atendem à condição.
opcional
Nota
O parâmetro IF é avaliado apenas em relação aos registros restantes
em uma tabela depois da aplicação dos parâmetros de escopo (WHILE,
FIRST, NEXT).
WHILE teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado até que a condição seja avaliada como falsa ou o fim da tabela
opcional
seja alcançado.
Nota
Se você usar WHILE juntamente com FIRST ou NEXT, o processamento
de registros será interrompido assim que um limite for alcançado.
Nome Descrição
l TO "C:\Saída.TXT"
l TO "Resultados\Saída.TXT"
o PRINT: envia os resultados para a impressora padrão
OPEN Abre a tabela criada pelo comando após a execução do comando. Válido apenas se o
comando criar uma tabela de saída.
opcional
Exemplos
Teste de números de fatura ausentes
Use GAPS para garantir que não há números de faturas ausentes na tabela Faturas :
OPEN Faturas
GAPS ON Num_Fat PRESORT TO "Falhas_Faturas.fil"
Observações
Uso de GAPS em campos de caracteres
Além de testar campos numéricos ou datahora, você também pode testar a existência de falhas em dados
numéricos em um campo de caracteres. Por exemplo, você pode testar números de cheques, que nor-
malmente são formatados como dados de caracteres.
Se letras e números aparecerem juntos em um campo de caracteres, apenas os números serão testados e
as letras serão ignoradas.
Comando GROUP
Executa um ou mais comandos do ACLScript em um registro antes de passar ao próximo registro na
tabela, executando apenas uma passagem pela tabela. A execução do comando pode ser controlada por
condições.
Sintaxe
GROUP <IF teste> <WHILE teste> <FIRST intervalo|NEXT intervalo>
comando
<...n>
<ELSE IF teste>
comando
<...n>
<ELSE>
comando
<...n>
END
Nota
Alguns comandos do Analytics não podem ser usados com o comando GROUP. Para
obter mais informações, consulte "Comandos que podem ser usados dentro do comando
GROUP" Na página 232.
Parâmetros
Nome Descrição
IF teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado apenas nos registros que atendem à condição.
opcional
Nota
O parâmetro IF é avaliado apenas em relação aos registros restantes
em uma tabela depois da aplicação dos parâmetros de escopo (WHILE,
FIRST, NEXT).
WHILE teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado até que a condição seja avaliada como falsa ou o fim da tabela
opcional
seja alcançado.
Nota
Se você usar WHILE juntamente com FIRST ou NEXT, o processamento
de registros será interrompido assim que um limite for alcançado.
Nome Descrição
comando <...n> Um ou mais comandos de script do ACL para execução dentro do GROUP. Para obter
uma lista completa dos comandos permitidos dentro de GROUP, consulte "Comandos
que podem ser usados dentro do comando GROUP" Na página 232.
Se houver um IF ou ELSE IF anteriores, o teste deverá ser avaliado como verdadeiro.
Se o estiver abaixo de ELSE, o comando será executado se houver registros que não
foram processados por nenhum dos comandos precedentes. Você pode incluir vários
comandos, com cada comando começando em uma linha separada.
ELSE IF teste Abre um block ELSE IF para o comando GROUP. A condição testa os registros que não
corresponderam no teste do comando GROUP ou em algum teste ELSE IF anterior.
opcional
Você pode incluir vários testes ELSE IF, que serão avaliados de cima para baixo, até
que o registro seja avaliado como verdadeiro e os comandos após essa instrução
ELSE IF sejam executados.
ELSE Abre um bloco ELSE para o comando GROUP. Os comandos seguintes são exe-
cutados para os registros avaliados como falso em todos os testes anteriores.
opcional
Exemplos
GROUP simples
Os grupos simples que iniciam com um comando GROUP são seguidos por uma série de comandos e ter-
minam com um comando END:
GROUP
COUNT
HISTOGRAM ON Quantidade MINIMUM 0 MAXIMUM 100 INTERVALS 10
CLASSIFY ON Local SUBTOTAL Quantidade
END
GROUP IF
Grupos condicionais executam comandos baseados em uma condição verdadeira ou falsa. O comando
GROUP IF ...ELSE
Os registros que não satisfazem a condição do teste são ignorados, a menos que você inclua um bloco
ELSE.
Qualquer número de comandos pode seguir uma instrução ELSE. No exemplo a seguir, todos os regis-
tros que não atenderem à condição serão processados tendo seus campos Quantidade totalizados:
poderosa de controlar quais comandos são executados para quais registros. A maioria das aplicações não
necessita deste nível avançado de funcionalidade, mas ele está disponível, se necessário.
Como em outros grupos, use o comando END para encerrar um grupo aninhado. O Analytics somente
começa a processar os dados após o término de todos os comandos:
Nesse exemplo, todos os comandos desde COUNT até o próximo GROUP, inclusive, somente serão exe-
cutados se Classe_produto for menor do que 05.
Os comandos STATISTICS e HISTOGRAM serão executados se Quantidade for maior que zero. Entre-
tanto, quando o segundo comando GROUP é aninhado, os comandos STATISTICS e HISTOGRAM são
executados somente para registros que atendam às condições Classe_produto < "05" e Quantidade > 0.
OPEN Metaphor_Trans_2002
GROUP
TOTAL AMOUNT IF PRODCLS = "03"
TOTAL AMOUNT IF PRODCLS = "05"
TOTAL AMOUNT IF PRODCLS = "08"
Observações
Dica
Para ver um tutorial detalhado cobrindo os comandos GROUP e LOOP, consulte "Agru-
pamento e loops" Na página 33.
VERIFY
Agrupamento e loops
O comando GROUP permite que você execute vários comandos em um registro antes de passar ao pró-
ximo registro na tabela, o que pode reduzir significativamente o tempo de processamento.
Você pode usar o comando LOOP dentro do comando GROUP se precisar executar uma série de coman-
dos mais de uma vez.
GROUP
TOTAL Desconto IF Prioridade_Pedido = "Baixa"
ASSIGN v_var = "teste"
TOTAL Desconto IF Prioridade_Pedido = "Alta"
END
Notas de sintaxe
l A sintaxe com várias linhas listada para o comando é obrigatória, e assim o comando GROUP não
pode ser inserido na linha de comando.
l Cada comando GROUP deve ser encerrado com um comando END.
l Ao usar o comando GROUP em seus scripts, é possível melhorar a legibilidade do bloco de
comando indexando os comandos listados dentro do grupo.
Comando HELP
Abre os documentos de ajuda do Analytics em um navegador.
Sintaxe
HELP
Comando HISTOGRAM
Agrupa os registros com base em valores de um campo de caracteres ou numérico, conta o número de
registros em cada grupo e exibe os grupos e contagens em um gráfico de barras.
Sintaxe
HISTOGRAM {<ON> campo_de_caractere|<ON> campo_numérico MINIMUM valor MAXIMUM
valor {<INTERVALS número>|FREE valor_intervalo <...n> último_intervalo}} <TO {SCREEN|nome_
arquivo|GRAPH|PRINT}> <IF teste> <WHILE teste> <FIRST intervalo|NEXT intervalo> <HEADER
texto_cabeçalho> <FOOTER texto_cabeçalho> <KEY campo_divisão> <SUPPRESS>
<COLUMNS número> <APPEND> <LOCAL> <OPEN>
Parâmetros
Nome Descrição
MINIMUM valor Aplica-se somente a campos numéricos. O valor mínimo do primeiro intervalo numé-
rico.
MINIMUM será opcional se você usar FREE. Caso contrário, será obrigatório.
MAXIMUM valor Aplica-se somente a campos numéricos. O valor máximo do último intervalo numérico.
MAXIMUM será opcional se você usar FREE. Caso contrário, será obrigatório.
Nome Descrição
Os valores do intervalo devem estar em sequência numérica e não podem conter valo-
res duplicados:
IF teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado apenas nos registros que atendem à condição.
opcional
Nota
O parâmetro IF é avaliado apenas em relação aos registros restantes
em uma tabela depois da aplicação dos parâmetros de escopo (WHILE,
FIRST, NEXT).
WHILE teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado até que a condição seja avaliada como falsa ou o fim da tabela
opcional
seja alcançado.
Nota
Se você usar WHILE juntamente com FIRST ou NEXT, o processamento
de registros será interrompido assim que um limite for alcançado.
Nome Descrição
HEADER texto_cabeçalho O texto a ser inserido na parte superior de cada página de um relatório.
opcional texto_cabeçalho deve ser especificado como uma cadeia entre aspas. O valor substitui
a variável de sistema HEADER do Analytics.
FOOTER texto_rodapé O texto a ser inserido na parte inferior de cada página de um relatório.
opcional texto_rodapé deve ser especificado como uma cadeia entre aspas. O valor substitui a
variável de sistema FOOTER do Analytics.
KEY campo_quebra O campo ou expressão que agrupa cálculos de subtotal. Um subtotal é calculado cada
vez que o valor de campo_quebra muda.
opcional
campo_quebra deve ser um campo ou expressão de caracteres. Apenas um campo
pode ser especificado, mas é possível usar uma expressão que contém mais que um
campo.
SUPPRESS Valores maiores que MAXIMUM e menores que MINIMUM devem ser excluídos da
saída do comando.
opcional
COLUMNS número O comprimento do eixo x na representação textual do gráfico de barras se você gerar
os resultados do histograma em um arquivo de texto.
opcional
O valor número é o número de espaços de caractere (colunas de texto) usado para o
eixo x (e os rótulos do eixo y). Se COLUMNS for omitido, o padrão de 78 espaços de
caractere será usado.
OPEN Abre a tabela criada pelo comando após a execução do comando. Válido apenas se o
comando criar uma tabela de saída.
opcional
Exemplos
Histograma básico para salário por hora
Use HISTOGRAM para criar um gráfico mostrando a distribuição dos salários entre 0 e 100 dólares por
hora:
Observações
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda do
Analytics.
Comandos relacionados
Criar um histograma usando um campo de caracteres é similar a classificar. Criar um histograma usando
um campo numérico é similar a estratificar.
Diferentemente de outras operações de agrupamento do Analytics, os histogramas não oferecem suporte
à subtotalização de campos numéricos.
Comando IF
Especifica uma condição que deve ser avaliada como verdadeira para executar um comando.
Sintaxe
IF teste comando
Parâmetros
Nome Descrição
testar A condição que deve ser cumprida para que o comando seja executado.
comando Qualquer comando de ACLScript válido para execução se teste for avaliado como ver-
dadeiro.
Exemplos
Execução condicional de um comando
Você quer usar CLASSIFY em uma tabela, mas somente se a variável v_contador for maior que dez:
Observações
Comparação entre o comando IF e o parâmetro IF
A lógica do comando IF difere do parâmetro IF usado pela maioria dos comandos:
l O comando IF: determina se um comando associado é executado ou não, dependendo do valor da
expressão de teste
l O parâmetro IF: determina se o comando é executado em cada registro de uma tabela do Analytics
com base no valor da expressão de teste
Sintaxe
IMPORT ACCESS TO tabela <PASSWORD num> nome_arquivo_importação FROM nome_
arquivo_origem TABLE nome_da_tabela_de_entrada CHARMAX tamanho_máximo_do_campo
MEMOMAX tamanho_máximo_do_campo
Parâmetros
Nome Descrição
PASSWORD num Usado apenas com arquivos do Access protegidos por senha.
opcional A definição de senha a ser usada.
PASSWORD num não é usado para solicitar ou especificar uma senha real. A definição
de senha faz referência a uma senha previamente fornecida ou definida com o
comando PASSWORD, o comando SET PASSWORD ou a tag de análise PASSWORD.
num é o número da definição de senha. Por exemplo, se as duas senhas foram pre-
viamente fornecidas ou definidas em um script, ou no agendamento de uma análise,
PASSWORD 2 especifica o uso da senha nº 2.
Para obter mais informações sobre o fornecimento ou a definição de senhas, consulte:
l "Comando PASSWORD" Na página 363
l "Comando SET" Na página 424
l Tag de análise PASSWORD
Para obter mais informações sobre o fornecimento ou a definição de senhas, consulte:
l Comando PASSWORD
l Comando SET
l Tag de análise PASSWORD
Nome Descrição
Por padrão, o arquivo de dados (.FIL) é salvo na pasta que contém o projeto do Analy-
tics.
Use um caminho de arquivo absoluto ou relativo para salvar o arquivo de dados em
uma pasta diferente já existente:
o "C:\dados\Faturas.FIL"
o "dados\Faturas.FIL"
FROM nome_arquivo_ori- O nome do arquivo de dados de origem. nome_arquivo_origem deve ser uma cadeia
gem entre aspas.
Se o arquivo de dados de origem não está localizado no mesmo diretório que o projeto
do Analytics, é necessário usar um caminho absoluto para especificar a localização do
arquivo:
o "C:\dados\nome_arquivo_origem"
o "dados\nome_arquivo_origem"
TABLE nome_da_tabela_ O nome da tabela no arquivo de banco de dados do Microsoft Access a ser importado.
de_entrada
CHARMAX tamanho_ O tamanho máximo em caracteres de qualquer campo na tabela do Analytics originada
máximo_do_campo como dados caractere no arquivo de dados de origem que você está importando.
Você pode especificar de 1 a 255 caracteres.
Exemplos
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda do
Analytics.
Sintaxe
IMPORT DELIMITED TO tabela nome_arquivo_importação FROM nome_arquivo_origem <SERVER
nome_perfil> codificação_caracteres_origem SEPARATOR {carac|TAB|SPACE} QUALIFIER
{carac|NONE} <CONSECUTIVE> STARTLINE número_linha <KEEPTITLE> <CRCLEAR>
<LFCLEAR> <REPLACENULL> <ALLCHAR> {ALLFIELDS|[sintaxe_do_campo] <...n> <IGNORE
num_campo> <...n>}
sintaxe_campo ::=
FIELD nome tipo AT posição_inicial DEC valor WID bytes PIC formato AS nome_exibicao
Parâmetros
Nome Descrição
FROM nome_arquivo_ori- O nome do arquivo de dados de origem. nome_arquivo_origem deve ser uma cadeia
gem entre aspas.
Se o arquivo de dados de origem não está localizado no mesmo diretório que o projeto
do Analytics, é necessário usar um caminho absoluto para especificar a localização do
arquivo:
Nome Descrição
o "C:\dados\nome_arquivo_origem"
o "dados\nome_arquivo_origem"
SERVER nome_perfil O nome do perfil do servidor do Servidor AX onde os dados que você deseja importar
estão localizados.
opcional
Edição do
Código Analytics Codificação dos dados de origem
SEPARATOR caractere | O caractere separador (delimitador) usado entre campos nos dados de origem. É preciso
TAB | SPACE especificar o caractere como uma cadeia entre aspas.
Você pode especificar um separador tabulação ou espaço digitando o caractere entre
aspas ou usando uma palavra-chave:
o SEPARATOR " " ou SEPARATOR TAB
o SEPARATOR " " ou SEPARATOR SPACE
QUALIFIER caractere | O caractere qualificador de texto para os dados de origem. Os valores dos campos des-
NONE ses dados são colocados entre caracteres qualificadores para identificação. É preciso
especificar o caractere como uma cadeia entre aspas.
Para especificar o caractere aspas como um qualificador de texto, coloque o caractere
entre apóstrofos: QUALIFIER '"'.
Você pode especificar que não há qualificadores de texto usando um dos seguintes
métodos:
o QUALIFIER ""
o QUALIFIER NONE
Nome Descrição
CONSECUTIVE Qualificadores consecutivos de texto devem ser tratados como um único qualificador.
opcional
KEEPTITLE Trate o número de linha especificado por STARTLINE como nomes de campos em vez
de dados. Se você omitir KEEPTITLE, serão usados nomes de campo genéricos.
opcional
Se você especificar a sintaxe FIELD individualmente, o nome do FIELD terá precedência
sobre os valores na primeira linha do arquivo delimitado. Nessa situação, KEEPTITLE
evita a importação dos valores da primeira linha.
CRCLEAR Substitui todos os caracteres CR (retorno de carro) que ocorrem entre qualificadores de
texto por caracteres de espaço. Você deve especificar QUALIFIER com um valor carac-
opcional
tere para usar CRCLEAR.
Se você usar CRCLEAR e LFCLEAR, CRCLEAR deve ser o primeiro.
LFCLEAR Substitui todos os caracteres LF (quebra de linha) que ocorrem entre qualificadores de
texto por caracteres de espaço. Você deve especificar QUALIFIER com um valor carac-
opcional
tere para usar LFCLEAR.
Se você usar CRCLEAR e LFCLEAR, CRCLEAR deve ser o primeiro.
REPLACENULL Substitui todos os caracteres NUL que ocorrem no arquivo delimitado por caracteres de
espaço. O número dos caracteres NUL substituídos é gravado no log.
opcional
FIELD nome tipo Os campos individuais no arquivo de dados de origem a importar, incluindo o nome e o
Nome Descrição
Nome Descrição
Nota
PIC será ignorado se você especificar ALLCHAR.
AS nome_exibicao O nome de exibição (título alternativo da coluna) para o campo na exibição na nova
tabela do Analytics.
Especifique nome_exibicao como uma cadeia entre aspas. Utilize um ponto e vírgula (;)
entre palavras se quiser uma quebra de linha no título da coluna.
AS é obrigatório na definição de um FIELD. Para que o nome de exibição seja igual ao
nome do campo, insira um valor de nome_exibicao em branco usando a seguinte sin-
taxe: AS "". Verifique se não há espaço entre as duas aspas.
Exemplos
Importação de todos os campos
Importe todos os campos de um arquivo delimitado por vírgula para uma tabela do Analytics chamada Fun-
cionários . O arquivo usa aspas como qualificador de texto. Os tipos de dados são atribuídos auto-
maticamente com base no conjunto de regras descrito em "Observações" Na página seguinte:
Observações
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda
do Analytics.
A ACL
B BINARY
C CHARACTER
D DATETIME
E EBCDIC
F FLOAT
G ACCPAC
I IBMFLOAT
K UNSIGNED
L LOGICAL
N PRINT
P PACKED
Q BASIC
R MICRO
S CUSTOM
T PCASCII
U UNICODE
V VAXFLOAT
X NUMERIC
Y UNISYS
Z ZONED
Sintaxe
IMPORT EXCEL TO tabela nome_arquivo_importação FROM nome_arquivo_origem TABLE pla-
nilha_ou_intervalo_nomeado_de_entrada <KEEPTITLE> {ALLFIELDS|CHARMAX tamanho_
máximo_do_campo|[sintaxe_do_campo] <...n> <IGNORE num_campo> <...n>} <OPEN>
sintaxe_campo ::=
FIELD nome tipo {PIC formato|WID caracteres DEC valor} AS nome_exibicao
Parâmetros
Nome Descrição
FROM nome_arquivo_ori- O nome do arquivo de dados de origem. nome_arquivo_origem deve ser uma cadeia
gem entre aspas.
Se o arquivo de dados de origem não está localizado no mesmo diretório que o projeto
do Analytics, é necessário usar um caminho absoluto para especificar a localização do
arquivo:
o "C:\dados\nome_arquivo_origem"
o "dados\nome_arquivo_origem"
Nome Descrição
TABLE planilha_ou_inter- A planilha ou o intervalo nomeado do Microsoft Excel no arquivo de dados de origem a
valo_nomeado ser importado:
o será necessário inserir um sinal de "$" no final do nome da planilha
o planilha_ou_intervalo_nomeado deve ser especificado como uma cadeia entre
aspas
KEEPTITLE Trate a primeira linha de dados como nomes de campos em vez de dados. Se omitida,
serão usados nomes de campo genéricos.
opcional
Se os campos forem definidos individualmente, KEEPTITLE deverá aparecer antes do
primeiro FIELD.
CHARMAX tamanho_ Aplica-se somente quando você não está definindo campos individualmente.
máximo_do_campo
O tamanho máximo em caracteres de qualquer campo na tabela do Analytics originada
como dados caractere no arquivo de dados de origem.
FIELD nome tipo Os campos individuais no arquivo de dados de origem a importar, incluindo o nome e o
tipo de dados do campo. Para excluir um campo da importação, não o especifique.
Para obter mais informações sobre tipo, consulte "Identificadores para os tipos de dados
de campo" Na página 257.
AS nome_exibicao O nome de exibição (título alternativo da coluna) para o campo na exibição na nova
tabela do Analytics.
Especifique nome_exibicao como uma cadeia entre aspas. Utilize um ponto e vírgula (;)
Nome Descrição
OPEN Abre a tabela criada pelo comando após a execução do comando. Válido apenas se o
comando criar uma tabela de saída.
opcional
Exemplos
Importação de campos específicos
Execute uma importação que define uma nova tabela do Analytics denominada Cartões_Crédito. A impor-
tação usa a primeira linha de dados do Excel como nomes de arquivo.
A tabela do Analytics define e inclui três campos da tabela de origem, mas exclui os demais campos:
Observações
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda
do Analytics.
A ACL
B BINARY
C CHARACTER
D DATETIME
E EBCDIC
F FLOAT
G ACCPAC
I IBMFLOAT
K UNSIGNED
L LOGICAL
N PRINT
P PACKED
Q BASIC
R MICRO
S CUSTOM
T PCASCII
U UNICODE
V VAXFLOAT
X NUMERIC
Y UNISYS
Z ZONED
Sintaxe
IMPORT GRCPROJECT TO tabela nome_arquivo_importação PASSWORD num FROM id_org/id_
tipo <FIELD nome AS nome_exibicao <...n>>
Parâmetros
Nome Descrição
Nome Descrição
l Comando PASSWORD
l Comando SET
l Tag de análise PASSWORD
Nota
Dependendo do ambiente em que o script é executado, PASSWORD
pode ou não ser obrigatório:
Robôs
Analytics Exchange
FROM id_org/id_tipo A organização e o tipo de informações que definem os dados sendo importados:
o id_org: a organização do Projetos de onde os dados estão sendo importados
o id_tipo: o tipo de informações importadas
Os valores de id_org e de id_tipo devem ser separados por uma barra, sem espaços
entre eles: FROM "125@eu/auditorias".
Toda a cadeia deve estar entre aspas.
ID da Organização
id_org deve incluir o número de ID da organização e, se você estiver importando de um
data center localizado fora da América do Norte, o código do data center. O número de
ID da organização e o código do data center devem ser separados por um símbolo de
arroba (@): FROM "125@eu".
O código do data center especifica de qual servidor regional do HighBond você está
importando dados:
o ap – Ásia-Pacífico
o au – Austrália
o ca – Canadá
o eu – Europa
o us – América do Norte
Você somente pode usar os códigos de data center autorizados para a instalação do
HighBond na sua organização. O data center da América do Norte é o padrão. Portanto,
a especificação de "@us" é opcional.
Se você não sabe qual é o número de ID da organização, use a interface do usuário do
Analytics para importar uma tabela do módulo Projetos. O número de ID da organização
está contido no comando no log. Para obter mais informações, consulte Definição de
Nome Descrição
ID do tipo
id_tipo especifica o tipo de informações importadas. As informações do módulo Projetos
estão contidas em uma série de tabelas relacionadas.
Para id_tipo, você pode usar um dos seguintes valores. Insira o valor exatamente como
aparece, incluindo sublinhados, se aplicável:
o audits - Projetos
o control_test_plans - Planos de Teste de Controle
o control_tests - Teste de Controle
o controls - Controles
o finding_actions - Ações
o findings - Problemas
o mitigations - Associações de Controle de Risco
o narratives - Narrativas
o objectives- Objetivos
o risks - Riscos
o walkthroughs - Orientações
Dica
Para obter informações sobre como as tabelas do módulo Projetos estão
relacionadas, e sobre os campos-chave que você pode usar para asso-
ciar as tabelas após tê-las importado para o Analytics, consulte Definição
de dados do ACL GRC.
FIELD nome AS nome_exi- Campos individuais nos dados de origem a serem importados. Especifique o nome.
bicao <...n>
Se você omitir FIELD, todos os campos serão importados.
opcional o nome deve corresponder exatamente ao nome do campo físico na tabela do Projetos,
inclusive maiúsculas e minúsculas
o nome_exibicao (título alternativo da coluna) é o nome do campo na exibição na nova
tabela do Analytics. Você deve especificar um nome de exibição para cada FIELD
nome. Especifique nome_exibicao como uma cadeia entre aspas.
Utilize um ponto e vírgula (;) entre palavras se quiser uma quebra de linha no título da
coluna.
Ao contrário de alguns comandos IMPORT no Analytics, não é possível especificar
nome_exibicao em branco como forma de usar o nome de FIELD como nome de exi-
bição.
Dica
Para obter os nomes dos campos físicos, use a interface do usuário do
Analytics para importar a tabela apropriada do módulo Projetos. Os
nomes dos campos físicos estão contidos no comando do log.
As importações subsequentes podem ser incluídas em um script.
Exemplos
Importação de todos os campos da tabela do Projetos
Importe todos os campos da tabela do Projetos de todos os projetos ativos que pertencem à organização
286 para uma tabela do Analytics chamada Todos_Projetos . Inclua uma definição de senha numerada
para autenticar a conexão:
Observações
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda
do Analytics.
Se você usar o comando SET PASSWORD para criar o número de definição da senha para conexão ao
HighBond, um valor de senha será especificado. Portanto, nenhuma senha será solicitada, o que é ade-
quado para scripts projetados para execução sem intervenção manual.
Para obter mais informações, consulte Comando SET PASSWORD.
Token de acesso do HighBond
Independentemente do método usado para criar a definição de senha, o valor de senha obrigatório é um
token de acesso do HighBond:
l Método PASSWORD – os usuários podem adquirir um token de acesso selecionando Ferramentas
> Token de acesso do HighBond e fazendo login no HighBond. Será retornado um token de
acesso, que pode ser copiado e colado pelos usuários no prompt de senha.
l Método SET PASSWORD – para inserir um token de acesso na sintaxe do comando SET
PASSWORD em um script do Analytics, clique com o botão direito no Editor de script, selecione
Inserir > Token HighBond e faça login no HighBond. Um token de acesso é inserido no script, na
posição do cursor.
Cuidado
O token de acesso retornado corresponde à conta usada para fazer login no HighBond.
Como autor de scripts, usar seu próprio token de acesso pode não ser apropriado se você
estiver escrevendo um script para ser usado por outras pessoas.
Sintaxe
IMPORT GRCRESULTS TO tabela nome_arquivo_importação <PASSWORD num> FROM Cami-
nho_recursos_Resultados <FIELD nome AS nome_exibicao <...n>>
Parâmetros
Nome Descrição
Nome Descrição
Robôs
Analytics Exchange
FIELD nome AS nome_exi- Campos individuais nos dados de origem a serem importados. Especifique o nome.
bicao <...n>
Se você omitir FIELD, todos os campos serão importados.
opcional
Nome
nome deve corresponder exatamente ao nome do campo físico na tabela Resultados,
inclusive maiúsculas e minúsculas. Para exibir o nome físico do campo, realize uma
das ações a seguir:
o No Resultados, clique em um cabeçalho de coluna na Exibição de tabela. O nome
do campo físico é exibido após Nome do campo.
o No Analytics, quando você importa uma tabela do módulo Resultados, o nome de
campo físico aparece entre parênteses após o nome de exibição na caixa de diá-
logo que permite selecionar campos.
Nome Descrição
Nota
O nome do campo físico do Resultados não é o nome de exibição
usado para cabeçalhos de coluna na Exibição de tabela.
Consulte também "Considerações sobre nomes de campos para importação e expor-
tação de dados do Resultados" Na página 269.
Nome de exibição
nome_exibicao (título alternativo da coluna) é o nome do campo na exibição na nova
tabela do Analytics. Você deve especificar um nome de exibição para cada FIELD
nome. Especifique nome_exibicao como uma cadeia entre aspas.
Utilize um ponto e vírgula (;) entre palavras se quiser uma quebra de linha no título da
coluna.
Ao contrário de alguns comandos IMPORT no Analytics, não é possível especificar
nome_exibicao em branco como forma de usar o nome de FIELD como nome de exi-
bição.
Exemplos
Importação dos campos especificados de uma tabela do Resultados
Importe os campos especificados de uma tabela do Resultados para uma tabela do Analytics chamada
Exceções T e E:
Observações
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda do
Analytics.
metadata.priority Prioridade
metadata.status Status
metadata.publish_date Publicado(a)
metadata.assignee Atribuído(a) a
metadata.group Grupo
metadata.updated_at Atualizado(a)
metadata.closed_at Fechado(a)
extras.collection Coleção
extras.record_id ID do registro
acesso, que pode ser copiado e colado pelos usuários no prompt de senha.
l Método SET PASSWORD – para inserir um token de acesso na sintaxe do comando SET
PASSWORD em um script do Analytics, clique com o botão direito no Editor de script, selecione
Inserir > Token HighBond e faça login no HighBond. Um token de acesso é inserido no script, na
posição do cursor.
Cuidado
O token de acesso retornado corresponde à conta usada para fazer login no HighBond.
Como autor de scripts, usar seu próprio token de acesso pode não ser apropriado se
você estiver escrevendo um script para ser usado por outras pessoas.
Sintaxe
IMPORT LAYOUT arquivo_layout_externo TO nome_layout_tabela
Parâmetros
Nome Descrição
arquivo_layout_externo O nome do arquivo de layout da tabela externo. Se o nome ou caminho do arquivo con-
tiver espaços, ele deve estar entre aspas – por exemplo, "Trans Cp.layout".
A extensão de arquivo .layout é utilizada por padrão e não precisa ser especificada. Se
necessário, você pode usar outra extensão de arquivo, como .fmt.
Se o arquivo de layout não estiver localizado na mesma pasta que o projeto do Analy-
tics, você deve utilizar um caminho absoluto ou relativo para especificar a localização do
arquivo, como, por exemplo, "C:\Layouts salvos\Trans_Cp.layout" ou "Layouts sal-
vos\Trans_Cp.layout".
TO nome_layout_tabela O nome do layout da tabela importado para o projeto do Analytics, por exemplo, "Trans
Cp Maio". É preciso especificar o valor de nome_layout_tabela como uma cadeia entre
aspas se o nome tiver espaços. Pode ser especificado um nome_layout_tabela diferente
do nome do arquivo_layout_externo.
Exemplo
Importação de um arquivo externo de layout da tabela
Importe um arquivo de layout da tabela externo chamado Trans_Cp.layout e crie um novo layout de tabela
chamado Trans_Cp_Maio no projeto do Analytics:
Observações
Quando usar IMPORT LAYOUT
A importação de um arquivo externo de layout de tabela e sua associação com um arquivo de dados pode
economizar o trabalho de criar novos layouts de tabela do zero:
l Se o layout de tabela importado especificar uma associação com algum arquivo de dados do Analy-
tics (.fil) e um arquivo de dados com o mesmo nome existir na pasta que contém o projeto, o layout
de tabela importado será associado automaticamente ao arquivo de dados na pasta.
l Se não houver arquivo de dados com o mesmo nome na pasta do projeto, será necessário vincular
o layout de tabela importado a uma nova origem de dados.
Comando IMPORT
MULTIDELIMITED
Cria várias tabelas do Analytics definindo e importando várias planilhas do Microsoft Excel.
Sintaxe
IMPORT MULTIDELIMITED <TO pasta_importação> FROM {nome_arquivo_origem|pasta_origem}
codificação_caracteres_origem SEPARATOR {carac|TAB|SPACE} QUALIFIER {carac|NONE}
<CONSECUTIVE> STARTLINE número_linha <KEEPTITLE> <CRCLEAR> <LFCLEAR>
<REPLACENULL> <ALLCHAR>
Nota
Você deve especificar os parâmetros de IMPORT MULTIDELIMITED exatamente na
mesma ordem mostrada acima e na tabela abaixo.
Para importar vários arquivos delimitados corretamente, a estrutura de todos os arquivos
deve ser consistente antes da importação.
Para obter mais informações, consulte "Estrutura de arquivos consistente obrigatória" Na
página 278.
Parâmetros
Nome Descrição
Exemplo
Se você omitir TO, os dados serão importados na pasta que contém o projeto do Analytics.
FROM nome_ O nome dos arquivos de dados de origem, ou a pasta que contém esses arquivos.
arquivo_origem
Especifique nome_arquivo_origem ou pasta_origem como uma cadeia entre aspas.
| pasta_origem
Nome Descrição
Exemplo
FROM "Transações_AF*.csv"
seleciona:
Transactions_AF18.csv
Transactions_AF17.csv
Você pode usar um curinga em mais de um local em um nome de arquivo e em uma extensão de
arquivo.
Exemplo
FROM "Transações_AF*.*"
seleciona:
Transactions_AF18.txt
Transactions_AF17.csv
Arquivos de dados de origem fora da pasta raiz do projeto do Analytics
Se os arquivos de dados de origem não estão localizados na mesma pasta do projeto do Analytics,
você deve usar um caminho de arquivo absoluto ou relativo à pasta que contém o projeto para
especificar a localização dos arquivos.
Exemplo
Nome Descrição
Exemplo
Edição do
Código Analytics Codificação dos dados de origem
Nota
Se você não especificar um código, o Analytics não Unicode automaticamente
usará 0 e o Analytics Unicode, 2 .
SEPARATOR O caractere separador (delimitador) usado entre campos nos dados de origem. É preciso espe-
caractere | TAB cificar o caractere como uma cadeia entre aspas.
| SPACE
Você pode especificar um separador tabulação ou espaço digitando o caractere entre aspas ou
usando uma palavra-chave:
o SEPARATOR " " ou SEPARATOR TAB
o SEPARATOR " " ou SEPARATOR SPACE
QUALIFIER O caractere qualificador de texto para os dados de origem. Os valores dos campos desses dados
caractere | são colocados entre caracteres qualificadores para identificação. É preciso especificar o caractere
NONE como uma cadeia entre aspas.
Para especificar o caractere aspas como um qualificador de texto, coloque o caractere entre após-
trofos: QUALIFIER '"'.
Você pode especificar que não há qualificadores de texto usando um dos seguintes métodos:
Nome Descrição
o QUALIFIER ""
o QUALIFIER NONE
CONSECUTIVE Qualificadores consecutivos de texto devem ser tratados como um único qualificador.
opcional
KEEPTITLE Trate o número de linha especificado por STARTLINE como nomes de campos em vez de dados.
Se você omitir KEEPTITLE, serão usados nomes de campo genéricos.
opcional
Nota
Os nomes dos campos devem estar no mesmo número de linha em todos os arqui-
vos delimitados importados com uma única execução de
IMPORT MULTIDELIMITED.
Se os nomes de campos estiverem em números de linha diferentes, consulte "Estru-
tura de arquivos consistente obrigatória" Na página 278.
CRCLEAR Substitui todos os caracteres CR (retorno de carro) que ocorrem entre qualificadores de texto por
caracteres de espaço. Você deve especificar QUALIFIER com um valor caractere para usar
opcional
CRCLEAR.
Se você usar CRCLEAR e LFCLEAR, CRCLEAR deve ser o primeiro.
LFCLEAR Substitui todos os caracteres LF (quebra de linha) que ocorrem entre qualificadores de texto por
caracteres de espaço. Você deve especificar QUALIFIER com um valor caractere para usar
opcional
LFCLEAR.
Se você usar CRCLEAR e LFCLEAR, CRCLEAR deve ser o primeiro.
REPLACENUL- Substitui todos os caracteres NUL que ocorrem no arquivo delimitado por caracteres de espaço. O
L número dos caracteres NUL substituídos é gravado no log.
opcional
Nome Descrição
Dica
A atribuição do tipo de dados caractere a todos os campos importados simplifica o
processo de importação de arquivos texto delimitados. Depois que os dados esti-
verem no Analytics, você poderá atribuir tipos de dados diferentes, como Numérico
ou DataHora, aos campos, e especificar detalhes do formato.
ALLCHAR é útil na importação de uma tabela com campos identificadores com o
tipo de dados numérico atribuído automaticamente pelo Analytics, quando na ver-
dade o tipo de dados deveria ser caractere.
Exemplos
Os exemplos abaixo supõem que você tem dados de transações mensais armazenados em 12 arquivos do
Excel:
l Transações_Jan.csv a Transações_Dez.csv
Nota
Uma tabela do Analytics separada será criada para cada planilha ou arquivo nomeado que
você importar.
Observações
Estrutura de arquivos consistente obrigatória
Para importar um grupo de arquivos delimitados corretamente usando IMPORT MULTIDELIMITED, a
estrutura de todos os arquivos do grupo deve ser consistente.
Você pode importar arquivos delimitados com estruturas inconsistentes e depois limpar e padronizar os
dados no Analytics. No entanto, essa abordagem é trabalhosa. Em muitos casos, é mais fácil tornar os
arquivos delimitados consistentes antes da importação.
Para importar vários arquivos delimitados corretamente, os itens a seguir devem ser consistentes em
todos os arquivos:
Palavra-chave
Item do ACLScript Problema Solução
O conjunto de código numé- (somente para edição Unicode do Agrupe os arquivos de origem pelo
caracteres e a rico Analytics) tipo de codificação e faça uma impor-
codificação dos tação separada para cada grupo.
Os arquivos de origem delimitados
dados de ori-
usam codificações de caracteres
gem
diferentes. Por exemplo, alguns
arquivos têm a codificação ASCII e
outros têm a codificação Unicode.
Caractere deli- SEPARATOR Os arquivos de origem delimitados Execute uma das seguintes ações:
mitador usam um caractere separador dife- o Padronize o caractere separador
rente (delimitador) entre os campos.
nos arquivos de origem antes de
importá-los.
o Agrupe os arquivos de origem pelo
caractere separador e faça uma
importação separada para cada
Palavra-chave
Item do ACLScript Problema Solução
grupo.
Caractere qua- QUALIFIER Os arquivos de origem delimitados Execute uma das seguintes ações:
lificador de usam um caractere qualificador de o Padronize o caractere qualificador
texto texto diferente para envolver e iden-
nos arquivos de origem antes de
tificar os valores de campo.
importá-los.
o Agrupe os arquivos de origem pelo
caractere qualificador e faça uma
importação separada para cada
grupo.
Linha inicial STARTLINE Os arquivos de origem delimitados Execute uma das seguintes ações:
dos dados têm linhas iniciais diferentes para os o Padronize a linha inicial nos arqui-
dados.
vos de origem antes de importá-los.
o Agrupe os arquivos de origem que
têm a mesma linha inicial e faça
uma importação separada para
cada grupo.
o Defina o campo número_linha
como a linha inicial mais baixa de
todos os arquivos. Após a impor-
tação dos arquivos para as tabelas
do Analytics, você poderá usar o
"Comando EXTRACT" Na
página 203 para extrair apenas os
registros de qualquer tabela com
informações de cabeçalho inde-
sejadas.
Nomes de KEEPTITLE Os arquivos de origem delimitados Execute uma das seguintes ações:
campo têm nomes de campo em diferentes o Padronize o número de linha com
números de linha.
os nomes de campo nos arquivos
de origem antes de importá-los.
o Agrupe os arquivos de origem que
têm os nomes de campo no mesmo
número de linha e faça uma impor-
tação separada para cada grupo.
Nomes de KEEPTITLE Alguns arquivos de origem deli- Execute uma das seguintes ações:
campo mitados têm nomes de campo, o Adicione nomes de campo aos
outros não.
arquivos de origem em que são
necessários antes de importar
todos os arquivos.
o Agrupe os arquivos de origem que
têm nomes de campo, e os arquivos
que não têm nomes de campo, e
faça uma importação separada
para cada grupo.
o Omita KEEPTITLE para importar
Palavra-chave
Item do ACLScript Problema Solução
Sintaxe
IMPORT MULTIEXCEL <TO pasta_importação> FROM {nome_arquivo_origem|pasta_origem}
TABLE planilhas_intervalos_nomeados_entrada <PREFIX> <KEEPTITLE> <CHARMAX tamanho_
máximo_do_campo>
Nota
Você deve especificar os parâmetros de IMPORT MULTIEXCEL exatamente na mesma
ordem mostrada acima e na tabela abaixo.
Parâmetros
Nome Descrição
Exemplo
Se você omitir TO, os dados serão importados na pasta que contém o projeto do Analytics.
FROM O nome do arquivo ou dos arquivos de dados de origem, ou a pasta que contém esses arquivos.
nome_
Especifique nome_arquivo_origem ou pasta_origem como uma cadeia entre aspas.
arquivo_ori-
gem | pasta_ Arquivo ou arquivos de dados de origem na pasta raiz do projeto do Analytics
origem
o único arquivo Excel
Especifique o nome e a extensão do arquivo completos.
Exemplo
FROM "Transações_AF18.xlsx"
Nome Descrição
Exemplo
FROM "Transações_AF*.xlsx"
seleciona:
Transações_FY18.xlsx
Transações_FY17.xlsx
Você pode usar um curinga em mais de um local em um nome de arquivo e em uma extensão de
arquivo.
Exemplo
FROM "Transações_AF*.*"
seleciona:
Transações_FY18.xlsx
Transações_FY17.xls
Exemplo
Exemplo
Nome Descrição
Nota
Quando você especifica uma pasta, todas as planilhas de todos os arquivos do Excel
da pasta com um nome de planilha correspondente ao valor de TABLE serão impor-
tados.
TABLE pla- O nome das planilhas ou intervalos nomeados a importar. Uma tabela do Analytics separada é criada
nilhas_inter- para cada planilha ou intervalo nomeado importado.
valos_
Especifique planilhas_intervalos_nomeados_entrada como uma cadeia entre aspas.
nomeados_
entrada Use um curinga (*) no lugar de caracteres únicos em nomes de planilhas ou intervalos.
Por exemplo, "Trans_*$" seleciona as seguintes planilhas:
o Trans_Jan
o Trans_Fev
o Trans_Mar
o e assim por diante
Nota
O caractere curinga (*) representa zero (0) ou mais ocorrências de qualquer letra,
número ou caractere especial.
Você pode usar um curinga em mais de um local. Por exemplo, *Trans*$ seleciona:
l Trans_Jan
l Jan_Trans
PREFIX Adicione o nome do arquivo do Excel ao início do nome das tabelas do Analytics.
opcional Dica
Se planilhas em arquivos diferentes tiverem o mesmo nome, a anexação do nome do
arquivo do Excel permitirá evitar conflitos entre os nomes das tabelas.
KEEPTITLE Trate a primeira linha de dados como nomes de campos em vez de dados. Se omitida, serão usados
Nome Descrição
CHARMAX O tamanho máximo em caracteres de qualquer campo em uma tabela do Analytics originada como
tamanho_ dados de caracteres em um arquivo de dados de origem.
máximo_do_
campo
opcional
Exemplos
Os exemplos abaixo supõem que você tem dados de transações mensais de três anos armazenados em
três arquivos do Excel:
l Transações_FY18.xlsx
l Transações_FY17.xlsx
l Transações_FY16.xlsx
Cada arquivo do Excel tem 12 planilhas, uma para cada mês do ano. As planilhas também incluem alguns
intervalos nomeados que identificam vários subconjuntos de transações.
Nota
Uma tabela do Analytics separada será criada para cada planilha ou intervalo nomeado
que você importar.
Importar planilhas
Importar todas as planilhas de AF18
Você quer importar todas as 12 planilhas mensais do arquivo do Excel AF18 e ignorar todos os intervalos
nomeados.
l use o símbolo de curinga (*) onde o nome do mês ocorre em cada nome de planilha
l inclua o símbolo de dólar ($) no fim do nome da planilha para selecionar apenas planilhas e
nenhum intervalo nomeado
AF18.
l com TABLE, você usa apenas o símbolo de curinga (*) para que todas as planilhas e intervalos
nomeados do arquivo sejam selecionados
l exclua o símbolo de dólar ($) para que intervalos nomeados possam ser selecionados
Gerenciar diretórios
Importar todas as planilhas de todos os arquivos do Excel na pasta espe-
cificada
Você quer importar todas as planilhas de todos os arquivos do Excel na pasta C:\Auditoria de pon-
tos de venda\Dados\Arquivos mestre de transações.
l com TABLE, você usa apenas o símbolo de curinga (*) para que todas as planilhas de cada arquivo
sejam selecionadas, e o símbolo de dólar ($) para que somente as planilhas sejam selecionadas,
sem intervalos nomeados
l como forma de reduzir a chance de conflitos de nomes, use PREFIX para acrescentar o nome do
arquivo do Excel de origem ao início de cada nome de tabela do Analytics
Observações
Vários comandos IMPORT EXCEL
O comando IMPORT MULTIEXCEL na verdade executa vários comandos IMPORT EXCEL individuais,
um para cada planilha importada. Se você clicar na entrada de IMPORT MULTIEXCEL no log, os coman-
dos IMPORT EXCEL individuais serão exibidos na área de exibição.
Sintaxe
IMPORT ODBC SOURCE nome_da_fonte TABLE nome_tabela <QUALIFIER qualificador_de_
dados> <OWNER nome_do_usuário> <USERID id_do_usuário> <PASSWORD num> <WHERE
clausula_where> <TO nome_tabela> <WIDTH tamanho_máximo_do_campo> <MAXIMUM tama-
nho_máximo_do_campo> <FIELDS campo <;...n>>
Parâmetros
Nome Descrição
SOURCE nome_da_fonte O nome da fonte de dados (DSN) ODBC com que será feita a conexão. O DSN já deve
existir e estar configurado corretamente.
Nota
Você está limitado a usar fontes de dados que usam os drivers ODBC
do Windows instalados no seu computador. Os conectores de dados
nativos do Analytics que podem ser usados com o comando
ACCESSDATA podem não estar disponíveis com o ODBC IMPORT.
TABLE nome_tabela O nome da tabela na fonte de dados ODBC de que os dados serão importados.
nome_tabela geralmente é uma referência a uma tabela de dados nos dados de ori-
gem, mas pode ser uma referência a tudo que o Analytics importa como tabela. Por
exemplo, se usar o Microsoft Text Driver, nome_tabela é uma referência ao arquivo de
texto do qual você quer importar os dados.
QUALIFIER qualificador_ O caractere qualificador de texto. Os valores dos campos são colocados entre carac-
de_dados teres qualificadores para identificação. É preciso especificar o caractere como uma
cadeia entre aspas.
opcional
Use apóstrofos para especificar o caractere aspas: '"'.
OWNER nome_do_usu- O nome da conta de usuário do banco de dados que é o proprietário da tabela à qual
ário você está se conectando.
opcional
Nome Descrição
WHERE clausula_onde Uma cláusula SQL WHERE que limita os registros retornados com base em critérios
especificados. Deve ser uma instrução SQL válida e ser inserida como uma cadeia
opcional
entre aspas:
WIDTH tamanho_ O tamanho máximo em caracteres de qualquer campo na tabela do Analytics originada
máximo_do_campo como dados caractere no arquivo de dados de origem que você está importando.
opcional Você pode digitar qualquer valor entre 1 e 254. O valor padrão é 50. Dados que ultra-
passem o comprimento máximo do campo são truncados quando importados para o
Analytics.
FIELDS campo <,...n> Campos individuais nos dados de origem a serem importados. Especifique o nome.
Nome Descrição
opcional Se especificar vários campos, cada campo deve ser separado por um ponto e vírgula.
Se você omitir FIELDS, todos os campos serão importados.
Colocando os nomes de campo entre aspas faz com que diferenciem maiúsculas de
minúsculas. Se você usar aspas, os nomes de campo de FIELDS e da origem de dados
ODBC devem corresponder exatamente, inclusive maiúsculas e minúsculas. Se você
usar aspas e as maiúsculas e minúsculas dos nomes de campo não corresponderem,
os campos não serão importados.
Nota
FIELDS deve estar posicionado em último entre os parâmetros de
IMPORT ODBC. Caso contrário, o comando falhará.
Exemplos
Importação de dados do SQL Server
Importe dados de um banco de dados do SQL Server para uma tabela do Analytics denominada Trans_
Dec11:
Observações
Método anterior de conectar-se a origens de dados ODBC
O comando IMPORT ODBC é o método anterior de conectar-se a origens de dados compatíveis com
ODBC a partir do Analytics. O novo método de conexão com origens dos dados ODBC usa a janela de
Acesso a Dados e o comando ACCESSDATA.
Você pode continuar a usar IMPORT ODBC no Analytics. No entanto, esse método de conexão agora
está disponível apenas em scripts e a partir da linha de comando do Analytics. Você não pode mais aces-
sar esse método de conexão no Assistente de Definição de Dados .
SUPPRESSTIME ON não for adicionado a esses scripts, eles não serão executados na versão com
suporte a datahora do Analytics.
Para obter mais informações, consulte a seção "SET SUPPRESSTIME" no "Comando SET" Na
página 424.
Sintaxe
IMPORT PDF TO tabela <PASSWORD num> nome_arquivo_importação FROM nome_arquivo_ori-
gem <SERVER nome_perfil> ignorar_comprimento <PARSER "VPDF"> <PAGES intervalo_de_
páginas> {[sintaxe_registro] [sintaxe_campo] <...n>} <...n>
sintaxe_registro ::=
RECORD nome_registro tipo_registro linhas_no_registro transparente [sintaxe_teste] <...n>
sintaxe_teste ::=
TEST incluir_excluir tipo_correspondência AT linha_inicial,posição_inicial,intervalo lógica texto
sintaxe_campo ::=
FIELD nome tipo AT linha_inicial,posição_inicial SIZE comprimento,linhas_no_campo DEC valor
WID bytes PIC formato AS nome_exibicao
Parâmetros
Parâmetros gerais
Nome Descrição
Nome Descrição
num é o número da definição de senha. Por exemplo, se as duas senhas foram pre-
viamente fornecidas ou definidas em um script, ou no agendamento de uma análise,
PASSWORD 2 especifica o uso da senha nº 2.
Para obter mais informações sobre o fornecimento ou a definição de senhas, consulte:
l "Comando PASSWORD" Na página 363
l "Comando SET" Na página 424
l Tag de análise PASSWORD
Para obter mais informações sobre o fornecimento ou a definição de senhas, consulte:
l Comando PASSWORD
l Comando SET
l Tag de análise PASSWORD
FROM nome_arquivo_ori- O nome do arquivo de dados de origem. nome_arquivo_origem deve ser uma cadeia
gem entre aspas.
Se o arquivo de dados de origem não está localizado no mesmo diretório que o projeto
do Analytics, é necessário usar um caminho absoluto para especificar a localização do
arquivo:
o "C:\dados\nome_arquivo_origem"
o "dados\nome_arquivo_origem"
SERVER nome_perfil O nome do perfil do servidor onde estão os dados que você quer importar.
opcional
PARSER "VPDF" Use o analisador VeryPDF para analisar o arquivo PDF durante o processo de defi-
nição de arquivo.
opcional
Se você omitir PARSER, será usado o analisador padrão Xpdf.
Nome Descrição
Se você está importando o arquivo PDF pela primeira vez e não tiver motivo para pro-
ceder de outra forma, use o analisador padrão Xpdf. Se você já encontrou problemas
de alinhamento de dados usando o Xpdf com o arquivo, use o analisador VeryPDF
para verificar se os resultados da análise são melhores.
PAGES intervalo_de_pági- As páginas a serem incluídas quando você não quer incluir todas as páginas do
nas arquivo PDF. intervalo_de_páginas deve ser especificado como uma cadeia entre
aspas.
opcional
Você pode especificar:
o páginas individuais separadas por vírgulas (1,3,5)
o intervalos de páginas (2-7)
o uma combinação de páginas e intervalos (1, 3, 5-7, 11)
Se você omitir PAGES, todas as páginas do arquivo PDF serão importadas.
Parâmetro RECORD
Informações gerais sobre definição de registros.
Nota
Algumas informações de definição de registros são especificadas usando códigos numé-
ricos associados a opções no Assistente de Definição de Dados.
Em scripts, especifique o código numérico e não o nome da opção.
Nome Descrição
Nome Descrição
Parâmetro TEST
Os critérios para definir um conjunto de registros no arquivo PDF. Você pode ter uma ou mais (até 8) ocor-
rências de TEST para cada ocorrência de RECORD.
Nota
Alguns critérios são especificados usando códigos numéricos associados a opções no
Assistente de Definição de Dados (os nomes das opções são mostrados abaixo entre
parênteses).
Em scripts, especifique o código numérico e não o nome da opção.
Nome Descrição
Nome Descrição
Nome Descrição
página 652.
Para outros tipos de correspondência, o texto é uma cadeia vazia "".
Parâmetros de FIELD
Informações de definição de campo.
Nome Descrição
FIELD nome tipo Os campos individuais no arquivo de dados de origem a importar, incluindo o nome e o
tipo de dados do campo. Para excluir um campo da importação, não o especifique.
Para obter mais informações sobre tipo, consulte "Identificadores para os tipos de dados
de campo" Na página 299.
SIZE comprimento, linhas_ o comprimento: o comprimento em bytes do campo no layout da tabela do Analytics
no_campo
Nota
Nome Descrição
Nota
O número de linhas especificado para um campo não pode exceder o
número de linhas especificado para o registro que contém o campo.
AS nome_exibicao O nome de exibição (título alternativo da coluna) para o campo na exibição na nova
tabela do Analytics.
Especifique nome_exibicao como uma cadeia entre aspas. Utilize um ponto e vírgula (;)
entre palavras se quiser uma quebra de linha no título da coluna.
AS é obrigatório na definição de um FIELD. Para que o nome de exibição seja igual ao
nome do campo, insira um valor de nome_exibicao em branco usando a seguinte sin-
taxe: AS "". Verifique se não há espaço entre as duas aspas.
Exemplos
Importação de dados de uma página específica de um arquivo PDF
Importe dados da página 1 de um arquivo PDF protegido por senha, Fornecedores.pdf.
Um conjunto de registros de detalhes, com três campos, é criado na tabela do Analytics resultante, Lista_
Fornecedores :
Observações
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda do
Analytics.
A ACL
B BINARY
C CHARACTER
D DATETIME
E EBCDIC
F FLOAT
G ACCPAC
I IBMFLOAT
K UNSIGNED
L LOGICAL
N PRINT
P PACKED
Q BASIC
R MICRO
S CUSTOM
T PCASCII
U UNICODE
V VAXFLOAT
X NUMERIC
Y UNISYS
Z ZONED
Sintaxe
IMPORT PRINT TO tabela nome_arquivo_importação FROM nome_arquivo_origem
<SERVER nome_perfil> valor_do_conjunto_de_caracteres < número_da_página_de_código> {[sin-
taxe_registro] [sintaxe_campo] <...n>} <...n>
sintaxe_registro ::=
RECORD nome_registro tipo_registro linhas_no_registro transparente [sintaxe_teste] <...n>
sintaxe_teste ::=
TEST incluir_excluir tipo_correspondência AT linha_inicial,posição_inicial,intervalo lógica texto
sintaxe_campo ::=
FIELD nome tipo AT linha_inicial,posição_inicial SIZE comprimento,linhas_no_campo DEC valor WID
bytes PIC formato AS nome_exibicao
Parâmetros
Parâmetros gerais
Nome Descrição
Nome Descrição
FROM nome_arquivo_ori- O nome do arquivo de dados de origem. nome_arquivo_origem deve ser uma cadeia
gem entre aspas.
Se o arquivo de dados de origem não está localizado no mesmo diretório que o projeto
do Analytics, é necessário usar um caminho absoluto para especificar a localização do
arquivo:
o "C:\dados\nome_arquivo_origem"
o "dados\nome_arquivo_origem"
SERVER nome_perfil O nome do perfil do servidor onde estão os dados que você quer importar.
opcional
valor_do_conjunto_de_ O conjunto de caracteres usado para codificar o arquivo de imagem de impressão (Rela-
caracteres tório). É oferecido suporte para os seguintes valores:
o 0 – ASCII
o 1 – EBCDIC
o 2 – Unicode
o 3 – Texto codificado
Parâmetro RECORD
Informações gerais sobre definição de registros.
Nota
Algumas informações de definição de registros são especificadas usando códigos numé-
ricos associados a opções no Assistente de Definição de Dados.
Em scripts, especifique o código numérico e não o nome da opção.
Nome Descrição
Nome Descrição
Parâmetro TEST
Os critérios para definir um conjunto de registros no arquivo de imagem de impressão. Você pode ter uma
ou mais (até 8) ocorrências de TEST para cada ocorrência de RECORD.
Nota
Alguns critérios são especificados usando códigos numéricos associados a opções no
Assistente de Definição de Dados (os nomes das opções são mostrados abaixo entre
parênteses).
Em scripts, especifique o código numérico e não o nome da opção.
Nome Descrição
Nome Descrição
Nome Descrição
Nota
Para dados Unicode, intervalo deve ser um número par de bytes. Por
exemplo, 50;59 (10 bytes). A especificação de um número ímpar de
bytes pode impedir a correspondência correta com critérios.
Parâmetros de FIELD
Informações de definição de campo.
Nome Descrição
FIELD nome tipo Os campos individuais no arquivo de dados de origem a importar, incluindo o nome e o
tipo de dados do campo. Para excluir um campo da importação, não o especifique.
Para obter mais informações sobre tipo, consulte "Identificadores para os tipos de dados
de campo" Na página 308.
AT linha_inicial, posição_ o linha_inicial: a linha inicial do campo no registro do arquivo de imagem de impressão
inicial
Para registros de várias linhas em um arquivo de imagem de impressão, linha_inicial
permite iniciar um campo em qualquer linha do registro. linha_inicial será sempre 1
se linhas_no_registro for 1.
Nome Descrição
SIZE comprimento, linhas_ o comprimento: o comprimento em bytes do campo no layout da tabela do Analytics
no_campo Nota
Nome Descrição
Nota
Para campos de datahora, formato deve corresponder exatamente ao
formato físico dos dados de origem. Por exemplo, se os dados de ori-
gem são 31/12/2014, você deve inserir o formato como
"DD/MM/AAAA".
formato deve estar entre aspas.
AS nome_exibicao O nome de exibição (título alternativo da coluna) para o campo na exibição na nova
tabela do Analytics.
Especifique nome_exibicao como uma cadeia entre aspas. Utilize um ponto e vírgula (;)
entre palavras se quiser uma quebra de linha no título da coluna.
AS é obrigatório na definição de um FIELD. Para que o nome de exibição seja igual ao
nome do campo, insira um valor de nome_exibicao em branco usando a seguinte sin-
taxe: AS "". Verifique se não há espaço entre as duas aspas.
Exemplos
Importação de dados de um arquivo de imagem de impressão (relatório)
Importe dados de um arquivo de imagem de impressão (relatório), Relatório.txt.
Um registro de cabeçalho e um conjunto de registros de detalhes, com cinco campos, são criados na tabela
do Analytics resultante, Relatório_inventário:
Observações
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda do
Analytics.
A ACL
B BINARY
C CHARACTER
D DATETIME
E EBCDIC
F FLOAT
G ACCPAC
I IBMFLOAT
K UNSIGNED
L LOGICAL
N PRINT
P PACKED
Q BASIC
R MICRO
S CUSTOM
T PCASCII
U UNICODE
V VAXFLOAT
X NUMERIC
Y UNISYS
Z ZONED
Sintaxe
IMPORT SAP PASSWORD num TO nome_tabela SAP SOURCE "SAP AGENT" detalhes_impor-
tação
Parâmetros
Nome Descrição
SAP SOURCE "SAP Obrigatório para importar dados do SAP. "SAP AGENT" é a única opção disponível.
AGENT"
detalhes_importação Os detalhes da consulta. Deve estar entre as tags <q></q> e usar as tags listadas na
Nome Descrição
Exemplos
Execução de consulta de várias tabelas
Este exemplo executa uma consulta em várias tabelas usando o comando IMPORT SAP.
A ordem e o aninhamento corretos das tags são necessários para criar uma cadeia de consulta válida. As
tags no exemplo são ordenadas e aninhadas corretamente. Use esse exemplo para determinar a ordem e
o aninhamento necessários das tags de consulta do IMPORT SAP.
Nota
Para facilitar a leitura, esse exemplo está formatado em diversas linhas. No script, o
comando e a cadeia de consulta devem ser inseridos sem quebras de linha.
Dica
<e>500</e>
<ts>
<t>
<n>EKKO</n>
<a>T00001</a>
<td>Cabeçalho do documento de compra</td>
<fs>
<f>EBELN</f>
<f>BUKRS</f>
<f>BSTYP</f>
<f>BSART</f>
<f>STATU</f>
<f>WKURS</f>
</fs>
<wc>
<w>
<f>BUKRS</f>
<o>0</o>
<l>1000</l>
<h></h>
</w>
</wc>
</t>
<t>
<n>EKPO</n>
<a>T00002</a>
<td>Item do documento de compra</td>
<fs>
<f>EBELP</f>
<f>WERKS</f>
<f>MENGE</f>
<f>BRTWR</f>
</fs>
<wc></wc>
</t>
</ts>
<js>
<jc>
<pt>
<pa>T00001</pa>
<pf>EBELN</pf>
</pt>
<ct>
<ca>T00002</ca>
<cf>EBELN</cf>
</ct>
</jc>
</js>
</q>
Observações
O comando IMPORT SAP somente será permitido se o Direct Link estiver instalado e configurado.
A tabela em "Tags de consulta do Direct Link" abaixo lista as tags que podem ser incluídas no parâmetro
detalhes_importação. A coluna Obrigatório usa os seguintes valores para indicar quando as tags devem
estar presentes:
l Y: Obrigatório
l N: Opcional
l M: Obrigatório somente para consultas em várias tabelas
l B: Obrigatório, mas nenhum valor deve ser passado
l W: Opcional quando os filtros são usados
l S: Obrigatório quando o modo agendado é especificado
Nome alternativo <a> M O nome alternativo que identifica a tabela dentro da consulta. Isso
da tabela: permite que a mesma tabela seja usada mais de uma vez.
O comprimento máximo é 6 caracteres.
Todas as linhas <ar> Y Indica que todas as linhas correspondentes devem ser retornadas
como parte do conjunto de resultados da pesquisa.
Os valores válidos são:
1: Substitui o número de registros especificado na tag <r> (Máximo
de linhas)
0: Retorna o número de registros especificado na tag <r> (Máximo de
linhas)
Esta tag sempre aparece após a tag <r></r>.
Campo da tabela <cf> M O campo na tabela filha no qual a condição de associação está base-
filha ada.
Nome do arquivo <cf> Y Identifica o arquivo alvo no sistema do cliente onde os resultados da
do cliente consulta serão armazenados.
Campos <fs> Y A lista de campos na tabela que será retornada como parte dos resul-
tados de consulta.
Valor alto <h> W Contém o valor alto ao usar o operador BETWEEN. Ignorado ao usar
qualquer outro operador.
Contagem de tare- <jcount> B Usada internamente pelo SAP para identificar uma consulta em
fas modo de segundo plano.
Nome da tarefa <jname> B Usada internamente pelo SAP para identificar uma consulta em
modo de segundo plano.
Relações de asso- <js> Y A lista de condições de associação que liga tabelas com a consulta.
ciação
Valor baixo <l> W Contém o valor mais baixo ao usar o operador BETWEEN ou o valor
Idioma <lg> Y Identificador de idioma usado para determinar o local dos campos no
banco de dados SAP.
Campo da tabela <pf> M O campo na tabela pai no qual a condição de associação está base-
pai ada.
Máximo de linhas <r> Y O número máximo de linhas que a consulta deve retornar.
Selecionado <s> Y Se a tag <s> aparecer abaixo da tag <f>, isso indicará que o campo
será retornado como parte do conjunto de resultados da consulta.
Sistema <s> Y Se a tag <s> aparecer abaixo da tag <q>, ela identificará o tipo de sis-
tema em relação ao qual essa consulta é usada (no momento, ape-
nas SAP é suportado).
Nome do arquivo <sf> B Identifica o arquivo no servidor que guarda os resultados da consulta
Descrição da <td> Y A descrição da tabela do dicionário de dados SAP. Ela deve sempre
tabela aparecer abaixo da tag <a>.
Filtros <wc> W A lista de filtros que serão aplicados aos dados contidos na tabela.
Sintaxe
IMPORT XBRL TO tabela nome_arquivo_importação FROM nome_arquivo_origem CONTEXT
nome_contexto <...n> [sintaxe_do_campo] <...n> <IGNORE num_campo> <...n>
sintaxe_campo ::=
FIELD nome tipo AT posição_inicial DEC valor WID bytes PIC formato AS nome_exibicao
Parâmetros
Nome Descrição
FROM nome_arquivo_ori- O nome do arquivo de dados de origem. nome_arquivo_origem deve ser uma cadeia
gem entre aspas.
Se o arquivo de dados de origem não está localizado no mesmo diretório que o projeto
do Analytics, é necessário usar um caminho absoluto para especificar a localização do
arquivo:
o "C:\dados\nome_arquivo_origem"
o "dados\nome_arquivo_origem"
CONTEXT nome_contexto O contexto XBRL do qual será definida a tabela. Se você especificar mais de um con-
Nome Descrição
texto, todos os contextos deverão ser do mesmo tipo (instante, período ou contínuo).
FIELD nome tipo Os campos individuais no arquivo de dados de origem a importar, incluindo o nome e o
tipo de dados do campo. Para excluir um campo da importação, não o especifique.
Para obter mais informações sobre tipo, consulte "Identificadores para os tipos de dados
de campo" Na página oposta.
AS nome_exibicao O nome de exibição (título alternativo da coluna) para o campo na exibição na nova
tabela do Analytics.
Especifique nome_exibicao como uma cadeia entre aspas. Utilize um ponto e vírgula (;)
Nome Descrição
Exemplos
Importação de um arquivo XBRL para uma tabela do Analytics
Importe dados do contexto Atual_Em de um arquivo XBRL para uma tabela do Analytics chamada Finan-
ças :
Observações
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda do
Analytics.
A ACL
B BINARY
C CHARACTER
D DATETIME
E EBCDIC
F FLOAT
G ACCPAC
I IBMFLOAT
K UNSIGNED
L LOGICAL
N PRINT
P PACKED
Q BASIC
R MICRO
S CUSTOM
T PCASCII
U UNICODE
V VAXFLOAT
X NUMERIC
Y UNISYS
Z ZONED
Sintaxe
IMPORT XML TO tabela nome_arquivo_importação FROM nome_arquivo_origem [sintaxe_do_
campo] <...n>
sintaxe_campo ::=
FIELD nome tipo AT posição_inicial DEC valor WID bytes PIC formato AS nome_exibicao RULE
expressão_xpath
Parâmetros
Nome Descrição
FROM nome_arquivo_ori- O nome do arquivo de dados de origem. nome_arquivo_origem deve ser uma cadeia
gem entre aspas.
Se o arquivo de dados de origem não está localizado no mesmo diretório que o projeto
do Analytics, é necessário usar um caminho absoluto para especificar a localização do
arquivo:
o "C:\dados\nome_arquivo_origem"
o "dados\nome_arquivo_origem"
Nome Descrição
FIELD nome tipo Os campos individuais no arquivo de dados de origem a importar, incluindo o nome e o
tipo de dados do campo. Para excluir um campo da importação, não o especifique.
Para obter mais informações sobre tipo, consulte "Identificadores para os tipos de dados
de campo" Na página oposta.
AS nome_exibicao O nome de exibição (título alternativo da coluna) para o campo na exibição na nova
tabela do Analytics.
Especifique nome_exibicao como uma cadeia entre aspas. Utilize um ponto e vírgula (;)
entre palavras se quiser uma quebra de linha no título da coluna.
AS é obrigatório na definição de um FIELD. Para que o nome de exibição seja igual ao
Nome Descrição
RULE expressão_xpath A expressão XPath usada para selecionar o conteúdo do campo do arquivo XML.
XPath é uma maneira padrão de acessar dados de arquivos XML. Por exemplo, acct/-
title/text() recupera o texto na tag <title> no arquivo XML.
Exemplos
Importação de dados de um arquivo XML para uma tabela do Analytics
Importe dados de um arquivo XML para uma tabela do Analytics chamada Funcionários :
Observações
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda do
Analytics.
A ACL
B BINARY
C CHARACTER
D DATETIME
E EBCDIC
F FLOAT
G ACCPAC
I IBMFLOAT
K UNSIGNED
L LOGICAL
N PRINT
P PACKED
Q BASIC
R MICRO
S CUSTOM
T PCASCII
U UNICODE
V VAXFLOAT
X NUMERIC
Y UNISYS
Z ZONED
Comando INDEX
Cria um índice para uma tabela do Analytics que permite acessar os registros em uma ordem sequencial
em vez de na ordem física.
Sintaxe
INDEX <ON> {campo_chave <D> <...n>|ALL} TO nome_arquivo <IF teste> <WHILE teste> <FIRST
intervalo|NEXT intervalo> <OPEN> <ISOLOCALE código_local>
Parâmetros
Nome Descrição
ON campo_chave D <...n> O campo ou campos-chave, ou a expressão, que devem ser utilizados para a indexação.
| ALL
Você pode indexar por qualquer tipo de campo, incluindo campos calculados e
expressões ad hoc, independentemente do tipo de dados.
o campo_chave: use o campo ou os campos especificados
Se você indexar por mais de um campo, criará uma indexação aninhada na tabela. A
ordem do aninhamento seguirá a ordem em que os campos são especificados.
Inclua D para indexar o campo-chave em ordem decrescente. A ordem de indexação
padrão é crescente.
o ALL: usar todos os campos na tabela
Se você indexar por todos os campos em uma tabela, criará uma indexação ani-
nhada. A ordem do aninhamento seguirá a ordem em que os campos aparecem no
layout da tabela.
Uma ordem de indexação crescente é a única opção para ALL.
TO nome_arquivo O nome do índice e o arquivo de índice associado. O arquivo de índice é criado com
uma extensão .INX.
Nota
Na interface do usuário do Analytics, os nomes de índice são limitados a
64 caracteres alfanuméricos. O nome pode incluir o caractere de subli-
nhado ( _ ) mas nenhum outro caractere especial e nenhum espaço. O
nome não pode começar com um número.
IF teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado apenas nos registros que atendem à condição.
opcional
Nome Descrição
Nota
O parâmetro IF é avaliado apenas em relação aos registros restantes em
uma tabela depois da aplicação dos parâmetros de escopo (WHILE,
FIRST, NEXT).
WHILE teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado até que a condição seja avaliada como falsa ou o fim da tabela
opcional
seja alcançado.
Nota
Se você usar WHILE juntamente com FIRST ou NEXT, o processamento
de registros será interrompido assim que um limite for alcançado.
Exemplos
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda
do Analytics.
OPEN Fornecedor
INDEX ON Cidade_Fornecedor TO "ÍndiceCidade" OPEN
OPEN Fornecedor
INDEX ON Cidade_Fornecedor TO "ÍndiceCidade"
,
,
,
SET INDEX TO "ÍndiceCidade"
Comando JOIN
Combina campos de duas tabelas do Analytics em uma única tabela nova do Analytics.
Nota
Para usar correspondência parcial na associação de tabelas, consulte "Comando
FUZZYJOIN" Na página 218.
Sintaxe
JOIN {PKEY campos_chave_primários|PKEY ALL} {FIELDS campos_primários|FIELDS ALL}
{SKEY campos_chave_secundários|SKEY ALL} <WITH campos_secundários|WITH ALL> {sem_
palavra_chave|MANY|UNMATCHED|PRIMARY|SECONDARY|PRIMARY SECONDARY} <IF
teste> TO nome_tabela <LOCAL> <OPEN> <WHILE teste> <FIRST intervalo|NEXT intervalo>
<APPEND> <PRESORT> <SECSORT> <ISOLOCALE código_local>
Parâmetros
Nome Descrição
FIELDS campos_pri- Os campos ou expressões da tabela primária a serem incluídos na tabela de saída
mários | FIELDS ALL associada.
o campos_primários: inclua o campo ou os campos especificados
o ALL: inclua todos os campos da tabela
Nota
Você deve especificar de forma explícita o campo-chave ou os campos-
chave primários se desejar inclui-los na tabela associada. A espe-
cificação de ALL também inclui esses campos.
WITH campos_secun- Os campos ou expressões da tabela secundária a serem incluídos na tabela de saída
dários | WITH ALL associada.
opcional o campos_secundários: inclua o campo ou os campos especificados
o ALL: inclua todos os campos da tabela
Nome Descrição
Nota
Você deve especificar de forma explícita o campo-chave ou os campos-
chave primários e secundários se desejar inclui-los na tabela asso-
ciada. A especificação de ALL também inclui esses campos.
Não será possível especificar WITH se você estiver usando o tipo de
associação UNMATCHED.
MANY
UNMATCHED
Nome Descrição
PRIMARY
Nota
A palavra-chave BOTH é o mesmo que especificar PRIMARY.
SECONDARY
PRIMARY SECONDARY
Nome Descrição
IF teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado apenas nos registros que atendem à condição.
opcional
Nota
O parâmetro IF é avaliado apenas em relação aos registros restantes
em uma tabela depois da aplicação dos parâmetros de escopo (WHILE,
FIRST, NEXT).
Nota
Para a maioria dos tipos de associação, uma condição IF se aplica
somente à tabela primária.
A única exceção é uma associação de muitos para muitos, na qual a
condição IF também pode fazer referência à tabela secundária.
OPEN Abre a tabela criada pelo comando após a execução do comando. Válido apenas se o
comando criar uma tabela de saída.
opcional
WHILE teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado até que a condição seja avaliada como falsa ou o fim da tabela
opcional
seja alcançado.
Nota
Se você usar WHILE juntamente com FIRST ou NEXT, o processamento
de registros será interrompido assim que um limite for alcançado.
Nome Descrição
intervalo o FIRST: iniciar o processamento a partir do primeiro registro até alcançar o número
de registros especificado
opcional o NEXT: iniciar o processamento a partir do registro selecionado no momento até
alcançar o número de registros especificado
Use intervalo para especificar o número de registros a serem processados.
Se você omitir FIRST e NEXT, todos os registros serão processados por padrão.
SECSORT Ordena a tabela secundária pelo campo da chave secundária antes executar o
comando.
opcional
Nota
Não é possível usar SECSORT dentro do comando GROUP.
Nome Descrição
A localidade do sistema no formato idioma_ país. Por exemplo, para usar francês cana-
dense, insira fr_ca.
Use os códigos a seguir:
o idioma: código de idioma padrão ISO 639
o país: código de país padrão ISO 3166
Se você não especificar um código de país, será usado o país padrão do idioma.
Se você não usar ISOLOCALE, a localidade do sistema padrão será usada.
Exemplos
Associe duas tabelas como forma de descobrir empregados que também
podem ser fornecedores
O exemplo a seguir associa as tabelas MestreFunc e Fornecedor usando o endereço como campo-chave
comum (os campos Endereço e Rua_Fornecedor).
O comando JOIN cria uma nova tabela com registros primários e secundários correspondidos, o que
resulta em uma lista com todos os funcionários e fornecedores com o mesmo endereço.
Esta versão do comando JOIN inclui todos os campos das tabelas primária e secundária na tabela de saída
associada.
O comando JOIN usa o tipo de associação UNMATCHED para criar uma nova tabela com registros pri-
mários não correspondentes, o que resulta em uma lista de registros de Ar que não são associados a qual-
quer registro de Cliente.
OPEN Ar PRIMARY
OPEN Cliente SECONDARY
JOIN PKEY Númclien FIELDS Númclien Vencimento Valor SKEY Númclien UNMATCHED TO "Cli-
enteNãoEncontrado.fil" OPEN PRESORT SECSORT
Observações
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda
do Analytics.
Comando LIST
Exibe os dados de um ou mais campos de uma tabela do Analytics formatados em colunas.
Sintaxe
LIST {FIELDS nome_campo <AS nome_exibicao> <...n>|FIELDS ALL} <LINE número lista_de_cam-
pos> <TO {SCREEN|nome_arquivo|PRINT}> <UNFORMATTED> <IF teste> <WHILE teste>
<FIRST intervalo|NEXT intervalo> <HEADER texto_cabeçalho> <FOOTER texto_rodapé> <SKIP
linhas> <EOF> <APPEND>
Parâmetros
Nome Descrição
LINE número lista_de_ Mais de uma linha é usada na saída para cada registo:
campos o número: o número da linha, deve estar entre 2 e 60 inclusive
opcional o lista_de_campos: os campos serão incluídos nessa linha
Nome Descrição
UNFORMATTED A saída é exibida como texto não formatado. A saída é idêntica àquela criada pelo
comando EXPORT ASCII. A saída de dados não formatados pode ser feita em formato
opcional
de um arquivo, que posteriormente pode ser processado por outros programas.
IF teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado apenas nos registros que atendem à condição.
opcional
Nota
O parâmetro IF é avaliado apenas em relação aos registros restantes em
uma tabela depois da aplicação dos parâmetros de escopo (WHILE,
FIRST, NEXT).
WHILE teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado até que a condição seja avaliada como falsa ou o fim da tabela
opcional
seja alcançado.
Nota
Se você usar WHILE juntamente com FIRST ou NEXT, o processamento
de registros será interrompido assim que um limite for alcançado.
HEADER texto_cabeçalho O texto a ser inserido na parte superior de cada página de um relatório.
opcional texto_cabeçalho deve ser especificado como uma cadeia entre aspas. O valor substitui a
variável de sistema HEADER do Analytics.
FOOTER texto_rodapé O texto a ser inserido na parte inferior de cada página de um relatório.
opcional texto_rodapé deve ser especificado como uma cadeia entre aspas. O valor substitui a
variável de sistema FOOTER do Analytics.
SKIP linhas Insere o número especificado de linhas em branco entre cada registo da lista. Por exem-
plo, LIST ALL SKIP 1 produz uma lista com duplo espaço (uma linha em branco entre
opcional
cada registro).
EOF Execute o comando uma ou mais vezes após alcançar o fim do arquivo.
opcional Isso garante que o registro final na tabela seja processado dentro de um comando
GROUP. Use EOF somente se todos os campos forem campos calculados referentes a
registros anteriores.
Exemplos
Listagem de exceções e como salvá-las em um arquivo de texto
Use LIST para criar um relatório listando exceções identificadas em uma tabela de estoque. O relatório é
salvo como um arquivo de texto:
Observações
Quando usar LIST
Use o comando LIST para imprimir dados, exibir dados na tela e exportá-los para um arquivo de texto.
Formatação e totais
A menos que você especifique UNFORMATTED, as seguintes informações são incluídas auto-
maticamente:
l números de página
l data
l hora
l identificação do usuário
l cabeçalhos de colunas
As colunas numéricas também são totalizadas automaticamente.
Comando LOCATE
Pesquisa pelo primeiro registro que corresponde ao valor ou condição especificado ou move para o
número de registro especificado.
Sintaxe
LOCATE {IF teste <WHILE teste> <FIRST intervalo|NEXT intervalo>|RECORD num}
Parâmetros
Nome Descrição
IF teste O valor ou condição a ser pesquisado. Os valores literais de caracteres devem estar
entre aspas, e os valores de datahora entre acentos graves.
WHILE teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado até que a condição seja avaliada como falsa ou o fim da tabela
opcional
seja alcançado.
Nota
Se você usar WHILE juntamente com FIRST ou NEXT, o processamento
de registros será interrompido assim que um limite for alcançado.
Exemplos
Localizar o primeiro registro que corresponde a um valor especificado
Os exemplos a seguir mostram o uso de LOCATE para encontrar a primeira ocorrência de um valor espe-
cífico em uma tabela:
LOCATE IF Nome_Fornecedor = "Equipamentos United" AND Valor_Fatura > 1000 AND Data_
Fatura > `20140930`
LOCATE RECORD 50
Observações
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda do
Analytics.
Como funciona?
Use o comando LOCATE para avançar diretamente para o primeiro registro em uma tabela que cor-
responde ao valor ou condição especificado.
Se o valor ou expressão pesquisado for encontrado, o primeiro registro correspondente da tabela é sele-
cionado. Se o valor ou condição especificado não for encontrado, a tabela é posicionada no seu primeiro
registro.
Você também pode usar LOCATE para avançar diretamente para um número de registro especificado
Para obter mais informações sobre SET EXACT, consulte "Comando SET" Na página 424.
Para obter mais informações a opção Comparações exatas de caractere, consulte Guia Tabela (caixa
de diálogo Opções).
Comando LOOP
Executa repetidamente uma série de comandos do ACLScript em um registro enquanto uma condição
especificada é avaliada como verdadeira.
Nota
O comando LOOP deve estar incluído dentro do comando GROUP.
Sintaxe
LOOP WHILE teste
comando
<...n>
END
Parâmetros
Nome Descrição
WHILE teste O teste que deve ser avaliado como verdadeiro para que os comandos dentro do
comando LOOP sejam executados. Se o teste for avaliado como verdadeiro, os coman-
dos serão executados repetidamente até que o teste seja avaliado como falso.
Exemplos
Divisão de um campo delimitado por vírgula
Você tem uma tabela com dados de fatura e precisa isolar informações específicas para valores de fatura
por departamento. Uma fatura pode ser relacionada a mais de um departamento, e os códigos de depar-
tamento são armazenados em formato delimitado por vírgulas na tabela.
Para extrair os valores de fatura por departamento, você:
1. Usa um comando GROUP para processar a tabela registro a registro.
2. Calcula o número de departamentos (n) associados a cada registro.
3. Usa o comando LOOP para iterar o registro n vezes para extrair dados de cada departamento asso-
ciado ao registro.
COMMENT Use GROUP para contar as vírgulas em cada campo de código de departamento como
forma de identificar quantos departamentos estão associados a ao registro Execute um "LOOP" em
cada registro para cada código do campo, extraindo cada código em seu próprio registro END
GROUP v_quantidade_departamentos = OCCURS(Código_Departamento;',') v_contador = 0 LOOP
WHILE v_contador <= v_quantidade_departamentos v_dept = SPLIT(Código_Departamento; ','; (v_
contador + 1)) EXTRACT FIELDS Número_Fatura; Valor_Fatura; v_dept AS "Departamento" TO
resultado1 v_contador = v_contador + 1 END END
Observações
Dica
Para ver um tutorial detalhado cobrindo os comandos LOOP e GROUP, consulte "Agru-
pamento e loops" Na página 33.
Como funciona?
Cada comando LOOP deve especificar uma condição WHILE para a ser testada e ser fechado com uma
instrução END. Os comandos entre LOOP e END serão executados repetidamente para o registro atual
enquanto o teste especificado for verdadeiro.
Se inicialmente o resultado do teste for falso, os comandos não serão executados.
Comando MERGE
Combina registros de duas tabelas ordenadas do Analytics com estrutura idêntica em uma nova tabela do
Analytics que usa a mesma ordem de classificação das tabelas originais.
Sintaxe
MERGE {ON campos_chave|PKEY campos_chave_primários SKEY secondary_key_fields} <IF
teste> TO nome_tabela <LOCAL> <OPEN> <WHILE teste> <FIRST intervalo|NEXT intervalo>
<APPEND> <PRESORT> <ISOLOCALE código_local>
Parâmetros
Nome Descrição
Requisito de organização
Os campos-chave nas tabelas primária e secundária devem ser organizados em ordem
ascendente. Se um ou ambos os campos-chave não estiverem ordenados, ou estiverem
ordenados em ordem decrescente, o comando MERGE falhará.
É possível usar PRESORT para ordenar o campo-chave primário. Se o campo secun-
dário não estiver organizado, você deve primeiramente organizá-lo em uma operação
de organização separada antes de realizar a fusão.
IF teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado apenas nos registros que atendem à condição.
opcional
Nome Descrição
Nota
O parâmetro IF é avaliado apenas em relação aos registros restantes em
uma tabela depois da aplicação dos parâmetros de escopo (WHILE,
FIRST, NEXT).
OPEN Abre a tabela criada pelo comando após a execução do comando. Válido apenas se o
comando criar uma tabela de saída.
opcional
WHILE teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado até que a condição seja avaliada como falsa ou o fim da tabela
opcional
seja alcançado.
Nota
Se você usar WHILE juntamente com FIRST ou NEXT, o processamento
de registros será interrompido assim que um limite for alcançado.
Nome Descrição
Exemplos
Mesclar tabelas com nomes de campos chave idênticos
O exemplo a seguir mescla duas tabelas com nomes de campos-chave idênticos:
Observações
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda
do Analytics.
Alternativas à mesclagem
Pode ser complicado realizar a mesclagem corretamente. Você pode conseguir o mesmo resultado ane-
xando, ou extraindo e anexando, e, em seguida, ordenando.
Para obter mais informações, consulte "Comando APPEND" Na página 73 e "Comando EXTRACT" Na
página 203.
Se as duas tabelas de origem já estiverem ordenadas, a mesclagem será mais eficiente e poderá ser exe-
cutada com mais rapidez.
Comando NOTES
Cria, modifica ou remove uma nota associada a um registro individual em uma tabela do Analytics.
Sintaxe
NOTES <IF teste> <TEXT texto_da_nota> <APPEND> <CLEAR>
Parâmetros
Nome Descrição
IF teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado apenas nos registros que atendem à condição.
opcional
Nota
O parâmetro IF é avaliado apenas em relação aos registros restantes em
uma tabela depois da aplicação dos parâmetros de escopo (WHILE,
FIRST, NEXT).
o Se você não especificar um teste IF, o texto da nota será adicionado a todos os regis-
tros na tabela
o Se você especificar um teste IF e CLEAR, as notas dos registros que corresponderem
à condição serão excluídas
TEXT texto_da_nota O texto a adicionar como nota. texto_da_nota deve ser uma cadeia entre aspas ou uma
expressão de caracteres.
opcional
APPEND A texto da nota é adicionado ao final de todas as notas existentes. Se omitido, todas as
notas atuais serão substituídas.
opcional
LIMPAR As notas são excluídas. Mesmo se todas as notas de registro em uma tabela forem exclu-
ídas, o campo NotaDoRegistro gerado automaticamente não será excluído do layout da
opcional
tabela.
Exemplos
Adição da mesma nota a vários registros
Todas as notas atuais dos registros especificados são sobrescritas:
NOTES CLEAR
Observações
Exclusão do campo NotaDoRegistro
Para excluir o campo NotaDoRegistro do layout da tabela, e todas as notas na tabela, use o comando
DELETE NOTES sem nenhuma opção especificada.
Comando NOTIFY
Envia uma mensagem de notificação por e-mail.
Sintaxe
NOTIFY USER nome_do_usuário <PASSWORD senha> MAILBOX nome_do_caminho
ADDRESS destinatário <CC destinatário_cc> <BCC destinatário_cco> <SUBJECT assunto>
MESSAGE mensagem <ATTACHMENT nome_do_caminho>
Parâmetros
Nome Descrição
MAILBOX nome_do_cami- O nome do servidor SMTP a ser usado para enviar a mensagem de e-mail. Por exemplo:
nho
MAILBOX "mailserver.acl.com"
ADDRESS destinatário O endereço de e-mail de um ou mais destinatários. Separe vários endereços de e-mail
com vírgula.
Insira no máximo 1.020 caracteres.
BCC recipientes_cco O endereço de e-mail de um ou mais destinatários de cópia oculta. Separe vários ende-
reços de e-mail com vírgula.
opcional
MESSAGE mensagem O texto do corpo da mensagem de e-mail. A mensagem usa texto simples e não permite
HTML.
Se você quiser inserir uma quebra de linha na mensagem, use dois caracteres de cir-
cunflexo: ^^.
Nome Descrição
ATTACHMENT nome_do_ O caminho e o nome do arquivo de um ou mais anexos. Deve ser uma cadeia entre
caminho aspas.
opcional Especifique vários anexos, inserindo uma lista separada por vírgula de arquivos para
nome_do_caminho:
ATTACHMENT "resultado1,resultado2"
Exemplos
Envio de um e-mail de relato de erro
Você está executando um script e deseja enviar um e-mail de notificação em caso de falha do script. Use
NOTIFY para definir a mensagem de e-mail e incluir dois anexos:
l o arquivo de log
l um arquivo .fil contendo os erros registrados
Observações
Destinatários e anexos
O comando NOTIFY pode ser utilizado para enviar mensagens de notificação por meio de e-mail para um
ou mais destinatários. As mensagens podem incluir arquivos de dados anexados e projetos do Analytics.
O comando NOTIFY pode ser usado para notificar os funcionários apropriados quando um script falhar
inesperadamente.
Protocolos e portas
O comando pode ser utilizado com qualquer servidor de e-mail que ofereça suporte a SMTP (Simple Mail
Transfer Protocol), utilizado pelo Microsoft Exchange e diversos outros servidores de e-mail. O comando
NOTIFY pode também ser usado com aplicativos mais antigos de e-mail, da Microsoft e de outros, que
enviam e-mail localmente.
O NOTIFY usa a porta 25. Portanto, essa porta deve estar aberta, caso contrário, o comando falhará.
Tratamento de erros
Caso o Analytics não consiga se conectar ao servidor de e-mail, ele realiza mais cinco tentativas de cone-
xão, com uma pausa de 10 segundos entre cada tentativa. Caso todas as tentativas resultem em falha, o
comando NOTIFY é cancelado com o registro de uma mensagem no log mas o script continua em pro-
cessamento.
O comando SET pode ser usado para alterar esse comportamento. Um outro número de tentativas de
conexão e de tempo entre conexões pode ser especificado, ou as tentativas adicionais de conexão podem
ser desabilitadas. Também é possível instruir que o Analytics interrompa o processamento de um script
caso um comando NOTIFY seja cancelado. Para obter mais informações, consulte "Comando SET" Na
página 424.
Um destinatário inválido de e-mail não constitui uma falha no comando NOTIFY e não causa a interrupção
do script independentemente da configuração associada.
Comando OPEN
Abre uma tabela do Analytics e o arquivo de dados associado.
Sintaxe
OPEN {nome_tabela|arquivo_de_dados <FORMAT nome_do_layout>} <BUFFERLENGTH com-
primento> <CRLF> <DBASE> <INDEX arquivo_índice> <PRIMARY|SECONDARY> <SKIP
bytes> <RELATION campo_chave>
Parâmetros
Nome Descrição
arquivo_de_dados O arquivo de dados a ser associado à tabela especificada por FORMAT nome_do_
layout.
O Analytics assume uma extensão de arquivo .fil se nenhuma extensão for espe-
cificada. Para abrir um arquivo sem extensão, insira um ponto (.) no final do nome do
arquivo.
FORMAT nome_do_layout O layout da tabela do Analytics será aplicado ao arquivo de dados aberto como tabela.
opcional
BUFFERLENGTH n O comprimento em bytes da área de entrada do buffer a ser alocada à tabela. O valor
padrão é 33.000 bytes.
opcional
Áreas maiores do buffer podem melhorar a velocidade de processamento à custa de
RAM disponível para armazenamento dos comandos do Analytics.
Se nenhum bloco de comprimento variável da IBM que excede o comprimento do buf-
fer for lido, o Analytics exibirá uma mensagem de erro e para o processamento. O valor
padrão é definido no campo Tamanho de buffer na guia Tabela na caixa de diálogo
Opções.
Raramente será necessário alterar BUFFERLENGTH N, pois o padrão é suficiente para
tratar quase todas as situações.
CRLF Especifica que um arquivo ASCII do comprimento variável será lido. O Analytics ajusta
automaticamente os comprimentos de registro variáveis.
opcional
Por padrão, os arquivos são considerados arquivos de comprimento fixo.
DBASE Especifica que a origem de dados é um arquivo dBASE. O Analytics reconhece o tipo
de arquivo do dBASE e automaticamente cria uma tabela a partir da descrição do
opcional
Nome Descrição
arquivo. Esse parâmetro pode ser omitido para arquivos do dBASE com extensão .dbf.
INDEX arquivo_índice O arquivo de índice a ser aplicado à tabela quando ela fora aberta.
opcional A extensão de arquivo usada para o nome de arquivo de índice é .inx, quando
nenhuma extensão for especificada. Você pode especificar INDEX com tabelas pri-
márias ou secundárias.
PRIMARY | SECONDARY Especifica que uma tabela é aberta como tabela primária ou tabela secundária. Se omi-
tido, a tabela é aberta como uma tabela primária.
opcional
RELATION campo_chave Especifica que a tabela deve ser aberta como uma tabela relacionada ad hoc. O Analy-
tics não mantém esta relação, quando a tabela estiver fechada.
opcional
Você também deverá especificar o parâmetro INDEX ao usar RELATION. campo_
chave é o campo-chave ou expressão usado para criar a relação entre duas tabelas.
Exemplos
Abertura de uma tabela durante a especificação de um layout da tabela
Abra a tabela April_2012 usando o layout da tabela Março_2012:
OPEN Estoque
Abertura de uma tabela e criação de uma relação ad hoc com outra tabela
Você precisa estabelecer um relacionamento temporário entre uma tabela aberta denominada Clientes
(a tabela primária) e uma tabela denominada Contas_a_receber (a tabela secundária).
Use um índice chamado Índice_cliente e um campo-chave na tabela primária denominado Sobrenome:
Comando OUTLIERS
Identifica valores discrepantes estatísticos em um campo numérico. Os valores discrepantes podem ser
identificados para o campo como um todo ou para grupos separados baseados em valores idênticos de um
ou mais campos-chave de caracteres, numéricos ou datahora.
Sintaxe
OUTLIERS {AVERAGE|MEDIAN} {PKEY campo_chave <...n>|NOKEY} ON campo_numérico
<OTHER campo <...n>> NUMSTDEV número_desvios_padrão <IF teste> <TO {SCREEN|nome_
tabela}> <PRESORT> <WHILE teste> <FIRST intervalo|NEXT intervalo> <OPEN>
Nota
Não é possível executar o comando OUTLIERS localmente em uma tabela de servidor.
Você deve especificar o nome do comando OUTLIERS com todas as letras. Esse
comando não deve ser abreviado.
Parâmetros
Nome Descrição
AVERAGE | MEDIAN O método para calcular o ponto central dos valores em campo_numérico (o campo de
valor discrepante).
o AVERAGE: calcule a média dos valores
o MEDIAN: calcule a mediana dos valores
O ponto central é calculado para:
o o campo numérico como um todo, ou
o os valores numéricos para cada grupo de campos-chave
O ponto central é usado subsequentemente para calcular o desvio padrão do campo
numérico ou de cada grupo.
Nota
Se você especificar MEDIAN, campo_numérico deve estar ordenado.
Use PRESORT se campo_numérico ainda não estiver ordenado.
Dica
Se os dados onde você está procurando valores discrepantes estiverem
consideravelmente distorcidos, MEDIAN poderá gerar resultados mais
representativos da maior parte dos dados.
PKEY campo_chave <...n> Se você especificar PKEY, os valores discrepantes serão identificados por grupo. Se
| NOKEY você especificar NOKEY, os valores discrepantes serão identificados por campo.
Nome Descrição
ON campo_numérico O campo numérico onde serão procurados valores discrepantes. Você pode examinar
apenas um campo por vez.
Os valores discrepantes são os que ficam fora dos limites superiores e inferiores esta-
belecidos pelo desvio padrão do campo ou do grupo, ou por um múltiplo de desvio
padrão especificado.
NUMSTDEV número_des- Em campo_numérico, o número de desvios padrão da média ou da mediana para os limi-
vios_padrão tes superior e inferior de valores discrepantes. Você pode especificar qualquer número
inteiro ou decimal (0,5, 1, 1,5, 2... )
A fórmula para criar limites de valores discrepantes é:
média/mediana ± (número_desvios_padrão * desvio padrão)
Nota
O desvio padrão é uma medida da dispersão de um conjunto de dados.
Ou seja, o quanto os valores estão dispersos. O cálculo de valores dis-
crepantes usa desvio padrão da população.
NUMSTDEV 2
Nome Descrição
IF teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado apenas nos registros que atendem à condição.
opcional
Nota
O parâmetro IF é avaliado apenas em relação aos registros restantes em
uma tabela depois da aplicação dos parâmetros de escopo (WHILE,
FIRST, NEXT).
Nome Descrição
rico é calculado)
Nota
A classificação de um campo_
numérico calculado é um
requisito técnico interno do
Analytics.
Dica
Se o campo ou os campos da tabela de entrada já estiverem ordenados,
você poderá economizar tempo de processamento não especificando o
parâmetro PRESORT.
Nota
Você não pode usar PRESORT dentro do comando GROUP.
WHILE teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado até que a condição seja avaliada como falsa ou o fim da tabela
opcional
seja alcançado.
Nota
Se você usar WHILE juntamente com FIRST ou NEXT, o processamento
de registros será interrompido assim que um limite for alcançado.
OPEN Abre a tabela criada pelo comando após a execução do comando. Válido apenas se o
comando criar uma tabela de saída.
opcional
Exemplos
Identificação de valores de transação anormais
Você quer identificar valores de transação anormais em toda a tabela Ar no projeto Sample Pro-
ject.acl.
Você decide definir os limites de valores discrepantes como 3 vezes o desvio padrão do campo Valor. O
teste retorna 16 valores discrepantes na tabela de 772 registros.
OPEN Ar
OUTLIERS AVERAGE NOKEY ON Valor NUMSTDEV 3 PRESORT TO "Valores_discrepantes_AR.-
fil" OPEN
Você repete o teste, mas aumenta o múltiplo de desvio padrão para 3,5. Agora, o teste retorna apenas 6
valores discrepantes porque os limites dos valores discrepantes estão mais afastados do ponto central dos
valores no campo Valor.
OPEN Ar
OUTLIERS AVERAGE NOKEY ON Valor NUMSTDEV 3,5 PRESORT TO "Valores_discrepantes_
AR.fil" OPEN
OPEN Ar
OUTLIERS AVERAGE PKEY Número ON Valor NUMSTDEV 3 PRESORT TO "Valores_dis-
crepantes_Cliente_AR.fil" OPEN
O teste retorna 7 valores discrepantes. O desvio padrão e a média de cada grupo de transações de cliente
são relatados:
Número do cliente
(Número) Valor da transação STDEV AVERAGE Número do grupo
Número do cliente
(Número) Valor da transação STDEV AVERAGE Número do grupo
438.81 ± (3 * 772.44)
= 438.81 ± 2,317.32
= (1.878,51) (limite inferior)
= 2.756,13 (limite superior)
OPEN Ar
OUTLIERS MEDIAN PKEY Número ON Valor NUMSTDEV 3 PRESORT TO "Valores_dis-
crepantes_Cliente_AR_Median.fil" OPEN
O teste retorna 10 valores discrepantes, em vez dos 7 retornados no teste anterior. Dependendo da natu-
reza dos dados MEDIAN e AVERAGE podem retornar resultados diferentes:
Número do cliente
(Número) Valor da transação STDEV MEDIAN Número do grupo
Observações
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda do
Analytics.
lSubstitua número_desvios_padrão pelo múltiplo real de desvios padrão que você usou.
l Se você precisar da mediana como ponto central em vez da média, substitua AVERAGE para
MEDIAN.
3. Cole esta expressão na linha de comando do Analytics, edite-a conforme a necessidade e pres-
sione Enter:
l Substitua número_desvios_padrão pelo múltiplo real de desvios padrão que você usou.
l Se você precisar da mediana como ponto central em vez da média, substitua AVERAGE para
MEDIAN.
4. Clique com o botão direito do mouse na exibição e selecione Adicionar colunas .
5. Na lista Campos disponíveis clique duas vezes em Limite_inferior e em Limite_superior para adi-
cioná-los à lista Campos selecionados .
6. Clique em OK.
7. Opcional. Reposicione os campos adicionados arrastando os cabeçalhos das colunas.
Comando PASSWORD
Cria uma definição de senha, sem valor de senha, que solicita uma senha do usuário durante a execução
de um script.
Sintaxe
PASSWORD num < prompt>
Parâmetros
Nome Descrição
num Um valor entre 1 e 10 que identifica uma definição de senha de forma exclusiva.
prompt Uma expressão de caracteres válida a ser exibida na caixa de diálogo utilizada para soli-
citar a senha. Coloque as cadeias literais entre aspas.
opcional
Se prompt for omitido, será exibida uma caixa de diálogo padrão sem mensagem.
Exemplos
Solicitar informações de senha
Use PASSWORD para solicitar do usuário as três senhas necessárias em um script. Depois que o usuário
inserir as senhas necessárias, o script poderá completar o processamento restante sem interrupção:
PASSWORD 1 "Senha:"
REFRESH Abc PASSWORD 1
Use o comando PASSWORD com o comando DEFINE TABLE DB para definir uma tabela do servidor
por meio do Conector do AX, que exige uma senha para o perfil de banco de dados e outra para o perfil
do servidor associado:
Observações
Quando usar PASSWORD
Use o comando PASSWORD para solicitar que um usuário insira informações de senha antes que um
script acesse, importe ou atualize dados protegidos por senha.
Você pode criar até dez senhas diferentes em um script.
O comando PASSWORD é útil se:
l você quer evitar a digitação de uma senha real em um script; essa digitação é exigida pelo
comando SET PASSWORD
l usuários individuais precisam inserir senhas distintas
Comando PAUSE
Suspende um script e exibe informações em uma caixa de diálogo aos usuários.
Sintaxe
PAUSE mensagem <IF teste>
Parâmetros
Nome Descrição
mensagem Uma mensagem a ser exibida na caixa de diálogo. O comprimento máximo é 199 carac-
teres.
mensagem deve estar entre aspas. Se a mensagem tiver aspas, coloque-a entre após-
trofos.
IF teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado apenas nos registros que atendem à condição.
opcional
Nota
O parâmetro IF é avaliado apenas em relação aos registros restantes em
uma tabela depois da aplicação dos parâmetros de escopo (WHILE,
FIRST, NEXT).
Exemplos
Exibição de uma mensagem de erro
Você precisa de uma entrada de usuário para cumprir requisitos específicos. Quando você detectar que a
entrada não cumpre esses requisitos, use o comando PAUSE e exiba uma mensagem de erro em uma
caixa de diálogo:
Observações
Quando usar PAUSE
Use PAUSE para exibir mensagens somente para leitura durante a execução de um script. Você pode exi-
bir mensagens de erro ou informações, como os resultados de uma operação analítica.
Como funciona?
Durante a exibição da caixa de diálogo, a execução do script é interrompida e somente é retomada depois
que o usuário clicar em OK para fechar a caixa de diálogo da mensagem. Por esse motivo, não é possível
usar PAUSE em scripts ou análises que devem executar automaticamente.
Limitações
PAUSE tem as seguintes limitações:
l não pode ser incluído dentro do comando GROUP
l não pode ser usado em análises executadas no Robôs ou no Servidor AX
Comando PREDICT
Aplica um modelo preditivo a um conjunto de dados sem rótulo para prever classes ou valores numéricos
associados a registros individuais.
Sintaxe
PREDICT MODEL nome_modelo TO nome_trabela <IF teste> <WHILE teste> <FIRST
intervalo|NEXT intervalo>
Parâmetros
Nome Descrição
MODEL nome_modelo O nome do arquivo de modelo a ser usado para prever classes ou valores. Você usa um
arquivo de modelo gerado previamente pelo comando TRAIN.
Você deve especificar a extensão de arquivo *.model. Por exemplo:
MODEL "Previsão_inadimplência_empréstimo.model"
Nota
O arquivo de modelo deve ter sido treinado em um conjunto de dados
com os mesmos arquivos que o conjunto de dados não rotulado, ou subs-
tancialmente os mesmos arquivos.
Nome Descrição
Nota
Os nomes de tabela são limitados a 64 caracteres alfanuméricos, sem
contar a extensão .FIL. O nome pode incluir o caractere de sublinhado ( _
) mas nenhum outro caractere especial e nenhum espaço. O nome não
pode começar com um número.
IF teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado apenas nos registros que atendem à condição.
opcional
Nota
O parâmetro IF é avaliado apenas em relação aos registros restantes em
uma tabela depois da aplicação dos parâmetros de escopo (WHILE,
FIRST, NEXT).
WHILE teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado até que a condição seja avaliada como falsa ou o fim da tabela
opcional
seja alcançado.
Nota
Se você usar WHILE juntamente com FIRST ou NEXT, o processamento
de registros será interrompido assim que um limite for alcançado.
Exemplos
Use um modelo de classificação para fazer previsões
Você informa um modelo de classificação para o comando PREDICT para fazer previsões sobre quais
solicitantes de empréstimo atuais ficarão inadimplentes se receberem um empréstimo.
Previamente, você gerou o modelo de classificação usando o comando TRAIN com um conjunto de
dados de empréstimo históricos, incluindo informações sobre inadimplência de empréstimos.
OPEN "Solicitantes_empréstimos_atuais"
PREDICT MODEL "Previsão_inadimplência_empréstimo.model" TO "Inadimplência_prevista_soli-
citantes_empréstimo.FIL"
Você informa um modelo de regressão para o comando PREDICT para fazer previsões sobre o preço
futuro de venda de residências.
Previamente, você gerou o modelo de regressão usando o comando TRAIN com um conjunto de dados de
vendas recentes de residências, incluindo o preço da venda.
OPEN "Avaliação_preços_residências"
PREDICT MODEL "Previsão_preços_residências.model" TO "Preços_residências_previstos.FIL"
Observações
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda do
Analytics.
Comando PRINT
Imprime um arquivo de texto, um arquivo de log do Analytics ou um item de projeto do Analytics exportado
como um arquivo externo: um script (.aclscript), um layout da tabela (.layout) ou uma área de trabalho
(.wsp). Também é possível imprimir um gráfico gerado por um comando.
Sintaxe
PRINT {nome_arquivo|GRAPH}
Parâmetros
Nome Descrição
Exemplos
Impressão de um arquivo de log
Para imprimir o arquivo de log do projeto ACL_Demo.acl, especifique o comando a seguir:
Impressão de um gráfico
Para imprimir um gráfico do comando BENFORD, especifique os comandos a seguir:
OPEN Metaphor_TransCp_2002
BENFORD ON Valor_Fatura LEADING 1 TO GRAPH
PRINT GRAPH
Observações
Seleção de uma impressora
A impressora usada é a impressora padrão configurada no Microsoft Windows. Pra alterar a impressora é
necessário alterar a impressora padrão no Windows.
Comandos relacionados
Para imprimir o conteúdo de uma tabela do Analytics em um projeto, utilize o comando DO REPORT.
Comando PROFILE
Gera estatísticas resumidas para um ou mais campos numéricos ou expressões numéricas em uma
tabela do Analytics.
Sintaxe
PROFILE {<FIELDS> campo_numérico <...n>|<FIELDS> ALL} <IF teste> <WHILE teste> <FIRST
intervalo|NEXT intervalo>
Parâmetros
Nome Descrição
FIELDS campo_numérico Especifique campos individuais para a criação de perfis ou especifique ALL para criar
<...n> | FIELDS ALL perfis para todos os campos numéricos na tabela do Analytics.
IF teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado apenas nos registros que atendem à condição.
opcional
Nota
O parâmetro IF é avaliado apenas em relação aos registros restantes
em uma tabela depois da aplicação dos parâmetros de escopo (WHILE,
FIRST, NEXT).
WHILE teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado até que a condição seja avaliada como falsa ou o fim da tabela
opcional
seja alcançado.
Nota
Se você usar WHILE juntamente com FIRST ou NEXT, o processamento
de registros será interrompido assim que um limite for alcançado.
Exemplos
Criação de perfil de um único campo
Crie o perfil do campo Salário:
OPEN FolhaPagamento_Funcionário
PROFILE FIELDS Salário
Observações
Estatísticas exibidas na saída
As estatísticas a seguir são exibidas para cada campo numérico ou expressão numérica especificado para
o comando:
l valor total
l valor absoluto
l valor mínimo
l valor máximo
Comando QUIT
Encerra a sessão atual e fecha o Analytics.
Sintaxe
QUIT
Exemplos
Verificar se o arquivo existe e fechar o Analytics se o arquivo não existir
Você criou um script para execução por outras pessoas. Se um arquivo necessário não existir, você quer
fechar o Analytics.
O exemplo a seguir verifica se o arquivo obrigatório Estoque.csv existe e fecha o Analytics se o
arquivo não existir:
IF FILESIZE("Estoque.csv") = -1 QUIT
OPEN Estoque
SUMMARIZE ON Local CLassProd SUBTOTAL Valor TO "Valor_estoque_por_local_classe.FIL"
PRESORT CPERCENT
QUIT
Observações
As alterações são salvas
Quando QUIT é executado, todas as tabelas do Analytics abertas são salvas e fechadas antes de sair.
Se você modificou uma exibição ativa, ou um script, e não salvou as alterações, o Analytics pergunta se
você deseja salvar antes de sair.
Comando RANDOM
Gera um conjunto de números aleatórios.
Sintaxe
RANDOM NUMBER n <SEED valor_de_origem> MINIMUM valor_mínimo MAXIMUM valor_máximo
<COLUMNS n> <UNIQUE> <SORTED> <TO {SCREEN|nome_arquivo}> <APPEND>
Parâmetros
Nome Descrição
MINIMUM valor_mínimo O menor número possível no conjunto de números aleatórios. Qualquer expressão ou
valor numérico válido é permitido.
MAXIMUM valor_máximo O maior número possível no conjunto de números aleatórios. Qualquer expressão ou
valor numérico válido é permitido.
COLUMNS n O número de colunas a ser usado para exibir o conjunto de números aleatórios.
opcional Se você omitir COLUMNS, o padrão será 6 colunas.
Nome Descrição
Nota
Não especifique UNIQUE quando o tamanho especificado para o con-
junto de números aleatórios excede 75% do intervalo entre MINIMUM e
MAXIMUM. Se você fizer isso, o resultado poderá ser o descarte de um
número excessivo de números aleatórios.
Exemplos
Gerar um arquivo de texto com 100 valores aleatórios
Você quer selecionar aleatoriamente 100 arquivos impressos de um conjunto de arquivos com nume-
ração de 10.000 a 20.000.
Você pode usar o comando RANDOM para gerar um arquivo de texto com 100 números aleatórios entre
10.000 e 20.000. Em seguida, você obtém os arquivos impressos que correspondem aos números ale-
atórios. Os valores são organizados em 10 colunas, são únicos e classificados em ordem crescente:
RANDOM NUMBER 100 SEED 45387 MINIMUM 10000 MAXIMUM 20000 COLUMNS 10 UNIQUE
SORTED TO "Números_Aleatórios.txt"
Observações
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda do
Analytics.
Comando RCOMMAND
Passa uma tabela do Analytics para um script do R externo como um quadro de dados e cria uma nova
tabela no projeto do Analytics usando a saída do script R externo.
Sintaxe
RCOMMAND FIELDS campo <...n> RSCRIPT caminho_para_script TO nome_tabela <IF teste>
<WHILE teste> <FIRST intervalo|NEXT intervalo> <KEEPTITLE> <SEPARATOR caractere>
<QUALIFIER caractere> <OPEN>
Parâmetros
Nome Descrição
RSCRIPT caminho_para_ O caminho completo ou relativo para o script do R no sistema de arquivos. Coloque
script caminho_para_script entre aspas.
Nome Descrição
Nota
Os nomes de tabela são limitados a 64 caracteres alfanuméricos,
sem contar a extensão .FIL. O nome pode incluir o caractere de subli-
nhado ( _ ) mas nenhum outro caractere especial e nenhum espaço.
O nome não pode começar com um número.
A tabela de saída é criada a partir do quadro de dados ou matriz que o script do R
retorna.
IF teste Uma condição que precisa ser atendida para processar o registro atual. O quadro de
dados passado para o script do R contém apenas os registros que atendem à con-
opcional
dição.
WHILE teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado até que a condição seja avaliada como falsa ou o fim da tabela
opcional
seja alcançado.
Nota
Se você usar WHILE juntamente com FIRST ou NEXT, o processamento
de registros será interrompido assim que um limite for alcançado.
KEEPTITLE Trate a primeira linha de dados como nomes de campos em vez de dados. Se omitida,
serão usados nomes de campo genéricos.
opcional
Esta opção é obrigatória se quiser recuperar dados usando nomes de coluna no script
do R.
SEPARATOR caractere O caractere a ser usado como separador entre campos. É preciso especificar o carac-
tere como uma cadeia entre aspas.
opcional
O caractere padrão é uma vírgula.
Nota
Evite usar quaisquer caracteres que aparecem nos campos de entrada.
Se o caractere SEPARATOR aparecer nos dados de entrada, os resul-
tados poderão ser afetados.
Nome Descrição
QUALIFIER caractere O caractere qualificador de texto. Os valores dos campos são colocados entre carac-
teres qualificadores para identificação. É preciso especificar o caractere como uma
opcional
cadeia entre aspas.
O caractere padrão é uma aspa.
Nota
Evite usar quaisquer caracteres que aparecem nos campos de entrada.
Se o caractere QUALIFIER aparecer nos dados de entrada, os resul-
tados poderão ser afetados.
OPEN Abre a tabela criada pelo comando após a execução do comando. Válido apenas se o
comando criar uma tabela de saída.
opcional
Exemplos
Colocar o R em operação (Hello world)
Crie um script "hello world" para testar a conexão entre o Analytics e o R:
Comando do Analytics
Script do R (análise.r)
srcTable<-acl.readData()
Comando do Analytics
Script do R (análise.r)
Comando do Analytics
Script do R (análise.r)
Comando do Analytics
Script do R (análise.r)
Comando do Analytics
Script do R (análise.r)
Observações
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda
do Analytics.
# armazena a tabela do Analytics em um quadro de dados denominado minhaTabela que pode ser
referenciado em todo o script
minhaTabela<-acl.readData()
Para recuperar dados de uma célula na estrutura de dados, você pode usar uma das seguintes abor-
dagens:
Nota
As coordenadas são baseadas na ordem de campos especificada no comando e não
no layout da tabela ou na exibição aberta no momento.
l Uso de nomes de linha e coluna:
# Passa o quadro de dados minhaNovaTabela para o Analytics para criar uma nova tabela
acl.output<-minhaNovaTabela
Nota
É necessário retornar um quadro de dados ou uma matriz ao Analytics quando o script do
R termina. Verifique se as colunas do quadro de dados ou matriz contêm apenas valores
atômicos e não listas, matrizes ou objetos não atômicos. Se não for possível converter os
valores em tipos de dados do Analytics, o comando falhará.
Lógico Lógico
Numérico Numérico
Caractere Caractere
Arquivo de log R
O Analytics registra em log as mensagens da linguagem R no arquivo aclrlan.log na pasta do pro-
jeto. Use esse arquivo de log para depurar erros do R.
Dica
O arquivo de log está disponível na pasta Resultados das tarefas de análise do Analytics
Exchange.
Comando REFRESH
Atualiza os dados em uma tabela do Analytics com a origem de dados associada.
Sintaxe
REFRESH < nome_tabela> <PASSWORD num>
Parâmetros
Nome Descrição
nome_tabela O nome da tabela do Analytics a ser atualizada. Se você não especificar um nome_
tabela, a tabela aberta será atualizada.
opcional
Exemplos
Atualização de uma tabela sem necessidade de senha
Se uma senha não é necessária para a fonte de dados, basta especificar o comando REFRESH e o nome
da tabela do Analytics a ser atualizada.
REFRESH Faturas
Se estiver atualizando uma tabela originalmente importada de uma fonte de dados protegida por senha
usando o comando ACCESSDATA, a solicitação da senha é automática e não precisa ser especificada
separadamente:
REFRESH Faturas
A desvantagem desse método é que a senha é exibida como um texto claro no script.
COMMENT
//ANALYTIC Atualizar Tabela
//PASSWORD 1 "Digite sua senha:"
END
REFRESH Faturas PASSWORD 1
Observações
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda
do Analytics.
Como funciona?
O comando REFRESH atualiza o conteúdo de uma tabela executando de novo o comando IMPORT, ou o
comando ACCESSDATA, inicialmente usado para definir e importar a tabela.
REFRESH e ACCESSDATA
As seguintes diretrizes se aplicam ao atualizar uma tabela importada de uma origem de dados ODBC
usando o comando ACCESSDATA.
l Tabela aberta: Se a tabela estiver aberta quando você atualizá-la, você precisará temporariamente
de espaço em disco igual ao dobro do tamanho da tabela. Se o espaço em disco for limitado, feche a
tabela antes de atualizá-la.
l Analytics 12: As tabelas que foram importadas usando o comando ACCESSDATA na versão 12 do
Analytics não podem ser atualizadas, mesmo se você estiver usando uma versão mais recente do
Analytics.
Se quiser poder atualizar essas tabelas, reimporte-as usando o Analytics 12.5 ou posterior.
REFRESH e senhas
Você pode usar o comando REFRESH com origens de dados protegidas por senha existentes em um
banco de dados ou em um serviço de dados em nuvem.
Você não pode usar o comando REFRESH com origens de dados baseadas em arquivos protegidos por
senha, como arquivos do Excel. A única exceção são os PDFs protegidos por senha.
Comando RENAME
Renomeia um item ou arquivo de projeto do Analytics.
Sintaxe
RENAME tipo_de_item nome <AS|TO> novo_nome <OK>
Parâmetros
Nome Descrição
tipo_item nome O tipo e o nome do item ou arquivo de projeto que você quer renomear.
Nota
Na maioria dos casos, não é possível renomear um item ou arquivo que
está ativo, aberto ou em uso.
Especifique um dos seguintes tipos válidos:
o FIELD: campo de dados físicos, campo calculado ou variável
l A tabela que contém o campo deve estar aberta. No entanto, a exibição ativa não
pode incluir o campo.
l Você não pode renomear um campo que seja referenciado por um campo cal-
culado.
o FORMAT: tabela do Analytics
o INDEX: índice
o REPORT: relatório ou exibição
o WORKSPACE: área de trabalho
o SCRIPT (ou BATCH): script
o DATA: arquivo de dados do Analytics (.fil)
o FILE: arquivo de dados no sistema de arquivos
o LOG: arquivo de log do Analytics (.log)
o TEXT: arquivo de texto
Exemplos
Renomear um campo
Você precisa renomear o campo No_produto para Num_Produto. Use OK para executar a ação sem con-
firmação adicional:
OPEN Estoque
RENAME FIELD No-produto AS Num_Produto OK
Comando REPORT
Formata e gera um relatório baseado na tabela aberta do Analytics.
Sintaxe
REPORT <ON campo_quebra <PAGE> <NODUPS> <WIDTH caracteres> <AS nome_exibicao>>
<...n> FIELD outros_campos <WIDTH caracteres><AS nome_exibiçao> <...n> <SUPPRESS>
<NOZEROS> <LINE n outros_campos> <PRESORT < campo_classificação>> <...n>
<SUMMARIZED> <SKIP n> <EOF> <TO {SCREEN|PRINT|nome_arquivo <HTML>}> <IF > teste>
<WHILE teste> <FIRST intervalo|NEXT intervalo> <HEADER texto_cabeçalho> <FOOTER texto_
rodapé> <APPEND>
Parâmetros
Nome Descrição
ON campo_quebra PAGE O campo ou os campos de caracteres usados para quebrar o relatório em seções.
NODUPS WIDTH carac-
Uma nova seção e um novo subtotal de relatório serão criados a cada vez que o valor de
teres AS nome_exibicao
campo_quebra for alterado. A divisão de relatórios em seções pode facilitar sua pes-
<...n>
quisa.
opcional o campo_quebra: o campo a ser usado como um campo de quebra
Para executar um relatório baseado em uma exibição (DO REPORT), o campo de
quebra deve ser o campo de caracteres mais à esquerda na exibição.
o PAGE: insere uma quebra de página cada vez que o valor de do campo de quebra é
alterado
o NODUPS: suprime a exibição de valores duplicados do campo de quebra
Por exemplo, se o nome do cliente estiver listado para cada registro de fatura, você
poderá tornar o relatório mais legível listando apenas a primeira ocorrência de cada
nome de cliente.
o WIDTH caracteres: o comprimento da saída em caracteres
o AS nome_exibiçao: o nome de exibição (título alternativo da coluna) do campo no
relatório
Especifique nome_exibiçao como uma cadeia entre aspas. Utilize um ponto e vírgula
(;) entre palavras se quiser uma quebra de linha no título da coluna. Se você quiser
que o nome de exibição seja o mesmo que o nome do campo ou um nome de exi-
bição já existente na tabela de origem, não use AS.
Nota
Você deve especificar ON para usar campo_quebra, PAGE, NODUPS ou
PRESORT.
Nome Descrição
LINE n outros_campos Especifica o número de linhas de saída na coluna e os campos a serem exibidos na
linha de número n.
opcional
Se nenhum valor for especificado, a coluna adotará o padrão de uma linha única. O
valor de n deve estar entre 2 e 60, inclusive.
Os títulos de colunas no relatório são determinados exclusivamente pelos campos na pri-
meira linha. outros_campos especifica os campos ou expressões apropriadas para o
relatório.
SUMMARIZED Produz um relatório somente com subtotais e totais, e nenhuma linha de detalhe.
opcional Os subtotais são gerados para valores únicos do campo de quebra. Se SUMMARIZED
não for especificado, o Analytics gerará um relatório que inclui linhas de detalhe e sub-
totais para cada campo-chave de quebra especificado.
EOF Execute o comando uma ou mais vezes após alcançar o fim do arquivo.
Nome Descrição
opcional Isso garante que o registro final na tabela seja processado dentro de um comando
GROUP. Use EOF somente se todos os campos forem campos calculados referentes a
registros anteriores.
IF teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado apenas nos registros que atendem à condição.
opcional
Nota
O parâmetro IF é avaliado apenas em relação aos registros restantes em
uma tabela depois da aplicação dos parâmetros de escopo (WHILE,
FIRST, NEXT).
WHILE teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado até que a condição seja avaliada como falsa ou o fim da tabela
opcional
seja alcançado.
Nota
Se você usar WHILE juntamente com FIRST ou NEXT, o processamento
de registros será interrompido assim que um limite for alcançado.
HEADER texto_cabeçalho O texto a ser inserido na parte superior de cada página de um relatório.
opcional texto_cabeçalho deve ser especificado como uma cadeia entre aspas. O valor substitui a
variável de sistema HEADER do Analytics.
Nome Descrição
FOOTER texto_rodapé O texto a ser inserido na parte inferior de cada página de um relatório.
opcional texto_rodapé deve ser especificado como uma cadeia entre aspas. O valor substitui a
variável de sistema FOOTER do Analytics.
Exemplos
Geração de um relatório HTML
Gere um relatório da tabela Ar e envie a saída para um arquivo formatado em HTML:
OPEN Ar
REPORT ON Num FIELD Vencimento Tipo Valor TO "C:\Relatórios\AR.htm" HTML
Comando RETRIEVE
Recupera o resultado de uma consulta do Direct Link enviada para processamento em segundo plano.
Sintaxe
RETRIEVE nome_tabela PASSWORD num
Parâmetros
Nome Descrição
nome_tabela O nome da tabela criada originalmente no Analytics pela consulta do Direct Link.
A tabela já deve existir antes que você possa usar RETRIEVE.
Exemplos
Recuperação do resultado da consulta em modo de segundo plano
Defina a senha e recupere o resultado da consulta em modo de segundo plano de uma tabela do Analytics
denominada DD02T_Data:
Observações
Antes de começar
Este comando somente será permitido se o Direct Link estiver instalado e configurado.
Comando SAMPLE
Obtém uma amostra de registros usando o método de amostragem por registro ou de amostragem por uni-
dades monetárias.
Amostragem por registro Amostragem por unidades monetárias
Sintaxe
Nota
Essa sintaxe não inclui filtros (instruções IF) ou parâmetros de escopo porque a aplicação
dessas opções compromete a validade da amostra.
Parâmetros
Nota
Não inclua separadores de milhares ao especificar valores.
Nome Descrição
NUMBER tamanho_da_amostra
Use o método de seleção aleatória.
Todos os registros são selecionados aleatoriamente em todo o conjunto de dados.
Especifique o tamanho da amostra gerado ao calcular o tamanho da amostra.
ORDER Nota
opcional Somente para o método de seleção aleatório.
Use ORDER apenas quando especificar FIELDS.
Adiciona o campo ORDER aos resultados de saída.
Esse campo exibe a ordem em que cada registro é selecionado aleatoriamente.
Nome Descrição
OPEN Abre a tabela criada pelo comando após a execução do comando. Válido apenas se o
comando criar uma tabela de saída.
opcional
MERSENNE_TWISTER Nota
opcional Somente para métodos de seleção por célula e aleatório.
O gerador de números aleatórios no Analytics usa o algoritmo Mersenne-Twister.
Se você omitir MERSENNE_TWISTER, será usado o algoritmo padrão do Analytics.
Nota
Use o algoritmo padrão apenas se precisar de compatibilidade retro-
ativa com scripts ou resultados de amostragem do Analytics criados
antes do Analytics versão 12.
Nome Descrição
Nota
Aplicável apenas na execução de um comando em uma tabela de ser-
vidor com um campo de saída que é uma tabela do Analytics.
Exemplos
Obter uma amostra de registros
Você vai usar amostragem por registro para estimar a taxa de desvio de um controle prescrito em uma
conta que contém faturas.
Após calcular um tamanho de amostra estatisticamente válido, você está pronto para obter a amostra.
Use o método de seleção aleatória.
O exemplos abaixo:
l Amostra a tabela aberta do Analytics
l Usa o método de seleção aleatória com um valor de origem de 123456
l Especifica um tamanho de amostra de 95 registros
l Inclui somente os campos especificados na tabela de saída
l Especifica que o gerador de números aleatórios no Analytics usa o algoritmo Mersenne-Twister
SAMPLE ON RECORD RANDOM 123456 NUMBER 95 FIELDS NumRef NumCliente Valor Data
Tipo TO "Amostra_registro_Cr" OPEN MERSENNE_TWISTER
Observações
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda
do Analytics.
Sintaxe
Nota
Essa sintaxe não inclui filtros (instruções IF) ou parâmetros de escopo porque a aplicação
dessas opções compromete a validade da amostra.
Parâmetros
Nota
Não inclua separadores de milhares ao especificar valores.
Nome Descrição
Nome Descrição
Se você especificar valor_inicial como zero ("0") ou omitir FIXED, o Analytics sele-
cionará aleatoriamente a unidade monetária inicial.
SUBSAMPLE Nota
opcional Use SUBSAMPLE apenas quando especificar FIELDS.
Adiciona o campo SUBSAMPLE aos resultados de saída.
Se cada valor em um campo de amostragem representar um total de várias transações
separadas e você quiser executar procedimentos de auditoria em apenas uma tran-
sação de cada valor total amostrado, será possível usar os valores do campo
SUBSAMPLE para selecionar aleatoriamente as transações individuais.
Para obter mais informações, consulte Execução da amostragem por unidades mone-
tárias.
NOREPLACEMENT O mesmo registro não é selecionado mais de uma vez. Como resultado, a amostra pode
Nome Descrição
opcional conter menos registros que a quantidade calculada pelo comando SIZE.
Se NOREPLACEMENT for omitido, ou se você especificar REPLACEMENT, os registros
poderão ser selecionados mais de uma vez.
ORDER Nota
opcional Somente para o método de seleção aleatório.
Use ORDER apenas quando especificar FIELDS.
Adiciona o campo ORDER aos resultados de saída.
Esse campo exibe a ordem em que cada registro é selecionado aleatoriamente.
OPEN Abre a tabela criada pelo comando após a execução do comando. Válido apenas se o
comando criar uma tabela de saída.
opcional
Nome Descrição
Nota
Você deve garantir que a estrutura da saída do comando e o arquivo exis-
tente são idênticos:
l os mesmos campos
l a mesma ordem de campos
l os campos correspondentes têm o mesmo comprimento
l os campos correspondentes têm o mesmo tipo de dados
O Analytics anexa a saída a um arquivo existente, seja qual for sua estru-
tura. Se a estrutura da saída e do arquivo existente não corresponderem,
o resultado poderá ser dados misturados, ausentes ou incorretos.
MERSENNE_TWISTER Nota
opcional Somente para métodos de seleção por célula e aleatório.
O gerador de números aleatórios no Analytics usa o algoritmo Mersenne-Twister.
Se você omitir MERSENNE_TWISTER, será usado o algoritmo padrão do Analytics.
Nota
Use o algoritmo padrão apenas se precisar de compatibilidade retroativa
com scripts ou resultados de amostragem do Analytics criados antes do
Analytics versão 12.
Exemplos
Obter uma amostragem por unidades monetárias
Use a amostragem por unidades monetárias para estimar o valor total de afirmações incorretas mone-
tárias em uma conta que contém faturas.
Após calcular um tamanho de amostra estatisticamente válido, você está pronto para obter a amostra.
Use o método de seleção de intervalo fixo.
O exemplos abaixo:
l Amostra a tabela aberta do Analytics com base em um campo de valor da transação
l Usa o método de seleção de intervalo fixo com um valor de intervalo de US$ 6.283,33
l Especifica que o primeiro registro selecionado contém a 100.000ª unidade monetária (o número de
centavos em US$ 1.000)
l Usa um limite do estrato superior de US$ 5.000
l Inclui todo o registro na tabela de saída
SAMPLE ON Valor INTERVAL 6283,33 FIXED 1000,00 CUTOFF 5000,00 RECORD TO "Amostra_
unidade_monetária_Cr" OPEN
Observações
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda do
Analytics.
Comando SAVE
Copia uma tabela do Analytics, salvando-a com um nome diferente, ou salva um projeto do Analytics.
Sintaxe
Para criar uma cópia de uma tabela do Analytics e salvá-la com um nome diferente:
SAVE
Parâmetros
Nome Descrição
FORMAT tabela_ACL O nome da tabela do Analytics existente. Utilize o nome do layout da tabela, não o
nome do arquivo de dados associado.
Exemplos
Criação de uma nova tabela de acordo com uma tabela existente
Crie uma nova tabela chamada Pagamentos_Marco com base na tabela existente Pagamentos_
mestre. A tabela Pagamentos_Marco pode, então, ser vinculada ao arquivo de dados de pagamentos de
março:
Observações
Como funciona?
SAVE FORMAT produz um resultado similar a copiar e colar uma tabela do Analytics na guia Visão geral
no Navegador. Uma nova tabela do Analytics é criada e associada ao mesmo arquivo de dados ou origem
de dados que a tabela original.
É possível vincular, se preciso, a nova tabela criada a uma origem de dados diferente.
Sintaxe
SAVE LAYOUT {FILE|TABLE} TO {nome_arquivo|nome_tabela}
Parâmetros
Nome Descrição
FILE | TABLE o FILE: salve um layout da tabela do Analytics em um arquivo de layout da tabela
externo (.layout)
o TABLE: salve metadados do layout da tabela em uma tabela do Analytics (.fil)
Nome Descrição
Especifique nome_arquivo como uma cadeia entre aspas. Por exemplo: TO "Meta-
dos_layout_Trans_Cp.fil".
A extensão de arquivo .fil é utilizada por padrão, portanto, sua especificação é opci-
onal.
Por padrão, o arquivo de dados da tabela (.fil) é salvo na pasta que contém o pro-
jeto do Analytics.
Use um caminho de arquivo absoluto ou relativo para salvar o arquivo de dados em
uma pasta diferente já existente:
l TO "C:\Metados_layout_Trans_Cp.fil"
l TO "Metadados Layout\C:\Metados_layout_Trans_Cp.fil"
Nota
Os nomes de tabela são limitados a 64 caracteres alfanuméricos,
sem contar a extensão .FIL. O nome pode incluir o caractere de subli-
nhado ( _ ) mas nenhum outro caractere especial e nenhum espaço.
O nome não pode começar com um número.
Exemplos
Salvar um layout de tabela em um arquivo externo de layout de tabela
(.layout)
Os exemplos a seguir salvam o layout da tabela usado pela tabela aberta em um arquivo de layout de
tabela externo chamado Trans_Cp.layout:
Aqui, o arquivo de layout da tabela é salvo na pasta do projeto do Analytics:
Salvar uma cópia dos metadados de layout da tabela em uma nova tabela
do Analytics
Os exemplos a seguir salvam uma cópia dos metadados do layout da tabela em uso pela tabela aberta em
uma nova tabela do Analytics chamada Metadados_layout_Trans_Cp.
Aqui, a nova tabela do Analytics é salva na pasta do projeto do Analytics:
Observações
SAVE LAYOUT arquivo vs. tabela
O comando SAVE LAYOUT pode ser usado para dois propósitos distintos:
l FILE: salva o layout da tabela do Analytics aberta em um arquivo de layout da tabela externo com
uma extensão .layout
l TABLE: extrai os metadados do layout da tabela do Analytics aberta e os salva em uma nova
tabela do Analytics
Detalhes adicionais
Campos calculados são incluídos nos metadados extraídos, mas a expressão utilizada
pelo campo calculado e possíveis condições não são gravados. A posição inicial, o tama-
nho do campo e as casas decimais também não são registrados para campos cal-
Campos calculados culados.
Campos relacionados Os campos relacionados não são incluídos porque não fazem parte do layout da tabela.
Notas do campo
Título de coluna alter- Os valores registrados para título alternativo da coluna e largura de coluna são os espe-
nativo cificados no layout da tabela e não os valores de exibição que também podem ser espe-
cificados para as colunas.
Largura da coluna
Sintaxe
SAVE LOG <SESSION> AS nome_arquivo {<ASCII>|HTML} <OK>
Parâmetros
Nome Descrição
SESSION Somente entradas de log da sessão atual do Analytics devem ser salvas.
opcional
OK Se um arquivo com o mesmo nome de nome_arquivo já existir, ele será sobrescrito sem
confirmação.
opcional
Exemplos
Salvar o log de comandos da análise de contas a pagar
Você executou análises de dados do arquivo de contas a pagar de março e quer salvar o log de comandos
associado como parte da documentação de trabalho.
O exemplo a seguir salva as entradas da sessão atual do Analytics em um arquivo HTML. Se um arquivo
com o mesmo nome já existir, ele será sobrescrito sem confirmação:
Sintaxe
SAVE TABLELIST {FILE|TABLE} TO {nome_tabela|nome_arquivo}
Parâmetros
Nome Descrição
Exemplos
Criação de uma nova tabela
Crie uma nova tabela no projeto do Analytics, denominada Lista_completa_tabelas :
Observações
Colunas da saída
A tabela do Analytics de saída ou o arquivo CSV contém três colunas:
l nome_tabela: o nome do layout da tabela do Analytics
l tipo: indica se a tabela do Analytics é uma tabela local ou no servidor
l Caminho_arquivo_dados: o caminho completo para o arquivo de dados de origem
Sintaxe
SAVE WORKSPACE nome_área_de_trabalho {nome_campo <...n>}
Parâmetros
Nome Descrição
nome_área_de_trabalho O nome da área de trabalho para criar e adicionar ao projeto atual do Analytics.
nome_campo <...n> O nome do campo a adicionar à área de trabalho. Você pode incluir vários nomes de
campos separados por espaços.
Exemplo
Ativação da área de trabalho
Crie uma área de trabalho chamada Margem_estoque com dois campos calculados da tabela Metaphor_
Inventário_2002. Ative a área de trabalho para que os campos sejam disponibilizados na tabela Estoque:
OPEN Metaphor_Inventory_2002
SAVE WORKSPACE Margem_estoque Margem_unitária_bruta Percentual_margem_unitária
OPEN Estoque
ACTIVATE WORKSPACE Margem_estoque OK
Observações
Nomes de campos usados para criar campos calculados
devem corresponder
Os nomes de todos os campos usados em expressões que criam um campo calculado salvo em uma área
de trabalho devem corresponder aos nomes dos campos na tabela que usa a área de trabalho.
Comando SEEK
Pesquisa um campo de caracteres indexado para encontrar o primeiro valor correspondente à expressão
de caracteres ou cadeia de caracteres especificada.
Sintaxe
SEEK expressão_de_pesquisa
Parâmetros
Nome Descrição
Exemplos
Localizar o primeiro valor em um campo que corresponde a uma variável de
caracteres
O campo Numero_Cartao foi definido como um campo de caracteres e é indexado em ordem crescente.
O exemplo abaixo localiza o primeiro valor no campo que corresponde exatamente ou inicia com o valor
contido na variável v_num_cartão.
Observações
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda
do Analytics.
Como funciona?
Utilize o comando SEEK para avançar diretamente para o primeiro registro em uma tabela contendo a
search_expression especificada no campo de caracteres indexado.
l Se expressão_de_pesquisa for encontrada:, o primeiro registro correspondente na tabela será
selecionado.
l Se a expressão de pesquisa não for encontrada:, será exibida a mensagem "Nenhum índice cor-
responde à chave" e a tabela será posicionada no primeiro registro com um valor maior que a
expressão pesquisada.
Se não há valores no campo indexado maiores que a expressão pesquisada, a tabela é posi-
cionada no primeiro registro.
Índice requerido
Para usar SEEK para pesquisar um campo de caracteres, é preciso antes indexar o campo em ordem
crescente. Se vários campos de caracteres forem classificados em ordem crescente, apenas o primeiro
campo especificado no índice será pesquisado.
SEEK não pode ser usado para pesquisar campos indexados que não são de caracteres ou campos de
caracteres indexados em ordem decrescente.
Comando SEQUENCE
Determina se um ou mais campos em uma tabela do Analytics estão em ordem sequencial e identifica itens
fora de sequência.
Sintaxe
SEQUENCE <ON> {<FIELDS> campo <D> <...n>|<FIELDS> ALL} <UNFORMATTED>
<ERRORLIMIT n> <IF teste> <WHILE teste> <FIRST intervalo|NEXT intervalo> <TO
{SCREEN|nome_arquivo|PRINT}> <APPEND> <HEADER texto_cabeçalho> <FOOTER texto_
rodapé> <PRESORT> <LOCAL> <ISOLOCALE código_local>
Parâmetros
Nome Descrição
ON FIELDS campo D Os campos ou expressões que devem ser verificados quanto a ordem sequencial. Espe-
<...n> | FIELDS ALL cifique ALL para verificar todos os campos da tabela do Analytics.
Inclua D para ordenar o campo-chave em ordem decrescente. A ordem de classificação-
padrão é crescente.
ERRORLIMIT n O número de erros permitidos antes de terminar o comando. O valor padrão é 10.
opcional
IF teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado apenas nos registros que atendem à condição.
opcional
Nota
O parâmetro IF é avaliado apenas em relação aos registros restantes em
uma tabela depois da aplicação dos parâmetros de escopo (WHILE,
FIRST, NEXT).
WHILE teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado até que a condição seja avaliada como falsa ou o fim da tabela
opcional
seja alcançado.
Nota
Se você usar WHILE juntamente com FIRST ou NEXT, o processamento
de registros será interrompido assim que um limite for alcançado.
Nome Descrição
intervalo o FIRST: iniciar o processamento a partir do primeiro registro até alcançar o número de
registros especificado
opcional o NEXT: iniciar o processamento a partir do registro selecionado no momento até alcan-
çar o número de registros especificado
Use intervalo para especificar o número de registros a serem processados.
Se você omitir FIRST e NEXT, todos os registros serão processados por padrão.
HEADER texto_cabeçalho O texto a ser inserido na parte superior de cada página de um relatório.
opcional texto_cabeçalho deve ser especificado como uma cadeia entre aspas. O valor substitui a
variável de sistema HEADER do Analytics.
FOOTER texto_rodapé O texto a ser inserido na parte inferior de cada página de um relatório.
opcional texto_rodapé deve ser especificado como uma cadeia entre aspas. O valor substitui a
variável de sistema FOOTER do Analytics.
Nome Descrição
Nota
Aplicável apenas na execução de um comando em uma tabela de ser-
vidor com um campo de saída que é uma tabela do Analytics.
Exemplos
Teste para IDs e datas de contração de funcionários fora de sequência
Grave todos os erros de sequência identificados nos campos IDFuncionário e DataContratação em um
arquivo de texto:
Observações
Uso de SEQUENCE dentro de um GROUP
Se o comando SEQUENCE for usado dentro de um comando GROUP, o comando será executado para
evitar interferência no processamento do grupo, mas nenhum erro de sequência de dados será relatado.
Comando SET
Define uma opção configurável do Analytics.
Nota
O comando SET define uma opção do Analytics válida apenas durante a sessão do Analy-
tics. Esse comportamento se aplica sempre que o comando SET for usado na linha de
comando do Analytics ou em um script do Analytics.
Para definir opções do Analytics para que persistam entre sessões do Analytics, você
deve usar a caixa de diálogo Opções . Para obter mais informações, consulte Configurar
as opções do ACL.
Sintaxe
Sintaxe Observações e comentários
Quando esta opção está ativada, o Analytics substitui os dados de caracteres inválidos
por brancos e os dados numéricos por zeros.
O parâmetro valor é uma cadeia entre aspas que especifica o rótulo a ser exibido no
topo de cada página impressa.
Cria um filtro global (filtro de exibição) na tabela aberta e especifica um teste lógico ou
SET FOLDER caminho da Especifica a pasta do projeto do Analytics na guia Visão geral para a saída do
pasta comando. A pasta de saída padrão é a pasta que contém a tabela ativa.
Este é um caminho no estilo DOS usando o formato /nome_pasta/nome_subpasta,
onde a barra (/) inicial indica o nível raiz na guia Visão geral. Você deve especificar um
caminho de arquivo completo.
o SET FOLDER /Tabelas/Resultados define a pasta de saída com o a subpasta Resul-
tados. A subpasta Resultados será criada, caso não exista.
o SET FOLDER / define a pasta de saída no nível de raiz na guia Visão geral
o SET FOLDER define a pasta de saída para o padrão (a pasta que contém a tabela
ativa)
A pasta de saída permanece como foi definida, até que seja redefinida ou até que o
projeto seja fechado. Após a abertura do projeto, a pasta de saída irá reverter o padrão
da pasta da tabela ativa.
SET FUZZYGROUPSIZE
<TO> num SET FUZZYGROUPSIZE TO 10
Especifica o número máximo de itens que podem aparecer no grupo de duplicatas par-
ciais nos resultados de saída. O parâmetro num não pode ser menor que 2 ou maior
que 100. O tamanho padrão é 20. O tamanho especificado permanece em vigor
durante a sessão do Analytics.
Especifica o tipo de gráfico a ser usado para todos os gráficos gerados sub-
sequentemente. A execução de comandos deve ser compatível com o tipo de gráfico
especificado. Por exemplo, o comando BENFORD não pode produzir um gráfico
PIE2D ou PIE3D. Se um tipo de gráfico incompatível for especificado, o tipo de gráfico
padrão será usado (BAR3D).
O parâmetro tipo deve ser um dos seguintes:
o PIE2D
o PIE3D
o BAR2D
Especifica o nome do arquivo de script que o Gravador de Script usa para gravar
comandos.
Especifica o número máximo de loops executados pelo comando LOOP antes que o
comando seja encerrado.
O intervalo de num vai de 0 a 32767, onde 0 desliga o teste de loop.
Especifique LEFT, RIGHT, TOP ou BOTTOM do parâmetro lado. Se você quiser alterar
a margem de todos os lados, será necessário especificar cada margem com um
comando SET MARGIN separado. A especificação de um valor de 100 cria uma mar-
gem de 1 polegada.
SET MONTHS <TO> Especifica as abreviações de três caracteres para nomes do mês. O parâmetro cadeia
cadeia é a lista de abreviações de meses separadas por vírgula.
SET NOTIFYFAILSTOP
{ON | OFF} SET NOTIFYFAILSTOP ON
SET
NOTIFYRETRYATTEMPTS SET NOTIFYRETRYATTEMPTS TO 10
<TO> num
Especifica o número de vezes que o comando NOTIFY deve tentar enviar um e-mail se
a tentativa inicial falhar. Insira um número de 0 a 255. Caso seja usado 0, nenhuma ten-
tativa adicional é feita após a primeira falha. O valor padrão é 5.
Um possível motivo para que o comando NOTIFY falhe ao enviar um e-mail é a indis-
ponibilidade do servidor de e-mail.
SET
NOTIFYRETRYINTERVAL SET NOTIFYRETRYINTERVAL TO 30
<TO> segundos
Especifica a quantidade de tempo em segundos entre NOTIFYRETRYATTEMPTS.
Insira um número entre 1 e 255. O valor padrão é 10 segundos.
SET ORDER <TO> valores Especifica a sequência de ordenação dos campos de caractere. O parâmetro valores
lista todos os caracteres da ordem de classificação selecionada.
Configuração padrão: ON
Se OFF for especificado, o Analytics não interromperá o processamento quando ocor-
rer um erro de estouro.
Usado para criar uma definição de senha e especificar um valor de senha para exe-
cução autônoma do script.
O parâmetro num identifica unicamente a definição de senha e deve ser um valor entre
1 e 10. Especifique o valor da senha como uma cadeia entre aspas.
SET READAHEAD <TO> Especifica o tamanho da leitura do bloco de dados. Somente modifique essa con-
tamanho figuração se aconselhado pelo Suporte.
num Especifica o número de vezes que o Analytics tenta importar ou exportar dados se a
tentativa inicial falhar. Insira um número de 0 a 255. Caso seja usado 0, nenhuma ten-
tativa adicional é feita após a primeira falha. O padrão é 0.
Não há um período de espera entre as novas tentativas. Cada tentativa sucessiva é
feita imediatamente após a falha precedente.
A capacidade de especificar novas tentativas é útil para fazer a conexão a bancos de
dados ou serviços de dados de nuvem, que podem estar temporariamente indis-
poníveis.
Aplicável aos seguintes comandos:
o ACCESSDATA
o IMPORT GRCPROJECT
o IMPORT GRCRESULTS
o IMPORT SAP
o RETRIEVE
o REFRESH
(para tabelas criadas inicialmente usando apenas ACCESSDATA ou IMPORT SAP)
o EXPORT . . . ACLGRC
(exportar para o Resultados do HighBond)
Nota
SET RETRYIMPORT é mantido para compatibilidade retroativa.
SET RETRYIMPORT e SET RETRY executam ações idênticas.
Entre os três separadores, o separador de casas decimais deve ser exclusivo. Você
deve especificar todos os três separadores ao usar o comando. O separador de lista é
usado principalmente para separar os parâmetros de função.
Cria uma nova sessão no log de comandos do Analytics. A sessão é identificada pelo
carimbo de data/hora atual.
O nome_sessão opcional permite acrescentar até 30 caracteres de informações de
identificação adicionais. Aspas são permitidas, mas não obrigatórias.
Especifica se os resultados dos testes IF, WHILE, FOR e NEXT associados com os
comandos GROUP devem ser gravados no log.
Especifica como o Analytics exibe a parte de hora de datahoras e valores de hora inde-
pendentes em exibições, relatórios e arquivos exportados.
Ao usar o comando SET TIME para especificar formatos de hora personalizados, você
deve usar 'h' para hora, 'm' para minuto e 's' para segundo, mesmo se caracteres de for-
mato de hora diferentes tenham sido especificados na caixa de diálogo Opções Por
exemplo:
Configuração padrão: ON
o UTCZONE está ON: o Analytics altera a exibição de horas locais com um ajuste de
UTC para o UTC equivalente à hora local. (UTC é o Tempo Universal Coordenado,
o tempo em vigor em zero graus de longitude.)
o UTCZONE está OFF: o Analytics exibe horas locais com um ajuste de UTC, sem
convertê-las ao UTC.
Por exemplo:
o 01 Jan 2015 04:59:59 (SET UTCZONE ON)
o 31 Dez 2014 23:59:59-05:00 (SET UTCZONE OFF)
A conversão de hora local para UTC é apenas para fins de exibição e não afeta os
dados originais. Você pode alternar entre os dois modos de exibição sempre que qui-
ser.
Comando SIZE
Calcula um tamanho da amostra e um intervalo de amostragem estatisticamente válidos para amostragem
registro ou por unidades monetárias.
Amostragem por registro Amostragem por unidades monetárias
Sintaxe
SIZE RECORD CONFIDENCE nível_de_confiabilidade POPULATION tamanho_da_população
PRECISION taxa_permitida <ERRORLIMIT taxa_esperada> <TO {SCREEN|nome_arquivo}>
Parâmetros
Nota
Não inclua separadores de milhares ou símbolos de porcentagem ao especificar valores.
Nome Descrição
CONFIDENCE nível_de_ O nível de confiabilidade desejado de que a amostra resultante será representativa de
confiabilidade toda a população.
Por exemplo, 95 significa que você quer ter confiança de que 95% das vezes a amostra
será realmente representativa. A confiabilidade é o complemento do "risco de amos-
tragem". Um nível de confiabilidade de 95% é o mesmo que um risco de amostragem de
5%.
PRECISION taxa_per- A taxa de desvio permitida, que é a taxa máxima de desvio permitida de um controle
mitida especificado para que o controle continue sendo considerado como eficaz.
Por exemplo, 5 significa que a taxa de desvio deve ser maior que 5% para que o con-
trole seja considerado como não eficaz.
ERRORLIMIT taxa_espe- A taxa de desvio populacional esperada. Esta é a taxa de desvio esperada de um con-
rada trole especificado.
opcional Por exemplo, 1 significa que você espera que a taxa de desvio seja 1%.
Se você omitir esse parâmetro, será usada uma taxa de desvio esperada para a popu-
lação de 0%.
Nome Descrição
Exemplos
Cálculo do tamanho e intervalo necessários para uma amostragem por
registro
Você decidiu usar amostragem por registro para estimar a taxa de desvio de um controle prescrito em
uma conta que contém faturas.
Antes de obter a amostra, você deve calcular o tamanho de amostra estatisticamente válido e o intervalo
da amostragem.
Você quer ter confiança de que, 95% das vezes, a amostra obtida pelo Analytics será representativa da
população como um todo.
Usando o nível de confiabilidade especificado, o exemplo abaixo calcula um tamanho de amostra de 95 e
um valor de intervalo de amostra de 8,12 a serem usados para obter uma amostra por registro:
Observações
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda do
Analytics.
Sintaxe
SIZE MONETARY CONFIDENCE nível_de_confiabilidade POPULATION tamanho_da_população
MATERIALITY afirmação_incorreta_permitida <ERRORLIMIT afirmação_incorreta_esperada> <TO
{SCREEN|nome_arquivo}>
Parâmetros
Nota
Não inclua separadores de milhares ou símbolos de porcentagem ao especificar valores.
Nome Descrição
CONFIDENCE nível_de_ O nível de confiabilidade desejado de que a amostra resultante será representativa de
confiabilidade toda a população.
Por exemplo, 95 significa que você quer ter confiança de que 95% das vezes a amostra
será realmente representativa. A confiabilidade é o complemento do "risco de amos-
tragem". Um nível de confiabilidade de 95% é o mesmo que um risco de amostragem de
5%.
MATERIALITY afirmação_ A afirmação incorreta permitida, que é o valor total máximo de afirmação incorreta que
incorreta_permitida pode ocorrer no campo de amostra sem que a afirmação incorreta seja considerada rele-
vante.
Por exemplo, 29000 significa que o valor total de afirmação incorreta deve ser maior que
US$ 29.000 para que a afirmação incorreta seja considerada relevante.
ERRORLIMIT afirmação_ A afirmação incorreta esperada. Este é o valor total de afirmações incorretas esperado
incorreta_esperada no campo de amostra.
opcional Por exemplo, 5800 significa que você espera que o valor total de afirmações incorretas
será US$ 5.800.
Se você omitir esse parâmetro, será usada uma afirmação incorreta esperada de US$
Nome Descrição
0,00.
Exemplos
Cálculo do tamanho e intervalo necessários para uma amostragem por uni-
dades monetárias
Você decidiu usar a amostragem por unidades monetárias para estimar o valor total de afirmações incor-
retas monetárias em uma conta que contém faturas.
Antes de obter a amostra, você deve calcular o tamanho de amostra estatisticamente válido e o intervalo
da amostragem.
Você quer ter confiança de que, 95% das vezes, a amostra obtida pelo Analytics será representativa da
população como um todo.
Usando o nível de confiabilidade especificado, o exemplo abaixo calcula um tamanho de amostra de 93 e
um valor de intervalo de amostra de 6283,33 a serem usados para obter uma amostragem por unidades
monetárias:
Observações
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda do
Analytics.
Comando SORT
Ordena registros em uma tabela do Analytics em ordem sequencial crescente ou decrescente de acordo
com um ou mais campos-chave especificados. Os resultados são enviados a uma tabela nova e fisi-
camente reordenada do Analytics.
Sintaxe
SORT ON {campo_chave <D> <...n>|ALL} <FIELDS nome_campo <AS nome_exibicao>
<...n>|FIELDS ALL> TO nome_tabela <IF teste> <WHILE teste> <FIRST intervalo|NEXT intervalo>
<APPEND> <OPEN> <ISOLOCALE código_local>
Parâmetros
Nome Descrição
ON campo_chave D <...n> O campo ou campos-chave, ou a expressão, que devem ser utilizados para a orde-
| ALL nação.
Você pode ordenar por qualquer tipo de campo, incluindo campos calculados e
expressões ad hoc, independentemente do tipo de dados.
o campo_chave: use o campo ou os campos especificados
Se você ordenar por mais de um campo, criará uma ordem aninhada na tabela de
saída. A ordem do aninhamento seguirá a ordem em que os campos são espe-
cificados.
Inclua D para ordenar o campo-chave em ordem decrescente. A ordem de clas-
sificação-padrão é crescente.
o ALL: use todos os campos na tabela
Se você ordena por todos os campos de uma tabela, cria uma ordem aninhada na
tabela de saída. A ordem do aninhamento seguirá a ordem em que os campos apa-
recem no layout da tabela.
Uma ordem de classificação crescente é a única opção para ALL.
Nome Descrição
Nome Descrição
IF teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado apenas nos registros que atendem à condição.
opcional
Nota
O parâmetro IF é avaliado apenas em relação aos registros restantes
em uma tabela depois da aplicação dos parâmetros de escopo (WHILE,
FIRST, NEXT).
WHILE teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado até que a condição seja avaliada como falsa ou o fim da tabela
opcional
seja alcançado.
Nota
Se você usar WHILE juntamente com FIRST ou NEXT, o processamento
de registros será interrompido assim que um limite for alcançado.
Nome Descrição
Se você não especificar um código de país, será usado o país padrão do idioma.
Se você não usar ISOLOCALE, a localidade do sistema padrão será usada.
Exemplos
Ordenar por um único campo, saída de registros inteiros
Você quer ordenar os registros na tabela de amostra Inventário por número de produto. Os resultados
ordenados são extraídos para uma nova tabela do Analytics, chamada Número_Produto_Inventário.
Registros inteiros são incluídos na tabela de saída:
Para alternar da ordem de classificação crescente padrão para uma ordem de classificação decrescente,
adicione D após o nome do campo-chave:
Você quer ordenar os registros na tabela de amostra Inventário por local, em seguida por classe de pro-
duto e, por último, por número de produto. Os resultados ordenados são extraídos para uma nova tabela
do Analytics, chamada Número_Classe_Local_Inventário.
Observações
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda
do Analytics.
Comando STATISTICS
Calcula estatísticas para um ou mais campos numéricos ou datahora em uma tabela do Analytics.
Sintaxe
STATISTICS <ON> {campo <...n>|ALL} <STD> <MODMEDQ> <NUMBER n> <TO
{SCREEN|nome_arquivo|PRINT}> <IF teste> <WHILE teste> <FIRST intervalo|NEXT intervalo>
<APPEND>
Parâmetros
Nome Descrição
ON campo <...n> | ALL Especifique um ou mais campos numéricos ou datahora para gerar as estatísticas, ou
especifique ALL para gerar estatísticas de todos os campos datahora na tabela do Analy-
tics.
STD Calcula o desvio padrão dos campos especificados, além de outras estatísticas.
opcional
MODMEDQ Calcula os valores de moda, mediana, primeiro quartil e terceiro quartil dos campos
especificados, além de outras estatísticas.
opcional
NUMBER n O número de valores altos e baixos a reter durante o processamento. O valor padrão é 5.
opcional
IF teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado apenas nos registros que atendem à condição.
opcional
Nome Descrição
Nota
O parâmetro IF é avaliado apenas em relação aos registros restantes em
uma tabela depois da aplicação dos parâmetros de escopo (WHILE,
FIRST, NEXT).
WHILE teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado até que a condição seja avaliada como falsa ou o fim da tabela
opcional
seja alcançado.
Nota
Se você usar WHILE juntamente com FIRST ou NEXT, o processamento
de registros será interrompido assim que um limite for alcançado.
Nome Contém
Nome Contém
MODEn O valor que ocorre com maior frequência identificado pelo comando.
Q25n O valor do primeiro quartil (valor do quartil inferior) calculado pelo comando.
Q75n O valor do terceiro quartil (valor do quartil superior) calculado pelo comando.
Nome Contém
Exemplos
Geração condicional de estatísticas
Gere estatísticas para o campo Quantidade dos registros onde o ID da classe do produto é 01:
Comando STRATIFY
Agrupa os registros em intervalos numéricos de acordo com os valores de um campo numérico. Conta os
registros em cada intervalo e subtotaliza os campos numéricos especificados em cada intervalo.
Sintaxe
STRATIFY <ON> campo_numérico MINIMUM valor MAXIMUM valor {<INTERVALS número>|FREE
valor_intervalo <...n> último_intervalo} <SUPPRESS> <SUBTOTAL campo_numérico
<...n>|SUBTOTAL ALL> <KEY campo_divisão> <TO {SCREEN|nome_tabela|nome_
arquivo|GRAPH|PRINT}> <IF teste> <FIRST intervalo|NEXT intervalo> <WHILE teste> <APPEND>
<OPEN> <HEADER texto_cabeçalho> <FOOTER texto_rodapé> <LOCAL> <STATISTICS>
Parâmetros
Nome Descrição
MINIMUM valor Aplica-se somente a campos numéricos. O valor mínimo do primeiro intervalo numérico.
MINIMUM será opcional se você usar FREE. Caso contrário, será obrigatório.
MAXIMUM valor Aplica-se somente a campos numéricos. O valor máximo do último intervalo numérico.
MAXIMUM será opcional se você usar FREE. Caso contrário, será obrigatório.
Nome Descrição
SUPPRESS Valores maiores que MAXIMUM e menores que MINIMUM devem ser excluídos da saída
do comando.
opcional
SUBTOTAL campo_numé- Um ou mais campos numéricos ou expressões a serem subtotalizadas para cada grupo.
rico <...n> | SUBTOTAL
Vários campos devem ser separados por espaço. Especifique ALL para subtotalizar
ALL
todos os campos numéricos da tabela.
opcional
Se um campo de subtotal não for especificado, o campo estratificado é subtotalizado
automaticamente.
O campo estratificado deve ser especificado explicitamente caso você queira sub-
totalizá-lo junto a outros campos, ou caso queira incluir estatísticas do campo estra-
tificado subtotalizado.
KEY campo_quebra O campo ou expressão que agrupa cálculos de subtotal. Um subtotal é calculado cada
vez que o valor de campo_quebra muda.
opcional
campo_quebra deve ser um campo ou expressão de caracteres. Apenas um campo
pode ser especificado, mas é possível usar uma expressão que contém mais que um
campo.
Nome Descrição
diferente já existente:
l TO "C:\Saída.TXT"
l TO "Resultados\Saída.TXT"
o GRAPH: exibe os resultados em um gráfico na área de exibição do Analytics
o PRINT: envia os resultados para a impressora padrão
IF teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado apenas nos registros que atendem à condição.
opcional
Nota
O parâmetro IF é avaliado apenas em relação aos registros restantes em
uma tabela depois da aplicação dos parâmetros de escopo (WHILE,
FIRST, NEXT).
WHILE teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado até que a condição seja avaliada como falsa ou o fim da tabela
opcional
seja alcançado.
Nota
Se você usar WHILE juntamente com FIRST ou NEXT, o processamento
de registros será interrompido assim que um limite for alcançado.
OPEN Abre a tabela criada pelo comando após a execução do comando. Válido apenas se o
comando criar uma tabela de saída.
opcional
HEADER texto_cabeçalho O texto a ser inserido na parte superior de cada página de um relatório.
opcional texto_cabeçalho deve ser especificado como uma cadeia entre aspas. O valor substitui a
variável de sistema HEADER do Analytics.
Nome Descrição
FOOTER texto_rodapé O texto a ser inserido na parte inferior de cada página de um relatório.
opcional texto_rodapé deve ser especificado como uma cadeia entre aspas. O valor substitui a
variável de sistema FOOTER do Analytics.
STATISTICS Nota
opcional Somente pode ser usado se SUBTOTAL também for especificado.
Calcula valores médios, mínimos e máximos para todos os campos de SUBTOTAL.
Exemplos
Estratificação por valor da fatura
Você precisa estratificar uma tabela de contas a receber com base no campo Valor_Fatura. O valor da
fatura também é subtotalizado automaticamente.
A saída é agrupada em intervalos de US$ 1000:
l de US$ 0 a US$ 999,99
l de US$ 1.000 a US$ 1.999,99
l e assim por diante
O valor total da fatura é incluído para cada intervalo.
OPEN Ar
STRATIFY ON Valor_Fatura MINIMUM 0 MAXIMUM 10000 INTERVALS 10 TO "Faturas_estra-
tificadas.FIL"
Observações
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda
do Analytics.
Como funciona?
STRATIFY agrupa registros em intervalos numéricos de tamanho igual ou personalizado com base nos
valores de um campo numérico.
A saída contém um único registro para cada intervalo com a contagem dos registros da tabela de origem
pertencentes a cada intervalo.
Descrição de campo gerado Nome do campo na tabela de Título alternativo de coluna (nome de exi-
automaticamente saída bição) na tabela de saída
Campo de subtotal nome do campo subtotalizado na Total + título alternativo da coluna sub-
tabela de origem totalizada na tabela de origem
Campo de média a_ nome do campo subtotalizado Média + título alternativo da coluna sub-
na tabela de origem totalizada na tabela de origem
Campo de mínimo m_ nome do campo subtotalizado Mínimo + título alternativo da coluna sub-
na tabela de origem totalizada na tabela de origem
Campo de máximo x_ nome do campo subtotalizado Máximo + título alternativo da coluna sub-
na tabela de origem totalizada na tabela de origem
Comando SUMMARIZE
Agrupa os registros com base em valores idênticos em um ou mais campos de caracteres, numéricos ou
datahora. Conta os registros em cada grupo e subtotaliza os campos numéricos especificados em cada
grupo.
Sintaxe
SUMMARIZE ON campo_chave <...n> <SUBTOTAL campo_numérico <...n> |SUBTOTAL ALL>
<OTHER campo <...n>|OTHER ALL> <TO {SCREEN|nome_tabela|PRINT}> <IF teste> <WHILE
teste> <FIRST intervalo|NEXT intervalo> <PRESORT> <APPEND> <OPEN> <LOCAL>
<HEADER texto_cabeçalho> <FOOTER texto_rodapé> <STATISTICS> <MODMEDQ> <STDEV>
<CPERCENT> <ISOLOCALE código_localidade>
Parâmetros
Nome Descrição
ON campo_chave <...n> Um ou mais campos de caracteres, numéricos ou datahora para serem sumarizados.
Se houver mais de um campo, eles devem ser separados por espaços e podem ser de
tipos de dados diferentes.
SUBTOTAL campo_numé- Um ou mais campos numéricos ou expressões a serem subtotalizadas para cada
rico <...n> | SUBTOTAL grupo.
ALL
Vários campos devem ser separados por espaço. Especifique ALL para subtotalizar
opcional todos os campos numéricos da tabela.
Nome Descrição
IF teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado apenas nos registros que atendem à condição.
opcional
Nota
O parâmetro IF é avaliado apenas em relação aos registros restantes
em uma tabela depois da aplicação dos parâmetros de escopo (WHILE,
FIRST, NEXT).
WHILE teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado até que a condição seja avaliada como falsa ou o fim da tabela
opcional
seja alcançado.
Nota
Se você usar WHILE juntamente com FIRST ou NEXT, o processamento
de registros será interrompido assim que um limite for alcançado.
Nome Descrição
OPEN Abre a tabela criada pelo comando após a execução do comando. Válido apenas se o
comando criar uma tabela de saída.
opcional
HEADER texto_cabeçalho O texto a ser inserido na parte superior de cada página de um relatório.
opcional texto_cabeçalho deve ser especificado como uma cadeia entre aspas. O valor substitui
a variável de sistema HEADER do Analytics.
Nome Descrição
FOOTER texto_rodapé O texto a ser inserido na parte inferior de cada página de um relatório.
opcional texto_rodapé deve ser especificado como uma cadeia entre aspas. O valor substitui a
variável de sistema FOOTER do Analytics.
STATISTICS Nota
opcional Somente pode ser usado se SUBTOTAL também for especificado.
Calcula valores médios, mínimos e máximos para todos os campos de SUBTOTAL.
MODMEDQ Nota
opcional Somente pode ser usado se SUBTOTAL também for especificado.
Calcula valores de moda, mediana, primeiro quartil e terceiro quartil para todos os cam-
pos de SUBTOTAL.
STDEV Nota
opcional Somente pode ser usado se SUBTOTAL também for especificado.
Calcula o desvio padrão e a porcentagem do total para todos os campos de
SUBTOTAL.
ISOLOCALE Nota
opcional Aplicável apenas à edição Unicode do Analytics.
A localidade do sistema no formato idioma_ país. Por exemplo, para usar francês cana-
dense, insira fr_ca.
Use os códigos a seguir:
o idioma: código de idioma padrão ISO 639
o país: código de país padrão ISO 3166
Se você não especificar um código de país, será usado o país padrão do idioma.
Se você não usar ISOLOCALE, a localidade do sistema padrão será usada.
Exemplos
Valor total de transações por cliente
Você sumariza uma tabela de contas a receber com base no campo Numero_Cliente e calcula o subtotal
do campo Valor_Trans . A saída é agrupada por cliente e inclui o valor total de transações para cada cli-
ente:
OPEN Ar
SUMMARIZE ON Numero_Cliente SUBTOTAL Valor_Trans TO "Total_cliente.FIL" PRESORT
OPEN Ar
SUMMARIZE ON Numero_Cliente Data_Trans SUBTOTAL Valor_Trans TO "Total_cliente_por_
data.FIL" PRESORT
Valor de transações total, médio, mínimo e máximo por cliente por data de
transação
Adicione STATISTICS ao exemplo anterior.
Além do valor subtotalizado das transações de cada cliente em cada data em que o cliente teve tran-
sações, também serão calculados os valores médio, mínimo e máximo das transações de cada cliente em
cada data:
OPEN Ar
SUMMARIZE ON Numero_Cliente Data_Trans SUBTOTAL Valor_Trans TO "Estats_clientes_por_
data.FIL" PRESORT STATISTICS
OPEN CC_Trans
SUMMARIZE ON Data_Trans Valor_Trans TO "Transações_por_data_valor.FIL" OPEN PRESORT
SET FILTER TO COUNT > 1
Observações
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda do
Analytics.
Como funciona?
SUMMARIZE agrupa registros com o mesmo valor, ou a mesma combinação de valores, em um ou mais
campos de caracteres, numéricos ou datahora. A saída consiste em um único registro para cada grupo,
com uma contagem do número de registros na tabela de origem que pertencem ao grupo.
Título alternativo de
coluna (nome de exibição) Nome do campo na tabela Cálculo executado em
Parâmetro opcional na tabela de saída de saída campo subtotalizado
Média + título alternativo a_ nome do campo sub- Valor médio para cada
da coluna subtotalizada totalizado grupo
Mínimo + título alternativo m_ nome do campo sub- Valor mínimo para cada
da coluna subtotalizada totalizado grupo
Máximo + título alternativo x_ nome do campo sub- Valor máximo para cada
STATISTICS da coluna subtotalizada totalizado grupo
Moda + título alternativo da o_ nome do campo sub- O valor que ocorre com
coluna subtotalizada totalizado maior frequência em cada
grupo
o Exibe "N/A" se nenhum
MODMEDQ valor ocorrer mais de
Título alternativo de
coluna (nome de exibição) Nome do campo na tabela Cálculo executado em
Parâmetro opcional na tabela de saída de saída campo subtotalizado
uma vez
o Em caso de valores que
ocorrem o mesmo
número de vezes, exibe
o valor mais baixo
STDDEV + título alter- d_ nome do campo sub- O desvio padrão para cada
nativo da coluna sub- totalizado grupo
totalizada
Comando TOP
Posiciona no primeiro registro de uma tabela do Analytics.
Sintaxe
TOP
Parâmetros
Este comando não possui nenhum parâmetro.
Observações
Quando usar TOP
Use TOP para posicionar no primeiro registro de uma tabela se um comando anterior, como FIND, sele-
cionou outro registro na tabela.
Comando TOTAL
Calcula o valor total de um ou mais campos em uma tabela do Analytics.
Sintaxe
TOTAL {<FIELDS> campo_numérico <...n>|<FIELDS> ALL} <IF teste> <WHILE teste> <FIRST
intervalo|NEXT intervalo>
Parâmetros
Nome Descrição
FIELDS campo_numérico Os campos numéricos a serem totalizados. Especifique ALL para totalizar cada um dos
<...n> | FIELDS ALL campos numéricos na tabela.
IF teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado apenas nos registros que atendem à condição.
opcional
Nota
O parâmetro IF é avaliado apenas em relação aos registros restantes
em uma tabela depois da aplicação dos parâmetros de escopo (WHILE,
FIRST, NEXT).
WHILE teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado até que a condição seja avaliada como falsa ou o fim da tabela
opcional
seja alcançado.
Nota
Se você usar WHILE juntamente com FIRST ou NEXT, o processamento
de registros será interrompido assim que um limite for alcançado.
Nome Contém
Exemplos
Totalização dos primeiros 25 registros
Calcule o valor total do campo VLRMERC dos primeiros 25 registros na tabela:
Observações
Quando usar TOTAL
Use TOTAL para verificar a totalidade e precisão dos dados de origem e para produzir totais de controle. O
comando calcula a soma aritmética dos campos ou expressões especificadas.
Comando TRAIN
Usa aprendizado de máquina automatizado para criar um modelo preditivo ideal usando um conjunto de
dados de treinamento.
Sintaxe
TRAIN {CLASSIFIER|REGRESSOR} <ON> campo_chave <...n> TARGET campo_rotulado
SCORER {ACCURACY|AUC|F1|LOGLOSS|PRECISION|RECALL|MAE|MSE|R2} SEARCHTIME
minutos MAXEVALTIME minutos MODEL nome_modelo TO nome_tabela <IF teste> <WHILE
teste> <FIRST intervalo|NEXT intervalo> FOLDS número_partições <SEED valor_de_origem>
<LINEAR> <NOFP>
Nota
O tamanho máximo permitido para o conjunto de dados usados com o comando TRAIN é
1 GB.
Parâmetros
Nome Descrição
TARGET campo_rotulado O campo que o modelo é treinado para prever com base nos campos de entrada de trei-
namento.
Nome Descrição
SCORER ACCURACY | A métrica a ser usada para pontuar (ajustar e classificar) os modelos gerados.
AUC | F1 | LOGLOSS |
O modelo gerado com o melhor valor para essa métrica é mantido e os demais são des-
PRECISION | RECALL |
cartados.
MAE | MSE | R2
Um subconjunto diferente de métricas é válido dependendo do tipo de previsão que
você está usando (classificação ou regressão):
Nome Descrição
IF teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado apenas nos registros que atendem à condição.
opcional
Nota
O parâmetro IF é avaliado apenas em relação aos registros restantes
em uma tabela depois da aplicação dos parâmetros de escopo (WHILE,
FIRST, NEXT).
WHILE teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado até que a condição seja avaliada como falsa ou o fim da tabela
opcional
seja alcançado.
Nota
Se você usar WHILE juntamente com FIRST ou NEXT, o processamento
de registros será interrompido assim que um limite for alcançado.
Nome Descrição
SEED valor_de_origem O valor de origem usado para inicializar o gerador de números aleatórios no Analytics.
opcional Se você omitir SEED, o Analytics selecionará aleatoriamente o valor de origem.
Especifique explicitamente um valor de origem, e o registre, se quiser replicar o pro-
cesso de treinamento com o mesmo conjunto de dados no futuro.
Exemplos
Treine um modelo de classificação
Você quer treinar um modelo de classificação que possa ser usado em um processo posterior para prever
quais solicitantes de empréstimo ficarão inadimplentes.
Você treina o modelo usando um conjunto de dados de empréstimo históricos com um resultado conhe-
cido para cada empréstimo, incluindo se o cliente ficou inadimplente.
Em um processo de previsão posterior, você usará o modelo produzido pelo comando TRAIN para pro-
cessar os dados de solicitantes de empréstimo atuais.
OPEN "Histórico_solicitantes_empréstimo"
TRAIN CLASSIFIER ON Idade Categoria_cargo Salário Saldo_conta Valor_empréstimo Período_
empréstimo Refinanciado Pontuação_crédito TARGET Padrão SCORER LOGLOSS
SEARCHTIME 960 MAXEVALTIME 90 MODEL "Previsão_inadimplência_empréstimo.model" TO
"Avaliação_modelo.FIL" FOLDS 5
OPEN "Vendas_residências"
TRAIN REGRESSOR ON Tamanho_terreno Quartos Banheiros Andares Entrada_garagem Sala_
recreação Porão_completo Aquecedor_gás Ar_condicionado Vagas_garagem Área_preferida
TARGET Preço SCORER MSE SEARCHTIME 960 MAXEVALTIME 90 MODEL "Previsão_preços_
residências.model" TO "Avaliação_modelo.FIL" FOLDS 5
Observações
Nota
Para obter mais informações sobre o funcionamento desse comando, consulte a Ajuda
do Analytics.
Comando VERIFY
Verifica a existência de erros de validade de dados em um ou mais campos em uma tabela do Analytics,
confirmando se os dados estão consistentes com as definições do campo no layout da tabela.
Sintaxe
VERIFY {<FIELDS> campo <...n>|<FIELDS> ALL} <IF teste> <WHILE teste> <FIRST range|NEXT
intervalo> <ERRORLIMIT n> <TO {SCREEN|nome_arquivo|PRINT}> <APPEND>
Parâmetros
Nome Descrição
FIELDS campo <...n> | As expressões ou campos a serem verificados. Especifique ALL para exportar todos os
FIELDS ALL campos da tabela
Nota
Por definição, campos calculados, juntamente com expressões ad hoc e
campos binários, são sempre válidos.
IF teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado apenas nos registros que atendem à condição.
opcional
Nota
O parâmetro IF é avaliado apenas em relação aos registros restantes em
uma tabela depois da aplicação dos parâmetros de escopo (WHILE,
FIRST, NEXT).
WHILE teste Uma expressão condicional que deve ser verdadeira para processar cada registro. O
comando é executado até que a condição seja avaliada como falsa ou o fim da tabela
opcional
seja alcançado.
Nota
Se você usar WHILE juntamente com FIRST ou NEXT, o processamento
de registros será interrompido assim que um limite for alcançado.
Nome Descrição
ERRORLIMIT n O número de erros permitidos antes de terminar o comando. O valor padrão é 10.
opcional
Exemplos
Verificação de dados e especificação de um limite de erro
Verifique todas as colunas em uma tabela e define o limite de erro como 10. O comando interromperá o
processamento se 10 erros de validade de dados forem encontrados:
Observações
Como funciona?
O comando VERIFY compara os valores em um ou mais campos com o tipo de dados especificado para
cada um dos campos no layout da tabela e relata todos os erros. O comando garante que:
l campos de caracteres: contenham apenas caracteres válidos e que nenhum caractere que não
pode ser impresso esteja presente
l campos numéricos: contenham apenas dados numéricos válidos. Além de números, os campos
numéricos podem conter um sinal positivo ou negativo precedente e um ponto decimal
l campos datahora: contenham datas, datahora ou horas válidas
Para cada erro identificado, o número do registro e o nome do campo são enviados, junto com o valor invá-
lido em formato hexadecimal.
Funções
Função ABS( )
Retorna o valor absoluto de uma expressão numérica. O valor absoluto de um número é o número sem seu
sinal.
Sintaxe
ABS(número)
Parâmetros
Nome Tipo Descrição
Saída
Numérico.
Exemplos
Exemplos básicos
Retorna 7,2:
ABS(7,2)
Retorna 7,2:
ABS(-7.2)
Função AGE( )
Retorna a idade em dias de uma data especificada em relação a uma data limite especificada ou à data
atual do sistema operacional.
Sintaxe
AGE(data/datahora/cadeia <;data_limite>)
Parâmetros
Nome Tipo Descrição
data/datahora/cadeia caractere O campo, expressão ou valor literal do qual será calculada a idade.
datahora
data_limite caractere O campo, expressão ou valor literal com o qual comparar data/-
datahora/cadeia. Se omitido, a data atual do sistema operacional
opcional datahora
será usada como data limite.
Nota
data/datahora/cadeia e data_limite ambos podem aceitar um valor datahora, mas a parte
correspondente à hora é ignorada. Não é possível usar AGE( ) com valores de hora ape-
nas.
Saída
Numérico.
Exemplos
Exemplos básicos
Sem data limite
Retorna o número de dias entre 31 de dezembro de 2014 e a data atual:
l Se um valor positivo é retornado, é igual ao número de dias no passado em que ocorreu a data 31
de dezembro de 2014
l Se um valor negativo é retornado, é igual ao número de dias no futuro em que ocorrerá a data 31 de
dezembro de 2014
l Se "0" é retornado, 31 de dezembro de 2014 é a data atual
AGE(`20141231`)
Retorna o número de dias entre cada data no campo Data_vencimento e a data atual:
AGE(Data_vencimento)
AGE(`20130731`;`20141231`)
AGE("20130731";"20141231")
AGE(`20130731`;"20141231")
AGE(`20130731 235959`;`20141231`)
AGE(Data_vencimento; `20141231`)
Retorna o número de dias entre 31 de dezembro de 2014 e cada data no campo Data_vencimento. Os
resultados são os mesmos do exemplo logo acima, mas o sinal dos valores retornados (positivo ou nega-
tivo) é invertido:
AGE(`20141231`; Data_vencimento)
AGE(Data_pagamento; Data_vencimento)
Retorna o número de dias entre cada data no campo Data_pagamento e uma data correspondente no
campo Data_vencimento mais um período de carência de 15 dias.
l As datas de pagamento anteriores às datas de vencimento ou até 15 dias após as datas de ven-
cimento retornam um valor positivo
l As datas de pagamento posteriores a 15 dias após a data de vencimento retornam um valor nega-
tivo, indicando pagamento com atraso fora do período de carência
AGE(Data_pagamento; Data_vencimento+15)
Exemplos avançados
Extração de pagamentos vencidos
Extraia o nome, o valor e a data da fatura de cada registro em que a idade da fatura é maior que 180 dias,
com base em uma data limite de 31 de dezembro de 2014:
Observações
Como funciona?
A função AGE( ) calcula o número de dias entre duas datas.
AGE(Data_pagamento; Data_vencimento)
O uso da função AGE( ) dessa forma é equivalente ao cálculo da diferença entre dois campos de data sub-
traindo-os em uma expressão.
Por exemplo:
Data_vencimento – Data_pagamento
Detalhes do parâmetro
Um campo datahora especificado para data/datahora/cadeia ou data_limite pode usar qualquer formato de
data ou datahora, desde que a definição do campo defina corretamente o formato.
AAAAMMDD `20141231`
"20141231"
AAMMDD `141231`
"141231"
AAAAMMDD hhmmss `20141231 235959`
"20141231 235959"
AAMMDDthhmm `141231t2359`
"141231t2359"
AAAAMMDDThh `20141231T23`
"20141231T23"
AAAAMMDD hhmmss+/-hhmm `20141231 235959-0500`
(ajuste UTC) "20141231 235959-0500"
AAMMDD hhmm+/-hh `141231 2359+01`
(ajuste UTC) "141231 2359+01"
Nota
Não use somente hh no formato de hora
principal com dados que têm um ajuste
UTC. Por exemplo, evite: hh+hhmm. Os
resultados podem ser não confiáveis.
Função ALLTRIM( )
Retorna uma cadeia com os espaços iniciais e finais removidos da cadeia de entrada.
Sintaxe
ALLTRIM(cadeia)
Parâmetros
Nome Tipo Descrição
cadeia caractere O valor do qual os espaços iniciais e finais devem ser removidos.
Saída
Caractere.
Exemplos
Exemplos básicos
Retorna "Salvador":
ALLTRIM(" Salvador ")
ALLTRIM(" São Paulo ")
Exemplos avançados
Concatenação de campos de caracteres
Use ALLTRIM( ) para eliminar espaços durante a concatenação de campos de caracteres, como campos
de nome e sobrenome, para que o campo resultante não contenha vários espaços em branco entre os
valores concatenados.
A função REPLACE( ) substitui todos os espaços contínuos por espaços regulares e ALLTRIM( ) remove
todos os espaços regulares à esquerda ou à direita.
Observações
Como funciona?
A função ALLTRIM( ) remove os espaços à esquerda e à direita de uma cadeia. Os espaços dentro da
cadeia não são removidos.
Funções relacionadas
Use a função LTRIM( ) se você deseja remover apenas os espaços iniciais de uma cadeia, ou a função
TRIM( ) se você deseja remover apenas os espaços finais.
Função ASCII( )
Retorna o código ASCII de um caractere especificado.
Sintaxe
ASCII(caractere)
Parâmetros
Nome Tipo Descrição
Saída
Numérico.
Exemplos
Exemplos básicos
Retorna 65:
ASCII("A")
Retorna 49:
ASCII("1")
Exemplos avançados
Extração de um registro que começa com um caractere de tabulação
Extrair os registros que contêm um caractere de tabulação no início do campo "Descrição". O código
ASCII para o caractere de tabulação é "9".
Observações
Teste para caracteres não imprimíveis
Você pode usar ASCII( ) para testar caracteres não imprimíveis, como:
l Nulo: ASCII "0"
l Tabulação: ASCII "9"
l Quebra de linha (LF): ASCII "10"
l Retorno de carro (CR): ASCII "13"
Funções relacionadas
ASCII( ) é a função inversa da função CHR( ).
Função AT( )
Retorna um número especificando a localização inicial de uma determinada ocorrência de uma subcadeia
dentro de um valor de caracteres.
Sintaxe
AT(num_ocorrência; procurar_por_cadeia; no_texto)
Parâmetros
Nome Tipo Descrição
procurar_por_ caractere A subcadeia a ser pesquisada em no_texto. Esse valor diferencia mai-
cadeia úsculas e minúsculas.
Se procurar_por_cadeia incluir aspas, você precisa colocar o valor
entre apóstrofos:
AT(1;'"teste"'; Descrição)
AT(1;'"teste"'; Descrição+Resumo)
Saída
Numérico. Retorna a posição do byte inicial da ocorrência especificada do valor procurar_por_cadeia, ou 0,
se nenhuma correspondência for encontrada.
Exemplos
Exemplos básicos
Ocorrências encontradas
Retorna 4:
Retorna 8:
Grupos de caracteres
Retorna 5:
Exemplos avançados
Como encontrar números de fatura em que o segundo hífen ocorre após a
décima posição em byte
É possível analisar a consistência de números de fatura em uma tabela usando a função AT( ) para criar
um filtro como o abaixo. O filtro separa todos os registros nos quais o número da fatura contém dois ou mais
hifens e o segundo hífen ocorre após a décima posição de byte:
Observações
Quando usar AT( )
Use essa função para recuperar as seguintes posições iniciais em um valor de caractere:
l a posição inicial de uma subcadeia
l a posição inicial de uma ocorrência subsequente da subcadeia
Para apenas verificar por múltiplas ocorrências do mesmo trecho de cadeia em um campo, a função
OCCURS( ) é uma alternativa melhor. Para obter mais informações, consulte "Função OCCURS( )" Na
página 688.
Função BETWEEN( )
Retorna um valor lógico que indica se o valor especificado está dentro de um intervalo.
Sintaxe
BETWEEN(valor; mín; máx)
Parâmetros
Nome Tipo Descrição
Nota
O intervalo avaliado como T (verdadeiro) inclui os valores min e max.
Para obter informações a respeito de intervalos de caracteres, consulte "Comportamento
do SET EXACT" Na página oposta.
Saída
Lógico. Retorna T (verdadeiro) se valor for maior ou igual ao valor min e menor ou igual ao valor max.
Caso contrário, retorna F (falso).
Exemplos
Exemplos básicos
Entrada numérica
Retorna T:
BETWEEN(500;400;700)
Retorna F:
BETWEEN(100;400;700)
Entrada de caracteres
Retorna T:
BETWEEN("B";"A";"C")
Retorna F, pois a comparação de caracteres diferencia entre maiúsculas e minúsculas e "b" minúsculo não
está entre "A" e "C" maiúsculos:
BETWEEN("b";"A";"C")
Entrada datahora
Retorna T:
BETWEEN(`141230`;`141229`;`141231`)
Retorna T para todos os valores do campo Hora_login entre 07:00:00 AM e 09:00:00 AM, inclusive, e F
para os demais:
BETWEEN(Hora_login;`t070000`;`t090000`)
Retorna T para todos os valores do campo Sobrenome que começam com as letras entre "C" e "J", inclu-
sive, e "F" para os demais (SET EXACT deve ser ON). Também retorna T para a letra "K" sozinha:
Entrada de campo
Retorna T para todos os valores do campo Data_Fatura entre 30 Set 2014 e 30 Out 2014, incluindo estas,
ou F em outro caso:
Retorna T para todos os registros nos quais a data da fatura não se situa entre a data de recebimento e
data de pagamento, incluindo estas, ou F em outro caso:
Retorna T para todos os valores no campo Valor_Fatura de $ 1000 a $ 5000, incluindo estes, ou F em
outro caso:
Exemplos avançados
Criando um filtro para exibir uma faixa salarial
O exemplo a seguir abre a tabela de amostra Lista_Funcionários e aplica um filtro que limita os registros
exibidos para incluir apenas funcionários que ganham um salário maior ou igual a $ 40.000,00 e menor ou
igual a $ 50.000,00.
OPEN Lista_funcionários
SET FILTER TO BETWEEN(Salário; 40000,00; 50000,00)
Observações
Tipos de dados compatíveis
Entradas para a função BETWEEN( ) podem ser numéricas, caracteres ou dados de datahora. Não é pos-
sível misturar tipos de dados. Todas as três entradas devem pertencer à mesma categoria de dados.
equivale a
Retorna F, pois 1,23 é menor que 1,234 quando a terceira casa decimal é considerada:
Dados de caracteres
Diferenciação de maiúsculas e minúsculas
A função BETWEEN( ) diferencia maiúsculas de minúsculas quando usada com dados de caracteres. Na
comparação de caracteres, "a" não é equivalente a "A".
Retorna F:
BETWEEN("B";"a";"C")
Se você estiver trabalhando com dados com inconsistência entre maiúsculas e minúsculas, poderá usar a
função UPPER( ) para converter os valores para que fiquem consistentes antes de usar BETWEEN( ).
Retorna T:
Correspondência parcial
A correspondência parcial é suportada para comparações de caracteres.
valor pode ser contido por min.
Retorna T, embora o valor "AB" pareça ser menor que o min "ABC":
Nota
O valor mais curto na comparação de caracteres deve aparecer no início do valor mais
longo para constituir uma correspondência.
Se você está usando um script, pode adicionar o comando SET EXACT OFF antes que a função
BETWEEN( ) apareça. Se necessário, você pode restaurar o estado anterior com o comando SET EXACT
ON.
Parâmetros de datahora
Um campo de data, datahora ou hora especificado como entrada de função pode usar qualquer formato de
data, datahora ou hora desde que a definição do campo defina corretamente o formato.
BETWEEN(`20141231`;`20141229`;`20141231`)
Retorna F, embora 12:00 PM de 31 de dezembro de 2014 pareça estar no intervalo especificado por min e
max:
BETWEEN(`20141231 120000`;`20141229`;`20141231`)
Se examinarmos o equivalente ao número serial dessas duas expressões, poderemos perceber por que a
segunda será avaliada como falso.
Retorna T, porque o número serial valor é igual ao número serial max:
Retorna T, porque o número serial valor é maior que o número serial max:
O número serial 42003,500000 é maior que 42003,000000 e, portanto, fora do intervalo, embora as duas
datas sejam idênticas. 0,500000 é o equivalente ao número serial 12:00 PM.
Por exemplo, essa expressão, que usa os mesmos valores iniciais do segundo exemplo acima, é avaliada
como T em vez de F:
BETWEEN(CTOD(DATE(`20141231
120000`;"YYYYMMDD");"YYYYMMDD");`20141229`;`20141231`)
AAAAMMDD `20141231`
AAMMDD `141231`
AAAAMMDD hhmmss `20141231 235959`
AAMMDDthhmm `141231t2359`
AAAAMMDDThh `20141231T23`
AAAAMMDD hhmmss+/-hhmm `20141231 235959-0500`
(ajuste UTC)
AAMMDD hhmm+/-hh `141231 2359+01`
(ajuste UTC)
thhmmss `t235959`
Thhmm `T2359`
Nota
Não use somente hh no formato de hora
principal com dados que têm um ajuste
UTC. Por exemplo, evite: hh+hhmm. Os
resultados podem ser não confiáveis.
Função BINTOSTR( )
Retorna os dados de caracteres Unicode convertidos de dados de caracteres ZONED ou EBCDIC. Abre-
viação de "Binário para Cadeia".
Nota:
Essa função é específica para a edição Unicode do Analytics. Não é uma função supor-
tada na edição não-Unicode.
Sintaxe
BINTOSTR(cadeia; tipo_de_cadeia)
Parâmetros
Nome Tipo Descrição
cadeia caractere O valor ZONED ou EBCDIC que você deseja converter para a codi-
ficação de caracteres Unicode.
Saída
Caractere.
Exemplos
Exemplos básicos
A expressão ZONED(-6448;4) converte o valor -6448 no formato de caracteres "644Q". No entanto, a edi-
ção Unicode do Analytics exige a conversão da saída de ZONED( ) para caracteres Unicode usando
BINTOSTR( ).
Retorna "644Q" no formato Unicode:
BINTOSTR(ZONED(-6448,4); "A")
Observações
Quando usar BINTOSTR( )
Use essa função para converter valores retornados de funções ZONED( ) e EBCDIC( ) para um valor Uni-
code.
Nota
Se essa função não for aplicada aos valores do retorno de ZONED( ) e EBCDIC( ) nas edi-
ções Unicode do Analytics, eles serão exibidos incorretamente porque a codificação não
será interpretada corretamente.
Função BIT( )
Retorna a representação binária para a posição de byte especificada no registro atual como uma cadeia
de oito caracteres.
Sintaxe
BIT(localização_byte)
Parâmetros
Nome Tipo Descrição
Saída
Caractere.
Exemplos
Exemplos básicos
Retorna "00110001" se o oitavo byte contiver "1":
BIT(8)
BIT(9)
BIT(17)
Exemplos avançados
Uso de BIT( ) e SUBSTRING( ) para extrair um valor
Suponha que a posição 17 do byte contenha um conjunto de 8 sinalizadores de crédito.
Para extrair todos os registros de clientes que tenham o terceiro bit definido como um (que significa "não
enviar"), especifique:
Neste exemplo, a função SUBSTRING( ) é usada para extrair o valor do terceiro bit.
Observações
Como funciona?
BIT( ) converte o byte na posição de byte especificado em uma cadeia de oito caracteres de um e zero.
Funções relacionadas
Se você deseja recuperar um caractere na localização de byte especificado, utilize a função BYTE( ).
Função BLANKS( )
Retorna uma cadeia que contém um número especificado de espaços em branco.
Sintaxe
BLANKS(contagem)
Parâmetros
Nome Tipo Descrição
Saída
Caractere.
Exemplos
Exemplos básicos
Retorna " ":
BLANKS(5)
Retorna "ABC Corporation":
Observações
Quando usar BLANKS( )
Use a função BLANKS( ) para harmonizar campos, inicializar variáveis em scripts, ou para inserir espaços
em branco ao formatar campos ou concatenar cadeias.
Função BYTE( )
Retorna o caractere armazenado numa determinada posição no byte do registro atual.
Sintaxe
BYTE(localização_do_ byte)
Parâmetros
Nome Tipo Descrição
Saída
Caractere.
Exemplos
Exemplos básicos
Retorna "1" de um registro que começa com um campo de ID que contém "1":
byte(112)
Exemplos avançados
Identificar registros em arquivos de impressão ou PDFs com base em uma
formatação consistente
Utilize BYTE( ) para identificar os registros num arquivo de dados em que um caractere particular está pre-
sente na posição de byte particular. Normalmente, este é o caso em arquivos de imagem de impressão
(Relatório) ou arquivos do Adobe Acrobat (PDF) em que os dados são formatados de forma consistente
em todo o documento.
Por exemplo, para localizar e extrair registros que incluem um período na posição de byte 113:
Observações
Quando usar BYTE( )
Use BYTE( ) para examinar o conteúdo de uma posição em um registro, sem precisar definir um campo
para isso.
Funções relacionadas
Se desejar recuperar a representação binária para a localização de byte especificado, utilize a função BIT
( ).
Função CDOW( )
Retorna o nome do dia da semana para uma data ou datahora especificada. Abreviação de "Caractere
Dia da Semana".
Sintaxe
CDOW(data/datahora; comprimento)
Parâmetros
Nome Tipo Descrição
data/datahora datahora O campo, expressão ou valor literal do qual será obtido o nome do
dia da semana.
Saída
Caractere.
Exemplos
Exemplos básicos
Retorna "Quarta-feira" porque 31 de dezembro de 2014 é uma quarta-feira e o comprimento é 9:
CDOW(`20141231`; 12)
CDOW(`20141231 235959`; 3)
CDOW(Data_fatura; 9)
CDOW(Carimbo_de_data_e_hora_do_recebimento; 3)
Exemplos avançados
Adição de um campo que identifica os dias da semana para datas
Use a função CDOW( ) para criar um campo calculado que identifica os dias da semana para todas as
datas em um campo de data. Depois de criar o campo calculado, é possível adicioná-lo à exibição ao lado
da coluna data:
Observações
Detalhes do parâmetro
Um campo especificado para data/datahora pode usar qualquer formato de data ou datahora, desde que a
definição do campo defina corretamente o formato.
Se o parâmetro comprimento for mais curto que o nome do dia, o nome do dia será truncado no com-
primento especificado. Se o parâmetro comprimento for maior do que o nome do dia, o nome do dia será
preenchido com espaços em branco.
l Valores de datahora – você pode usar qualquer combinação de formatos de data, separador e
hora listados na tabela abaixo. A data deve preceder a hora e um separador deve ser usado entre
os dois. Os separadores válidos são um único espaço em branco ou as letras 't' ou 'T'.
l Valores de tempo – as horas devem ser especificadas usando o relógio de 24 horas. Os ajustes do
Tempo Universal Coordenado (UTC) devem ser precedidos por um sinal de mais (+) ou de menos
(-).
AAAAMMDD `20141231`
AAMMDD `141231`
AAAAMMDD hhmmss `20141231 235959`
AAMMDDthhmm `141231t2359`
AAAAMMDDThh `20141231T23`
AAAAMMDD hhmmss+/-hhmm `20141231 235959-0500`
(ajuste UTC)
AAMMDD hhmm+/-hh `141231 2359+01`
(ajuste UTC)
Nota
Não use somente hh no formato de hora
principal com dados que têm um ajuste
UTC. Por exemplo, evite: hh+hhmm. Os
resultados podem ser não confiáveis.
Funções relacionadas
Se precisar retornar o dia da semana como um número (1 a 7), use DOW( ) em vez de CDOW( ).
Função CHR( )
Retorna o caractere associado ao código ASCII especificado.
Sintaxe
CHR(número)
Parâmetros
Nome Tipo Descrição
Saída
Caractere.
Exemplos
Exemplos básicos
Retorna "A":
CHR(65)
Retorna "1":
CHR(49)
Exemplos avançados
Adição do símbolo de libra esterlina (£) para cada um dos valores em um
campo de moeda
Crie um campo calculado que adiciona o símbolo de libra esterlina (código ASCII 163) antes dos valores no
Observações
Quando usar CHR( )
Use a função CHR( ) para retornar o caractere associado a qualquer código ASCII, inclusive os carac-
teres que não podem ser inseridos diretamente de um teclado ou exibidos na tela. Com CHR( ), você
pode pesquisar campos ou registros pela existência desses caracteres específicos.
Referência a NUL
Referenciar caractere ASCII NUL (nulo), CHR(0), pode produzir resultados imprevisíveis porque ele é
usado pelo Analytics como um qualificador de texto e deve ser evitado se possível.
Funções relacionadas
CHR( ) é o inverso da função ASCII( ).
Função CLEAN( )
Substitui o primeiro caractere inválido e todos os caracteres subsequentes em uma cadeia por espaços em
branco.
Sintaxe
CLEAN(cadeia <;caracteres_extra_inválidos>)
Parâmetros
Nome Tipo Descrição
cadeia caractere O valor a partir do qual remover caracteres padrão e qualquer carac-
tere inválido extra.
caracteres_extra_ caractere Caracteres inválidos que você deseja remover da cadeia, além dos
inválidos caracteres inválidos padrão. Você pode especificar mais de um carac-
tere inválido extra:
opcional
" ,;\"
'"'
Saída
Caractere.
Exemplos
Exemplos básicos
Retorna "ABC " ("ABC" seguido por quatro espaços em branco):
CLEAN("ABC%DEF";"%")
CLEAN("1234,56,111,2"; ",")
Observações
Quando usar CLEAN( )
Use esta função para garantir que os campos que contenham dados inválidos sejam impressos cor-
retamente. Você também pode usar esta função para isolar as partes de um campo, como o sobrenome
de um campo de cliente que inclua o nome e o sobrenome.
CLEAN( ) automático
Em um script do Analytics, você pode aplicar a função CLEAN( ) automaticamente a todos os campos de
caracteres, adicionando SET CLEAN ON a seu script. Não é possível especificar caracteres individuais
extra usando esta opção.
Função CMOY( )
Retorna o nome do mês do ano para uma data ou datahora especificada. Abreviação de "Caractere para o
Mês do Ano".
Sintaxe
CMOY(data/datahora; comprimento)
Parâmetros
Nome Tipo Descrição
data/datahora datahora O campo, expressão ou valor literal do qual será obtido o nome do
mês.
Saída
Caractere.
Exemplos
Exemplos básicos
Retorna "Dezembro":
CMOY(`20141231`; 9)
Retorna "Dez":
CMOY(`20141231 235959`; 3)
CMOY(Carimbo_de_data_e_hora_do_recebimento; 3)
CMOY(Data_fatura; 9)
Retorna o nome completo do mês 15 dias após cada valor no campo Data_fatura:
CMOY(Data_fatura + 15; 9)
Observações
Detalhes do parâmetro
Um campo especificado para data/datahora pode usar qualquer formato de data ou datahora, desde que
a definição do campo defina corretamente o formato.
Se o parâmetro comprimento for mais curto que o nome do mês, o nome do mês será truncado no com-
primento especificado. Se o parâmetro comprimento for maior do que o nome do mês, o nome do mês
será preenchido com espaços em branco.
AAAAMMDD `20141231`
AAMMDD `141231`
AAAAMMDD hhmmss `20141231 235959`
AAMMDDthhmm `141231t2359`
AAAAMMDDThh `20141231T23`
AAAAMMDD hhmmss+/-hhmm `20141231 235959-0500`
(ajuste UTC)
AAMMDD hhmm+/-hh `141231 2359+01`
(ajuste UTC)
Nota
Não use somente hh no formato de hora
principal com dados que têm um ajuste
UTC. Por exemplo, evite: hh+hhmm. Os
resultados podem ser não confiáveis.
Funções relacionadas
Se precisar retornar o mês do ano como número (1 a 12), use MONTH( ) em vez de CMOY( ).
Função COS( )
Retorna o cosseno de um ângulo expresso em radianos, com uma precisão de 15 casas decimais.
Sintaxe
COS(radianos)
Parâmetros
Nome Tipo Descrição
Saída
Numérico.
Exemplos
Exemplos básicos
Retorna 0,500000000000000 (o número de radianos especificado):
COS(1,047197551196598)
Exemplos avançados
Uso de graus como entrada
Retorna 0,500000000000000 (o cosseno de 60 graus):
COS(60 * PI( )/180)
DEC(COS(60 * PI( )/180);3)
Observações
Realizando o Teste de Arco de Mantissa
As três funções trigonométricas no Analytics – SIN( ), COS( ) e TAN( ) – são compatíveis com a realização
do Teste de Arco de Mantissa associado à Lei de Benford.
Função CTOD( )
Converte um valor em caractere ou numérico de data em uma data. Também é possível extrair a data de
um valor de datahora em formato de caracteres ou numérico e retorná-lo como uma data. Abreviação de
"Caractere para Data".
Sintaxe
CTOD(caracteres/número <;formato>)
Parâmetros
Nome Tipo Descrição
caracteres/número caractere O campo, expressão ou valor literal a ser convertido para uma data,
ou do qual será extraída a data.
numérico
Saída
Datahora. O valor de data resultante usa o formato de exibição de data atual do Analytics.
Exemplos
Exemplos básicos
Entrada literal de caractere
Retorna `20141231` exibido como 31 Dez 2014 presumindo um formato de exibição atual de data do Analy-
tics de DD MMM AAAA:
CTOD("20141231")
CTOD("31/12/2014"; "DD/MM/YYYY")
CTOD("20141231 235959")
CTOD(20141231)
CTOD(31122014; "DDMMYYYY")
CTOD(20141231;235959)
CTOD(Data_fatura; "DD/MM/YYYY")
CTOD(Carimbo_de_data_e_hora_do_recebimento)
CTOD(Data_vencimento; "DDMMYYYY")
CTOD(Carimbo_de_data_e_hora_do_pagamento)
Exemplos avançados
Comparar um campo caractere ou numérico com uma data
Use a função CTOD( ) para comparar uma data com um campo caractere ou numérico contendo valores
que representam datas.
O filtro abaixo compara dois valores:
l o campo numérico Data_vencimento que armazena datas como números no formato
DDMMAAAA
l o valor de data literal 1 de julho de 2014
Observações
Formatos de data exigidos
Os campos de caracteres e numéricos contendo valores de data ou datahora também devem cor-
responder aos formatos na tabela abaixo. Os valores de datahora podem usar qualquer combinação de
formatos de data, separador e hora válidos para seu tipo de dados. A data deve preceder a hora e um
separador deve ser usado entre os dois.
Datas ou a parte de data de valores datahora podem usar qualquer formato de data compatível com o
Analytics e válido para o tipo de dados, desde que os formatos diferentes de AAAAMMDD ou AAMMDD
sejam definidos corretamente pelo formato.
Formatos de Formatos
Formatos de data separador de hora
Campos de caractere
qualquer formato de data compatível com o Analytics e válido para o tipo de a letra 'T' hh
Formatos de Formatos
Formatos de data separador de hora
+/-hhmm
+/-hh:mm
(ajuste UTC)
+/-hh
(ajuste UTC)
Formatos de Formatos
Formatos de data separador de hora
N-
o-
t-
a
N-
ã-
o
u-
s-
e
s-
o-
m-
e-
n-
t-
e
h-
h
n-
o
f-
o-
r-
m-
a-
t-
o
d-
e
h-
o-
r-
a
p-
ri-
n-
c-
i-
p-
a-
l
c-
o-
m
d-
a-
d-
o-
s
q-
u-
e
t-
ê-
Publicação 19/06/2019 © 2019 ACL Services Ltd. dba Galvanize m
Formatos de Formatos
Formatos de data separador de hora
Campos numéricos
AAMMDD hhmm
CTOT( ) Converte um valor em caractere ou numérico de hora em uma hora. Também é possível extrair
a hora de um valor de datahora em formato de caracteres ou numérico e retorná-lo como uma
hora. Abreviação de "Caractere para Hora".
DATE( ) Extrai a data a partir de uma data ou datahora específica e retorna como sequência de carac-
teres. Também pode retornar a data atual do sistema operacional.
DATETIME( ) Converte uma datahora em uma sequência de caracteres. Também pode retornar a datahora
atual do sistema operacional.
TIME( ) Extrai a hora a partir de uma hora ou datahora específica e retorna como sequência de carac-
teres. Também pode retornar a hora atual do sistema operacional.
STOD( ) Converte uma data serial, ou seja, uma data expressa como um inteiro, em um valor de data. É
abreviação de "Serial to Date".
Função Descrição
STODT( ) Converte uma datahora serial, ou seja, uma datahora expressa como um inteiro e uma fração
de 24 horas, em um valor de datahora. É abreviação de "Serial to Datetime".
STOT( ) Converte uma hora em série, ou seja, uma hora expressa como uma fração de 24 horas,
sendo 24 horas representando 1, para um valor de hora. Abreviação de "Série para hora".
Função CTODT( )
Converte um valor em caractere ou numérico de datahora em uma datahora. Abreviação de "Caractere
para Datahora".
Sintaxe
CTODT(caracteres/número <;formato>)
Parâmetros
Nome Tipo Descrição
caracteres/número caractere O campo, expressão ou valor literal que será convertido em datahora.
numérico
Saída
Datahora. O valor de datahora nos resultados é mostrado usando os formatos atuais de exibição de data e
hora do Analytics.
Exemplos
Exemplos básicos
Entrada literal de caractere
Retorna `20141231t235959` exibido como 31 Dez 2014 23:59:59 presumindo um formato de exibição atual
de data e hora do Analytics de DD MMM AAAA e hh:mm:ss:
CTODT("20141231 235959")
CTODT(20141231,235959)
CTODT(31122014,235959; "DDMMYYYY,hhmmss")
CTODT(Carimbo_de_data_e_hora_do_recebimento; "DD/MM/YYYY hh:mm:ss")
CTODT(carimbo_de_data_do_pagamento; "DD/MM/YYYY hh:mm:ss")
Exemplos avançados
Comparar um campo caractere ou numérico com uma datahora
Use a função CTODT( ) para comparar uma datahora com um campo de caracteres ou numérico con-
tendo valores que representam datahora.
O filtro abaixo compara dois valores:
l o caractere de campo Carimbo_de_data_e_hora_do_recebimento que armazena datahoras
como dados de caractere no formato DD/MM/AAAA hh:mm:ss
l o valor de datahora literal 1 de julho de 2014 13:30:00
Observações
Formatos de datahora obrigatórios
Os campos de caracteres e numéricos contendo valores de datahora também devem corresponder aos for-
matos na tabela abaixo. Os valores de datahora podem usar qualquer combinação de formatos de data,
separador e hora válidos para seu tipo de dados. A data deve preceder a hora e um separador deve ser
usado entre os dois.
A parte de data de valores pode usar qualquer formato de data compatível com o Analytics e válido para o
tipo de dados, desde que os formatos diferentes de AAAAMMDD ou AAMMDD sejam definidos cor-
retamente pelo formato. Se você usa o formato, deve também especificar o formato da hora, que deve ser
um dos formatos de hora listados na tabela abaixo.
O Analytics reconhece automaticamente o separador entre as partes de data e hora nos valores de data-
hora, portanto, não é preciso especificar o separador no formato. O separador pode ser especificado, se
você quiser.
Formatos de Formatos de
Formatos de data separador hora
Campos de caractere
qualquer formato de data compatível com o Analytics e válido para o tipo de a letra 'T' hh
dados, se definido pelo formato
+/-hhmm
+/-hh:mm
(ajuste UTC)
+/-hh
(ajuste UTC)
Formatos de Formatos de
Formatos de data separador hora
N-
o-
t-
a
N-
ã-
o
u-
s-
e
s-
o-
m-
e-
n-
te
h-
h
n-
o
f-
o-
r-
m-
a-
to
d-
e
h-
o-
r-
a
p-
ri-
n-
ci-
p-
al
c-
o-
m
d-
a-
d-
o-
s
q-
u-
e
t-
ê-
m
u-
m
a-
j-
Publicação 19/06/2019 © 2019 ACL Services Ltd. dba Galvanize u-
st-
Página 524 de 966 e
U-
Comandos
Formatos de Formatos de
Formatos de data separador hora
Campos numéricos
AAMMDD hhmm
CTOD( ) Converte um valor em caractere ou numérico de data em uma data. Também é possível extrair
a data de um valor de datahora em formato de caracteres ou numérico e retorná-lo como uma
data. Abreviação de "Caractere para Data".
CTOT( ) Converte um valor em caractere ou numérico de hora em uma hora. Também é possível extrair
a hora de um valor de datahora em formato de caracteres ou numérico e retorná-lo como uma
hora. Abreviação de "Caractere para Hora".
DATE( ) Extrai a data a partir de uma data ou datahora específica e retorna como sequência de carac-
teres. Também pode retornar a data atual do sistema operacional.
DATETIME( ) Converte uma datahora em uma sequência de caracteres. Também pode retornar a datahora
atual do sistema operacional.
TIME( ) Extrai a hora a partir de uma hora ou datahora específica e retorna como sequência de carac-
teres. Também pode retornar a hora atual do sistema operacional.
STOD( ) Converte uma data serial, ou seja, uma data expressa como um inteiro, em um valor de data. É
Função Descrição
STODT( ) Converte uma datahora serial, ou seja, uma datahora expressa como um inteiro e uma fração
de 24 horas, em um valor de datahora. É abreviação de "Serial to Datetime".
STOT( ) Converte uma hora em série, ou seja, uma hora expressa como uma fração de 24 horas,
sendo 24 horas representando 1, para um valor de hora. Abreviação de "Série para hora".
Função CTOT( )
Converte um valor em caractere ou numérico de hora em uma hora. Também é possível extrair a hora de
um valor de datahora em formato de caracteres ou numérico e retorná-lo como uma hora. Abreviação de
"Caractere para Hora".
Sintaxe
CTOT(caracteres/número)
Parâmetros
Nome Tipo Descrição
caracteres/número caractere O campo, expressão ou valor literal a ser convertido para uma hora,
ou do qual será extraída a hora.
numérico
Saída
Datahora. O valor de hora nos resultados é mostrado usando o formato de exibição de hora atual do Analy-
tics.
Exemplos
Exemplos básicos
Entrada literal de caractere
Retorna `t235959` exibido como 23:59:59 presumindo um formato atual de exibição de hora do Analytics
de hh:mm:ss:
CTOT("t235959")
CTOT("23:59:59")
CTOT("20141231 235959")
CTOT(,235959)
CTOT(0,235959)
CTOT(20141231,235959)
CTOT(Hora_login)
CTOT(Datahora_pagamento)
Exemplos avançados
Comparar um campo caractere ou numérico com uma hora
Use a função CTOT( ) para comparar uma hora com um campo de caracteres ou numérico contendo valo-
res que representam horas.
O filtro abaixo compara dois valores:
l o campo numérico Hora_login, que armazena as horas como dados numéricos
l o valor de tempo literal 09:30:00
Observações
Formatos de datahora obrigatórios
Os campos de caracteres e numéricos contendo valores de hora ou datahora também devem cor-
responder aos formatos na tabela abaixo.
Valores de hora podem usar qualquer combinação de formatos de separador e hora. Você deve usar um
separador antes do valor de hora ou dois pontos entre os componentes da hora para que a função funcione
corretamente.
Os valores de datahora podem usar qualquer combinação de formatos de data, separador e hora válidos
para seu tipo de dados. A data deve preceder a hora e um separador deve ser usado entre os dois.
Use a função CTOD( ) se quiser converter um valor data em caracteres ou numérico para uma data, ou
para extrair a data de um valor datahora em caracteres ou numérico e retorná-lo como uma data.
Use a função CTODT( ) se quiser converter um valor de datahora em formato de caracteres ou numérico
em datahora.
Campos de caractere
a letra 'T' hh
+/-hhmm
+/-hh:mm
(ajuste UTC)
+/-hh
(ajuste UTC)
Nota:
Não use somente hh
no formato de hora
principal com dados
que têm um ajuste
UTC. Por exemplo,
evite: hh+hhmm. Os
resultados podem ser
não confiáveis.)
Campos numéricos
AAMMDD hhmm
hh
CTOD( ) Converte um valor em caractere ou numérico de data em uma data. Também é possível
extrair a data de um valor de datahora em formato de caracteres ou numérico e retorná-lo
como uma data. Abreviação de "Caractere para Data".
DATE( ) Extrai a data a partir de uma data ou datahora específica e retorna como sequência de carac-
teres. Também pode retornar a data atual do sistema operacional.
DATETIME( ) Converte uma datahora em uma sequência de caracteres. Também pode retornar a datahora
atual do sistema operacional.
TIME( ) Extrai a hora a partir de uma hora ou datahora específica e retorna como sequência de carac-
teres. Também pode retornar a hora atual do sistema operacional.
STOD( ) Converte uma data serial, ou seja, uma data expressa como um inteiro, em um valor de data.
É abreviação de "Serial to Date".
STODT( ) Converte uma datahora serial, ou seja, uma datahora expressa como um inteiro e uma fração
Função Descrição
STOT( ) Converte uma hora em série, ou seja, uma hora expressa como uma fração de 24 horas,
sendo 24 horas representando 1, para um valor de hora. Abreviação de "Série para hora".
Função CUMIPMT( )
Retorna os juros cumulativos pagos de um empréstimo durante um intervalo de períodos.
Sintaxe
CUMIPMT(taxa; periodos; valor; período_inicial; período_final <;tipo>)
Parâmetros
Nome Tipo Descrição
Nota
Você deve usar períodos consistentes para especificar taxa e períodos para garantir que
está especificando a taxa de juros por período.
Por exemplo:
l para pagamentos mensais de um empréstimo ou investimento de dois anos com
juros de 5% ao ano, especifique 0,05/12 como taxa e 2 * 12 como períodos
l para pagamentos anuais do mesmo empréstimo ou investimento, especifique 0,05
como taxa e 2 como períodos
Saída
Numérico.
Exemplos
Exemplos básicos
Retorna 17437,23, o valor total de juros pagos no segundo ano de um empréstimo de vinte e cinco anos,
empréstimo de $ 275.000 a 6,5% ao ano, com pagamentos ao final de cada mês:
Retorna 17741,31, o valor total de juros pagos no mesmo empréstimo no primeiro ano:
Observações
Funções relacionadas
A função CUMPRINC( ) é o complemento da função CUMIPMT( ).
A função IPMT( ) calcula os juros pagos para um único período.
Função CUMPRINC( )
Retorna o principal cumulativo pago de um empréstimo durante um intervalo de períodos.
Sintaxe
CUMPRINC(taxa; periodos; valor; período_inicial; período_final <;tipo>)
Parâmetros
Nome Tipo Descrição
Nota
Você deve usar períodos consistentes para especificar taxa e períodos para garantir que
está especificando a taxa de juros por período.
Por exemplo:
l para pagamentos mensais de um empréstimo ou investimento de dois anos com
juros de 5% ao ano, especifique 0,05/12 como taxa e 2 * 12 como períodos
l para pagamentos anuais do mesmo empréstimo ou investimento, especifique 0,05
como taxa e 2 como períodos
Saída
Numérico.
Exemplos
Exemplos básicos
Retorna 4844,61, o valor total do principal pago no segundo ano de um empréstimo de vinte e cinco anos,
empréstimo de $ 275.000 a 6,5% ao ano, com pagamentos ao final de cada mês:
Retorna 367,24, o valor total do principal pago no mesmo empréstimo no primeiro ano:
Observações
Funções relacionadas
A função CUMIPMT( ) é o complemento da função CUMPRINC( ).
A função PPMT( ) calcula o principal pago para um único período.
Função DATE( )
Extrai a data a partir de uma data ou datahora específica e retorna como sequência de caracteres. Tam-
bém pode retornar a data atual do sistema operacional.
Sintaxe
DATE(< data/datahora> <;formato>)
Parâmetros
Nome Tipo Descrição
data/datahora datahora O campo, expressão ou valor literal do qual será extraída a data. Se
for omitido, a data atual do sistema operacional é retornada.
opcional
Saída
Caractere.
Exemplos
Exemplos básicos
Retorna "20141231" no formato de exibição atual de data do Analytics:
DATE(`20141231 235959`)
Retorna "31-Dez-2014":
Retorna a data atual do sistema operacional como uma cadeia de caracteres usando o formato atual de exi-
bição de data do Analytics:
DATE()
DATE(Carimbo_de_data_e_hora_do_recebimento)
DATE(Carimbo_de_data_e_hora_do_recebimento; "DD/MM/YYYY")
Observações
Comprimento da cadeia de saída
O comprimento da cadeia de saída é sempre 12 caracteres. Se o formato de saída especificado ou o for-
mato de exibição de data do Analytics for menos do que 12 caracteres, a cadeia de saída será preenchida
com espaços em branco à direita.
Detalhes do parâmetro
Um campo especificado para data/datahora pode usar qualquer formato de data ou datahora, desde que a
definição do campo defina corretamente o formato.
Se você usa formato para controlar como a cadeia de saída é exibida, pode usar qualquer formato de exi-
bição de data compatível com o Analytics. Por exemplo:
l DD/MM/AAAA
l MM-DD-AA
l DD MMM AAAA
formato deve ser especificado usando apóstrofos ou aspas – por exemplo, "DD MMM AAAA".
l Valores de datahora – você pode usar qualquer combinação de formatos de data, separador e
hora listados na tabela abaixo. A data deve preceder a hora e um separador deve ser usado entre
os dois. Os separadores válidos são um único espaço em branco ou as letras 't' ou 'T'.
l Valores de tempo – as horas devem ser especificadas usando o relógio de 24 horas. Os ajustes do
Tempo Universal Coordenado (UTC) devem ser precedidos por um sinal de mais (+) ou de menos
(-).
AAAAMMDD `20141231`
AAMMDD `141231`
AAAAMMDD hhmmss `20141231 235959`
AAMMDDthhmm `141231t2359`
AAAAMMDDThh `20141231T23`
AAAAMMDD hhmmss+/-hhmm `20141231 235959-0500`
(ajuste UTC)
AAMMDD hhmm+/-hh `141231 2359+01`
(ajuste UTC)
Nota
Não use somente hh no formato de hora
principal com dados que têm um ajuste
UTC. Por exemplo, evite: hh+hhmm. Os
resultados podem ser não confiáveis.
Funções relacionadas
Se precisar retornar a data atual do sistema operacional como valor de datahora, use TODAY( ) em vez
de DATE( ).
DATETIME( ) Converte uma datahora em uma sequência de caracteres. Também pode retornar a datahora
atual do sistema operacional.
Função Descrição
TIME( ) Extrai a hora a partir de uma hora ou datahora específica e retorna como sequência de carac-
teres. Também pode retornar a hora atual do sistema operacional.
CTOD( ) Converte um valor em caractere ou numérico de data em uma data. Também é possível extrair
a data de um valor de datahora em formato de caracteres ou numérico e retorná-lo como uma
data. Abreviação de "Caractere para Data".
CTOT( ) Converte um valor em caractere ou numérico de hora em uma hora. Também é possível extrair
a hora de um valor de datahora em formato de caracteres ou numérico e retorná-lo como uma
hora. Abreviação de "Caractere para Hora".
STOD( ) Converte uma data serial, ou seja, uma data expressa como um inteiro, em um valor de data. É
abreviação de "Serial to Date".
STODT( ) Converte uma datahora serial, ou seja, uma datahora expressa como um inteiro e uma fração
de 24 horas, em um valor de datahora. É abreviação de "Serial to Datetime".
STOT( ) Converte uma hora em série, ou seja, uma hora expressa como uma fração de 24 horas,
sendo 24 horas representando 1, para um valor de hora. Abreviação de "Série para hora".
Função DATETIME( )
Converte uma datahora em uma sequência de caracteres. Também pode retornar a datahora atual do sis-
tema operacional.
Sintaxe
DATETIME(< datahora> <;formato>)
Parâmetros
Nome Tipo Descrição
datahora datahora O campo, expressão ou valor literal a ser convertido. Se for omitido, a
data atual do sistema operacional é retornada.
opcional
Saída
Caractere.
Exemplos
Exemplos básicos
Entrada de datahora literal
Retorna "20141231 235959" no formato de exibição atual de data e hora do Analytics:
DATETIME(`20141231 235959`)
Retorna a data e hora atuais do sistema operacional como uma cadeia de caracteres, usando os formatos
atuais de exibição de data e hora do Analytics:
DATETIME( )
Entrada de campo
Retorna cada valor como no campo Carimbo_de_data_e_hora_do_recebimento como uma cadeia de
caracteres usando os formatos atuais de exibição de data e hora do Analytics:
DATETIME(Carimbo_de_data_e_hora_do_recebimento)
Observações
Comprimento da cadeia de saída
O comprimento da cadeia de saída é sempre 27 caracteres. Se o formato de saída especificado ou os for-
matos de exibição de data e hora do Analytics forem menos do que 27 caracteres, a cadeia de saída será
preenchida com espaços em branco à direita.
Detalhes do parâmetro
Um campo especificado para datahora pode usar qualquer formato de datahora, desde que a definição do
campo defina corretamente o formato.
Se você usa formato para controlar como a cadeia de saída é exibida, fica restrito aos formatos na tabela
abaixo.
l Você pode usar qualquer combinação de formatos de data, hora e AM/PM.
l A data deve preceder a hora. Não é necessário colocar um separador entre os dois, pois o Analytics
usa automaticamente um único espaço como separador para a cadeia de saída.
l O formato AM/PM é opcional e é posicionado ao final.
l formato deve ser especificado usando apóstrofos ou aspas.
Por exemplo: "DD-MMM-AAAA hh:mm:ss AM"
Formatos de Formatos
Formatos de data hora AM/PM Exemplos
hh:mm A ou P "DD-MMM-AAAA
hh:mm A"
Relógio de 12
horas
hhmm
hh
AAAAMMDD hhmmss `20141231 235959`
AAMMDDthhmm `141231t2359`
AAAAMMDDThh `20141231T23`
AAAAMMDD hhmmss+/-hhmm `20141231 235959-0500`
(ajuste UTC)
AAMMDD hhmm+/-hh `141231 2359+01`
(ajuste UTC)
Nota
Não use somente hh no formato de hora
principal com dados que têm um ajuste
UTC. Por exemplo, evite: hh+hhmm. Os
resultados podem ser não confiáveis.
DATE( ) Extrai a data a partir de uma data ou datahora específica e retorna como sequência de carac-
teres. Também pode retornar a data atual do sistema operacional.
TIME( ) Extrai a hora a partir de uma hora ou datahora específica e retorna como sequência de carac-
teres. Também pode retornar a hora atual do sistema operacional.
CTOD( ) Converte um valor em caractere ou numérico de data em uma data. Também é possível extrair
a data de um valor de datahora em formato de caracteres ou numérico e retorná-lo como uma
data. Abreviação de "Caractere para Data".
CTOT( ) Converte um valor em caractere ou numérico de hora em uma hora. Também é possível extrair
a hora de um valor de datahora em formato de caracteres ou numérico e retorná-lo como uma
hora. Abreviação de "Caractere para Hora".
STOD( ) Converte uma data serial, ou seja, uma data expressa como um inteiro, em um valor de data. É
abreviação de "Serial to Date".
STODT( ) Converte uma datahora serial, ou seja, uma datahora expressa como um inteiro e uma fração
de 24 horas, em um valor de datahora. É abreviação de "Serial to Datetime".
Função Descrição
STOT( ) Converte uma hora em série, ou seja, uma hora expressa como uma fração de 24 horas,
sendo 24 horas representando 1, para um valor de hora. Abreviação de "Série para hora".
Função DAY( )
Extrai o dia de um mês a partir de uma data ou datahora específica e retorna o dia como valor numérico (1 a
31).
Sintaxe
DAY(data/datahora)
Parâmetros
Nome Tipo Descrição
data/datahora datahora O campo, expressão ou valor literal do qual será extraído o dia.
Saída
Numérico.
Exemplos
Exemplos básicos
Retorna 31:
DAY(`20141231`)
DAY(`20141231 235959`)
DAY(Data_fatura)
Observações
Detalhes do parâmetro
Um campo especificado para data/datahora pode usar qualquer formato de data ou datahora, desde que
a definição do campo defina corretamente o formato.
AAAAMMDD `20141231`
AAMMDD `141231`
AAAAMMDD hhmmss `20141231 235959`
AAMMDDthhmm `141231t2359`
AAAAMMDDThh `20141231T23`
AAAAMMDD hhmmss+/-hhmm `20141231 235959-0500`
(ajuste UTC)
AAMMDD hhmm+/-hh `141231 2359+01`
(ajuste UTC)
Nota
Não use somente hh no formato de hora
principal com dados que têm um ajuste
UTC. Por exemplo, evite: hh+hhmm. Os
resultados podem ser não confiáveis.
Funções relacionadas
Se você precisar retornar:
l o dia da semana como um número (1 a 7), use DOW( ) em vez de DAY( )
l o nome do dia da semana, use CDOW( ) em vez de DAY( )
Função DBYTE( )
Retorna o caractere Unicode localizado em uma posição determinada de byte em um registro.
Nota
Essa função é específica para a edição Unicode do Analytics. Não é uma função supor-
tada na edição não-Unicode.
Sintaxe
BYTE(local_do_byte)
Parâmetros
Nome Tipo Descrição
Saída
Caractere.
Exemplos
Exemplos básicos
Os exemplos ilustram o comportamento da função quando aplicada ao seguinte valor Unicode, que con-
tém 11 caracteres (22 bytes) 美丽 10072DOE:
Retorna "丽 ":
DBYTE(3)
Retorna "D":
DBYTE(17)
Retorna "E":
DBYTE(21)
Observações
Quando usar DBYTE( )
Use DBYTE( ) para examinar o conteúdo de uma posição em um registro, sem precisar definir um campo
para isso.
Função DEC( )
Retorna um valor ou o resultado de uma expressão numérica com um número especificado de casas deci-
mais.
Sintaxe
DEC(número; decimais)
Parâmetros
Nome Tipo Descrição
número numérico O valor ou o resultado para o qual o número de casas decimais deve
ser ajustado.
o inteiros: casas decimais são adicionadas ao final do número
como zeros à direita.
o números fracionais: se o número de casas decimais for reduzido,
número será arredondado e não truncado. Se o número de casas
decimais for aumentado, serão adicionados zeros à esquerda do
número.
Saída
Numérico.
Exemplos
Exemplos básicos
Retorna 7,00:
DEC(7; 2)
Retorna 7,565:
DEC(7,5647; 3)
Retorna 7,56470:
DEC(7,5647; 5)
Exemplos avançados
Calcular os juros diários
Calcula os juros diários com seis casas decimais no campo Taxa_anual :
DEC(Taxa_anual; 6)/365
Observações
Quando usar DEC( )
Use essa função para ajustar o número de casas decimais em um campo ou para arredondar um valor ou
um resultado para um determinado número de casas decimais.
Exemplo
Considere a seguinte série de expressões no Analytics:
O arredondamento de ponto fixo significa que o resultado de 1,1 * 1,1 é 1,2 e não 1,21, que é o resultado
não arredondado. O uso de DEC( ) para especificar um resultado com duas casas decimais não cria uma
precisão de duas casas decimais. Em vez disso, adiciona um zero à direita para criar o número espe-
cificado de casas decimais, sem aumentar a precisão.
Para obter informações sobre como aumentar a precisão decimal, consulte Controlar arredondamentos
em expressões numéricas.
Funções relacionadas
Se você quiser arredondar um valor para um número inteiro mais próximo, use a "Função ROUND( )" Na
página 780.
Função DHEX( )
Converte uma cadeia Unicode em formato hexadecimal.
Nota:
Essa função é específica para a edição Unicode do Analytics. Não é uma função suportada
na edição não-Unicode.
Sintaxe
DHEX(campo)
Parâmetros
Nome Tipo Descrição
Saída
Caractere.
Exemplos
Exemplos básicos
Retorna "004100420043003100320033":
DHEX("ABC123")
Observações
Como funciona?
DHEX( ) exibe cada caractere com byte duplo usando o formato big-endian, com o byte duplo mais sig-
nificativo armazenado em primeiro lugar.
Cada caractere é representado por um código de quatro caracteres. A cadeia de saída é quatro vezes
mais longa que o valor do campo e inclui os dígitos entre 0 e 9, bem como as letras entre A e F que
compõem os valores hexadecimais.
Funções relacionadas
DHEX( ) é o inverso da função HTOU( ) que converte alores hexadecimais para caracteres Unicode.
Função DICECOEFFICIENT( )
Retorna o coeficiente de Dice entre duas cadeias especificadas, que é uma medida de quanto as duas
cadeias são similares.
Sintaxe
DICECOEFFICIENT(cadeia1; cadeia2 <;ngrama>)
Parâmetros
Nome Tipo Descrição
Saída
Numérico. O valor é o coeficiente de Dice das duas cadeias, que representa a porcentagem do número
total de ngramas nas duas cadeias que são idênticos. O intervalo é de 0,0000 a 1,0000, inclusive.
Exemplos
Exemplos básicos
Como o comprimento do ngrama afeta o resultado
Os três exemplos abaixo comparam as duas mesmas cadeias. O grau de similaridade retornado varia em
função do comprimento de ngrama especificado.
Retorna 0,9167 (usando o comprimento padrão de ngrama (2), os ngramas nas duas cadeias são 92%
idênticos):
Retorna 1,0000 (usando um comprimento de ngrama de 1, os ngramas nas duas cadeias são 100% idên-
ticos):
Retorna 0,8261 (usando um comprimento de ngrama de 3, os ngramas nas duas cadeias são 83% idên-
ticos):
Entrada de campo
Retorna o coeficiente de Dice de cada valor no campo Endereço, quando comparado à cadeia "125 SW
39TH ST, Suite 100" (com base no comprimento padrão de ngrama de 2):
Exemplos avançados
Como trabalhar com elementos transpostos
A redução do comprimento do ngrama e a remoção de caracteres não essenciais permite otimizar o
DICECOEFFICIENT( ) na pesquisa por elementos transpostos.
Retorna 0,7368 (usando o comprimento padrão de ngrama (2), os ngramas nas duas cadeias são 74%
idênticos):
Retorna 1,0000 (excluindo a vírgula entre o nome e o sobrenome, e usando um comprimento de ngrama de
1, os ngramas nas duas cadeias são 100% idênticos):
Adicione o campo calculado Co_Dice à exibição e execute uma classificação rápida do campo em ordem
decrescente para classificar todos os valores do campo Endereço de acordo com sua similaridade com
"125 SW 39TH ST, Suite 100".
A alteração do número na expressão permite ajustar o grau de similaridade nos valores filtrados.
Observações
Quando usar DICECOEFFICIENT( )
Use a função DICECOEFFICIENT( ) para encontrar valores praticamente idênticos (duplicidades parciais).
Você também pode usar DICECOEFFICIENT( ) para encontrar valores com conteúdo idêntico ou quase
idêntico com elementos transpostos. Por exemplo:
l números de telefone ou números de previdência social com dígitos transpostos
l versões do mesmo endereço com formatações diferentes
Como funciona?
DICECOEFFICIENT( ) retorna o coeficiente de Dice das duas cadeias avaliadas, que é uma medida do
grau de similaridade entre as cadeias em uma escala de 0,0000 a 1,0000. Quanto maior o valor retornado,
maior a semelhança das duas cadeias:
l 1,0000 – indica que cada cadeia é composta por um conjunto de caracteres idêntico, embora os
caracteres possam estar em ordem diferente ou serem caracteres maiúsculos em um conjunto de
caracteres e caracteres minúsculos no outro conjunto de caracteres.
l 0,7500 – significa que os ngramas nas duas cadeias são 75% idênticos.
l 0,0000 – significa que as duas cadeias não têm ngramas compartilhados (explicado abaixo) ou que
o comprimento especificado do ngrama usado no cálculo é maior que o comprimento da menor das
duas cadeias comparadas.
Dicas de uso
l Filtragem ou ordenação: A filtragem ou a ordenação dos valores em um campo com base em seu
coeficiente de Dice identifica os valores mais semelhantes à cadeia de comparação.
l Diferenciação de maiúsculas e minúsculas: A função não diferencia maiúsculas de minúsculas,
portanto "SMITH" é equivalente a "smith."
l Brancos à esquerda e à direita: A função elimina automaticamente brancos à esquerda ou à
direita, eliminando, portanto, a necessidade de usar as funções TRIM( ) ou ALLTRIM( ) ao espe-
cificar um campo como parâmetro.
l Remoção de elementos genéricos: As funções OMIT( ) e EXCLUDE( ) podem melhorar a eficácia
da função DICECOEFFICIENT( ) removendo elementos genéricos, como "Companhia" ou "Inc." ou
caracteres como vírgulas, pontos e E comercial (&) dos valores do campo.
A remoção de elementos e pontuação genéricos concentra a comparação de cadeia
DICECOEFFICIENT( ) somente na parte das cadeias onde pode ocorrer uma diferença sig-
nificativa.
Comprimento do
ngrama "John Smith" - Ngramas "Smith, John D." - ngramas
2 Jo | oh | hn | n_ | _S | Sm | mi | it | th Sm | mi | it | th | h, | ,_ | _J | Jo | oh | hn | n_ | _D | D.
3 Joh | ohn | hn_ | n_S | _Sm | Smi | Smi | mit | ith | th, | h,_ | ,_J | _Jo | Joh | ohn | hn_ | n_
Comprimento do
ngrama "John Smith" - Ngramas "Smith, John D." - ngramas
2 Jo | oh | hn | n_ | _S | Sm Sm | mi | it | th | h, | ,_ | _J | Jo | oh | hn 8 2x8 / (9+13)
| mi | it | th | n_ | _D | D. = 0,7273
(padrão)
(9 ngramas) (13 ngramas)
3 Joh | ohn | hn_ | n_S | _ Smi | mit | ith | th, | h,_ | ,_J | _Jo | Joh | 6 2x6 / (8+12)
Sm | Smi | mit | ith ohn | hn_ | n_D | _D. = 0,6000
(8 ngramas) (12 ngramas)
4 John | ohn_ | hn_S | n_ Smit | mith | ith, | th,_ | h,_J | ,_Jo | _ 4 2x4 / (7+11)
Sm | _Smi | Smit | mith Joh | John | ohn_ | hn_D | n_D. = 0,4444
(7 ngramas) (11 ngramas)
Coeficiente de Dice
Par de endereços (ngrama padrão de 2) Distância de Levenshtein
Coeficiente de Dice
Par de nomes de empresa (ngrama padrão de 2) Distância de Levenshtein
Função DIGIT( )
Retorna o dígito superior ou inferior de um byte de tipo de dados Packed (Compactado).
Sintaxe
DIGIT(localização_byte; posição)
Parâmetros
Nome Tipo Descrição
Saída
Numérico.
Exemplos
Exemplos básicos
Um campo compactado com o valor 123,45 (00 12 34 5C), contendo dois decimais e iniciando na posição
10 de byte, aparece no registro de dados no seguinte formato:
UPPER(1) 0 1 3 5
LOWER(2) 0 2 4 C
Retorna 3 (encontra o dígito que aparece na 12a posição na metade superior do byte):
DIGIT(12; 1)
Retorna 4 (encontra o dígito que aparece na 12a posição na metade inferior do byte):
DIGIT(12; 2)
Observações
Como funciona?
DIGIT( ) separa metades individuais de um byte e retorna o valor do byte especificado no parâmetro posi-
ção como um dígito entre 0 e 15.
Função DOW( )
Retorna um valor numérico (1 a 7) representando o dia da semana para uma data ou datahora espe-
cificada. Abreviação de "Dia da Semana".
Sintaxe
DOW(data/datahora)
Parâmetros
Nome Tipo Descrição
data/datahora datahora O campo, expressão ou valor literal para extrair o dia numérico da
semana.
Saída
Numérico.
Exemplos
Exemplos básicos
Retorna 4 porque 31 de dezembro de 2014 é uma quarta-feira, o quarto dia da semana:
DOW(`20141231`)
DOW(`20141231 235959`)
DOW(Data_fatura)
Exemplos avançados
Identificação de transações que ocorrem em um fim de semana
Use a função DOW( ) para identificar transações que ocorrem em um fim de semana. O filtro abaixo isola
as datas no campo Data_da_trans que ocorrem no sábado ou no domingo:
Observações
Detalhes do parâmetro
Um campo especificado para data/datahora pode usar qualquer formato de data ou datahora, desde que
a definição do campo defina corretamente o formato.
AAAAMMDD `20141231`
AAMMDD `141231`
AAAAMMDD hhmmss `20141231 235959`
AAMMDDthhmm `141231t2359`
AAAAMMDDThh `20141231T23`
AAAAMMDD hhmmss+/-hhmm `20141231 235959-0500`
(ajuste UTC)
AAMMDD hhmm+/-hh `141231 2359+01`
(ajuste UTC)
Nota
Não use somente hh no formato de hora
principal com dados que têm um ajuste
UTC. Por exemplo, evite: hh+hhmm. Os
resultados podem ser não confiáveis.
Funções relacionadas
Se você precisar retornar:
l o nome do dia da semana, use CDOW( ) em vez de DOW( )
l o dia do mês como número (1 a 31), use DAY( ) em vez de DOW( )
Função DTOU( )
Converte um valor de data do Analytics para uma cadeia Unicode no idioma e no formato de localidade
especificados. Abreviação de "Data para Unicode".
Nota
Essa função é específica para a edição Unicode do Analytics. Não é uma função supor-
tada na edição não-Unicode.
Sintaxe
DTOU(< data> <;local> <;estilo>)
Parâmetros
Nome Tipo Descrição
data datahora O campo, expressão ou valor literal que será convertido em uma
cadeia Unicode. Se for omitido, a data atual do sistema operacional
opcional
é utilizada.
A data pode conter um valor datahora, mas a parte correspondente
ao horário é ignorada. Valores de hora independentes não são com-
patíveis.
É possível especificar um campo ou um valor de data literal:
o Campo: pode usar qualquer formato de data, desde que a defi-
nição do campo defina corretamente o formato
o Literal: precisa usar um dos formatos AAAAMMDD ou AAMMDD,
por exemplo `20141231`
O valor mínimo de data permitido é 31 de dezembro de 1969.
estilo numérico O estilo de formato de dados a ser usado para a cadeia Unicode. O
estilo de formato corresponde ao padrão para a localidade espe-
opcional
cificada:
o 0 – formato de especificação completa, como "Domingo, 18 de
setembro de 2016"
o 1 – formato longo, como "18 de setembro de 2016"
o 2 – formato médio, como "18 de set. de 2016"
o 3 – formato numérico curto, como "18/09/16"
Se omitido, o valor padrão 2 é usado. Não é possível especificar um
estilo se você não tiver especificado uma data e uma localidade.
Saída
Caractere.
Exemplos
Exemplos básicos
Valores de entrada literal
Retorna "31 de dezembro de 2014":
DTOU(`20141231`; "pt_BR"; 1)
DTOU(`20141231`; "pl"; 1)
DTOU(Data_fatura; "zh"; 1)
DTOU(`20141231`; "zh"; 0)
DTOU(`20141231`; "zh_CN"; 0)
DTOU(`20141231`; "zh"; 1)
DTOU(`20141231`; "zh_CN"; 1)
Observações
Funções relacionadas
DTOU( ) é o inverso da função UTOD( ) que converte caracteres Unicode em uma data.
Função EBCDIC( )
Retorna uma cadeia que foi convertida para a codificação de caracteres EBCDIC.
Sintaxe
EBCDIC(cadeia)
Parâmetros
Nome Tipo Descrição
Saída
Caractere.
Exemplos
Exemplos básicos
Retorna "ñòó@Æ '…@â£K":
Exemplos avançados
Criação de um campo codificado em EBCDIC para exportação
Para criar um campo, que contenha o valor codificado EBCDIC do campo Nome, para exportar para um
aplicativo que exige a codificação EBCDIC, especifique o seguinte:
Observações
Quando usar EBCDIC( )
Use essa função para converter os dados para a codificação de caracteres Extended Binary Coded Deci-
mal Interchange Code (EBCDIC). A codificação de caracteres EBCDIC é usada principalmente em sis-
temas operacionais de mainframe da IBM, tais como z/OS.
Função EFFECTIVE( )
Retorna a taxa de juros efetiva anual de um empréstimo.
Sintaxe
EFFECTIVE(taxa_nominal; períodos)
Parâmetros
Nome Tipo Descrição
Saída
Numérico. A taxa é calculada com oito casas decimais.
Exemplos
Exemplos básicos
Retorna 0,19561817 (19,56%), a taxa de juros anual efetiva sobre o saldo não pago de um cartão de cré-
dito que cobra 18% ao ano, compostos mensalmente:
EFFECTIVE(0,18; 12)
Observações
Qual é a taxa de juros anual efetiva?
A taxa de juros anual efetiva de um empréstimo é a taxa de juros anual real paga, considerando os juros
sobre o saldo restante, compostos mensalmente ou diariamente.
Funções relacionadas
A função NOMINAL( ) é o inverso da função EFFECTIVE( ).
Função EOMONTH( )
Retorna a data do último dia do mês que é o número específico de meses antes ou depois de uma data
específica.
Sintaxe
EOMONTH(< data/datahora> <;meses>)
Parâmetros
Nome Tipo Descrição
data/datahora datahora O campo, expressão ou valor literal do qual será calculada a data do
final do mês. Se for omitido, a data do final do mês será calculada a
opcional
partir da data atual do sistema operacional.
Nota
Você pode especificar um valor datahora para data/-
datahora, mas a parte da hora do valor é ignorada.
Saída
Datahora. O valor de data resultante usa o formato de exibição de data atual do Analytics.
Exemplos
Exemplos básicos
Nenhuma entrada
Retorna o último dia do mês para a data atual do sistema operacional:
EOMONTH( )
EOMONTH(`20140115`)
Retorna `20140430` exibido como 30 Abr 2014 presumindo um formato de exibição atual de data do
Analytics de DD MMM AAAA:
EOMONTH(`20140115`; 3)
Retorna `20131031` exibido como 31 Out 2013 presumindo um formato de exibição atual de data do
Analytics de DD MMM AAAA:
EOMONTH(`20140115`; -3)
EOMONTH(Data_fatura; 3)
Retorna o último dia do mês que está três meses após cada data no campo Data_fatura, mais um período
de carência de 15 dias:
EOMONTH(Data_fatura + 15; 3)
EOMONTH(Data_fatura; -1) + 1
Observações
Formatos datahora
Um campo especificado para data/datahora pode usar qualquer formato de data ou datahora, desde que
a definição do campo defina corretamente o formato.
Um valor de data literal deve usar um dos seguintes formatos:
l AAAAMMDD
l AAMMDD
Você precisa incluir os valores de data literais entre apóstrofos invertidos. Por exemplo: `20141231`
EOMONTH(`20140115`) + 1
Funções relacionadas
Use a função GOMONTH( ) se quiser retornar a data exata, em vez da data do último dia do mês, que é o
número de meses especificado antes ou depois de uma data específica.
Função EXCLUDE( )
Retorna uma cadeia que exclui os caracteres especificados.
Sintaxe
EXCLUDE(cadeia; caracteres_a_excluir)
Parâmetros
Nome Tipo Descrição
Saída
Caractere.
Exemplos
Exemplos básicos
Retorna " Alberni Street", que é a cadeia de entrada com todos os números excluídos:
EXCLUDE(Número_Produto; "/#")
Observações
Como funciona?
A função EXCLUDE( ) compara cada caractere na cadeia com os caracteres listados em caracteres_a_
excluir. Se ocorrer uma correspondência, o caractere é excluído da cadeia resultante.
Por exemplo, a saída para EXCLUDE("123-45-4536"; "-") é "123454536".
EXCLUDE(UPPER("id#94022"); "ID#")
Dica de uso
Use EXCLUDE( ) se o conjunto de caracteres a excluir é pequeno e o conjunto de caracteres a incluir é
grande.
Funções relacionadas
A função EXCLUDE( ) é oposta à função INCLUDE( ).
Função EXP( )
Retorna o valor exponencial (base 10) de uma expressão numérica com um número específico de casas
decimais.
Sintaxe
EXP(número; decimais)
Parâmetros
Nome Tipo Descrição
número numérico O campo numérico, expressão ou valor do qual retornar o valor expo-
nencial.
Saída
Numérico.
Exemplos
Exemplos básicos
Retorna 1000,00:
EXP(3; 2)
Retorna 72443,596007:
EXP(4,86; 6)
Exemplos avançados
Como encontrar a raiz cúbica
Cria um campo que seja a raiz cúbica do campo X com duas casas decimais:
Dica
A n-ésima raiz pode ser determinada dividindo-se o logaritmo do valor por n e tomando-se
o exponencial do resultado.
Observações
Como funciona?
Essa função retorna o valor exponencial (base 10) de uma expressão numérica, que é definido como 10 ele-
vado a n. Por exemplo, o valor exponencial de 3 é 103, ou 1000.
Funções relacionadas
O inverso de um expoente é seu logaritmo, então a função EXP( ) é o oposto da função LOG( ).
Função FILESIZE( )
Retorna o tamanho do arquivo especificado em bytes, ou -1, caso o arquivo não exista.
Sintaxe
FILESIZE(nome_arquivo)
Parâmetros
Nome Tipo Descrição
Saída
Numérico.
Exemplos
Exemplos básicos
Retorna 14744:
FILESIZE("Inventário.fil")
Se o arquivo verificado não estiver na mesma pasta do projeto do Analytics, você deverá especificar o cami-
nho relativo ou absoluto do arquivo.
Retorna 6018:
Exemplos avançados
Execução de um script se o arquivo não existir
Executa o script importar_dados somente se o arquivo Metaphor_Inventário_2002.fil não existir:
CALCULATE FILESIZE("Metaphor_Inventory_2002.fil")
Função FIND( )
Retorna um valor lógico indicando se a cadeia de caracteres especificada está presente em um campo
específico ou em qualquer local no registro.
Nota
A função FIND e o "Comando FIND" Na página 211 são dois recursos separados do
Analytics com diferenças significativas.
Sintaxe
FIND(cadeia <;campo_a_ser_pesquisado>)
Parâmetros
Nome Tipo Descrição
cadeia caractere A cadeia de caracteres que deve ser pesquisada. Essa pesquisa não
diferencia maiúsculas de minúsculas.
Saída
Lógico. Retorna V (verdadeiro), se o valor da cadeia especificada for encontrada e F (falso), caso con-
trário.
Exemplos
Exemplos básicos
Pesquisa de um registro inteiro
Retorna T para todos os campos que contêm a cadeia "São Paulo" em qualquer campo, cruzando limites
de campos e em qualquer parte indefinida do registro. Caso contrário, retorna F:
FIND("São Paulo")
Retorna T para todos os registros que contêm a cadeia "Sã" no campo Cidade. Caso contrário, retorna F:
FIND("Sã"; Cidade)
Retorna T para todos os registros que contêm a cadeia "São Paulo" precedida por um ou mais espaços no
campo Cidade. Caso contrário, retorna F:
Retorna T para todos os registros com um valor no campo Descrição igual ou que contém o valor da vari-
ável v_termo_pesquisa. Caso contrário, retorna F:
FIND(v_termo_pesquisa; Descricao)
Retorna T para todos os registros que contêm a cadeia "São Paulo" no campo Cidade ou Cidade_2. Caso
contrário, retorna F:
FIND(ALLTRIM(Sobrenome); Sobrenome_2)
Observações
Quando usar FIND( )
Use a função FIND( ) para testar a presença da cadeia especificada em um campo, em dois ou mais cam-
pos, ou em um registro inteiro.
Os campos concatenados são tratados como um único campo que inclui os espaços à esquerda e à
direita de cada campo, a menos que a função ALLTRIM( ) seja usada para remover espaços.
Também é possível criar uma expressão que pesquisa em cada campo individualmente:
Se a cadeia incluir um espaço à esquerda, os resultados da pesquisa das duas abordagens podem ser
diferentes.
Função FINDMULTI( )
Retorna um valor lógico indicando se qualquer cadeia em um conjunto de uma ou mais cadeias espe-
cificadas está presente em um campo específico ou em qualquer local no registro.
Sintaxe
FINDMULTI({pesquisar_em|RECORD}; cadeia_1 <;...n>)
Parâmetros
Nome Tipo Descrição
Field_1+Field_2+Field_3
cadeia_1 <;...n> caractere Um ou mais cadeias de caracteres para pesquisar. Separe várias
cadeias de pesquisa com vírgulas:
Saída
Lógico. Retorna T (verdadeiro) se qualquer um dos valores especificados de cadeia for encontrado; caso
contrário, retorna F (falso).
Exemplos
Exemplos básicos
Pesquisa de um registro inteiro
Retorna T para todos os campos que contêm a cadeia "São Paulo" ou "Porto Alegre" em qualquer campo,
cruzando limites de campos e em qualquer parte indefinida do registro. Caso contrário, retorna F:
Retorna T para todos os registros que contêm a cadeia "Sã" ou "Por" no campo Cidade. Caso contrário,
retorna F:
Retorna T para todos os registros que contêm a cadeia "São Paulo" ou "Porto Alegre" precedida por um ou
mais espaços no campo Cidade. Caso contrário, retorna F:
Retorna T para todos os registros com um valor no campo Descrição igual ou que contém qualquer um dos
valores nas variáveis v_termo_pesquisa. Caso contrário, retorna F:
Retorna T para todos os registros que contêm a cadeia "São Paulo" ou "Porto Alegre" no campo Cidade ou
Cidade_2. Caso contrário, retorna F:
Observações
Quando usar FINDMULTI( )
Use a função FINDMULTI( ) para testar a presença de qualquer das cadeias especificadas em um campo,
em dois ou mais campos ou em um registro inteiro.
Os campos concatenados são tratados como um único campo que inclui os espaços à esquerda e à direita
de cada campo, a menos que a função ALLTRIM( ) seja usada para remover espaços.
Também é possível criar uma expressão que pesquisa em cada campo individualmente:
FINDMULTI(Cidade; "São Paulo"; "Porto Alegre") OR FINDMULTI(Cidade_2; "São Paulo"; "Porto Ale-
gre")
Se o valor de cadeia incluir um espaço à esquerda, os resultados da pesquisa das duas abordagens podem
ser diferentes.
Nota
Não recomendamos usar a função FINDMULTI( ) para pesquisar dados datahora ou
numéricos porque pode ser difícil conseguir fazê-lo de forma bem-sucedida.
Função FREQUENCY( )
Retorna a frequência de Benford esperada para dígitos numéricos positivos iniciais sequenciais com uma
precisão de oito casas decimais.
Sintaxe
FREQUENCY(cadeia_de_dígito)
Parâmetros
Nome Tipo Descrição
cadeia_de_dígito caractere Uma cadeia de caracteres contendo dígitos (0-9) cuja frequência deve
ser identificada. cadeia_de_dígito deve ser um número positivo e os
zeros à esquerda são ignorados.
Saída
Numérico.
Exemplos
Exemplos básicos
Retorna 0,00998422:
FREQUENCY("43")
Retorna 0,00000000:
FREQUENCY("87654321")
Nota
O resultado é 0,00000000495, mas como o Analytics calcula a uma precisão de oito casas
decimais, o valor zero é retornado.
Observações
Como funciona?
FREQUENCY( ) retorna a frequência de Benford esperada para dígitos numéricos positivos à esquerda
sequenciais com uma precisão de oito dígitos. Ela permite a execução de testes limitados de Benford
para situações específicas.
Função FTYPE( )
Retorna um caractere identificando a categoria de dados de um campo ou variável, ou o tipo de um item do
projeto do Analytics.
Sintaxe
FTYPE(cadeia_de_nome_de_campo)
Parâmetros
Nome Tipo Descrição
FTYPE("Valor")
Saída
Caractere. Esta função retorna um dos seguintes caracteres, que indica o campo, variável ou tipo de item
do projeto do Analytics:
l "C": Campo de caracteres
l "N": Campo numérico
l "D": Campo de datahora
l "L": Campo lógico
l "c": Variável de caracteres
l "n": Variável numérica
l "d": Variável de datahora
l "l": Variável lógica
l "b": Script do Analytics
l "y": Layout da tabela do Analytics
l "w": Área de trabalho do Analytics
l "i": Índice do Analytics
l "r": Relatório do Analytics
l "a": Arquivo de log do Analytics
l "U": Não definido
Exemplos
Exemplos básicos
O seguinte exemplo atribui um valor de 4 à variável num e depois verifica o tipo.
Retorna "n":
ASSIGN num = 4
FTYPE("num")
Exemplos avançados
Teste para o tipo de dados de um campo
Você tem um script ou uma análise que exige um campo de Valor numérico e precisa testar se o campo é
do tipo correto antes de executar o script.
O comando a seguir só executa Script_1 se o Valor for um campo numérico:
OPEN Faturas
DO Script_1 IF FTYPE("Valor") = "N"
A capacidade de detectar o ambiente do tempo de execução permite projetar um único script que executa
diferentes blocos de códigos, dependendo do aplicativo onde está sendo executado.
Função FVANNUITY( )
Retorna o valor futuro de uma série de pagamentos, calculado usando uma taxa de juros constante. O
valor futuro é a soma dos pagamentos mais os juros compostos acumulados.
Sintaxe
FVANNUITY(taxa; periodos; pagamento <;tipo>)
Parâmetros
Nome Tipo Descrição
Nota
Você deve usar períodos consistentes para especificar taxa, períodos e pagamento para
garantir que está especificando a taxa de juros por período.
Por exemplo:
l para um pagamento mensal de um empréstimo ou investimento de dois anos com
juros de 5% ao ano, especifique 0,05/12 como taxa e 2 * 12 como períodos
l para um pagamento anual do mesmo empréstimo ou investimento, especifique
0,05 como taxa e 2 como períodos
Saída
Numérico. O resultado é calculado para duas casas decimais.
Exemplos
Exemplos básicos
Pagamentos mensais
Retorna 27243,20, o valor futuro de $ 1.000 pagos no início de cada mês por 2 anos a 1% ao mês, com-
postos mensalmente:
Pagamentos anuais
Retorna 25440,00, o valor futuro de $ 12.000 pagos ao final de cada ano por 2 anos a 12% ao ano, com-
postos anualmente:
FVANNUITY(0,12; 2; 12000; 0)
Exemplos avançados
Cálculos de anuidade
Os cálculos de anuidade envolvem quatro variáveis:
l valor presente ou valor futuro: US$ 21.243,39 e US$ 26.973,46 nos exemplos abaixo
l valor do pagamento por período: US$ 1.000,00 nos exemplos abaixo
l taxa de juros por período: 1% por mês nos exemplos abaixo
l número de períodos: 24 meses nos exemplos abaixo
Se você souber o valor de três das variáveis, poderá usar uma função do Analytics para calcular a quarta.
PVANNUITY( )
Retorna 21243,39:
FVANNUITY( )
Retorna 26973,46:
PMT( )
Retorna 1000:
RATE( )
Retorna 0,00999999 (1%):
NPER( )
Retorna 24,00:
Fórmulas de anuidade
A fórmula para calcular o valor presente de uma anuidade ordinária (pagamento no final de um período):
A fórmula para calcular o valor futuro de uma anuidade ordinária (pagamento no final de um período):
Observações
Funções relacionadas
A função PVANNUITY( ) é o inverso da função FVANNUITY( ).
Função FVLUMPSUM( )
Retorna o valor futuro de um valor de um único pagamento atual, calculado usando uma taxa de juros cons-
tante.
Sintaxe
FVLUMPSUM(taxa; períodos; valor)
Parâmetros
Nome Tipo Descrição
Nota
Você deve usar períodos consistentes para especificar taxa e períodos para garantir que
está especificando a taxa de juros por período.
Por exemplo:
l para pagamentos mensais de um empréstimo ou investimento de dois anos com
juros de 5% ao ano, especifique 0,05/12 como taxa e 2 * 12 como períodos
l para pagamentos anuais do mesmo empréstimo ou investimento, especifique 0,05
como taxa e 2 como períodos
Saída
Numérico. O resultado é calculado para duas casas decimais.
Exemplos
Exemplos básicos
Juros compostos mensalmente
Retorna 1269,73, o valor futuro de um único pagamento de US$ 1.000 investido por 2 anos a 1% por mês,
composto mensalmente:
Retorna 27243,20, o valor futuro de $ 21.455,82 investidos por 2 anos a 1% ao mês, compostos men-
salmente:
FVLUMPSUM(0,12; 2; 1000)
Observações
O que é valor futuro?
O valor futuro de um valor de um único pagamento investido é o principal do investimento inicial mais os
juros compostos acumulados.
Funções relacionadas
A função PVLUMPSUM( ) é o inverso da função FVLUMPSUM( ).
Função FVSCHEDULE( )
Retorna o valor futuro de um valor de um único pagamento atual, calculado usando uma série de taxas de
juros.
Sintaxe
FVSCHEDULE(principal; taxa1 <;taxa2...>)
Parâmetros
Nome Tipo Descrição
taxa1; taxa2... numérico Uma série de taxas de juros para períodos de igual duração.
Nota
Os períodos podem representar meses ou anos ou
algum outro período, desde que o tipo de período seja
consistente.
Você deve especificar as taxas de juros por período.
Portanto, se uma das taxas de juros for 5% ao ano e os
períodos forem meses, especifique 0,05/12.
Saída
Numérico. O resultado é calculado para duas casas decimais.
Exemplos
Exemplos básicos
Retorna 1282,93, o valor futuro de um único pagamento de US$ 1000 investido por 3 anos a 10% no pri-
meiro ano, 9% no segundo ano e 7% no terceiro ano, composto anualmente:
Observações
O valor futuro de um valor de um único pagamento investido é o principal do investimento inicial mais os
juros compostos acumulados.
Função GETOPTIONS( )
Retorna a configuração atual para a opção do Analytics especificada (configuração da caixa de diálogo
Opções ).
Sintaxe
GETOPTIONS(opção)
Parâmetros
Nome Tipo Descrição
Saída
Caractere.
Exemplos
Exemplos básicos
Retorna as configurações dos três caracteres separadores atuais do Analytics. Por exemplo, ".,,":
GETOPTIONS("SEPARATORS")
Exemplos avançados
Uso de GETOPTIONS( ) em um script
Se um script precisar alterar um ou mais dos caracteres separadores do Analytics, a função GETOPTIONS
( ) oferece um método para descobrir a configuração atual. A configuração atual pode ser armazenada em
uma variável e restabelecida no final do script.
Observações
Os três caracteres separadores do Analytics são especificados nas seguintes opções na caixa de diálogo
Opções :
l Símbolo de Casa Decimal
l Separador de Milhares
l Separador de Lista
Função GOMONTH( )
Retorna a data que é o número específico de meses antes ou depois de uma data específica.
Sintaxe
GOMONTH(data/datahora; meses)
Parâmetros
Nome Tipo Descrição
data/datahora datahora O campo, expressão ou valor literal do qual será calculada a data
resultante.
Saída
Datahora. O valor de data resultante usa o formato de exibição de data atual do Analytics.
Exemplos
Exemplos básicos
Valores de entrada literal
Retorna `20140415` exibido como 15 Abr 2014 presumindo um formato de exibição atual de data do
Analytics de DD MMM AAAA:
GOMONTH(`20140115`; 3)
Retorna `20131015` exibido como 15 Out 2013 presumindo um formato de exibição atual de data do
Analytics de DD MMM AAAA:
GOMONTH(`20140115`; -3)
Retorna `20140430` exibido como 30 Abr 2014 presumindo um formato de exibição atual de data do Analy-
tics de DD MMM AAAA (o arredondamento de datas impede de voltar em 31 Abr 2014, que é uma data
inválida):
GOMONTH(`20140330`; 1)
GOMONTH(`20140331`; 1)
Retorna `20140501` exibido como 1 Mai 2014 presumindo um formato de exibição atual de data do Analy-
tics de DD MMM AAAA:
GOMONTH(`20140401`; 1)
GOMONTH(Data_fatura; 3)
Retorna a data três meses após cada data no campo Data_fatura, mais um período de carência de 15 dias:
GOMONTH(Data_fatura + 15; 3)
Observações
Formatos datahora
Um campo especificado para data/datahora pode usar qualquer formato de data ou datahora, desde que a
definição do campo defina corretamente o formato.
Um valor de data literal deve usar um dos seguintes formatos:
l AAAAMMDD
l AAMMDD
Você precisa incluir os valores de data literais entre apóstrofos invertidos. Por exemplo: `20141231`
GOMONTH(`20140331`;1)
Funções relacionadas
Use a função EOMONTH( ) se quiser retornar a data do último dia do mês, em vez da data exata, que é o
número de meses especificado antes ou depois de uma data específica.
Função HASH( )
Retorna um hash criptográfico originado baseado no valor de entrada.
Sintaxe
HASH(campo <;valor_de_origem>)
Parâmetros
Nome Tipo Descrição
valor_de_origem caractere O valor de origem a ser usado. É possível especificar um número iden-
tificador de PASSWORD de 1 a 10 ou uma cadeia.
opcional numérico
Se omitido, o valor de origem padrão do Analytics será aplicado.
O valor de origem é limitado a 128 caracteres, e é truncado auto-
maticamente em 128 caracteres se um valor mais longo for espe-
cificado.
Para obter mais informações, consulte "O valor de origem" Na
página 612.
Saída
Caractere.
Exemplos
Exemplos básicos
Com o valor de origem padrão do Analytics
Retorna "819A974BB91215D58E7753FD5A42226150100A0763087CA7DECD93F3C3090405":
HASH("555-44-3322")
HASH(Número_cartão_crédito)
Exemplos avançados
Garantia de que os valores de hash são idênticos
Use outras funções junto com HASH( ) para padronizar valores de texto livre que devem produzir valores
de hash idênticos.
Considere o seguinte conjunto de exemplos. Note como o uso de maiúsculas/minúsculas dos valores de
texto livre altera completamente o valor de hash de saída nos primeiros dois exemplos.
Retorna "DF6789E1EC65055CD9CA17DD5B0BEA5892504DFE7661D258737AF7CB9DC46462":
HASH("John Smith")
Retorna "3E12EABB5940B7A2AD90A6B0710237B935FAB68E629907927A65B3AA7BE6781D":
HASH("JOHN SMITH")
HASH(UPPER("John Smith"))
Se os campos de comentário estiverem em tabelas separadas, crie um campo calculado HASH( ) em cada
tabela e use esses campos como um campo-chave comum para uma associação não correspondida de
duas tabelas. Os registros da tabela de saída reunida representam os blocos de texto não idênticos.
Observações
Quando usar HASH( )
Use a função HASH( ) para proteger dados delicados como números de cartão de crédito, informações de
salários ou números de seguro social.
Como funciona?
HASH( ) oferece codificação unidirecional. Os dados em texto livre podem ser usados para produzir valores
em hash, porém o valor em hash não pode ser subsequentemente descodificado ou descriptografado.
Um mesmo valor de texto livre sempre produz o mesmo valor de hash, portanto é possível pesquisar um
campo de números de cartão de crédito em hash por duplicações ou reunir dois campos de números de car-
tão de crédito codificados em hash e os resultados serão os mesmos que se a operação fosse executada
nos campos de texto livre equivalentes.
Os brancos à esquerda e à direita são eliminados automaticamente pela função HASH( ), portanto, não é
necessário usar as funções TRIM( ) ou ALLTRIM( ).
O valor de origem
Como funciona?
A proteção oferecida pela função HASH( ) é fortalecida pela adição automática de um valor de origem
antes do hashing. O valor de origem é uma cadeia alfanumérica, concatenada ao valor dos dados de ori-
gem. A cadeia concatenada inteira é então usada para produzir o valor originado em hash. Essa abor-
dagem torna os valores em hash mais resistentes a técnicas de decodificação.
Nota
O valor de origem PASSWORD deve ser inserido antes de o campo na função HASH
( ) poder ser exportada.
A vantagem do uso de um identificador de PASSWORD com HASH( ) é que não é necessário expor
um valor de origem em texto livre.
Para obter mais informações, consulte "Comando PASSWORD" Na página 363.
Função HEX( )
Converte uma cadeia ASCII em uma cadeia hexadecimal.
Sintaxe
HEX(campo)
Parâmetros
Nome Tipo Descrição
Saída
Caractere.
Exemplos
Exemplos básicos
Retorna "3132333435":
HEX("12345")
HEX(Contagem)
Observações
Como funciona?
Essa função retorna uma cadeia hexadecimal equivalente a um valor de campo ou expressão espe-
cificados. Você pode usar a função quando precisar identificar exatamente o conteúdo de um campo, inclu-
indo os caracteres que não podem ser exibidos na tela, como CR (retorno de carro), LF (quebra de linha) e
NUL (nulo).
Função HOUR( )
Extrai a hora de uma hora ou datahora específica e retorna como valor numérico usando o relógio 24
horas.
Sintaxe
HOUR(hora/datahora)
Parâmetros
Nome Tipo Descrição
hora/datahora datahora O campo, expressão ou valor literal do qual será extraída a hora.
Saída
Numérico.
Exemplos
Exemplos básicos
Retorna 23:
HOUR(`t235959`)
HOUR(`20141231 235959`)
HOUR(Ligue_para_a_hora_de_início)
Observações
Detalhes do parâmetro
Um campo especificado para hora/datahora pode usar qualquer formato de data ou datahora, desde que a
definição do campo defina corretamente o formato.
Especificação de uma hora literal ou de um valor datahora
Ao especificar um valor literal de hora ou datahora para hora/datahora, você fica restrito aos formatos na
tabela abaixo e o valor deve estar entre apóstrofos invertidos – por exemplo, `20141231 235959`.
Não use separadores como barras (/) ou dois pontos (:) entre os componentes individuais de datas ou
horas.
l Valores de hora – você pode usar qualquer dos formatos de hora listados na tabela abaixo. Você
deve usar um separador antes de um valor de hora independente para que a função funcione cor-
retamente. Os separadores válidos são as letras 't' ou 'T'. As horas devem ser especificadas usando
o relógio de 24 horas. Os ajustes do Tempo Universal Coordenado (UTC) devem ser precedidos por
um sinal de mais (+) ou de menos (-).
l Valores de datahora – você pode usar qualquer combinação de formatos de data, separador e hora
listados na tabela abaixo. A data deve preceder a hora e um separador deve ser usado entre os dois.
Os separadores válidos são um único espaço em branco ou as letras 't' ou 'T'.
thhmmss `t235959`
Thhmm `T2359`
AAAAMMDD hhmmss `20141231 235959`
AAMMDDthhmm `141231t2359`
AAAAMMDDThh `20141231T23`
AAAAMMDD hhmmss+/-hhmm `20141231 235959-0500`
(ajuste UTC)
AAMMDD hhmm+/-hh `141231 2359+01`
(ajuste UTC)
Nota
Não use somente hh no formato de hora
principal com dados que têm um ajuste
UTC. Por exemplo, evite: hh+hhmm. Os
resultados podem ser não confiáveis.
Função HTOU( )
Converte uma string hexadecimal em formato Unicode. Abreviação de "Hexadecimal para Unicode".
Nota
Essa função é específica para a edição Unicode do Analytics. Não é uma função supor-
tada na edição não-Unicode.
Sintaxe
HTOU(cadeia_hex)
Parâmetros
Nome Tipo Descrição
Saída
Caractere.
Exemplos
Exemplos básicos
Retorna "ABC123":
HTOU("004100420043003100320033")
Exemplos avançados
Adição de um símbolo de moeda a um valor
Você precisa extrair um campo monetário para uma nova tabela. O campo deve exibir o valor do campo
Ao executar o comando EXTRACT, HTOU( ) retorna o símbolo do Euro "€" e o concatena com o valor
Valor que STRING( ) converte em caractere. Se o valor original de Valor era 2000, o valor em Valor_
Moeda é "€ 2000".
Observações
Funções relacionadas
HTOU( ) é o inverso da função DHEX( ) que converte caracteres Unicode para valores hexadecimais.
Função INCLUDE( )
Retorna uma cadeia que inclui apenas os caracteres especificados.
Sintaxe
INCLUDE(cadeia; caracteres_a_incluir)
Parâmetros
Nome Tipo Descrição
Saída
Caractere.
Exemplos
Exemplos básicos
Retorna "123", que é a cadeia de entrada com apenas números incluídos:
INCLUDE("123-123-4"; "1243")
INCLUDE("ABC"; "D")
Observações
Como funciona?
A função INCLUDE( ) compara cada caractere na cadeia com os caracteres listados em caracteres_a_
incluir. Se ocorrer uma correspondência, o caractere é incluído na cadeia de saída.
INCLUDE(UPPER("id#94022"); "ID0123456789")
Dica de uso
Use INCLUDE( ) se o conjunto de caracteres a incluir for pequeno e o conjunto de caracteres a excluir for
grande.
Funções relacionadas
A função INCLUDE( ) é oposta a função EXCLUDE( ).
Função INSERT( )
Retorna a cadeia original com um texto especificado inserido em um local de byte específico.
Sintaxe
INSERT(cadeia; inserir_texto; local)
Parâmetros
Nome Tipo Descrição
Saída
Caractere.
Exemplos
Exemplos básicos
Retorna "aXXXbcde":
INSERT("abcde"; "XXX"; 2)
Retorna "XXXabcde":
INSERT("abcde"; "XXX"; 0)
Retorna "abcdeXXX", com "XXX" inserido na posição do byte 6 em vez de 8, pois "abcde" só tem 5 carac-
teres de comprimento:
INSERT("abcde"; "XXX"; 8)
Observações
Como funciona?
A função INSERT( ) insere caracteres especificados ou espaços em uma cadeia de caracteres, come-
çando em uma posição específica da cadeia.
Diretrizes de localização
l Se o valor local for maior que o comprimento da cadeia o valor inserir_texto será inserido no final da
cadeia.
l Se o local for 0 ou 1, inserir_texto será inserido no início da cadeia.
Inserção de aspas
Se você especificar aspas em inserir_texto, deverá colocá-los entre apóstrofos.
Por exemplo: ""
Função INT( )
Retorna o valor inteiro de uma expressão numérica ou valor de campo.
Sintaxe
INT(número)
Parâmetros
Nome Tipo Descrição
Saída
Numérico.
Exemplos
Exemplos básicos
Retorna 7:
INT(7,9)
Retorna -7:
INT(-7.9)
Função IPMT( )
Retorna os juros pagos em um empréstimo para um único período.
Sintaxe
IPMT(taxa; período_especificado; períodos; valor <;tipo>)
Parâmetros
Nome Tipo Descrição
período_espe- numérico O período para o qual você deseja calcular o pagamento de juros.
cificado
Nota
Você deve usar períodos consistentes para especificar taxa e períodos para garantir que
está especificando a taxa de juros por período.
Por exemplo:
l para pagamentos mensais de um empréstimo ou investimento de dois anos com
juros de 5% ao ano, especifique 0,05/12 como taxa e 2 * 12 como períodos
l para pagamentos anuais do mesmo empréstimo ou investimento, especifique 0,05
como taxa e 2 como períodos
Saída
Numérico.
Exemplos
Exemplos básicos
Retorna 1489,58, o valor dos juros pagos no primeiro mês de um empréstimo de vinte e cinco anos, $
275.000 a 6,5% ao ano, com pagamentos ao final de cada mês:
Observações
Funções relacionadas
A função PPMT( ) é o complemento da função IPMT( ).
A função CUMIPMT( ) calcula os juros pagos durante um intervalo de períodos.
Função ISBLANK( )
Retorna um valor lógico que indica se o valor da entrada está em branco.
Sintaxe
ISBLANK(cadeia)
Parâmetros
Nome Tipo Descrição
Saída
Lógico. Retorna V (verdadeiro), se o valor do parâmetro cadeia for em branco e F (falso), caso contrário.
Exemplos
Exemplos básicos
Retorna F:
ISBLANK(" A")
Retorna T:
ISBLANK(" ")
ISBLANK("")
Retorna T para todos os valores do campo Endereço que estão em branco e F para os demais:
ISBLANK(Endereço)
Observações
Quando usar ISBLANK( )
Use ISBLANK( ) durante a fase de integridade de dados de um projeto de análise para identificar os cam-
pos com dados ausentes que podem indicar problemas com os dados de origem.
Caracteres nulos
ISBLANK( ) pode não retornar resultados úteis quando usada com campos de caracteres contendo carac-
teres nulos. O Analytics usa o caractere nulo para indicar o final de uma cadeia e por esse motivo a função
ISBLANK( ) não lerá dados de caracteres após um caractere nulo, inclusive os espaços em branco.
Função ISDEFINED( )
Retorna T (verdadeiro) se o campo ou variável especificado for definido, caso contrário, retorna F (falso).
Sintaxe
ISDEFINED(cadeia)
Parâmetros
Nome Tipo Descrição
cadeia caractere O nome do campo ou variável cuja existência deve ser verificada. O
valor deve ser inserido como uma cadeia entre aspas:
ISDEFINED("v_limite_numérico")
Saída
Lógico.
Exemplos
Exemplos básicos
Retorna T se v_limite_numérico for definida como uma variável ou campo, caso contrário, retorna F:
ISDEFINED("v_limite_numérico")
Exemplos avançados
Uso de ISDEFINED( ) para testar um campo
O seguinte exemplo usa a função ISDEFINED( ) para testar se o campo Limite é definido na tabela antes
de extrair registros com base no valor do campo:
OPEN Metaphor_Funcionários_EUA
IF ISDEFINED("Limite") EXTRACT RECORD IF Limite > 50000 TO "LimiteSuperior.fil"
Função ISFUZZYDUP( )
Retorna um valor lógico que indica se uma cadeia é uma duplicata parcial de uma cadeia de comparação.
Sintaxe
ISFUZZYDUP(cadeia1; cadeia2; levdist <;diffpct>)
Parâmetros
Nome Tipo Descrição
levdist numérico A máxima distância de Levenshtein permitida entre duas cadeias para
que elas sejam identificadas como duplicidades parciais.
O valor de levdist não pode ser menor que 1 ou maior que 10.
O aumento do valor de levdist aumenta o número de resultados, inclu-
indo valores com um maior grau de parcialidade, ou seja, valores que
são mais diferentes entre si.
Saída
Lógico. Retorna T (verdadeiro) se os valores da cadeia forem duplicidades parciais e F (falso), caso con-
trário.
Exemplos
Exemplos básicos
Retorna F, pois são necessárias duas edições para transformar "Smith" em "Smythe", mas o valor de lev-
dist é apenas 1:
ISFUZZYDUP("Smith";"Smythe"; 1; 99)
Retorna T, pois são necessárias duas edições para transformar "Smith" em "Smythe" e o valor do parâ-
metro levdist é 2:
ISFUZZYDUP("Smith";"Smythe"; 2; 99)
Retorna T porque nenhuma edição é necessária para transformar "SMITH" em "smith" e o valor levdist é
1 (a função ISFUZZYDUP( ) não diferencia maiúsculas e minúsculas):
Retorna um valor lógico (T ou F), indicando se os valores individuais no campo Sobrenome são dupli-
cidades parciais da cadeia "Smith":
ISFUZZYDUP(Sobrenome;"Smith"; 3; 99)
Exemplos avançados
Trabalho com porcentagem de diferença
A porcentagem de diferença oferece uma ferramenta para reduzir o número de falsos positivos retor-
nados por ISFUZZYDUP( ).
Nenhum diffpct especificado
Retorna T porque são necessárias cinco edições para transformar "abc" em "Smith" e o valor levdist é 5:
ISFUZZYDUP("abc"; "Smith"; 5)
diffpct especificado
Retorna F, mesmo que "abc" esteja dentro da distância de Levenshtein especificada de "Smith", pois 5 edi-
ções/cadeia com comprimento 3 resulta em uma porcentagem de diferença de 167%, que ultrapassa a
diffpct de 99%:
A alteração de valores de levdist ou de pctdif permite ajustar o valor da diferença nos valores filtrados.
Observações
Quando usar ISFUZZYDUP( )
Use a função ISFUZZYDUP( ) para encontrar os valores quase idênticos (duplicidades parciais) ou loca-
lizar ortografia inconsistente em dados inseridos manualmente.
Como funciona?
A função ISFUZZYDUP( ) calcula a distância de Levenshtein entre as duas cadeias e calcula a por-
centagem de diferença.
ISFUZZYDUP( ) avaliado como T (verdadeiro) se:
l A distância de Levenshtein é menor ou igual ao valor levdist.
l A porcentagem de diferença é menor ou igual ao valor diffpct (se especificado).
Distância de Levenshtein
A distância de Levenshtein é um valor que representa o número mínimo de edições de único caractere
necessárias para tornar uma cadeia idêntica à outra.
Para obter mais informações, consulte "Função LEVDIST( )" Na página 642.
Porcentagem de diferença
A porcentagem de diferença é a porcentagem da cadeia mais curta das duas avaliadas que é diferente.
A porcentagem de diferença é o resultado do seguinte cálculo interno do Analytics, que utiliza a distância
de Levenshtein entre as duas cadeias:
Distância de Levenshtein / número de caracteres na cadeia mais curta × 100 = porcentagem de diferença
Usar a porcentagem de diferença opcional ajuda a diminuir o número de falsos positivos retornados por
ISFUZZYDUP( ):
l O limite superior para diffpct é 99%, o que evita a substituição completa de uma cadeia para torná-
la idêntica.
l As cadeias que precisam de um número maior de edições em relação ao seu comprimento são
excluídas.
Dicas de uso
l Diferenciação de maiúsculas e minúsculas: A função não diferencia maiúsculas de minúsculas,
portanto "SMITH" é equivalente a "smith."
l Brancos à direita: A função elimina automaticamente espaços em branco à direita em campos, por-
tanto, não há necessidade de usar a função TRIM( ) ao especificar um campo como um parâmetro.
l Remoção de caracteres genéricos: A função OMIT( ) pode melhorar a eficácia da função
ISFUZZYDUP( ) removendo elementos genéricos, como "Companhia" ou "Inc." de valores do
campo.
A remoção de elementos genéricos focaliza a comparação da cadeia ISFUZZYDUP( ) apenas na
parte das cadeias onde uma diferença significativa pode ocorrer.
Funções relacionadas
l LEVDIST( ): fornece um método alternativo para comparar cadeias com base na distância de
Levenshtein.
Diferente de ISFUZZYDUP( ), LEVDIST( ) diferencia maiúsculas e minúsculas por padrão.
l DICECOEFFICIENT( ): não prioriza ou ignora completamente a posição relativa de caracteres ou
blocos de caracteres durante a comparação de cadeias.
Função LAST( )
Retorna um número especificado de caracteres do final de uma cadeia.
Sintaxe
LAST(cadeia; comprimento)
Parâmetros
Nome Tipo Descrição
Saída
Caractere.
Exemplos
Exemplos básicos
Retorna "Poupança":
Retorna "efghi":
LAST("abcdefghi"; 5)
Retorna "fghi ":
LAST("abcdefghi "; 5)
Retorna " abc", pois o valor da cadeia é mais curto do que o comprimento especificado de 6, então espaços
à esquerda são adicionados à saída:
LAST("abc"; 6)
Observações
Resultados em branco causados por espaços à direita
Espaços à direita na cadeia podem fazer com que os resultados produzidos pela função LAST( ) sejam
brancos.
Por exemplo, o resultado de LAST("6483-30384 "; 3) é " ".
Você pode usar a função ALLTRIM( ) em conjunto com LAST( ) para remover eventuais espaços finais na
cadeia.
Por exemplo, LAST(ALLTRIM("6483-30384 "); 3) retorna "384".
Função LEADING( )
Retorna uma cadeia que contém um número especificado de dígitos iniciais.
Sintaxe
LEADING(número; dígitos_iniciais)
Parâmetros
Nome Tipo Descrição
Saída
Caractere.
Exemplos
Exemplos básicos
Entrada numérica literal
Retorna 623:
LEADING(6234,56; 3)
Retorna 62345:
LEADING(-6234,56; 5)
LEADING(0,00; 3)
Retorna 00000:
LEADING(0,00; 5)
Retorna 35500:
LEADING(3,55; 5)
Observações
Use LEADING( ) para extrair dígitos de um campo numérico como uma cadeia e filtrar os elementos que
não são dígitos, como decimais ou cifrões.
Função LENGTH( )
Retorna o número de caracteres em uma cadeia.
Sintaxe
LENGTH(cadeia)
Parâmetros
Nome Tipo Descrição
Saída
Numérico.
Exemplos
Exemplos básicos
Retorna 15:
LENGTH("ABC Corporation")
LENGTH(Descrição)
Exemplos avançados
Exibição do comprimento de cada endereço em um campo de endereço
Crie um campo calculado que exibe o comprimento em caracteres de cada endereço no campo Rua_
Fornecedor. Espaços em branco à esquerda e à direita são primeiro eliminados dos valores do endereço
para que não sejam contados no comprimento.
Observações
Como funciona?
A função LENGTH( ) conta o número de caracteres de uma cadeia, incluindo os espaços, e retorna o
número.
Espaços à direita
Os espaços à direita são contados como caracteres. Se não quiser que os espaços à direita sejam con-
tados, use a função TRIM( ) ou ALLTRIM( ) para removê-los. Por exemplo:
LENGTH(TRIM(Rua_Fornecedor))
Se você criar um campo calculado para exibir o comprimento dos valores em um campo e não remover os
espaços à direita, o comprimento máximo do campo será exibido para cada valor.
Função LEVDIST( )
Retorna a distância de Levenshtein entre duas cadeias especificadas, que é uma medida de quanto as
duas cadeias são diferentes.
Sintaxe
LEVDIST(cadeia1; cadeia2 <;diferenciam_maiúsculas_de_minúsculas>)
Parâmetros
Nome Tipo Descrição
diferenciam_mai- lógico Especifique T para uma comparação de cadeias que diferencie entre
úsculas_de_min- letras maiúsculas e minúsculas, ou F para ignorá-las.
úsculas
Se omitido, o valor padrão T é usado.
opcional
Saída
Numérico. O valor é a distância de Levenshtein entre duas cadeias.
Exemplos
Exemplos básicos
Retorna 3, pois são necessárias duas substituições e uma inserção para transformar "smith" em "Smy-
the":
LEVDIST("smith";"Smythe")
Retorna 2, pois maiúsculas e minúsculas são ignoradas, apenas duas substituições são necessárias para
transformar "smith's" em "Smythes":
LEVDIST("smith's";"Smythes";F)
Retorna a distância de Levenshtein entre cada valor no campo Sobrenome e a cadeia "Smith":
LEVDIST(TRIM(Sobrenome);"Smith")
Exemplos avançados
Valores de classificação contra "Smith"
Crie o campo calculado Dist_Lev para exibir a distância de Levenshtein entre "Smith" e cada valor no
campo Sobrenome:
Adicione o campo calculado Dist_Lev à exibição e classifique rapidamente em ordem crescente para clas-
sificar todos os valores no campo Sobrenome por total de diferença de "Smit".
A alteração do número na expressão permite ajustar o valor da distância de Levenshtein nos valores fil-
trados.
Observações
Quando usar LEVDIST( )
Use a função LEVDIST( ) para encontrar os valores quase idênticos (duplicidades parciais) ou localizar orto-
grafia inconsistente em dados inseridos manualmente. LEVDIST( ) também identifica duplicidades exatas.
Como funciona?
A função LEVDIST( ) retorna a distância de Levenshtein entre duas cadeias avaliadas, que é um valor que
representa o número mínimo de edições de caractere individual necessário para tornar uma cadeia idêntica
à outra.
Cada edição necessária aumenta o valor da distância de Levenshtein em 1. Quanto maior a distância de
Levenshtein, maior a diferença entre duas cadeias. Uma distância igual a 0 (zero) significa que as cadeias
são idênticas.
Tipos de edições
As edições podem ser de três tipos:
l inserção
l exclusão
l substituição
As transposições (duas letras adjacentes invertidas) não são reconhecidas pelo algoritmo de Levenshtein
e contam como duas edições, especificamente, duas substituições.
Caracteres em maiúscula/minúscula
Alterar um caractere para maiúscula ou minúscula conta como uma substituição, a menos que você des-
ligue a diferenciação entre maiúsculas e minúsculas utilizando a configuração diferencia_maiúsculas_de_
minúsculas.
LEVDIST("abc"; "dec")
Retorna 3:
LEVDIST("abc"; "cde")
O algoritmo de Levenshtein conta espaços em branco como caracteres, então quaisquer espaços em
branco finais são incluídos no cálculo do número de edições necessárias para fazer duas cadeias idênticas.
Funções relacionadas
l ISFUZZYDUP( ): fornece um método alternativo para a comparação de cadeias com base na dis-
tância de Levenshtein.
Diferente do comportamento de LEVDIST( ), ISFUZZYDUP( ) não diferencia maiúsculas de min-
úsculas.
l DICECOEFFICIENT( ): não prioriza ou ignora completamente a posição relativa de caracteres ou
blocos de caracteres durante a comparação de cadeias.
l SOUNDSLIKE( ) e SOUNDEX( ): comparam cadeias com base em uma comparação fonética
(som), em vez de uma comparação ortográfica (ortografia).
Função LOG( )
Retorna o logaritmo (base 10) de uma expressão numérica ou de um valor de campo com um número
específico de casas decimais.
Sintaxe
LOG(número; decimais)
Parâmetros
Nome Tipo Descrição
Saída
Numérico.
Exemplos
Exemplos básicos
Retorna 3,0000:
LOG(1000; 4)
Retorna 4,86:
LOG(72443; 2)
Exemplos avançados
Como encontrar a raiz cúbica
Cria um campo que seja a raiz cúbica do campo X com duas casas decimais:
Nota
A n-ésima raiz é determinada dividindo-se o logaritmo do valor por n e tomando-se o valor
exponencial do resultado.
Observações
Como funciona?
O logaritmo de um número é o expoente (ou potência) de dez necessário para se gerar esse número. Por-
tanto, o logaritmo de 1000 é 3.
Funções relacionadas
A função LOG( ) é o inverso da função EXP( ).
Função LOWER( )
Retorna uma cadeia com caracteres alfabéticos convertidos em minúsculas.
Sintaxe
LOWER(cadeia)
Parâmetros
Nome Tipo Descrição
Saída
Caractere.
Exemplos
Exemplos básicos
Retorna "abc":
LOWER("ABC")
LOWER("AbCd 12")
LOWER(Sobrenome)
Observações
Como funciona?
A função LOWER( ) converte todos os caracteres alfabéticos na cadeia em letras minúsculas. Todos os
caracteres não alfabéticos permanecem inalterados.
Função LTRIM( )
Retorna uma cadeia com os espaços iniciais removidos do valor de entrada.
Sintaxe
LTRIM(cadeia)
Parâmetros
Nome Tipo Descrição
Saída
Caractere.
Exemplos
Exemplos básicos
Observe que em ambos os exemplos, os espaços finais não são removidos pela função LTRIM( ).
Retorna "Salvador ":
LTRIM(" Salvador ")
LTRIM(" São Paulo ")
Exemplos avançados
Removendo espaços contínuos
Espaços contínuos não são removidos pela função LTRIM( ).
Se for necessário remover espaços contínuos à esquerda, você pode criar um campo calculado usando a
expressão:
A função REPLACE( ) substitui todos os espaços contínuos por espaços regulares e LTRIM( ) remove
todos os espaços regulares à esquerda.
Observações
Como funciona?
A função LTRIM( ) remove somente os espaços à esquerda. Os espaços dentro da cadeia e os espaços
finais não são removidos.
Funções relacionadas
LTRIM( ) está relacionada com a função TRIM( ), que remove todos os espaços finais de uma cadeia e com
a função ALLTRIM( ), que remove os espaços à esquerda e à direita.
Função MAP( )
Retorna uma valor lógico que indica se uma cadeia de caracteres corresponde a uma cadeia de for-
matação especificada que contém caracteres curinga, caracteres literais ou ambos.
Sintaxe
MAP(cadeia; formato)
Parâmetros
Nome Tipo Descrição
cadeia caractere O campo, expressão ou valor literal a ser testado por cor-
respondência.
"\9\9\9-999-9999"
Saída
Lógico. Retorna T (verdadeiro) caso uma correspondência seja encontrada ou F (falso) caso contrário.
Exemplos
Exemplos básicos
Parâmetros de pesquisa simples
Retorna T:
MAP("045"; "9999")
Escape de curinga
Se o objetivo é retornar T somente para os valores que começam com o caractere de literal "X", seguido
por qualquer segunda letra, o parâmetro formato "\XX" assegura que o primeiro "X" do parâmetro seja inter-
pretado literalmente e não como curinga.
Retorna T:
MAP("XA-123"; "XX")
MAP("GC-123"; "XX")
MAP("XA-123"; "\XX")
Retorna F:
MAP("GC-123"; "\XX")
Campos e padrões
Retorna T para todos os registros com números de fatura que são iguais ou começam com duas letras
seguidas por cinco números. Caso contrário, retorna F:
MAP(Numero_Fatura; "XX99999")
Retorna T para todos os registros com números de fatura exatamente iguais a "AB12345" ou que come-
çam com "AB12345". Caso contrário, retorna F:
MAP(Numero_Fatura; "AB12345")
Retorna T para todos os registros com números de fatura que são iguais ou começam com "AB", seguido
por cinco números. Caso contrário, retorna F:
MAP(Numero_Fatura; "AB99999")
Retorna T para todos os registros que não correspondem ao formato padrão do número de previdência
social no campo SSN. Caso contrário, retorna F:
Exemplos avançados
Extraindo registros com códigos de produtos de 10 caracteres e com os
caracteres à esquerda "859-"
Use uma instrução IF e a função MAP( ) para extrair apenas os registros que têm códigos de produto com
no mínimo 10 caracteres e que têm os caracteres "859-" à esquerda:
Observações
Quando usar MAP( )
Use a função MAP( ) para pesquisar padrões ou formatos específicos nos dados alfanuméricos. Os
padrões ou formatos podem ser compostos por caracteres curingas, caracteres literais ou uma com-
binação de ambos.
MAP(UPPER(Numero_Fatura); "AB99999")
Correspondência parcial
MAP( ) é compatível com correspondência parcial em uma situação, mas não na outra.
Correspondência parcial no MAP( ) não é afetada pela opção Comparações exatas de caractere (SET
EXACT ON/OFF).
MAP("AB1234567"; "AB99999")
Nota
Para retornar Verdadeiro, o valor do formato deve aparecer no início do valor da cadeia.
MAP("AB1234"; "AB99999")
Se o formato for mais longo que a cadeia, o resultado sempre será Falso.
Concatenação de campos
É possível concatenar dois ou mais campos na cadeia se quiser pesquisar em mais de um campo de uma
tabela. Os campos concatenados são tratados como um único campo que inclui os brancos à esquerda e à
direita de cada campo, a menos que a função ALLTRIM( ) seja usada para removê-los.
Função MASK( )
Executa uma operação AND de bits nos primeiros bytes de duas cadeias de caracteres.
Sintaxe
MASK(valor_caractere; máscara_caractere)
Parâmetros
Nome Tipo Descrição
máscara_caractere caractere A cadeia com o byte para testar contra (o valor da máscara).
Saída
Caractere. A saída é a representação de caractere do resultado binário da operação AND de bits.
Exemplos
Exemplos básicos
Retorna "2" (00110010), o resultado de uma operação AND de bits de 3 (00110011) e 6 (00110110):
MASK("3"; "6")
Observações
Quando usar MASK( )
Use MASK( ) para identificar padrões específicos de bits em um byte de dados, inclusive se um bit espe-
cífico é ou não configurado como 1.
Como funciona?
A função MASK( ) realiza uma operação AND de bits nas representações binárias dos primeiros caracteres
de valor_caractere e máscara_caractere. Os dois bytes de comparação são comparados um bit por vez,
resultando em um terceiro valor binário.
O resultado de cada comparação dos bits correspondentes é 1 ou 0:
0 0 0
0 1 0
1 0 0
1 1 1
Função MATCH( )
Retorna um valor lógico indicando se o valor especificado corresponde a algum dos valores com os quais
está sendo comparado.
Sintaxe
MATCH(valor_de_comparação; teste <;...n>)
Parâmetros
Nome Tipo Descrição
valor_de_com- caractere O campo, expressão ou valor literal a ser testado por cor-
paração respondência.
numérico
datahora
teste <,...n> caractere O campo, expressão ou valor literal a ser comparado com o valor_
comparacao.
numérico
É possível especificar quantos valores de teste forem necessários,
datahora
mas todos os valores especificados devem ser do mesmo tipo de
dados:
Nota
As entradas para a função MATCH( ) podem ser dados de caractere, numéricos ou data-
hora. Não é possível misturar tipos de dados. Todas as entradas devem pertencer à
mesma categoria de dados.
Saída
Lógico. Retorna V (verdadeiro), se for encontrada pelo menos uma correspondência e F (falso), caso con-
trário.
Exemplos
Exemplos básicos
Nota
Os valores de retorno das comparações de caracteres assumem que SET EXACT está
em OFF (a configuração padrão), exceto onde observado.
Retorna F:
Teste de um campo
Retorna T para todos os registros que contêm "Fortaleza", "Rio de Janeiro" ou "Belo Horizonte" no campo
Cidade_Fornecedor. Caso contrário, retorna F:
Retorna T para todos os registros que não contêm "Fortaleza", "Rio de Janeiro" ou "Belo Horizonte" no
campo Cidade_Fornecedor. Caso contrário, retorna F:
Retorna T para todos os registros que contêm "FORTALEZA", "RIO DE JANEIRO" ou "BELO
HORIZONTE" no campo Cidade_Fornecedor, independentemente de os caracteres do campo serem mai-
úsculas ou minúsculas. Caso contrário, retorna F:
Os valores no campo Cidade_Fornecedor serão convertidos em maiúsculas antes de serem comparados
com os nomes das cidades em maiúsculas.
Retorna T para todos os registros com código de produto de um caractere "A", "D" ou "F" no campo
Codigo_Produto. Retorna F em outros casos (SET EXACT deve estar em ON):
MATCH(Endereço_Fornecedor; Colaborador_Endereço)
Comparação de datas
Retorna T para todos os registros com data de fatura entre 30 de Set de 2014 e 30 de Out de 2014. Caso
contrário, retorna F:
Exemplos avançados
Extração de registros de inventário anômalos
Use a instrução IF e a função MATCH( ) para extrair registros que contêm diferentes valores no campo
Valor_pelo_Custo_Inventário e no campo calculado Custo_x_Quantidade:
Use uma instrução IF e a função MATCH( ) para extrair apenas os registros associados com os depar-
tamentos 101, 103 ou 107:
Observações
Use MATCH( ) em vez do operador OR
Você pode usar a função MATCH( ) em vez de expressões que utilizam o operador OR.
Por exemplo:
equivale a
Retorna F, pois 1,23 é diferente de 1,234 quando a terceira casa decimal é considerada:
Parâmetros de caracteres
Diferenciação de maiúsculas e minúsculas
A função MATCH( ) diferencia maiúsculas de minúsculas quando utilizada com dados de caracteres. Na
comparação de caracteres, "a" não é equivalente a "A".
Retorna F:
MATCH("a";"A";"B";"C")
Se você estiver trabalhando com dados com inconsistência entre maiúsculas e minúsculas, poderá usar a
função UPPER( ) para converter os valores para que fiquem consistentes antes de usar MATCH( ).
Retorna T:
Correspondência parcial
A correspondência parcial é suportada para comparações de caracteres. Qualquer um dos valores sendo
comparado pode estar contido no outro valor e ser considerado uma correspondência.
Ambos os exemplos retornam T:
MATCH("AB"; "ABC")
MATCH("ABC"; "AB")
Nota
O valor mais curto deve aparecer no início do valor mais longo para constituir uma cor-
respondência.
Parâmetros de datahora
Um campo de data, datahora ou hora especificado como entrada de função pode usar qualquer formato
de data, datahora ou hora desde que a definição do campo defina corretamente o formato.
MATCH(`20141231`;`20141229`;`20141231`)
Retorna F, mesmo se o valor_de_comparação e o segundo valor de teste tiverem uma data idêntica de 31
de dezembro de 2014:
MATCH(`20141231 120000`;`20141229`;`20141231`)
Se examinarmos o equivalente ao número serial dessas duas expressões, poderemos perceber por que a
segunda será avaliada como falso.
Retorna T, pois o número de série valor_de_comparação é igual ao segundo número de série teste:
Retorna F, pois o número de série valor_de_comparação não é igual a nenhum dos valores de teste:
A parte da data dos números de série 42003,500000 e 42003,000000 corresponde, mas as partes de hora
não. 0,500000 é o equivalente ao número serial 12:00 PM.
MATCH(CTOD(DATE(`20141231 120000`;"YYYYMMDD");"YYYYMMDD");`20141229`;
`20141231`)
AAAAMMDD `20141231`
AAMMDD `141231`
AAAAMMDD hhmmss `20141231 235959`
AAMMDDthhmm `141231t2359`
AAAAMMDDThh `20141231T23`
AAAAMMDD hhmmss+/-hhmm `20141231 235959-0500`
(ajuste UTC)
AAMMDD hhmm+/-hh `141231 2359+01`
(ajuste UTC)
thhmmss `t235959`
Thhmm `T2359`
Nota
Não use somente hh no formato de hora
principal com dados que têm um ajuste
UTC. Por exemplo, evite: hh+hhmm. Os
resultados podem ser não confiáveis.
Função MAXIMUM( )
Retorna o valor máximo em um conjunto de valores numéricos ou o valor mais recente em um conjunto de
valores de datahora.
Sintaxe
MAXIMUM(valor_1; valor_2 <;...n>)
Parâmetros
Nome Tipo Descrição
valor_1, valor_2<, numérico Os valores a serem comparados, separados por pontos e vírgulas ou
...n> espaços.
datahora
Todos os valores devem ser do mesmo tipo de dados.
Além disso, os valores de datahora devem ser do mesmo subtipo.
Não é possível misturar valores de datas, datahoras ou horas em uma
única execução da função.
Saída
Numérico ou datahora.
Exemplos
Exemplos básicos
Entrada numérica literal
Retorna 7:
MAXIMUM(4; 7)
Retorna 8:
MAXIMUM(4; 7; 3; 8)
Retorna 8,00:
MAXIMUM(4; 7,25; 3; 8)
Retorna `23:59:59`:
Entrada de campo
Retorna a data mais recente entre os três campos para cada registro:
Exemplos avançados
Criação de um campo calculado com um valor padrão mínimo
Se você tiver uma tabela de contas vencidas, crie um campo calculado Juros_a_pagar com um valor
mínimo padrão de US$ 1,00:
Se o saldo multiplicado pela taxa de juros for menor que 1 dólar, MAXIMUM( ) retornará 1. Caso con-
trário, MAXIMUM( ) retornará o valor dos juros calculados.
l Registros com todas as datas iguais ou anteriores a 31 Mar 2016 retornam `20160331`.
l Registros com uma ou mais datas após 31 Mar 2016 retornam a data mais recente entre os três cam-
pos.
Observações
Como as casas decimais funcionam em conjuntos de valo-
res numéricos
Se os valores numéricos sendo comparados não tiverem o mesmo número de casas decimais, o resultado
será ajustado para o maior número de casas decimais.
Retorna 20,400:
Você pode usar a função DECIMALS( ) para ajustar o número de casas decimais para parâmetros valor.
Retorna 20,40:
Função MINIMUM( )
Retorna o valor mínimo em um conjunto de valores numéricos ou o valor mais antigo em um conjunto de
valores de datahora.
Sintaxe
MINIMUM(valor_1; valor_2 <;...n>)
Parâmetros
Nome Tipo Descrição
valor_1, valor_2<, numérico Os valores a serem comparados, separados por pontos e vírgulas ou
...n> espaços.
datahora
Todos os valores devem ser do mesmo tipo de dados.
Além disso, os valores de datahora devem ser do mesmo subtipo.
Não é possível misturar valores de datas, datahoras ou horas em
uma única execução da função.
Saída
Numérico ou datahora.
Exemplos
Exemplos básicos
Entrada numérica literal
Retorna 4:
MINIMUM(4; 7)
Retorna 3:
MINIMUM(4; 7; 3; 8)
Retorna 3,00:
MINIMUM(4; 7,25; 3; 8)
Retorna `23:59:57`:
Entrada de campo
Retorna a data mais antiga entre os três campos para cada registro:
Exemplos avançados
Identificação do valor mais baixo entre vários campos
Crie um campo calculado para identificar o valor menor entre os campos Custo, Preço_de_venda e
Preço_com_desconto:
l Registros com todas as datas iguais ou posteriores a 1 Jan 2016 retornam `20160101`.
l Registros com uma ou mais datas anteriores a 01 Jan 2016 retornam a data mais antiga entre os
três campos.
Observações
Como as casas decimais funcionam em conjuntos de valo-
res numéricos
Se os valores numéricos sendo comparados não tiverem o mesmo número de casas decimais, o resul-
tado será ajustado para o maior número de casas decimais.
Retorna 3,600:
MINIMUM(3,6;10,88; 20,482)
Você pode usar a função DECIMALS( ) para ajustar o número de casas decimais para parâmetros valor.
Retorna 3,60:
A abreviação MIN( )
No ACLScript, é possível usar a abreviação MIN( ) para a função MINIMUM( ), mesmo que ela não iden-
tifique exclusivamente a função, que é o requisito normal para a abreviação de nomes de função.
MIN( ) também poderia ser uma abreviação para MINUTE( ). No entanto, o Analytics reserva a abre-
viação MIN( ) para a função MINIMUM( ).
Função MINUTE( )
Extrai os minutos de uma hora ou datahora específica e retorna como valor numérico.
Sintaxe
MINUTE(hora/datahora)
Parâmetros
Nome Tipo Descrição
hora/datahora datahora O campo, expressão ou valor literal do qual serão extraídos os minu-
tos.
Saída
Numérico.
Exemplos
Exemplos básicos
Retorna 59:
MINUTE(`t235930`)
MINUTE(`20141231 235930`)
MINUTE(Ligue_para_a_hora_de_início)
Observações
Abreviação de MINUTE( ) em scripts
No ACLScript, se a função MINUTE( ) for abreviada, você deverá usar pelo menos as primeiras quatro
letras (MINU). O Analytics reserva a abreviação MIN para a função MINIMUM( ).
Detalhes do parâmetro
Um campo especificado para hora/datahora pode usar qualquer formato de data ou datahora, desde que
a definição do campo defina corretamente o formato.
Especificação de uma hora literal ou de um valor datahora
Ao especificar um valor literal de hora ou datahora para hora/datahora, você fica restrito aos formatos na
tabela abaixo e o valor deve estar entre apóstrofos invertidos – por exemplo, `20141231 235959`.
Não use separadores como barras (/) ou dois pontos (:) entre os componentes individuais de datas ou
horas.
l Valores de hora – você pode usar qualquer dos formatos de hora listados na tabela abaixo. Você
deve usar um separador antes de um valor de hora independente para que a função funcione cor-
retamente. Os separadores válidos são as letras 't' ou 'T'. As horas devem ser especificadas
usando o relógio de 24 horas. Os ajustes do Tempo Universal Coordenado (UTC) devem ser pre-
cedidos por um sinal de mais (+) ou de menos (-).
l Valores de datahora – você pode usar qualquer combinação de formatos de data, separador e
hora listados na tabela abaixo. A data deve preceder a hora e um separador deve ser usado entre
os dois. Os separadores válidos são um único espaço em branco ou as letras 't' ou 'T'.
thhmmss `t235959`
Thhmm `T2359`
AAAAMMDD hhmmss `20141231 235959`
AAMMDDthhmm `141231t2359`
AAAAMMDDThh `20141231T23`
AAAAMMDD hhmmss+/-hhmm `20141231 235959-0500`
(ajuste UTC)
AAMMDD hhmm+/-hh `141231 2359+01`
(ajuste UTC)
Nota
Não use somente hh no formato de hora
principal com dados que têm um ajuste
UTC. Por exemplo, evite: hh+hhmm. Os
resultados podem ser não confiáveis.
Função MOD( )
Retorna o resto de divisão de dois números.
Sintaxe
MOD(número; número_divisor)
Parâmetros
Nome Tipo Descrição
Saída
Numérico.
Exemplos
Exemplos básicos
Retorna 3:
MOD(93; 10)
Retorna 2,0:
MOD(66; 16,00)
Retorna 3,45:
MOD(53,45; 10)
Exemplos avançados
Cálculo da data de aniversário
Define um campo que mostra o número de meses desde o último aniversário:
Observações
Quando usar MOD( )
Use a função MOD( ) para testar se é possível fazer a divisão exata entre dois números ou para isolar o
resto de um cálculo de divisão. Esta função divide um número por outro e retorna o resto.
Função MONTH( )
Extrai o mês de uma data ou datahora específica e retorna o mês como valor numérico (1 a 12).
Sintaxe
MONTH(data/datahora)
Parâmetros
Nome Tipo Descrição
data/datahora datahora O campo, expressão ou valor literal do qual será extraído o mês.
Saída
Numérico.
Exemplos
Exemplos básicos
Retorna 12:
MONTH(`20141231`)
MONTH(`20141231 235959`)
MONTH(Data_fatura)
Observações
Detalhes do parâmetro
Um campo especificado para data/datahora pode usar qualquer formato de data ou datahora, desde que a
definição do campo defina corretamente o formato.
AAAAMMDD `20141231`
AAMMDD `141231`
AAAAMMDD hhmmss `20141231 235959`
AAMMDDthhmm `141231t2359`
AAAAMMDDThh `20141231T23`
AAAAMMDD hhmmss+/-hhmm `20141231 235959-0500`
(ajuste UTC)
AAMMDD hhmm+/-hh `141231 2359+01`
(ajuste UTC)
Nota
Não use somente hh no formato de hora
principal com dados que têm um ajuste
UTC. Por exemplo, evite: hh+hhmm. Os
resultados podem ser não confiáveis.
Funções relacionadas
Se precisar retornar o nome do mês do ano, use CMOY( ) em vez de MONTH( ).
Função NOMINAL( )
Retorna a taxa de juros nominal anual de um empréstimo.
Sintaxe
NOMINAL(taxa_efetiva; períodos)
Parâmetros
Nome Tipo Descrição
Saída
Numérico. A taxa é calculada com oito casas decimais.
Exemplos
Exemplos básicos
Retorna 0,17998457 (18%), a taxa de juros anual nominal sobre o saldo não pago de um cartão de crédito
que cobra uma taxa de juros anual efetiva de 19,56%:
NOMINAL(0,1956; 12)
Observações
O que é taxa de juros nominal?
A taxa de juros nominal anual de um empréstimo é a taxa de juros declarada ou postada, considerando os
juros sobre o saldo restante, compostos mensalmente ou diariamente.
Funções relacionadas
A função EFFECTIVE( ) é o inverso da função NOMINAL( ).
Função NORMDIST( )
Retorna a probabilidade de uma variável aleatória de um conjunto de dados distribuído normalmente ser
menor ou igual a um valor especificado, ou exatamente igual a um valor especificado.
Sintaxe
NORMDIST(x; média; desvio_padrão; cumulativo)
Parâmetros
Nome Tipo Descrição
cumulativo lógico Especifique T para calcular a probabilidade de que uma variável ale-
atória seja menor ou igual a x (probabilidade cumulativa) ou F para
calcular a probabilidade de que uma variável aleatória seja exa-
tamente igual a x (probabilidade simples).
Saída
Numérico.
Exemplos
Exemplos básicos
Retorna 0,908788780274132:
Retorna 0,109340049783996:
Função NORMSINV( )
Retorna a pontuação z associada a uma probabilidade especificada em uma distribuição normal padrão. A
pontuação z é o número de desvios padrão que um valor está distante da média de uma distribuição normal
padrão.
Sintaxe
NORMSINV(probabilidade)
Parâmetros
Nome Tipo Descrição
Saída
Numérico.
Exemplos
Exemplos básicos
Retorna 1,333401745213610:
NORMSINV(0,9088)
Função NOW( )
Retorna a hora atual do sistema operacional como um tipo de dados Datahora.
Sintaxe
NOW()
Parâmetros
Essa função não possui nenhum parâmetro.
Saída
Datahora.
Exemplos
Exemplos básicos
Retorna a hora atual do sistema operacional como um valor datahora, por exemplo, `t235959`, usando o
formato atual de exibição de hora do Analytics:
NOW()
Observações
Funções relacionadas
Se precisar retornar a hora atual do sistema operacional como cadeia de caracteres, use TIME( ) em vez
de NOW( ).
Função NPER( )
Retorna o número dos períodos necessários para liquidar um empréstimo.
Sintaxe
NPER(taxa; pagamento; valor <;tipo>)
Parâmetros
Nome Tipo Descrição
Saída
Numérico.
Exemplos
Exemplos básicos
Retorna 300,00, o número de meses necessários para liquidar um empréstimo de $ 275.000 a 6,5% ao
ano, com pagamentos de $ 1.856,82 ao final de cada mês:
Retorna 252,81, o número de meses necessários para liquidar o mesmo empréstimo, com pagamentos de
$ 2,000 ao final de cada mês:
Retorna 249,92, o número de meses necessários para liquidar o mesmo empréstimo, com pagamentos
de $ 2,000 no início de cada mês:
Exemplos avançados
Cálculos de anuidade
Os cálculos de anuidade envolvem quatro variáveis:
l valor presente ou valor futuro: US$ 21.243,39 e US$ 26.973,46 nos exemplos abaixo
l valor do pagamento por período: US$ 1.000,00 nos exemplos abaixo
l taxa de juros por período: 1% por mês nos exemplos abaixo
l número de períodos: 24 meses nos exemplos abaixo
Se você souber o valor de três das variáveis, poderá usar uma função do Analytics para calcular a quarta.
PVANNUITY( )
Retorna 21243,39:
FVANNUITY( )
Retorna 26973,46:
PMT( )
Retorna 1000:
RATE( )
Retorna 0,00999999 (1%):
NPER( )
Retorna 24,00:
Fórmulas de anuidade
A fórmula para calcular o valor presente de uma anuidade ordinária (pagamento no final de um período):
A fórmula para calcular o valor futuro de uma anuidade ordinária (pagamento no final de um período):
Função OCCURS( )
Retorna a contagem de quantas vezes um trecho de cadeia ocorre em um valor de caracteres espe-
cificado.
Sintaxe
OCCURS(cadeia; pesquisar_por)
Parâmetros
Nome Tipo Descrição
OCCURS(Nome+Sobrenome;"John")
Saída
Numérico.
Exemplos
Exemplos básicos
Retorna 2:
OCCURS("abc/abc/a";"ab")
Retorna 3:
OCCURS("abc/abc/a";"a")
OCCURS(Numero_Fatura; "-")
Exemplos avançados
Como encontrar números de fatura com mais de um hífen
Se os números de fatura em uma tabela tiverem de ter apenas um hífen, use a função OCCURS( ) para
criar um filtro que separe números de fatura com dois ou mais hifens:
Função OFFSET( )
Retorna o valor de um campo com a posição inicial deslocada por um número especificado de bytes.
Sintaxe
OFFSET(campo; número_de_bytes)
Parâmetros
Nome Tipo Descrição
Saída
O valor retornado é do mesmo tipo de dados do parâmetro de entrada campo.
Exemplos
Exemplos básicos
Se você tiver um campo chamado "Número" que contém o valor "1234567890" e você definir um campo
sobreposto chamado "Número_de_deslocamento", que tem uma posição inicial igual a 1, um com-
primento igual a 3 e sem casas decimais, você poderá usar a função OFFSET( ) para deslocar os núme-
ros no campo.
Retorna 123:
OFFSET(Numero_de_deslocamento;0)
Retorna 234:
OFFSET(Numero_de_deslocamento;1)
Retorna 789:
OFFSET(Numero_de_deslocamento;6)
Observações
Você pode usar esta função para deslocar temporariamente a posição inicial de um campo. Isto é útil
quando você está processando dados com a posição inicial do campo variável.
Se usar a função OFFSET( ) com campos calculados condicionais, todos os campos referenciados no
teste IF também serão deslocados.
Função OMIT( )
Retorna uma cadeia com um ou mais subcadeias especificadas removidas.
Sintaxe
OMIT(cadeia1; cadeia2 <;diferenciam_maiúsculas_de_minúsculas>)
Parâmetros
Nome Tipo Descrição
Saída
Caractere.
Exemplos
Exemplos básicos
Entrada de caracteres literais
Retorna "Intercity Couriers":
Nota
A distância de Levenshtein entre os valores retornados nos primeiros dois exemplos é 1.
Se os elementos genéricos não forem removidos, a distância entre os dois exemplos será
8, o que pode permitir que os valores não sejam detectados como duplicidades parciais.
Entrada de campo
Retorna todos os valores no campo Nome_Fornecedor com elementos genéricos como "Companhia" e
"Inc." removido(a):
Retorna todos os valores no campo Nome_Fornecedor com elementos genéricos como "Companhia" e
"Inc." removido(a):
OMIT(Nome_Fornecedor;" ,.,Corporation;Corp;Inc;Ltd")
Nota
Os dois exemplos anteriores retornam os mesmos resultados, mas a sintaxe para o
segundo exemplo é mais eficiente.
Retorna todos os valores no campo Nome_Fornecedor com "Companhia" e "Corp" removidos, além de
remover todas as vírgulas:
Observações
OMIT( ) pode remover subcadeias como unidades
A função OMIT( ) remove uma ou mais subcadeias de uma cadeia. Ela é diferente de funções como
CLEAN( ), EXCLUDE( ), INCLUDE( ) e REMOVE( ) porque encontra correspondências e remove carac-
teres com base em subcadeias e não caractere por caractere. A remoção de subcadeias permite remover
palavras específicas, abreviações, ou sequências repetidas de caracteres de uma cadeia sem afetar o res-
tante da cadeia.
Função PACKED( )
Retorna os dados numéricos convertidos para tipo de dados Packed (Compactado).
Sintaxe
PACKED(número; comprimento_do_resultado)
Parâmetros
Nome Tipo Descrição
Saída
Numérico.
Exemplos
Exemplos básicos
Inteiro e entrada decimal
Retorna 00075C:
PACKED(75; 3)
PACKED(7,5; 3)
PACKED(-12,456; 6)
Retorna 456D:
PACKED(-12,456; 2)
Exemplos avançados
Criação de um campo de 8 bytes para atualizar um mainframe
É necessário criar um campo de 8 bytes que contenha o salário de cada funcionário como um número
PACKED para carregá-lo em um mainframe:
Observações
O que são dados compactados?
O tipo de dados Packed é usado pelos sistemas operacionais de mainframe para armazenar valores numé-
ricos em um formato que usa espaço de armazenamento mínimo. O tipo de dados Packed armazena dois
dígitos em cada byte e o último byte indica se o valor é positivo ou negativo.
Função PI( )
Retorna o valor de pi com 15 casas decimais.
Sintaxe
PI( )
Parâmetros
Essa função não possui nenhum parâmetro.
Saída
Numérico.
Exemplos
Exemplos básicos
Retorna 3,141592653589793 (o valor de pi com 15 casas decimais):
PI( )
60 * PI( )/180
Exemplos avançados
Uso de graus como entrada
Retorna 0,866025403784439 (o seno de 60 graus):
SIN(60 * PI( )/180)
Observações
Quando usar PI( )
Use PI( ) para converter graus em radianos: (graus * PI( )/180) = radianos. É obrigatório o uso de radianos
nas entradas de três das funções matemáticas do Analytics: SIN( ), COS( ) e TAN( ).
Função PMT( )
Retorna o tamanho dos pagamentos periódicos (principal + juros) necessários para liquidar um emprés-
timo.
Sintaxe
PMT(taxa; períodos; valor <;tipo>)
Parâmetros
Nome Tipo Descrição
Nota
Você deve usar períodos consistentes para especificar taxa e períodos para garantir que
está especificando a taxa de juros por período.
Por exemplo:
l para pagamentos mensais de um empréstimo ou investimento de dois anos com
juros de 5% ao ano, especifique 0,05/12 como taxa e 2 * 12 como períodos
l para pagamentos anuais do mesmo empréstimo ou investimento, especifique 0,05
como taxa e 2 como períodos
Saída
Numérico.
Exemplos
Exemplos básicos
Retorna 1856,82, o pagamento mensal (principal + juros) necessário para liquidar um empréstimo de vinte
e cinco anos, empréstimo de $ 275.000 a 6,5% ao ano, com pagamentos ao final de cada mês:
Retorna 1846,82, o pagamento mensal (principal + juros) necessário para liquidar o mesmo empréstimo,
com pagamentos no início de cada mês:
Exemplos avançados
Cálculos de anuidade
Os cálculos de anuidade envolvem quatro variáveis:
l valor presente ou valor futuro: US$ 21.243,39 e US$ 26.973,46 nos exemplos abaixo
l valor do pagamento por período: US$ 1.000,00 nos exemplos abaixo
l taxa de juros por período: 1% por mês nos exemplos abaixo
l número de períodos: 24 meses nos exemplos abaixo
Se você souber o valor de três das variáveis, poderá usar uma função do Analytics para calcular a quarta.
PVANNUITY( )
Retorna 21243,39:
FVANNUITY( )
Retorna 26973,46:
PMT( )
Valor do pagamento por período Retorna 1000:
RATE( )
Retorna 0,00999999 (1%):
NPER( )
Retorna 24,00:
Fórmulas de anuidade
A fórmula para calcular o valor presente de uma anuidade ordinária (pagamento no final de um período):
A fórmula para calcular o valor futuro de uma anuidade ordinária (pagamento no final de um período):
Função PPMT( )
Retorna o principal pago em um empréstimo para um único período.
Sintaxe
PPMT(taxa; período_especificado; períodos; valor <;tipo>)
Parâmetros
Nome Tipo Descrição
período_espe- numérico O período para o qual você deseja calcular o pagamento do principal.
cificado
Nota
Você deve usar períodos consistentes para especificar taxa e períodos para garantir que
está especificando a taxa de juros por período.
Por exemplo:
l para pagamentos mensais de um empréstimo ou investimento de dois anos com
juros de 5% ao ano, especifique 0,05/12 como taxa e 2 * 12 como períodos
l para pagamentos anuais do mesmo empréstimo ou investimento, especifique 0,05
como taxa e 2 como períodos
Saída
Numérico.
Exemplos
Exemplos básicos
Retorna 367,24, o valor total do principal pago no primeiro mês de um empréstimo de vinte e cinco anos, $
275.000 a 6,5% ao ano, com pagamentos ao final de cada mês:
Observações
Funções relacionadas
A função IPMT( ) é o complemento da função PPMT( ).
A função CUMPRINC( ) calcula o principal pago durante um intervalo de períodos.
Função PROPER( )
Retorna uma cadeia com o primeiro caractere de cada palavra em letra maiúscula e os caracteres res-
tantes em minúsculas.
Sintaxe
PROPER(cadeia)
Parâmetros
Nome Tipo Descrição
Saída
Caractere.
Exemplos
Exemplos básicos
Retorna "José Silva":
PROPER("JOHN DOE")
PROPER("john doe")
PROPER("BILL O'HARA")
PROPER(Nome_Empresa)
Observações
Como funciona?
A função PROPER( ) converte em maiúscula o primeiro caractere na cadeia e todos os caracteres sub-
sequentes precedidos por um espaço em branco.
Os caracteres subsequentes precedidos por hífen, apóstrofo, caractere de união (&) e vários outros carac-
teres de pontuação e especiais também são convertidos em letras maiúsculas. Todos os outros carac-
teres alfabéticos são convertidos para minúsculas.
Função PROPERTIES( )
Retorna informações sobre as propriedades do item do projeto do Analytics especificado.
Sintaxe
PROPERTIES(nome; tipo_obj; tipo_info)
Parâmetros
Nome Tipo Descrição
nome caractere O nome do item do projeto do Analytics do qual se quer obter infor-
mações. nome não diferencia minúsculas e maiúsculas.
Caso o item de projeto seja uma tabela do Analytics, especifique o
nome do layout da tabela, não o nome do arquivo de dados. Por exem-
plo: "Faturas", não "faturas_janeiro.fil"
Se você usar a função PROPERTIES( ) para retornar o nome da
tabela ativa, especifique o nome "activetable"
Saída
Caractere. O comprimento máximo da cadeia de caracteres de saída é de 260 caracteres. Caso nenhuma
informação possa ser encontrada sobre as propriedades, uma cadeia vazia é retornada.
Exemplos
Exemplos básicos
Informações sobre o arquivo de dados do Analytics (.fil)
Retorna "Trans_Cp.fil":
Retorna "EXCEL":
Observações
Informações do arquivo
Os tipos de informações que começam com "file" fornecem informações sobre o arquivo de dados da
tabela do Analytics (.fil) associado a uma tabela do Analytics.
Informações da origem
Os tipos de informações que começam com "source" fornecem informações sobre origens externas de
dados possivelmente associadas a uma tabela do Analytics. Apenas as seguintes origens externas de
dados, compatíveis com a atualização de tabelas do Analytics, podem ser reportadas com a função
PROPERTIES( ):
l Microsoft Excel
l Microsoft Access
l Texto delimitado
l Adobe Acrobat (PDF)
l Imagem de impressão (relatório)
l Formato de arquivo privado SAP/DART
l XML
l XBRL
l Origens de dados ODBC
tipo_
obj tipo_info Retorna:
"sourcemodifiedat" A data e hora da última modificação da origem de dados associada à tabela do Analy-
tics.
Não é compatível com origens de dados ODBC.
Função PVANNUITY( )
Retorna o valor presente de uma série de pagamentos futuros, calculado usando uma taxa de juros cons-
tante. O valor presente é o valor atual para um único pagamento.
Sintaxe
PVANNUITY(taxa; períodos; pagamento <;tipo>)
Parâmetros
Nome Tipo Descrição
Nota
Você deve usar períodos consistentes para especificar taxa, períodos e pagamento para
garantir que está especificando a taxa de juros por período.
Por exemplo:
l para um pagamento mensal de um empréstimo ou investimento de dois anos com
juros de 5% ao ano, especifique 0,05/12 como taxa e 2 * 12 como períodos
l para um pagamento anual do mesmo empréstimo ou investimento, especifique 0,05
como taxa e 2 como períodos
Saída
Numérico. O resultado é calculado para duas casas decimais.
Exemplos
Exemplos básicos
Pagamentos mensais
Retorna 21455,82, o valor presente de $ 1.000 pagos no início de cada mês por 2 anos a 1% ao mês, com-
postos mensalmente:
Pagamentos anuais
Retorna 20280,61, o valor presente de $ 12.000 pagos ao final de cada ano por 2 anos a 12% ao ano,
compostos anualmente:
PVANNUITY(0,12; 2; 12000, 0)
Exemplos avançados
Cálculos de anuidade
Os cálculos de anuidade envolvem quatro variáveis:
l valor presente ou valor futuro: US$ 21.243,39 e US$ 26.973,46 nos exemplos abaixo
l valor do pagamento por período: US$ 1.000,00 nos exemplos abaixo
l taxa de juros por período: 1% por mês nos exemplos abaixo
l número de períodos: 24 meses nos exemplos abaixo
Se você souber o valor de três das variáveis, poderá usar uma função do Analytics para calcular a quarta.
PVANNUITY( )
Retorna 21243,39:
FVANNUITY( )
Retorna 26973,46:
PMT( )
Retorna 1000:
RATE( )
Retorna 0,00999999 (1%):
NPER( )
Retorna 24,00:
Fórmulas de anuidade
A fórmula para calcular o valor presente de uma anuidade ordinária (pagamento no final de um período):
A fórmula para calcular o valor futuro de uma anuidade ordinária (pagamento no final de um período):
Observações
Funções relacionadas
A função FVANNUITY( ) é o inverso da função PVANNUITY( ).
Função PVLUMPSUM( )
Retorna o valor presente necessário para gerar o valor de um único pagamento futuro calculado usando
uma taxa de juros contínua. O valor presente é o valor atual para um único pagamento.
Sintaxe
PVLUMPSUM(taxa; períodos; valor)
Parâmetros
Nome Tipo Descrição
Nota
Você deve usar períodos consistentes para especificar taxa e períodos para garantir que
está especificando a taxa de juros por período.
Por exemplo:
l para pagamentos mensais de um empréstimo ou investimento de dois anos com
juros de 5% ao ano, especifique 0,05/12 como taxa e 2 * 12 como períodos
l para pagamentos anuais do mesmo empréstimo ou investimento, especifique 0,05
como taxa e 2 como períodos
Saída
Numérico. O resultado é calculado para duas casas decimais.
Exemplos
Exemplos básicos
Juros compostos mensalmente
Retorna 1000,00, o principal do investimento inicial necessário para gerar um valor de um único pagamento
futuro de US$ 1.269,73, quando investido por 2 anos a 1% por mês, composto mensalmente:
Retorna 787,57, o principal do investimento inicial necessário para gerar um valor de um único pagamento
futuro de US$ 1.000, quando investido por 2 anos a 1% por mês, composto mensalmente:
Retorna 21.455,82, o principal do investimento inicial necessário para gerar um valor de um único paga-
mento futuro de US$ 27.243,20, quando investido por 2 anos a 1% por mês, composto mensalmente:
PVLUMPSUM(0,12; 2; 1000)
Observações
O que é valor presente?
O valor presente de um valor de um único pagamento investido é o principal inicial necessário para gerar
um valor de um único pagamento futuro específico dentro de um determinado período. O valor futuro é o
principal mais os juros compostos acumulados.
Funções relacionadas
A função FVLUMPSUM( ) é o inverso da função PVLUMPSUM( ).
Função PYDATE( )
Retorna um valor de data calculado por uma função em um script do Python externo. O processamento de
dados no Python é externo ao Analytics.
Sintaxe
PYDATE("ArquivoPy; FunçãoPy" <; campo|valor <;...n>>)
Parâmetros
Nome Tipo Descrição
ArquivoPy; Fun- caractere O nome do script do Python a ser executado, seguido por uma vírgula
çãoPy e o nome da função que retorna o valor:
"meuScript;minhaFunção"
campo|valor <;...n> caractere Essa é uma lista de campos, expressões ou valores literais para usar
como argumentos para a função do Python. Os valores são passados
opcional numérico
para a função chamada na ordem em que são especificados.
datahora
Você pode incluir o número de argumentos necessário para atender à
lógico definição da função no script do Python.
Nota
Use a função ALLTRIM( ) para remover todos os espa-
ços à esquerda ou à direita de entradas de caracteres:
ALLTRIM(cadeia). Para obter mais informações, con-
sulte "Função ALLTRIM( )" Na página 479.
Saída
Datahora.
Exemplos
Exemplos básicos
Retorna `20160630`:
Script do Python externo que aceita uma data e um período de carência como um número de dias e cal-
cula a data de vencimento da fatura. Para uma data de fatura de 2016-05-31 e um período de 30
dias: "2016-06-30":
#! python
from datetime import timedelta
Exemplos avançados
Definição de um campo calculado
Define um campo calculado na tabela Trans_Cp usando o script do Python que calcula a data de ven-
cimento:
OPEN Trans_Cp
DEFINE FIELD data_vencimento COMPUTED
WIDTH 27
PYDATE("hello;due_date"; Data_Fatura; Período_pagamento)
Função PYDATETIME( )
Retorna um valor de datahora calculado por uma função em um script do Python externo. O pro-
cessamento de dados no Python é externo ao Analytics.
Sintaxe
PYDATETIME("ArquivoPy; FunçãoPy" <; campo|valor <;...n>>)
Parâmetros
Nome Tipo Descrição
ArquivoPy; Fun- caractere O nome do script do Python a ser executado, seguido por uma vírgula
çãoPy e o nome da função que retorna o valor:
"meuScript;minhaFunção"
campo|valor <;...n> caractere Essa é uma lista de campos, expressões ou valores literais para usar
como argumentos para a função do Python. Os valores são passados
opcional numérico
para a função chamada na ordem em que são especificados.
datahora
Você pode incluir o número de argumentos necessário para atender à
lógico definição da função no script do Python.
Nota
Use a função ALLTRIM( ) para remover todos os espa-
ços à esquerda ou à direita de entradas de caracteres:
ALLTRIM(cadeia). Para obter mais informações, con-
sulte "Função ALLTRIM( )" Na página 479.
Saída
Datahora.
Exemplos
Exemplos básicos
Retorna `20170101t0500`:
Script do Python externo que aceita um argumento de data e um argumento de hora e retorna um objeto
Datahora combinado:
# conteúdo de hello.py
from datetime import datetime
def combine_date_time(d,t):
return datetime.combine(d,t)
Exemplos avançados
Adição de tempo a uma datahora
Retorna `20160101t2230`:
Script do Python externo que aceita uma datahora e uma hora e adiciona a hora à datahora: 2016-01-01
15:00:00 + 7 horas, 30 minutos, 00 segundos = 2016-01-01 22:30:00.
# conteúdo de hello.py
from datetime import timedelta
from datetime import datetime
from datetime import time
def add_time(start, time_to_add):
return start + timedelta(hours=time_to_add.hour, minutes=time_to_add.minute, seconds=time_to_
add.second)
Função PYLOGICAL( )
Retorna um valor lógico calculado por uma função em um script do Python externo. O processamento de
dados no Python é externo ao Analytics.
Sintaxe
PYLOGICAL("ArquivoPy; FunçãoPy" <; campo|valor <;...n>>)
Parâmetros
Nome Tipo Descrição
ArquivoPy; Fun- caractere O nome do script do Python a ser executado, seguido por uma vírgula
çãoPy e o nome da função que retorna o valor:
"meuScript;minhaFunção"
campo|valor <;...n> caractere Essa é uma lista de campos, expressões ou valores literais para usar
como argumentos para a função do Python. Os valores são passados
opcional numérico
para a função chamada na ordem em que são especificados.
datahora
Você pode incluir o número de argumentos necessário para atender à
lógico definição da função no script do Python.
Nota
Use a função ALLTRIM( ) para remover todos os espa-
ços à esquerda ou à direita de entradas de caracteres:
ALLTRIM(cadeia). Para obter mais informações, con-
sulte "Função ALLTRIM( )" Na página 479.
Saída
Lógico.
Exemplos
Exemplos básicos
Retorna F:
Script do Python externo que compara str1 e str2 usando a contagem de caracteres passada como char:
# conteúdo de hello.py
def str_compare(str1, str2, char):
return str1.count(char) > str2.count(char)
Exemplos avançados
Uso de campos
Retorna um valor de verdade ao comparar Nome_Fornecedor e Cidade_Fornecedor:
Script do Python externo que compara str1 e str2 usando a contagem de caracteres passada como char:
# conteúdo de hello.py
def str_compare(str1, str2, char):
return str1.count(char) > str2.count(char)
Função PYNUMERIC( )
Retorna um valor numérico calculado por uma função em um script do Python externo. O processamento
de dados no Python é externo ao Analytics.
Sintaxe
PYNUMERIC(ArquivoPy; FunçãoPy; decimal <; campo|valor <;...n>>)
Parâmetros
Nome Tipo Descrição
ArquivoPy; Fun- caractere O nome do script do Python a ser executado, seguido por uma vírgula
çãoPy e o nome da função que retorna o valor:
"meuScript;minhaFunção"
decimal numérico O número de casas decimais a incluir no valor retornado. Deve ser um
inteiro positivo.
campo|valor <;...n> caractere Essa é uma lista de campos, expressões ou valores literais para usar
como argumentos para a função do Python. Os valores são passados
opcional numérico
para a função chamada na ordem em que são especificados.
datahora
Você pode incluir o número de argumentos necessário para atender à
lógico definição da função no script do Python.
Nota
Use a função ALLTRIM( ) para remover todos os espa-
ços à esquerda ou à direita de entradas de caracteres:
ALLTRIM(cadeia). Para obter mais informações, con-
sulte "Função ALLTRIM( )" Na página 479.
Saída
Numérico.
Exemplos
Exemplos básicos
Retorna 35,00:
Script externo do Python que retorna o valor no percentil solicitado de uma lista de valores dimensionada
dinamicamente:
# conteúdo de hello.py
from math import ceil
def get_nth_percent(percentage, *values):
input_length = len(values)
position = ceil((percentage/100.00) * input_length)
return values[position-1]
Função PYSTRING( )
Retorna um valor de caracteres calculado por uma função em um script do Python externo. O pro-
cessamento de dados no Python é externo ao Analytics.
Sintaxe
PYSTRING("ArquivoPy; FunçãoPy"; comprimento <;campo|valor <;...n>>)
ArquivoPy; Fun- caractere O nome do script do Python a ser executado, seguido por uma vírgula
çãoPy e o nome da função que retorna o valor:
"meuScript;minhaFunção"
campo|valor <;...n> caractere Essa é uma lista de campos, expressões ou valores literais para usar
como argumentos para a função do Python. Os valores são passados
opcional numérico
para a função chamada na ordem em que são especificados.
datahora
Você pode incluir o número de argumentos necessário para atender à
lógico definição da função no script do Python.
Nota
Use a função ALLTRIM( ) para remover todos os espa-
ços à esquerda ou à direita de entradas de caracteres:
ALLTRIM(cadeia). Para obter mais informações, con-
sulte "Função ALLTRIM( )" Na página 479.
Saída
Caractere.
Exemplos
Exemplos básicos
Retorna "meu teste":
Script do Python externo que aceita uma cadeia e a concatena com " teste":
#! python
# conteúdo de hello.py
def main(str):
str2 = str + ' test'
return(str2)
Exemplos avançados
Retorno de uma subcadeia
Esse exemplo remove os dois últimos caracteres do campo Nome do fornecedor e retorna a subcadeia:
Script do Python externo que aceita uma cadeia, um comprimento de cadeia e duas posições de carac-
teres. A função retorna uma subcadeia entre a posição um e a posição dois:
# conteúdo de hello.py
def sub_set(str, length, p1, p2):
if p1 >= 0 and p2 < length and p1 < p2:
str2 = str[p1:p2]
else:
str2 = str
return str2
Função PYTIME( )
Retorna um valor de hora calculado por uma função em um script do Python externo. O processamento de
dados no Python é externo ao Analytics.
Sintaxe
PYTIME("ArquivoPy; FunçãoPy" <; campo|valor <;...n>>)
Parâmetros
Nome Tipo Descrição
ArquivoPy; Fun- caractere O nome do script do Python a ser executado, seguido por uma vírgula
çãoPy e o nome da função que retorna o valor:
"meuScript;minhaFunção"
campo|valor <;...n> caractere Essa é uma lista de campos, expressões ou valores literais para usar
como argumentos para a função do Python. Os valores são passados
opcional numérico
para a função chamada na ordem em que são especificados.
datahora
Você pode incluir o número de argumentos necessário para atender à
lógico definição da função no script do Python.
Nota
Use a função ALLTRIM( ) para remover todos os espa-
ços à esquerda ou à direita de entradas de caracteres:
ALLTRIM(cadeia). Para obter mais informações, con-
sulte "Função ALLTRIM( )" Na página 479.
Saída
Datahora.
Exemplos
Exemplos básicos
Retorna `t2122`:
# conteúdo de hello.py
from datetime import time
from datetime import date
def get_time(timestamp):
return timestamp.time();
Função RAND( )
Retorna um número aleatório dentro de um intervalo especificado.
Sintaxe
RAND(número)
Parâmetros
Nome Tipo Descrição
RAND(100)
RAND(-100)
Saída
Numérico.
Exemplos
Exemplos básicos
Retorna 278,61:
RAND(1000,00)
Retorna 3781:
RAND(10000)
Nota
O valor de retorno será diferente a cada execução da função.
Observações
RAND( ) não consegue replicar resultados
Se você usar a função RAND( ) consecutivamente com o mesmo valor de número, serão produzidos resul-
tados diferentes. Ao contrário do comando RANDOM, a função RAND( ) não tem um valor de origem.
Função RATE( )
Retorna a taxa de juros por período.
Sintaxe
RATE(períodos; pagamento; valor)
Parâmetros
Nome Tipo Descrição
Nota
A função RATE( ) pressupõe que os pagamentos sejam efetuados no final de cada perí-
odo.
Saída
Numérico. A taxa é calculada com oito casas decimais.
Exemplos
Exemplos básicos
Retorna 0,00541667 (0,54%), os juros mensais resultantes de um empréstimo de US$ 275.000 por 25
anos com pagamentos mensais de US$ 1.856,82:
Exemplos avançados
Conversão da taxa nominal na taxa efetiva
A função RATE( ) calcula a taxa de juros nominal. Você pode usar a função EFFECTIVE( ) para con-
verter o resultado de RATE( ) na taxa de juros efetiva.
Retorna 0,06715155 (6,7%), a taxa de juros anual efetiva decorrente do empréstimo nos exemplos
acima:
Cálculos de anuidade
Os cálculos de anuidade envolvem quatro variáveis:
l valor presente ou valor futuro: US$ 21.243,39 e US$ 26.973,46 nos exemplos abaixo
l valor do pagamento por período: US$ 1.000,00 nos exemplos abaixo
l taxa de juros por período: 1% por mês nos exemplos abaixo
l número de períodos: 24 meses nos exemplos abaixo
Se você souber o valor de três das variáveis, poderá usar uma função do Analytics para calcular a quarta.
PVANNUITY( )
Retorna 21243,39:
FVANNUITY( )
Retorna 26973,46:
PMT( )
Retorna 1000:
RATE( )
Retorna 0,00999999 (1%):
NPER( )
Retorna 24,00:
Fórmulas de anuidade
A fórmula para calcular o valor presente de uma anuidade ordinária (pagamento no final de um período):
A fórmula para calcular o valor futuro de uma anuidade ordinária (pagamento no final de um período):
Função RDATE( )
Retorna um valor de data calculado por uma função ou script do R. O processamento de dados no R é
externo ao Analytics.
Sintaxe
RDATE(scriptR|códigoR <;campo|valor <;...n>>)
Parâmetros
Nome Tipo Descrição
campo | valor <,...n> caractere A lista de campos, expressões ou valores literais para usar como
argumentos para o script ou snippet de código do R.
opcional numérico
Os valores são passados para a função chamada na ordem em que
datahora
são especificados e são referenciados usando valor1, valor2 ...
lógico valorN no código do R.
Você pode incluir o número de argumentos necessário para atender
à definição da função no script do R.
Nota
Use a função ALLTRIM( ) para remover todos os espa-
ços à esquerda ou à direita de entradas de caracteres:
ALLTRIM(cadeia). Para obter mais informações, con-
sulte "Função ALLTRIM( )" Na página 479.
Saída
Datahora.
Exemplos
Exemplos básicos
Retorna `20160530`:
RDATE("as.Date(value1,'%m-%d-%Y')"; "05-30-16")
Exemplos avançados
Uso de um script do R externo
Converte uma cadeia em uma data e retorna:
RDATE("a<-source('c:\\scripts\\r_scripts\\sample.r');a[[1]]"; dateText)
Observações
Retorno de uma data do R
Ao chamar scripts do R, use a função origem e atribua o objeto retornado a uma variável. Desse modo,
você pode acessar o valor retornado da função do R no objeto retornado:
Arquivo de log R
O Analytics registra em log as mensagens da linguagem R no arquivo aclrlan.log na pasta do projeto.
Use esse arquivo de log para depurar erros do R.
Dica
O arquivo de log está disponível na pasta Resultados das tarefas de análise do Analytics
Exchange.
Função RDATETIME( )
Retorna um valor de datahora calculado por uma função ou script do R. O processamento de dados no R é
externo ao Analytics.
Sintaxe
RDATETIME(scriptR|códigoR <;campo|valor <;...n>>)
Parâmetros
Nome Tipo Descrição
campo | valor <,...n> caractere A lista de campos, expressões ou valores literais para usar como argu-
mentos para o script ou snippet de código do R.
opcional numérico
Os valores são passados para a função chamada na ordem em que
datahora
são especificados e são referenciados usando valor1, valor2 ... valorN
lógico no código do R.
Você pode incluir o número de argumentos necessário para atender à
definição da função no script do R.
Nota
Use a função ALLTRIM( ) para remover todos os espa-
ços à esquerda ou à direita de entradas de caracteres:
ALLTRIM(cadeia). Para obter mais informações, con-
sulte "Função ALLTRIM( )" Na página 479.
Saída
Datahora.
Exemplos
Exemplos básicos
Adiciona 45 minutos à data e hora atuais:
RDATETIME("Sys.time() + value1";2700)
Exemplos avançados
Uso de um script do R externo
Adiciona 45 minutos a um campo datahora, passando um campo e um valor literal a uma função do R
externa:
Observações
Retorno de uma data do R
Ao chamar scripts do R, use a função origem e atribua o objeto retornado a uma variável. Desse modo,
você pode acessar o valor retornado da função do R no objeto retornado:
Arquivo de log R
O Analytics registra em log as mensagens da linguagem R no arquivo aclrlan.log na pasta do pro-
jeto. Use esse arquivo de log para depurar erros do R.
Dica
O arquivo de log está disponível na pasta Resultados das tarefas de análise do Analytics
Exchange.
Função RECLEN( )
Retorna o comprimento do registro atual.
Sintaxe
RECLEN( )
Parâmetros
Essa função não possui nenhum parâmetro.
Saída
Numérico.
Exemplos
Exemplos básicos
O exemplo a seguir extrai todos os registros em que o comprimento é exatamente 110:
Observações
Você pode a função RECLEN( ) para identificar os registros de um comprimento específico ou para testar
se há registros mais curtos do que esperado. Essa função é útil se você estiver trabalhando com arquivos
de imagem de impressão (Relatório), porque fornece uma maneira fácil de analisar os comprimentos de
relatórios:
l Para registros de comprimento fixo, o valor retornado será um valor constante (o comprimento do
registro).
l Para registros de comprimento variável, o valor retornado é alterado para cada registro.
Função RECNO( )
Retorna o número do registro atual.
Sintaxe
RECNO( )
Parâmetros
Essa função não possui nenhum parâmetro.
Saída
Numérico.
Exemplos
Exemplos básicos
O exemplo a seguir extrai registros numerados de 10 a 20 para uma nova tabela do Analytics:
Observações
Você pode usar a função RECNO( ) para gerar os números de registros em uma tabela ou para determinar
a localização relativa de um determinado registro em uma tabela.
Reordenação de registros
Ao reordenar os registros em uma tabela, os números de registro gerados por RECNO( ) não são reor-
denados. Para manter os números de registro com os registros com que eles estavam originalmente asso-
ciados, extraia os dados para uma nova tabela usando a opção Campos antes de reordenar os registros.
Função RECOFFSET( )
Retorna o valor de um campo de um registro que está a um número especificado de registros a partir do
registro atual.
Sintaxe
RECOFFSET(campo; número_de_registros)
Parâmetros
Nome Tipo Descrição
Saída
Caracteres, Numéricos ou de Datahora. O valor retornado pertence a mesma categoria de dados do parâ-
metro de entrada campo.
Exemplos
Exemplos básicos
Retorna um valor Quantidade do próximo registro:
RECOFFSET(Quantidade;1)
RECOFFSET(Quantidade; -1)
Exemplos avançados
Uso de RECOFFSET em um campo calculado
O campo calculado Próxima_quantidade mostra o valor do campo Quantidade do próximo registro ape-
nas se este tiver o mesmo número de cliente.
Para definir esse campo calculado em um script, use a seguinte sintaxe:
Próxima_quantidade será o valor do campo Quantidade do próximo registro apenas se o número de cli-
ente do próximo registro for igual ao número de cliente do registro atual. Caso contrário, Próxima_quan-
tidade será zero.
Observações
A função RECOFFSET( ) retorna um valor de campo de um registro que está um número especificado de
registros acima ou abaixo do registro atual.
Função REGEXFIND( )
Retorna um valor lógico que indica se o padrão especificado por uma expressão regular ocorre em uma
cadeia.
Sintaxe
REGEXFIND(cadeia; padrão)
Parâmetros
Nome Tipo Descrição
cadeia caractere O campo, expressão ou valor literal a ser testado por correspondência
a um padrão.
Saída
Lógico. Retorna T (verdadeiro) se o padrão especificado for encontrado, caso contrário, retorna F (falso).
Exemplos
Exemplos básicos
Padrões de caracteres alfabéticos
Retorna T para todos os registros que contêm "Fortaleza", "Rio de Janeiro" ou "Belo Horizonte" no campo
Cidade_Fornecedor. Caso contrário, retorna F:
Retorna T para todos os sobrenomes que começam com "John" ou "Jon". Por exemplo: John, Jon, John-
son, Johnston, Jonson, Jonston, Jones e assim por diante. Caso contrário, retorna F:
REGEXFIND(Sobrenome;"^Joh?n")
Retorna T apenas para os sobrenomes que são "John" ou "Jon". Caso contrário, retorna F:
REGEXFIND(Sobrenome;"^Joh?n\b")
REGEXFIND(Numero_Fatura; "98")
Retorna T para todos os registros com números de fatura que começam com "98". Caso contrário,
retorna F:
REGEXFIND(Numero_Fatura; "\b98")
Retorna T para todos os registros com números de fatura que terminam com "98". Caso contrário, retorna
F:
REGEXFIND(Numero_Fatura; "98\b")
Retorna T para todos os registros com números de fatura que contêm "98" na 5ª e na 6ª posições. Caso
contrário, retorna F:
REGEXFIND(Numero_Fatura; "\b\d\d\d\d98")
REGEXFIND(Numero_Fatura; "\b\d{4}98")
REGEXFIND(Codigo_Produto; "\b\d{3}-[a-zA-Z]{6}\b")
Retorna T para todos os registros com códigos de produto que iniciam com 3 ou mais números, seguidos
por um hífen e 6 ou mais letras. Caso contrário, retorna F:
REGEXFIND(Codigo_Produto; "\b\d{3,}-[a-zA-Z]{6}")
Retorna T para todos os registros com identificadores de fatura alfanuméricos que contêm "98" na 5ª e na
6ª posições. Caso contrário, retorna F:
REGEXFIND(Numero_Fatura; "\b\w{4}98")
Retorna T para todos os registros com identificadores de fatura que contêm os seguintes, caso contrário,
retorna F:
l qualquer caractere nas quatro primeiras posições
l "98" na 5ª e na 6ª posições
REGEXFIND(Numero_Fatura; "\b.{4}98")
Retorna T para todos os registros com identificadores de fatura que contêm "98", precedido de 1 a 4 carac-
teres iniciais. Caso contrário, retorna F:
REGEXFIND(Numero_Fatura; "\b.{1,4}98")
Retorna 'T' para todos os registros com identificadores de fatura que contêm todos os seguintes, caso con-
trário, retorna F:
l qualquer caractere nas três primeiras posições
l "5" ou "6" na 4ª posição
l "98" na 5ª e na 6ª posições
REGEXFIND(Numero_Fatura; "\b.{3}[56]98")
Retorna T para todos os registros com identificadores de fatura que contêm todos os seguintes, caso con-
trário, retorna F:
l qualquer caractere nas duas primeiras posições
l "55" ou "56" na 3ª e na 4ª posições
l "98" na 5ª e na 6ª posições
REGEXFIND(Numero_Fatura; "\b.{2}(55|56)98")
Observações
Como funciona?
A função REGEXFIND( ) usa uma expressão regular para pesquisar dados no Analytics.
As expressões regulares são cadeias de pesquisa poderosas e flexíveis que combinam caracteres literais
e metacaracteres, que são caracteres especiais que executam uma grande variedade de operações de
pesquisa.
Por exemplo:
REGEXFIND(Sobrenome;"Sm(i|y)the{0,1}")
usa os metacaracteres de grupo ( ), alternância | e quantificação { } para criar uma expressão regular que
encontre "Smith", "Smyth", "Smithe" ou "Smythe" no campo Sobrenome.
Correspondência sequencial
A correspondência entre os valores cadeia e padrão é executada sequencialmente. No exemplo acima:
l "S" corresponde à primeira posição do campo Sobrenome
l "m" corresponde à segunda posição
l "i" e "y" correspondem à terceira posição
l "t" corresponde à quarta posição
l "h" corresponde à quinta posição
l "e" corresponde à sexta posição, se existente no valor de origem
Concatenação de campos
É possível concatenar dois ou mais campos em cadeia para pesquisar em vários campos ao mesmo
tempo.
Por exemplo:
REGEXFIND(Nome_Fornecedor+Rua_Fornecedor;”Hardware.*Central")
Metacaractere Descrição
Metacaractere Descrição
o AB-\d{2,}-YZ corresponde a qualquer identificador alfanumérico com o prefixo "AB-", o sufixo "-YZ"
e dois ou mais números no corpo do identificador
() Cria um grupo que define uma sequência ou bloco de caracteres, que pode ser tratada como uma
única unidade.
Por exemplo:
o S(ch)?mid?th? corresponde a "Smith" ou "Schmidt"
o (56A.*){2} corresponde a qualquer identificador alfanumérico em que a sequência "56A" ocorre
pelo menos duas vezes
o (56A).*-.*\1 corresponde a qualquer identificador alfanumérico em que a sequência "56A" ocorre
pelo menos duas vezes, com um hífen localizado entre duas das ocorrências
\ Caractere de escape que especifica que o caractere a seguir é um literal. Utilize o caractere de
escape para corresponder metacaracteres literalmente. Por exemplo, \( encontra um parêntesis
esquerdo, e \\ encontra uma barra invertida.
Utilize o caractere de escape se quiser corresponder literalmente qualquer um dos caracteres a
seguir:
^ $ . * + ? = ! : | \ ( ) [ ] { }
Outros caracteres de pontuação, como o e comercial (&) ou arroba (@), não exigem o caractere de
escape.
\ int Especifica que um grupo, definido previamente com parênteses ( ), é repetido. int é um inteiro que
identifica a posição sequencial do grupo previamente definido em relação a todos os outros grupos.
Esse metacaractere pode ser usado no parâmetro padrão em REGEXFIND( ) e REGEXREPLACE( ).
Por exemplo:
o (123).*\1 corresponde a qualquer identificador em que o grupo de dígitos "123" ocorre pelo
menos duas vezes
o ^(\d{3}).*\1 corresponde a qualquer identificador em que os primeiros três dígitos são repetidos
o ^(\d{3}).*\1.*\1 corresponde a qualquer identificador em que os primeiros três dígitos são repe-
tidos pelo menos duas vezes
o ^(\D)(\d)-.*\2\1 corresponde a qualquer identificador em que o prefixo alfanumérico é repetido
com os caracteres alfabéticos e numéricos invertidos
$int Especifica que um grupo encontrado em uma cadeia de destino é usado em uma cadeia de subs-
tituição. int é um inteiro que identifica a posição sequencial do grupo na cadeia de destino em rela-
Metacaractere Descrição
ção a todos os outros grupos. Esse metacaractere pode ser usado apenas no parâmetro nova_
cadeia em REGEXREPLACE( ).
Por exemplo:
o Se o padrão (\d{3})[ -]?(\d{3})[ -]?(\d{4}) for usado para corresponder diversos formatos de
número de telefone diferentes, o parâmetro nova_cadeia($1)-$2-$3 poderá ser usado para subs-
tituir os números por si mesmos e padronizar a formatação. 999 123-4567 e 9991234567 mudam
para (999)-123-4567.
| Corresponde o caractere, o bloco de caracteres ou a expressão antes ou depois da barra vertical (|)
Por exemplo:
o a|b corresponde a a ou b
o abc|def corresponde a "abc" ou "def"
o Sm(i|y)th corresponde a Smith ou Smyth
o [a-c]|[Q-S]|[x-z] corresponde a qualquer uma das letras: a, b, c, Q, R, S, x, y e z
o \s|- corresponde a um espaço ou um hífen
\D Corresponde a qualquer caractere que não seja um número (qualquer caractere que não seja um
dígito decimal)
\S Corresponde a qualquer caractere que não seja um espaço (um caractere não branco)
REGEXFIND("jsmith@example.net"; "\bexample\b")
Metacaractere Descrição
Funções relacionadas
Se você deseja encontrar e substituir padrões correspondentes, use "Função REGEXREPLACE( )" Na
página oposta.
Função REGEXREPLACE( )
Substitui todas as ocorrências de cadeias que correspondem a uma expressão regular com uma nova
cadeia.
Sintaxe
REGEXREPLACE(cadeia; padrão; nova_cadeia)
Parâmetros
Nome Tipo Descrição
cadeia caractere O campo, expressão ou valor literal a ser testado por correspondência
a um padrão.
nova_cadeia caractere A cadeia usada para substituir todos os valores que correspondem ao
padrão.
A cadeia de substituição pode conter caracteres literais, grupos de
caracteres da cadeia original (usando o elemento $int) ou uma com-
binação dos dois.
Saída
Caractere.
Exemplos
Exemplos básicos
Trabalho com espaços
Retorna "AB CD EF", substituindo um ou mais espaços entre caracteres de texto por um único espaço:
Extrai números de telefone do texto adjacente no campo Comentário e padroniza sua formatação:
REGEXREPLACE(REGEXREPLACE(REGEXREPLACE("1ABC-123aa";"\d";"9");"[a-z]";"x");"[A-Z]";
"X")
REGEXREPLACE(REGEXREPLACE(REGEXREPLACE(NumeroFatura;"\d";"9");"[a-z]";"x");"[A-Z]";
"X")
Retorna os nomes no campo Nome_Completo na ordem normal: Nome (Meio) (Meio) Sobrenome:
Nota
Dados de nome podem apresentar várias complicações, como apóstrofos nos nomes.
Para considerar todas as variações em dados de nomes, normalmente são necessárias
expressões regulares mais complexas que as mostradas no exemplo acima.
Observações
Como funciona?
A função REGEXREPLACE( ) usa uma expressão regular para encontrar padrões correspondentes nos
dados e substitui os valores correspondentes por uma nova cadeia.
Por exemplo:
padroniza o espaçamento nos dados de caracteres substituindo um ou mais espaços entre caracteres de
texto por um único espaço.
REGEXREPLACE(REGEXREPLACE("123ABC","\d","9"),"[A-Z]","X")
Retorna "9X9X9X":
REGEXREPLACE(REGEXREPLACE("1A2B3C","\d","9"),"[A-Z]","X")
Os caracteres no final da cadeia de destino são truncados primeiro, seguidos pelos caracteres no final da
cadeia de substituição. Os exemplos a seguir demonstram o truncamento:
REGEXREPLACE("x123x";"123";"ABCDE")
Retorna "xABCDEx", que inclui todos os caracteres de substituição e os caracteres atuais não substituídos:
REGEXREPLACE(SUBSTR("x123x";1;10);"123";"ABCDE")
Metacaractere Descrição
() Cria um grupo que define uma sequência ou bloco de caracteres, que pode ser tratada como uma
única unidade.
Por exemplo:
o S(ch)?mid?th? corresponde a "Smith" ou "Schmidt"
o (56A.*){2} corresponde a qualquer identificador alfanumérico em que a sequência "56A" ocorre
pelo menos duas vezes
o (56A).*-.*\1 corresponde a qualquer identificador alfanumérico em que a sequência "56A"
ocorre pelo menos duas vezes, com um hífen localizado entre duas das ocorrências
\ Caractere de escape que especifica que o caractere a seguir é um literal. Utilize o caractere de
escape para corresponder metacaracteres literalmente. Por exemplo, \( encontra um parêntesis
esquerdo, e \\ encontra uma barra invertida.
Utilize o caractere de escape se quiser corresponder literalmente qualquer um dos caracteres a
seguir:
^ $ . * + ? = ! : | \ ( ) [ ] { }
Outros caracteres de pontuação, como o e comercial (&) ou arroba (@), não exigem o caractere de
escape.
Metacaractere Descrição
\ int Especifica que um grupo, definido previamente com parênteses ( ), é repetido. int é um inteiro que
identifica a posição sequencial do grupo previamente definido em relação a todos os outros gru-
pos. Esse metacaractere pode ser usado no parâmetro padrão em REGEXFIND( ) e
REGEXREPLACE( ).
Por exemplo:
o (123).*\1 corresponde a qualquer identificador em que o grupo de dígitos "123" ocorre pelo
menos duas vezes
o ^(\d{3}).*\1 corresponde a qualquer identificador em que os primeiros três dígitos são repetidos
o ^(\d{3}).*\1.*\1 corresponde a qualquer identificador em que os primeiros três dígitos são repe-
tidos pelo menos duas vezes
o ^(\D)(\d)-.*\2\1 corresponde a qualquer identificador em que o prefixo alfanumérico é repetido
com os caracteres alfabéticos e numéricos invertidos
$int Especifica que um grupo encontrado em uma cadeia de destino é usado em uma cadeia de subs-
tituição. int é um inteiro que identifica a posição sequencial do grupo na cadeia de destino em rela-
ção a todos os outros grupos. Esse metacaractere pode ser usado apenas no parâmetro nova_
cadeia em REGEXREPLACE( ).
Por exemplo:
o Se o padrão (\d{3})[ -]?(\d{3})[ -]?(\d{4}) for usado para corresponder diversos formatos de
número de telefone diferentes, o parâmetro nova_cadeia($1)-$2-$3 poderá ser usado para subs-
tituir os números por si mesmos e padronizar a formatação. 999 123-4567 e 9991234567
mudam para (999)-123-4567.
\D Corresponde a qualquer caractere que não seja um número (qualquer caractere que não seja um
dígito decimal)
Metacaractere Descrição
\S Corresponde a qualquer caractere que não seja um espaço (um caractere não branco)
REGEXFIND("jsmith@example.net"; "\bexample\b")
Funções relacionadas
Se você quiser encontrar padrões correspondentes sem substituí-los, use "Função REGEXFIND( )" Na
página 745.
Função REMOVE( )
Retorna uma cadeia que inclui apenas os caracteres especificados.
Sintaxe
REMOVE(cadeia; caracteres_válidos)
Parâmetros
Nome Tipo Descrição
Saída
Caractere.
Exemplos
Exemplos básicos
Retorna "ABC123 ":
Retorna "ABC123XX ":
Retorna "1234 ":
Retorna todos os valores do campo Número_Produto, com todos os caracteres não numéricos excluídos:
REMOVE(Número_produto;"0123456789")
Observações
Nota
A função REMOVE( ) foi substituída pelas funções INCLUDE( ) e EXCLUDE( ).
REMOVE( ) ainda está disponível na versão atual do Analytics para compatibilidade com
versões anteriores.
Como funciona?
A função REMOVE( ) elimina os caracteres indesejados de dados da cadeia e retorna uma cadeia de
comprimento fixo.
REMOVE(UPPER("id#94022"); "ID0123456789")
Funções relacionadas
A função REMOVE( ) é similar à função INCLUDE( ), com a seguinte diferença:
l REMOVE( ) adiciona espaços em branco no fim do resultado para substituir os caracteres que foram
removidos. O comprimento da cadeia original é mantido.
l INCLUDE( ) não adiciona espaços em branco.
Função REPEAT( )
Retorna uma cadeia que repete uma subcadeia por um número especificado de vezes.
Sintaxe
REPEAT(cadeia; quantidade)
Parâmetros
Nome Tipo Descrição
quantidade numérico O número de vezes que o valor da cadeia deve ser repetido.
Saída
Caractere.
Exemplos
Exemplos básicos
Retorna "ABCABCABC":
REPEAT("ABC";3)
Retorna "000000000":
REPEAT("0";9)
Observações
Quando usar REPEAT( )
Use REPEAT( ) para inicializar uma variável com valores constantes ou brancos ou para configurar um
valor padrão para um campo calculado.
Função REPLACE( )
Substitui todas as instâncias de uma cadeia de caracteres especificada por uma nova cadeia de carac-
teres.
Sintaxe
REPLACE(cadeia; texto_anterior; texto_novo)
Parâmetros
Nome Tipo Descrição
texto_novo caractere O texto com que o valor no texto_anterior deve ser substituído.
Saída
Caractere.
Exemplos
Exemplos básicos
Retorna "a12345efg":
REPLACE("abcdefg";"bcd";"12345")
Retorna "Rd.":
REPLACE("Road";"Road";"Rd.")
Retorna "ac":
REPLACE("abc";"b";"")
Exemplos avançados
Remoção de caracteres específicos
Use REPLACE( ) para remover uma cadeia de caracteres especificada de uma cadeia de origem, subs-
tituindo-a por uma cadeia de caracteres vazia ("").
Retorna "1234 Scott":
O comprimento do campo não é aumentado automaticamente nas substituições subsequentes, o que pos-
sibilita truncamento se o campo não é grande o suficiente para acomodar todos os novos caracteres.
Retorna "9ABC9A":
Para evitar truncamento, você pode aumentar o comprimento de cadeia usando a função BLANKS( ) ou
espaços em branco literais.
Retorna "9ABC9ABC":
Se a cadeia resultante for menor que cadeia, a cadeia resultante será preenchida com espaços em branco
para manter o mesmo comprimento do campo.
Retorna "9X9 ":
Observações
Como funciona?
A função REPLACE( ) substitui cada instância de uma cadeia existente por uma nova cadeia.
Retorna "1234 Scott Road":
A adição de um espaço à esquerda e à direita do valor do texto_anterior (" rd ") evita que a função subs-
titua instâncias em que "rd" ocorre em um nome, porque nesses casos não há espaços à esquerda.
Retorna "645 Richard Road":
Função REVERSE( )
Retorna uma cadeia com os caracteres na ordem invertida.
Sintaxe
REVERSE(cadeia)
Parâmetros
Nome Tipo Descrição
Saída
Caractere.
Exemplos
Exemplos básicos
Retorna "E DCBA":
REVERSE("ABCD E")
Função RJUSTIFY( )
Retorna uma cadeia alinhada à direita com o mesmo comprimento que a cadeia especificada, com todos os
espaços finais movidos para a esquerda da cadeia.
Sintaxe
RJUSTIFY(cadeia)
Parâmetros
Nome Tipo Descrição
Saída
Caractere.
Exemplos
Exemplos básicos
Retorna " ABC":
RJUSTIFY("ABC ")
Observações
Quando usar RJUSTIFY( )
Use a função RJUSTIFY( ) para alinhar um campo de caracteres à direita.
Função RLOGICAL( )
Retorna um valor lógico calculado por uma função ou script do R. O processamento de dados no R é
externo ao Analytics.
Sintaxe
RLOGICAL(scriptR|códigoR <;campo|valor <;...n>>)
Parâmetros
Nome Tipo Descrição
campo | valor <,...n> caractere A lista de campos, expressões ou valores literais para usar como
argumentos para o script ou snippet de código do R.
opcional numérico
Os valores são passados para a função chamada na ordem em que
datahora
são especificados e são referenciados usando valor1, valor2 ...
lógico valorN no código do R.
Você pode incluir o número de argumentos necessário para atender
à definição da função no script do R.
Nota
Use a função ALLTRIM( ) para remover todos os espa-
ços à esquerda ou à direita de entradas de caracteres:
ALLTRIM(cadeia). Para obter mais informações, con-
sulte "Função ALLTRIM( )" Na página 479.
Saída
Lógico.
Exemplos
Exemplos básicos
Retorna T:
Exemplos avançados
Uso de um script do R externo
Aceita um valor, um limite superior e um limite inferior. A função retorna um valor de verdade com base em
uma série de comparações lógicas:
Observações
Retorno de uma data do R
Ao chamar scripts do R, use a função origem e atribua o objeto retornado a uma variável. Desse modo,
você pode acessar o valor retornado da função do R no objeto retornado:
Arquivo de log R
O Analytics registra em log as mensagens da linguagem R no arquivo aclrlan.log na pasta do pro-
jeto. Use esse arquivo de log para depurar erros do R.
Dica
O arquivo de log está disponível na pasta Resultados das tarefas de análise do Analytics
Exchange.
Função RNUMERIC( )
Retorna um valor numérico calculado por uma função ou script do R. O processamento de dados no R é
externo ao Analytics.
Sintaxe
RNUMERIC(scriptR|códigoR; decimais <;campo|valor <;...n>>)
Parâmetros
Nome Tipo Descrição
decimais numérico O número de casas decimais a incluir no valor retornado. Deve ser um
inteiro positivo.
campo | valor <,...n> caractere A lista de campos, expressões ou valores literais para usar como argu-
mentos para o script ou snippet de código do R.
opcional numérico
Os valores são passados para a função chamada na ordem em que
datahora
são especificados e são referenciados usando valor1, valor2 ... valorN
lógico no código do R.
Você pode incluir o número de argumentos necessário para atender à
definição da função no script do R.
Nota
Use a função ALLTRIM( ) para remover todos os espa-
ços à esquerda ou à direita de entradas de caracteres:
ALLTRIM(cadeia). Para obter mais informações, con-
sulte "Função ALLTRIM( )" Na página 479.
Saída
Numérico.
Exemplos
Exemplos básicos
Retorna 100 com 10 decimais (100,0000000000):
Exemplos avançados
Armazenamento de código do R como variável
Retorna 100 com 10 decimais (100,0000000000):
Observações
Retorno de uma data do R
Ao chamar scripts do R, use a função origem e atribua o objeto retornado a uma variável. Desse modo,
você pode acessar o valor retornado da função do R no objeto retornado:
Arquivo de log R
O Analytics registra em log as mensagens da linguagem R no arquivo aclrlan.log na pasta do pro-
jeto. Use esse arquivo de log para depurar erros do R.
Dica
O arquivo de log está disponível na pasta Resultados das tarefas de análise do Analytics
Exchange.
Função ROOT( )
Retorna a raiz quadrada de uma expressão numérica.
Sintaxe
ROOT(número; decimais)
Parâmetros
Nome Tipo Descrição
Saída
Numérico.
Exemplos
Exemplos básicos
Retorna 10,00:
ROOT(100; 2)
Retorna 31,6228:
ROOT(1000; 4)
Observações
Como funciona?
A função ROOT( ) retorna a raiz quadrada da expressão numérica ou valor de campo com o número espe-
cificado de casas decimais. O resultado é devidamente arredondado.
Função ROUND( )
Retorna um número inteiro arredondado para um valor numérico.
Sintaxe
ROUND(número)
Parâmetros
Nome Tipo Descrição
Saída
Numérico.
Exemplos
Exemplos básicos
Retorna 7:
ROUND(7,2)
Retorna 8:
ROUND(7,5)
Retorna -8:
ROUND(-7.5)
Exemplos avançados
Arredondamento de valores monetários
Cria um campo que represente o saldo arredondado para o valor de dólar mais próximo:
Observações
Como funciona?
ROUND( ) retorna um número igual ao valor de número arredondado para o inteiro mais próximo:
ROUND(número)
equivale a:
DEC(número, 0)
Função RSTRING( )
Retorna um valor de cadeia calculado por uma função ou script do R. O processamento de dados no R é
externo ao Analytics.
Sintaxe
RSTRING(scriptR|códigoR; comprimento <;campo|valor <;...n>>)
Parâmetros
Nome Tipo Descrição
campo | valor <,...n> caractere A lista de campos, expressões ou valores literais para usar como
argumentos para o script ou snippet de código do R.
opcional numérico
Os valores são passados para a função chamada na ordem em que
datahora
são especificados e são referenciados usando valor1, valor2 ...
lógico valorN no código do R.
Você pode incluir o número de argumentos necessário para atender
à definição da função no script do R.
Nota
Use a função ALLTRIM( ) para remover todos os espa-
ços à esquerda ou à direita de entradas de caracteres:
ALLTRIM(cadeia). Para obter mais informações, con-
sulte "Função ALLTRIM( )" Na página 479.
Saída
Caractere.
Exemplos
Exemplos básicos
Retorna "abc123":
RSTRING("print(paste(value1,value2,sep=""))",6,"abc","123")
Exemplos avançados
Uso de um script do R externo
Concatena x e y em uma única cadeia delimitada por um caractere espaço:
Dica
Para instalar o pacote uuid, abra o R.exe e execute o seguinte comando:
install.packages("uuid")
Observações
Retorno de uma data do R
Ao chamar scripts do R, use a função origem e atribua o objeto retornado a uma variável. Desse modo,
você pode acessar o valor retornado da função do R no objeto retornado:
Arquivo de log R
O Analytics registra em log as mensagens da linguagem R no arquivo aclrlan.log na pasta do pro-
jeto. Use esse arquivo de log para depurar erros do R.
Dica
O arquivo de log está disponível na pasta Resultados das tarefas de análise do Analytics
Exchange.
Função RTIME( )
Retorna um valor de hora calculado por uma função ou script do R. O processamento de dados no R é
externo ao Analytics.
Sintaxe
RTIME(scriptR|códigoR <;campo|valor <;...n>>)
Parâmetros
Nome Tipo Descrição
campo | valor <,...n> caractere A lista de campos, expressões ou valores literais para usar como argu-
mentos para o script ou snippet de código do R.
opcional numérico
Os valores são passados para a função chamada na ordem em que
datahora
são especificados e são referenciados usando valor1, valor2 ... valorN
lógico no código do R.
Você pode incluir o número de argumentos necessário para atender à
definição da função no script do R.
Nota
Use a função ALLTRIM( ) para remover todos os espa-
ços à esquerda ou à direita de entradas de caracteres:
ALLTRIM(cadeia). Para obter mais informações, con-
sulte "Função ALLTRIM( )" Na página 479.
Saída
Datahora.
Exemplos
Exemplos básicos
Retorna `t0545`:
RTIME("value1+2700",`t0500`)
Exemplos avançados
Uso de um script do R externo
Adiciona 45 minutos a um campo de hora, passando um campo e um valor literal a uma função do R
externa:
Observações
Retorno de uma data do R
Ao chamar scripts do R, use a função origem e atribua o objeto retornado a uma variável. Desse modo,
você pode acessar o valor retornado da função do R no objeto retornado:
Arquivo de log R
O Analytics registra em log as mensagens da linguagem R no arquivo aclrlan.log na pasta do pro-
jeto. Use esse arquivo de log para depurar erros do R.
Dica
O arquivo de log está disponível na pasta Resultados das tarefas de análise do Analytics
Exchange.
Função SECOND( )
Extrai os segundos de uma hora ou datahora específica e retorna como valor numérico.
Sintaxe
SECOND(hora/datahora)
Parâmetros
Nome Tipo Descrição
hora/datahora datahora O campo, expressão ou valor literal do qual serão extraídos os segun-
dos.
Saída
Numérico.
Exemplos
Exemplos básicos
Retorna 30:
SECOND(`t235930`)
SECOND(`20141231 235930`)
SECOND(Ligue_para_a_hora_de_início)
Observações
Detalhes do parâmetro
Um campo especificado para hora/datahora pode usar qualquer formato de data ou datahora, desde que a
definição do campo defina corretamente o formato.
Especificação de uma hora literal ou de um valor datahora
Ao especificar um valor literal de hora ou datahora para hora/datahora, você fica restrito aos formatos na
tabela abaixo e o valor deve estar entre apóstrofos invertidos – por exemplo, `20141231 235959`.
Não use separadores como barras (/) ou dois pontos (:) entre os componentes individuais de datas ou
horas.
l Valores de hora – você pode usar qualquer dos formatos de hora listados na tabela abaixo. Você
deve usar um separador antes de um valor de hora independente para que a função funcione cor-
retamente. Os separadores válidos são as letras 't' ou 'T'. As horas devem ser especificadas usando
o relógio de 24 horas. Os ajustes do Tempo Universal Coordenado (UTC) devem ser precedidos por
um sinal de mais (+) ou de menos (-).
l Valores de datahora – você pode usar qualquer combinação de formatos de data, separador e hora
listados na tabela abaixo. A data deve preceder a hora e um separador deve ser usado entre os dois.
Os separadores válidos são um único espaço em branco ou as letras 't' ou 'T'.
thhmmss `t235959`
Thhmm `T2359`
AAAAMMDD hhmmss `20141231 235959`
AAMMDDthhmm `141231t2359`
AAAAMMDDThh `20141231T23`
AAAAMMDD hhmmss+/-hhmm `20141231 235959-0500`
(ajuste UTC)
AAMMDD hhmm+/-hh `141231 2359+01`
(ajuste UTC)
Nota
Não use somente hh no formato de hora
principal com dados que têm um ajuste
UTC. Por exemplo, evite: hh+hhmm. Os
resultados podem ser não confiáveis.
Função SHIFT( )
Retorna uma cadeia de caracteres única, com os bits do primeiro caractere do valor de entrada des-
locados para a esquerda ou direita.
Sintaxe
SHIFT(caractere; número_de_bits_à_esquerda)
Parâmetros
Nome Tipo Descrição
número_de_bits_à_ numérico Especifica por qual número de bits o valor de caractere deve ser des-
esquerda locado.
o Se o valor for positivo:, caractere será deslocado para a esquerda
o Se o valor for negativo:, caractere será deslocado para a direita
Se o valor especificado for maior do que 15 ou menor que -15, o
resultado será zero binário, CHR(0).
Saída
Caractere.
Exemplos
Exemplos básicos
Retorna a letra "X" ou CHR(88) (00010110 torna-se 01011000):
SHIFT(CHR(22); 2)
SHIFT(CHR(16); -1)
SHIFT(CHR(155); 5)
Observações
Quando usar SHIFT( )
Use SHIFT( ) juntamente com as funções BYTE( ), CHR( ) e MASK( ) para isolar e deslocar bits individuais
de um registro.
Função SIN( )
Retorna o seno de um ângulo expresso em radianos, com uma precisão de 15 casas decimais.
Sintaxe
SIN(radianos)
Parâmetros
Nome Tipo Descrição
Saída
Numérico.
Exemplos
Exemplos básicos
Retorna 0,500000000000000 (o seno do número específico de radianos, equivalente a 30 graus):
SIN(0,523598775598299)
SIN(30 * PI( )/180)
Exemplos avançados
Uso de graus como entrada
Retorna 0,500 (o seno de 30 graus, arredondado para 3 casas decimais):
DEC(SIN(30 * PI( )/180);3)
Observações
Realizando o Teste de Arco de Mantissa
As três funções trigonométricas no Analytics – SIN( ), COS( ) e TAN( ) – são compatíveis com a realização
do Teste de Arco de Mantissa associado à Lei de Benford.
Função SOUNDEX( )
Retorna o código soundex para a cadeia especificada, que pode ser usado para comparações fonéticas
com outras cadeias.
Sintaxe
SOUNDEX(nome)
Parâmetros
Nome Tipo Descrição
Saída
Caractere. Retorna um código soundex de quatro caracteres.
Exemplos
Exemplos básicos
Palavras com a mesma pronúncia, mas grafadas de forma diferente
Os dois exemplos abaixo retornam o mesmo código soundex porque têm som igual, embora a grafia seja
diferente.
Retorna F634:
SOUNDEX("Fairdale")
Retorna F634:
SOUNDEX("Faredale")
SOUNDEX("Jonson")
Retorna J523:
SOUNDEX("Jonston")
SOUNDEX("Smith")
Retorna M235:
SOUNDEX("MacDonald")
Entrada de campo
Retorna o código soundex para cada valor no campo Sobrenome:
SOUNDEX(Sobrenome)
Exemplos avançados
Identificação de códigos soundex correspondentes
Crie o campo calculado Código_Soundex para exibir o código soundex para cada valor do campo Sobre-
nome:
Adicione o campo calculado Código_Soundex à exibição e execute um teste de duplicidades no campo cal-
culado para identificar os códigos soundex correspondentes:
Códigos soundex correspondentes indicam que os valores de caracteres associados no campo Sobre-
nome são possíveis duplicidades.
Observações
Quando usar SOUNDEX( )
Use a função SOUNDEX( ) para encontrar valores com som similar. Semelhança fonética é um modo de
localizar os possíveis valores duplicados, ou ortografia inconsistente em dados inseridos manualmente.
Como funciona?
SOUNDEX( ) retorna o código de Soundex americano para a cadeia avaliada. Todos os códigos são de
uma letra seguida de três números. Por exemplo: "F634".
Funções relacionadas
l SOUNDSLIKE( ): um método alternativo para comparação fonética de cadeias.
l ISFUZZYDUP( ) e LEVDIST( ): comparam cadeias com base em uma comparação ortográfica
(ortografia), em vez de uma comparação fonética (som).
l DICECOEFFICIENT( ): não prioriza ou ignora completamente a posição relativa de caracteres ou
blocos de caracteres durante a comparação de cadeias.
Função SOUNDSLIKE( )
Retorna um valor lógico que indica se uma cadeia corresponde foneticamente à cadeia de comparação.
Sintaxe
SOUNDSLIKE(nome; soa_como_nome)
Parâmetros
Nome Tipo Descrição
Saída
Lógico. Retorna T (verdadeiro), se os valores comparado corresponderem foneticamente e F, caso con-
trário.
Exemplos
Exemplos básicos
Retorna T porque tanto "Fairdale" quanto "Faredale" têm um código soundex F634:
SOUNDSLIKE("Fairdale";"Faredale")
Retorna F porque "Jonson" tem um código soundex J525 e "Jonston" tem um código soundex J523:
SOUNDSLIKE("Jonson";"Jonston")
Retorna um valor lógico (T ou F), indicando se o código soundex para cada valor no campo Sobrenome
corresponde ao código soundex da cadeia "Smith":
SOUNDSLIKE(Sobrenome;"Smith")
Exemplos avançados
Isolamento de valores que soma como "Smith"
Crie um filtro que isole todos os valores no campo Sobrenome que soem como "Smith":
Observações
Quando usar SOUNDSLIKE( )
Use a função SOUNDLIKE( ) para encontrar valores com som similar. Semelhança fonética é um modo de
localizar os possíveis valores duplicados, ou ortografia inconsistente em dados inseridos manualmente.
Como funciona?
SOUNDSLIKE( ) converte as cadeias de comparação em códigos Soundex americanos de quatro carac-
teres, que se baseiam na primeira letra e nas primeiras três consoantes após a primeira letra, em cada
cadeia.
A função então compara o código de cada cadeia e retorna um valor lógico indicando se eles são cor-
respondentes.
Para obter mais informações sobre códigos soundex, consulte "Função SOUNDEX( )" Na página 794.
Funções relacionadas
l SOUNDEX( ): um método alternativo para comparação fonética de cadeias.
l ISFUZZYDUP( ) e LEVDIST( ): comparam cadeias com base em uma comparação ortográfica
(ortografia), em vez de uma comparação fonética (som).
l DICECOEFFICIENT( ): não prioriza ou ignora completamente a posição relativa de caracteres ou
blocos de caracteres durante a comparação de cadeias.
Função SPLIT( )
Retorna um segmento especificado de uma cadeia.
Sintaxe
SPLIT(cadeia; separador; segmento <;qualificador_de_texto>)
Parâmetros
Nome Tipo Descrição
Saída
Caractere.
Exemplos
Exemplos básicos
Segmentos delimitados por vírgula
Retorna "seg1":
SPLIT("seg1,seg2,seg3"; ","; 1)
Retorna "seg3":
SPLIT("seg1,seg2,seg3"; ","; 3)
SPLIT("seg1,seg2,,seg4"; ","; 3)
SPLIT("seg1/*seg2/*seg3"; "/*"; 3)
Retorna "Doe":
Exemplos avançados
Extrair dígitos de um número de cartão de crédito
Use o comando SPLIT( ) para remover hifens de um número de cartão de crédito.
Variáveis são utilizadas para capturar cada segmento do número de cartão de crédito e os segmentos são
concatenados em uma variável adicional.
Observações
Como funciona?
A função SPLIT ( ) quebra os dados de caractere em segmentos baseados em separadores, como espa-
ços e vírgulas, e retorna um segmento especificado.
SPLIT("seg1,seg2,seg3"; ","; 1)
Se a cadeia de origem começar com um separador, o segmento a seguir será tratado como o segmento 2.
Retorna "seg1":
SPLIT(",seg1,seg2,seg3"; ";", 2)
Funções relacionadas
SPLIT( ) e SUBSTR( ) retornam um segmento de dados de uma cadeia de origem maior.
l SPLIT( ) identifica o segmento de acordo com um caractere separador.
l SPLIT( ) identifica o segmento de acordo com uma posição de caractere numérica.
Função STOD( )
Converte uma data serial, ou seja, uma data expressa como um inteiro, em um valor de data. É abreviação
de "Serial to Date".
Sintaxe
STOD(data_serial <;data_inicial>)
Parâmetros
Nome Tipo Descrição
data_inicial datahora A data inicial usada para cálculo de datas seriais. Se for omitido, a
data inicial padrão de 1º de janeiro de 1900 é aplicada.
opcional
Saída
Datahora. O valor de data resultante usa o formato de exibição de data atual do Analytics.
Exemplos
Exemplos básicos
Retorna `20141231` exibido como 31 Dez 2014 presumindo um formato de exibição atual de data do Analy-
tics de DD MMM AAAA:
STOD(42003)
Retorna `20181231` exibido como 31 Dez 2018 presumindo um formato de exibição atual de data do Analy-
tics de DD MMM AAAA:
STOD(42003; `19040101`)
STOD(Data_fatura)
Exemplos avançados
Ajuste para data inicial anterior a 1900-01-01
Use aritmética de datas para ajustar a data inicial para um valor anterior à data mínima do Analytics, 1 de
janeiro de 1900:
1. Converta a data serial usando a data de início padrão.
2. Subtraia o número de dias antes de 1900-01-01 referentes a data de início real.
Para usar 1899-01-01 como a data inicial (avaliada como `20131231`):
STOD(42003) - 365
Observações
Como funciona?
A função STOD( ) permite converter datas seriais em datas normais. As datas seriais do Analytics repre-
sentam o número de dias decorridos desde 1º de janeiro de 1900.
1 2 de janeiro de 1900
0 inválido
Para obter mais informações sobre datas seriais, consulte Datahoras seriais.
Ponto de similaridade
Tanto o Analytics quanto o Excel tratam o ano 1900 como um ano bissexto, com 366 dias. Embora 1900
não tenha sido realmente um ano bissexto, o Excel considera o ano bissexto para manter a compatibilidade
com o Lotus 1-2-3.
Ponto de diferença
As datas seriais do Analytics são deslocadas em um dia em relação às datas seriais do Excel. No Excel, 1º
de janeiro de 1900 corresponde à data serial '1'. No Analytics, 1º de janeiro de 1900 não é contado e 2 de
janeiro de 1900 corresponde à data serial '1'.
A data_inicial
Alguns arquivos de dados de origem podem usar uma data inicial diferente de 1º de janeiro de 1900. A
data_inicial permite corresponder a data de início em um arquivo de dados de origem. A data de início é a
data a partir da qual as datas seriais são calculadas.
Data de início
em um
arquivo de
dados de ori-
gem Especifique: Detalhes
STODT( ) Converte uma datahora serial, ou seja, uma datahora expressa como um inteiro e uma fração
de 24 horas, em um valor de datahora. É abreviação de "Serial to Datetime".
STOT( ) Converte uma hora em série, ou seja, uma hora expressa como uma fração de 24 horas,
sendo 24 horas representando 1, para um valor de hora. Abreviação de "Série para hora".
CTOD( ) Converte um valor em caractere ou numérico de data em uma data. Também é possível
extrair a data de um valor de datahora em formato de caracteres ou numérico e retorná-lo
como uma data. Abreviação de "Caractere para Data".
CTOT( ) Converte um valor em caractere ou numérico de hora em uma hora. Também é possível
extrair a hora de um valor de datahora em formato de caracteres ou numérico e retorná-lo
como uma hora. Abreviação de "Caractere para Hora".
DATE( ) Extrai a data a partir de uma data ou datahora específica e retorna como sequência de carac-
teres. Também pode retornar a data atual do sistema operacional.
DATETIME( ) Converte uma datahora em uma sequência de caracteres. Também pode retornar a datahora
atual do sistema operacional.
TIME( ) Extrai a hora a partir de uma hora ou datahora específica e retorna como sequência de carac-
teres. Também pode retornar a hora atual do sistema operacional.
Função STODT( )
Converte uma datahora serial, ou seja, uma datahora expressa como um inteiro e uma fração de 24 horas,
em um valor de datahora. É abreviação de "Serial to Datetime".
Sintaxe
STODT(datahora_serial <;data_inicial>)
Parâmetros
Nome Tipo Descrição
data_inicial datahora A data inicial usada para cálculo de datas seriais. Se for omitido, a
data inicial padrão de 1º de janeiro de 1900 é aplicada.
opcional
Saída
Datahora. O valor de datahora nos resultados é mostrado usando os formatos atuais de exibição de data e
hora do Analytics.
Exemplos
Exemplos básicos
Datas iniciais não ajustadas
Retorna `20141231t060000` exibido como 31 Dez 2014 06:00:00 AM presumindo formatos de exibição atu-
ais de data e hora do Analytics de DD MMM AAAA e hh:mm:ss PM:
STODT(42003,25000)
Retorna `20141231t191530` exibido como 31 Dez 2014 07:15:30 PM presumindo formatos de exibição
atuais de data e hora do Analytics de DD MMM AAAA e hh:mm:ss PM:
STODT(42003,802431)
STODT(42003,50000; `19040101`)
STODT(Data_e_hora_do_recebimento)
Exemplos avançados
Ajuste para data inicial anterior a 1900-01-01
Use aritmética de datas para ajustar a data inicial para um valor anterior à data mínima do Analytics, 1 de
janeiro de 1900:
1. Converta a datahora serial usando a data de início padrão.
2. Subtraia o número de dias antes de 1900-01-01 referentes a data de início real.
Para usar 1899-01-01 como a data inicial (avaliada como `20131231t180000`):
STODT(42003,75000) - 365
Observações
Como funciona?
A função STODT( ) permite converter datahoras seriais em datahoras normais. As datahoras seriais do
Analytics representam o número de dias decorridos desde 1º de janeiro de 1900 e, após o ponto decimal,
representam uma fração de 24 horas, com 24 horas equivalendo a 1.
0,0 inválido
Para obter mais informações sobre datahoras seriais, consulte Datahoras seriais.
Ponto de similaridade
Tanto o Analytics quanto o Excel tratam o ano 1900 como um ano bissexto, com 366 dias. Embora 1900
não tenha sido realmente um ano bissexto, o Excel considera o ano bissexto para manter a compatibilidade
com o Lotus 1-2-3.
Ponto de diferença
As datas seriais do Analytics são deslocadas em um dia em relação às datas seriais do Excel. No Excel, 1º
de janeiro de 1900 corresponde à data serial '1'. No Analytics, 1º de janeiro de 1900 não é contado e 2 de
janeiro de 1900 corresponde à data serial '1'.
A data_inicial
Alguns arquivos de dados de origem podem usar uma data inicial diferente de 1º de janeiro de 1900. A
data_inicial permite corresponder a data de início em um arquivo de dados de origem. A data de início é a
data a partir da qual as datahoras seriais são calculadas.
Data de início
em um
arquivo de
dados de ori-
gem Especifique: Detalhes
STOD( ) Converte uma data serial, ou seja, uma data expressa como um inteiro, em um valor de data.
É abreviação de "Serial to Date".
STOT( ) Converte uma hora em série, ou seja, uma hora expressa como uma fração de 24 horas,
sendo 24 horas representando 1, para um valor de hora. Abreviação de "Série para hora".
CTOD( ) Converte um valor em caractere ou numérico de data em uma data. Também é possível
extrair a data de um valor de datahora em formato de caracteres ou numérico e retorná-lo
como uma data. Abreviação de "Caractere para Data".
CTOT( ) Converte um valor em caractere ou numérico de hora em uma hora. Também é possível
extrair a hora de um valor de datahora em formato de caracteres ou numérico e retorná-lo
como uma hora. Abreviação de "Caractere para Hora".
DATE( ) Extrai a data a partir de uma data ou datahora específica e retorna como sequência de carac-
teres. Também pode retornar a data atual do sistema operacional.
DATETIME( ) Converte uma datahora em uma sequência de caracteres. Também pode retornar a datahora
atual do sistema operacional.
TIME( ) Extrai a hora a partir de uma hora ou datahora específica e retorna como sequência de carac-
teres. Também pode retornar a hora atual do sistema operacional.
Função STOT( )
Converte uma hora em série, ou seja, uma hora expressa como uma fração de 24 horas, sendo 24 horas
representando 1, para um valor de hora. Abreviação de "Série para hora".
Sintaxe
STOT(hora_em_série)
Parâmetros
Nome Tipo Descrição
Saída
Datahora. O valor de hora nos resultados é mostrado usando o formato de exibição de hora atual do
Analytics.
Exemplos
Exemplos básicos
Retorna `t060000` exibido como 06:00:00 AM presumindo um formato de exibição atual da hora do Analy-
tics de hh:mm:ss PM:
STOT(0,25000)
Retorna `t191530` exibido como 07:15:30 PM presumindo um formato de exibição atual da hora do Analy-
tics de hh:mm:ss PM:
STOT(0,802431)
Retorna a hora normal equivalente para cada valor de hora serial no campo Hora_login:
STOT(Hora_login)
Observações
Quando usar STOT( )
Use a função STOT( ) para converter horas seriais em horas regulares.
0,00 12:00:00 AM
0,0006945 12:01:00 AM
0,04167 01:00:00 AM
0,0423645 01:01:00 AM
0,042998 01:01:55 AM
0,25 06:00:00 AM
0,50 12:00:00 PM
0,75 06:00:00 PM
0,79167 07:00:00 PM
0,802431 07:15:30 PM
1,00 12:00:00 AM
STOD( ) Converte uma data serial, ou seja, uma data expressa como um inteiro, em um valor de data.
É abreviação de "Serial to Date".
STODT( ) Converte uma datahora serial, ou seja, uma datahora expressa como um inteiro e uma fração
de 24 horas, em um valor de datahora. É abreviação de "Serial to Datetime".
CTOD( ) Converte um valor em caractere ou numérico de data em uma data. Também é possível
extrair a data de um valor de datahora em formato de caracteres ou numérico e retorná-lo
como uma data. Abreviação de "Caractere para Data".
CTOT( ) Converte um valor em caractere ou numérico de hora em uma hora. Também é possível
extrair a hora de um valor de datahora em formato de caracteres ou numérico e retorná-lo
como uma hora. Abreviação de "Caractere para Hora".
DATE( ) Extrai a data a partir de uma data ou datahora específica e retorna como sequência de carac-
Função Descrição
DATETIME( ) Converte uma datahora em uma sequência de caracteres. Também pode retornar a datahora
atual do sistema operacional.
TIME( ) Extrai a hora a partir de uma hora ou datahora específica e retorna como sequência de carac-
teres. Também pode retornar a hora atual do sistema operacional.
Função STRING( )
Converte um valor numérico em uma sequência de caracteres.
Sintaxe
STRING(número; comprimento <;formato>)
Parâmetros
Nome Tipo Descrição
formato caractere A formatação a ser aplicada à cadeia de saída. Por exemplo, "
(9.999,99)"
opcional
Saída
Caractere.
Exemplos
Exemplos básicos
Cadeias não formatadas
Retorna " 125,2":
STRING(125,2; 6)
Retorna "25,2" (-1 é truncado, porque o comprimento é menor do que o número de dígitos e caracteres de
formatação em número):
STRING(-125,2; 4)
STRING(-125,2; 7)
Cadeias formatadas
Retorna " (125,20)":
Retorna "25,20" (1 é truncado, porque o comprimento é menor do que o número de dígitos e caracteres de
formatação em número):
STRING(125,2; 6; "(9.999,99)")
Entrada de campo
Retorna valores numéricos do campo Número_Funcionário como cadeias de caracteres com um com-
primento de 10 caracteres. Se necessário, o valor de retorno é completado ou truncado:
STRING(Número_Funcionário, 10)
Observações
Valores de retorno preenchidos e truncados
STRING( ) converte o número em uma cadeia de caracteres de comprimento especificada em com-
primento:
l Se o número for mais curto que comprimento, espaços à esquerda serão adicionados ao valor retor-
nado
l Se o número for mais longo do que o comprimento, o valor retornado será truncado do lado
esquerdo
formatação, como símbolos de dólar e colchetes para os números negativos, ao especificar o valor para o
comprimento.
Funções relacionadas
A função STRING( ) é o inverso da VALUE( ), que converte dados de caracteres em dados numéricos.
Função SUBSTR( )
Retorna uma subcadeia especificada de uma cadeia.
Sintaxe
SUBSTR(cadeia; início; comprimento)
Parâmetros
Nome Tipo Descrição
Saída
Caractere.
Exemplos
Exemplos básicos
Entrada de caracteres literais
Retorna "BCD":
SUBSTR("ABCDEF"; 2; 3)
Retorna "EF":
SUBSTR("ABCDEF"; 5; 10)
SUBSTR("***189543***"; 4; 6)
Retorna o ano de quatro dígitos de um campo de caracteres contendo datas formatadas como
"MM/DD/AAAA":
SUBSTR(DATE; 7; 4)
Exemplos avançados
Aumento do comprimento do campo
Use SUBSTR( ) para aumentar o comprimento de um campo de caracteres. O aumento do comprimento
de um campo é uma tarefa normal de harmonização que pode ser necessária antes de associar ou ane-
xar dois campos.
O exemplo abaixo preenche o campo Descrição_Produto com espaços em branco para criar o campo
calculado Descrição_Produto_Longa com um comprimento de 50 caracteres.
Observações
Como funciona?
A função SUBSTR( ) retorna caracteres do valor cadeia a partir da posição de caractere especificada por
início. O número de caracteres retornados é especificado pelo comprimento.
Nota
Mesmo que SUBSTR( ) especifique um comprimento de 50 caracteres, a saída será limi-
tada ao comprimento do campo Descrição_Produto.
Funções relacionadas
SUBSTR( ) e SPLIT( ) retornam um segmento de dados de uma cadeia de origem maior.
l SPLIT( ) identifica o segmento de acordo com uma posição de caractere numérica.
l SPLIT( ) identifica o segmento de acordo com um caractere separador.
Função TAN( )
Retorna a tangente de um ângulo expresso em radianos, com uma precisão de 15 casas decimais.
Sintaxe
TAN(radianos)
Parâmetros
Nome Tipo Descrição
Saída
Numérico.
Exemplos
Exemplos básicos
Retorna 0,999999999999999 (a tangente do número especificado de radianos, equivalente a 45 graus):
TAN(0,785398163397448)
TAN(45 * PI( )/180)
Exemplos avançados
Uso de graus como entrada
Retorna 1,000 (a tangente de 45 graus, arredondada para 3 casas decimais):
DEC(TAN(45 * PI( )/180);3)
Observações
Realizando o Teste de Arco de Mantissa
As três funções trigonométricas no Analytics – SIN( ), COS( ) e TAN( ) – são compatíveis com a realização
do Teste de Arco de Mantissa associado à Lei de Benford.
Função TEST( )
Retorna um valor lógico que indica se uma cadeia especificada ocorre em uma posição de byte específica
no registro.
Sintaxe
TEST(posição_de_byte; cadeia)
Parâmetros
Nome Tipo Descrição
Saída
Lógico. Retorna T (verdadeiro) se a cadeia especificada começar no local do byte especificado dentro do
registro, caso contrário, retorna F (falso).
Exemplos
Exemplos básicos
Suponha que um registro contenha:
Departamento: Marketing
....|....|....|....|....|
Retorna T:
TEST(5; "Departamento")
Retorna F, pois a cadeia "Departamento" começa na quinta posição de byte e não na sexta:
TEST(6; "Departamento")
TEST(5; "DEPARTAMENTO")
Exemplos avançados
Isolamento de registros que são cabeçalhos de página
Use TEST( ) para criar um filtro que isola todos os registros que começam com "Página:":
Função TIME( )
Extrai a hora a partir de uma hora ou datahora específica e retorna como sequência de caracteres. Tam-
bém pode retornar a hora atual do sistema operacional.
Sintaxe
TIME(< hora/datahora> <;formato>)
Parâmetros
Nome Tipo Descrição
hora/datahora datahora O campo, expressão ou valor literal do qual será extraída a hora. Se
for omitido, a hora atual do sistema operacional é retornada no for-
opcional
mato hh:mm:ss.
formato caractere O formato a ser aplicado à cadeia de saída, por exemplo "hh:mm:ss".
Se omitido, o formato atual de exibição da hora do Analytics é uti-
opcional
lizado. Você não pode especificar formato se tiver omitido data/-
datahora.
Saída
Caractere.
Exemplos
Exemplos básicos
Valores de entrada literal
Retorna "23:59:59", supondo um formato de exibição de hora do Analytics de hh:mm:ss:
TIME(`20141231 235959`)
A hora atual do sistema operacional retornada como uma cadeia de caracteres no formato hh:mm:ss (24
horas):
TIME()
TIME(Carimbo_de_data_e_hora_do_recebimento)
TIME(Carimbo_datahora_recebimento; "hh:mm:ss")
Exemplos avançados
Cálculo do tempo decorrido para execução de um comando ou script
Use a função TIME( ) para ajudar a calcular quanto tempo um determinado comando ou script completo do
Analytics demora a executar.
Imediatamente antes do comando que você deseja cronometrar, ou no início do script, especifique essa
linha para criar uma variável que armazena a hora atual do sistema operacional:
Você pode clicar duas vezes na entrada do log CALCULATE para ver o tempo decorrido
para o comando ou script.
Se o comando ou script executará além da meia-noite, use esta linha em vez da anterior:
Observações
Comprimento da cadeia de saída
O comprimento da cadeia de saída é sempre 14 caracteres. Se o formato de saída especificado ou o for-
mato de exibição de data do Analytics for menos do que 14 caracteres, a cadeia de saída será preenchida
com espaços em branco à direita.
Detalhes do parâmetro
Um campo especificado para hora/datahora pode usar qualquer formato de data ou datahora, desde que
a definição do campo defina corretamente o formato.
Se você usa formato para controlar como a cadeia de saída é exibida, fica restrito aos formatos na tabela
abaixo. Você pode usar qualquer combinação de formatos de data e AM/PM. O formato AM/PM é opci-
onal e é posicionado ao final.
Especifique formato usando apóstrofos ou aspas. Por exemplo: "hh:mm:ss AM".
hhmm
hh
Não use separadores como barras (/) ou dois pontos (:) entre os componentes individuais de datas ou
horas.
l Valores de hora – você pode usar qualquer dos formatos de hora listados na tabela abaixo. Você
deve usar um separador antes de um valor de hora independente para que a função funcione cor-
retamente. Os separadores válidos são as letras 't' ou 'T'. As horas devem ser especificadas usando
o relógio de 24 horas. Os ajustes do Tempo Universal Coordenado (UTC) devem ser precedidos por
um sinal de mais (+) ou de menos (-).
l Valores de datahora – você pode usar qualquer combinação de formatos de data, separador e hora
listados na tabela abaixo. A data deve preceder a hora e um separador deve ser usado entre os dois.
Os separadores válidos são um único espaço em branco ou as letras 't' ou 'T'.
thhmmss `t235959`
Thhmm `T2359`
AAAAMMDD hhmmss `20141231 235959`
AAMMDDthhmm `141231t2359`
AAAAMMDDThh `20141231T23`
AAAAMMDD hhmmss+/-hhmm `20141231 235959-0500`
(ajuste UTC)
AAMMDD hhmm+/-hh `141231 2359+01`
(ajuste UTC)
Nota
Não use somente hh no formato de hora
principal com dados que têm um ajuste
UTC. Por exemplo, evite: hh+hhmm. Os
resultados podem ser não confiáveis.
Funções relacionadas
Se você precisar retornar a hora atual do sistema operacional como um valor datahora, use NOW( ) em vez
de TIME( ).
DATE( ) Extrai a data a partir de uma data ou datahora específica e retorna como sequência de carac-
teres. Também pode retornar a data atual do sistema operacional.
DATETIME( ) Converte uma datahora em uma sequência de caracteres. Também pode retornar a datahora
atual do sistema operacional.
CTOD( ) Converte um valor em caractere ou numérico de data em uma data. Também é possível
extrair a data de um valor de datahora em formato de caracteres ou numérico e retorná-lo
como uma data. Abreviação de "Caractere para Data".
CTOT( ) Converte um valor em caractere ou numérico de hora em uma hora. Também é possível
extrair a hora de um valor de datahora em formato de caracteres ou numérico e retorná-lo
como uma hora. Abreviação de "Caractere para Hora".
STOD( ) Converte uma data serial, ou seja, uma data expressa como um inteiro, em um valor de data.
É abreviação de "Serial to Date".
STODT( ) Converte uma datahora serial, ou seja, uma datahora expressa como um inteiro e uma fração
de 24 horas, em um valor de datahora. É abreviação de "Serial to Datetime".
STOT( ) Converte uma hora em série, ou seja, uma hora expressa como uma fração de 24 horas,
sendo 24 horas representando 1, para um valor de hora. Abreviação de "Série para hora".
Função TODAY( )
Retorna a data atual do sistema operacional como um tipo de dados Datahora.
Sintaxe
TODAY()
Parâmetros
Essa função não possui nenhum parâmetro.
Saída
Datahora.
Exemplos
Exemplos básicos
Retorna a data atual do sistema operacional como valor datahora, por exemplo, `20141231`, exibido
usando o formato atual de exibição de data do Analytics:
TODAY()
Observações
Funções relacionadas
Se precisar retornar a hora atual do sistema operacional como cadeia de caracteres, use DATE( ) em vez
de TODAY( ).
Função TRANSFORM( )
Inverte a ordem de exibição do texto bidirecional dentro de uma cadeia especificada.
Sintaxe
TRANSFORM(cadeia_original)
Parâmetros
Nome Tipo Descrição
Saída
Caractere.
Exemplos
Exemplos básicos
Na cadeia de entrada, "XZQB" representa caracteres hebraicos/bidirecionais em uma cadeia de entrada
que, exceto por isso, contém caracteres normais.
Na cadeia de saída, a direção de "XZQB" é invertida e o retorno é "BQZX". Os outros caracteres não são
modificados.
Retorna "ABC BQZX 123":
Observações
Como funciona?
A função TRANSFORMS( ) identifica os dados bidirecionais e os apresenta corretamente na exibição, da
direita para a esquerda.
Todos os outros caracteres processados pela função não são modificados e continuam sendo exibidos da
esquerda para a direita.
Função TRIM( )
Retorna uma cadeia com os espaços finais removidos da cadeia de entrada.
Sintaxe
TRIM(cadeia)
Parâmetros
Nome Tipo Descrição
Saída
Caractere.
Exemplos
Exemplos básicos
Observe que em ambos os exemplos, os espaços iniciais e espaços entre as palavras não são removidos
pela função TRIM( ).
Retorna " Salvador":
TRIM(" Salvador ")
TRIM(" São Paulo")
Exemplos avançados
Removendo espaços contínuos
A função REPLACE( ) substitui todos os espaços contínuos por espaços regulares e TRIM( ) remove todos
os espaços regulares à direita.
Observações
Como funciona?
A função TRIM( ) remove somente os espaços à direita. Os espaços dentro da cadeia e os espaços iniciais
não são removidos.
Funções relacionadas
TRIM( ) é relacionado à função LTRIM( ), que remove todos os espaços iniciais de uma cadeia, e a função
ALLTRIM( ), que remove os espaços iniciais e finais.
Função UNSIGNED( )
Retorna os dados numéricos convertidos para tipo de dados Unsigned (Sem sinal).
Sintaxe
UNSIGNED(número; comprimento_do_resultado)
Parâmetros
Nome Tipo Descrição
Saída
Numérico.
Exemplos
Exemplos básicos
Retorna 000075:
UNSIGNED(75; 3)
UNSIGNED(-75; 3)
UNSIGNED(7,5; 3)
Retorna 2456 (1 é truncado, porque só 4 dígitos podem ser armazenados quando o comprimento_de_
resultado é 2):
UNSIGNED(12456; 2)
Retorna 000000012456:
UNSIGNED(-12,456; 6)
Observações
O que são dados sem sinal?
O tipo de dados Unsigned (Sem sinal) é usado pelos sistemas operacionais de mainframe para armazenar
valores numéricos em um formato que usa espaço mínimo, armazenando dois dígitos em cada byte. O tipo
de dados Unsigned (Sem sinal) é igual ao tipo de dados Packed (Compactado), mas ele não usa o último
byte para especificar se o valor é positivo ou negativo.
Função UPPER( )
Retorna uma cadeia com caracteres alfabéticos convertidos em maiúsculas.
Sintaxe
UPPER(cadeia)
Parâmetros
Nome Tipo Descrição
Saída
Caractere.
Exemplos
Exemplos básicos
Retorna "ABC":
UPPER("abc")
UPPER("AbCd 12")
UPPER(Sobrenome)
Observações
Como funciona?
A função UPPER( ) converte todos os caracteres alfabéticos na cadeia em letras maiúsculas. Todos os
caracteres não alfabéticos permanecem inalterados.
Função UTOD( )
Converte uma cadeia Unicode que contém uma data formatada em um valor de data do Analytics. É abre-
viação de "Unicode to Date".
Nota
Essa função é específica para a edição Unicode do Analytics. Não é uma função supor-
tada na edição não-Unicode.
Use esta função ao trabalhar com datas em idiomas e formatos diferentes da instalação
padrão. Se a cadeia que você quer converter está no idioma padrão, use CTOD( ).
Sintaxe
UTOD(cadeia <;local> <;estilo>)
Parâmetros
Nome Tipo Descrição
estilo numérico O estilo de formato de dados a ser usado para a cadeia Unicode. O
estilo de formato corresponde ao padrão para a localidade espe-
opcional
cificada:
DISPLAY DTOU(`20160909`; "es_MX"; 3)
Saída
Datahora. O valor de data resultante usa o formato de exibição de data atual do Analytics.
Exemplos
Exemplos básicos
Nota
Todos os exemplos pressupõem um formato de exibição de data atual do Analytics como
DD MMM AAAA.
Nos exemplos abaixo, os códigos da localidade para chinês ("zh") e chinês simplificado
("zh_CN") correspondem a cadeias de entrada diferentes e não são intercambiáveis.
Também é necessário especificar o estilo correto. Uma cadeia de caracteres de data Uni-
code longa (ou seja, estilo é 1) não retorna uma data do Analytics se você especifica um
estilo de 2.
UTOD(Data_fatura; "zh"; 1)
UTOD("2014年12月31日星期三"; "zh_CN"; 0)
UTOD("2014年12月31日"; "zh_CN"; 1)
Observações
Conversão bem-sucedida de cadeias Unicode
Para converter cadeias Unicode com datas em datas do Analytics com êxito, é necessário especificar
parâmetros localidade e estilo que correspondam ao idioma do país/região (se aplicável) e ao estilo da
data na cadeia Unicode.
Funções relacionadas
UTOD( ) é o inverso de DTOU( ), que converte uma data em uma cadeia Unicode. Se você não tiver certeza
sobre qual país/região e estilo devem ser especificados para a função UTOD( ), pode usar DTOU( ) e expe-
rimentar com parâmetros diferentes para produzir uma cadeia Unicode de saída que corresponda à forma
das cadeias Unicode de entrada que se deseja converter com UTOD( ).
Função VALUE( )
Converte uma sequência de caracteres em um valor numérico.
Sintaxe
VALUE(cadeia; decimais)
Parâmetros
Nome Tipo Descrição
Saída
Numérico.
Exemplos
Exemplos básicos
Returns -123.400:
VALUE("123,4-"; 3)
Retorna 123456,00:
VALUE("$123.456"; 2)
Retorna -77,45:
VALUE("77,45CR"; 2)
Retorna -123457:
VALUE(" (123.456,78)"; 0)
Entrada de campo
Retorna valores de caracteres no campo Salário como números sem casas decimais:
VALUE(Salário, 0)
Observações
Como funciona?
Esta função converte dados de caractere para dados numéricos. Você pode usar a função VALUE( ) se pre-
cisar converter valores de expressões ou campos com caracteres em valores numéricos para usar em
comandos do Analytics.
Valores negativos
A função VALUE( ) pode interpretar diferentes indicadores de valores negativos como parênteses e o sinal
de menos. Ela também pode interpretar CR (crédito) e DR (débito). Por exemplo:
Retorna -1000,00:
VALUE("(1000)"; 2)
VALUE("1000CR"; 2)
VALUE("123"; 2)
Se o número de decimais especificado em decimais for menor que o número no campo ou expressão, o
resultado será arredondado. Por exemplo:
Retorna "10,6":
VALUE("10,56"; 1)
Funções relacionadas
A função VALUE( ) é o oposto da função STRING( ), que converte dados numéricos em dados de carac-
teres.
Função VERIFY( )
Retorna um valor lógico que indica se os dados no campo de dados físicos são válidos.
Sintaxe
VERIFY(campo)
Parâmetros
Nome Tipo Descrição
Saída
Lógico. Retorna V (verdadeiro), se os dados no campo forem válidos e F (falso), caso contrário.
Exemplos
Exemplos básicos
Extrai todos os registros em que a função VERIFY( ) é avaliada como falsa para uma nova tabela do Analy-
tics:
Observações
A função VERIFY( ) determina se os dados em um campo são consistentes com o tipo de dados espe-
cificado para o campo.
Função WORKDAY( )
Retorna o número de dias úteis entre duas datas.
Sintaxe
WORKDAY(data_início; data_término <;dias_não_úteis>)
Parâmetros
Nome Tipo Descrição
data_inicial datahora A data inicial do período para cálculo de dias úteis. A data inicial é
incluída no período.
data_final datahora A data final do período para cálculo de dias úteis. A data final é inclu-
ída no período.
dias_não_úteis caractere Especifica quais dias da semana são dias de fim de semana, ou dias
não úteis, e os exclui do cálculo. Se você omitir o parâmetro dias_
opcional
não_úteis, sábado e domingo serão usados como os dias não úteis
padrão.
Insira dias_não_úteis usando as abreviações a seguir, separadas por
espaço ou vírgula:
o Seg
o Ter
o Qua
o Qui
o Sex
o Sáb
o Dom
dias_não_úteis não diferencia minúsculas e maiúsculas. As abre-
viações devem ser inseridas em inglês, mesmo que você esteja
usando uma versão do Analytics que não esteja em inglês:
Nota
Você pode especificar um valor datahora para data_inicial ou data_final, mas a parte da
hora do valor será ignorada.
Se data_inicial for mais recente que data_final, será retornado um valor negativo.
Saída
Numérico. O número de dias úteis no período para cálculo de dias úteis.
Exemplos
Exemplos básicos
Valores de entrada literal
Retorna 5 (o número de dias úteis entre segunda-feira, 2 de março de 2015 e domingo, 8 de março de
2015 inclusive):
WORKDAY(`20150302`; `20150308`)
Retorna 6 (o número de dias úteis entre segunda-feira, 2 de março de 2015 e domingo, 8 de março de
2015 inclusive, quando domingo é o único dia não útil):
Retorna 5 (o número de dias úteis entre domingo, 1º de março de 2015 e sábado, 1 de março de 2015
inclusive, quando sexta-feira e sábado não são dias úteis):
WORKDAY(data_inicial; `20151231`)
Retorna o número de dias úteis entra cada data no campo Data_inicial e uma data correspondente no
campo Data_final inclusive:
l Os feriados legais são incluídos no total de dias úteis e pode ser necessário considerá-los usando
um cálculo separado
l Um valor de retorno negativo indica uma data inicial posterior à data final
WORKDAY(data_inicial; data_final)
Observações
Formatos de data
Um campo especificado para data_inicial ou data_final pode usar qualquer formato de data, desde que a
definição do campo defina corretamente o formato.
Ao especificar um valor literal de data para data_inicial ou data_final, você está restrito aos formatos
AAAAMMDD e AAMMDD e o valor deve estar entre apóstrofos invertidos – por exemplo, `20141231`.
Primeiro, crie um campo calculado como, por exemplo, Dias_úteis , que calcula os dias úteis para um perí-
odo específico durante o trimestre:
Em seguida, crie um campo calculado condicional como, por exemplo Dias_úteis_sem_feriados , que
ajusta o valor retornado pelo primeiro campo calculado (Dias_úteis ):
Nota
A ordem das condições no campo calculado condicional é importante.
O Analytics avalia várias condições começando pela parte superior. A primeira condição
avaliada como verdadeira para um registro atribui o valor do campo calculado condicional
a esse registro. Uma condição subsequente avaliada como verdadeira não altera o valor
atribuído.
Função YEAR( )
Extrai o ano de uma data ou datahora específica e retorna como valor numérico usando o formato AAAA.
Sintaxe
YEAR(data/datahora)
Parâmetros
Nome Tipo Descrição
data/datahora datahora O campo, expressão ou valor literal do qual será extraído o ano.
Saída
Numérico.
Exemplos
Exemplos básicos
Retorna 2014:
YEAR(`20141231`)
YEAR(`141231 235959`)
YEAR(Data_fatura)
Observações
Detalhes do parâmetro
Um campo especificado para data/datahora pode usar qualquer formato de data ou datahora, desde que
a definição do campo defina corretamente o formato.
AAAAMMDD `20141231`
AAMMDD `141231`
AAAAMMDD hhmmss `20141231 235959`
AAMMDDthhmm `141231t2359`
AAAAMMDDThh `20141231T23`
AAAAMMDD hhmmss+/-hhmm `20141231 235959-0500`
(ajuste UTC)
AAMMDD hhmm+/-hh `141231 2359+01`
(ajuste UTC)
Nota
Não use somente hh no formato de hora
principal com dados que têm um ajuste
UTC. Por exemplo, evite: hh+hhmm. Os
resultados podem ser não confiáveis.
Função ZONED( )
Converte dados numéricos em dados de caracteres e adiciona zeros à esquerda na saída.
Sintaxe
ZONED(número; comprimento)
Parâmetros
Nome Tipo Descrição
Saída
Caractere.
Exemplos
Exemplos básicos
Entrada de inteiro
Retorna "235":
ZONED(235; 3)
Retorna "00235" porque comprimento é maior do que o número de dígitos em número, portanto, dois
zeros à esquerda são adicionados ao resultado:
ZONED(235; 5)
Retorna "35" porque comprimento é menor do que o número de dígitos em número, portanto, o primeiro
dígito à esquerda é truncado do resultado:
ZONED(235; 2)
Entrada de decimal
Retorna "23585" porque o formato de dados zonado não permite ponto decimal:
ZONED(235,85; 5)
ZONED(-6448,94; 6)
Retorna "489J" porque comprimento é menor do que o número de dígitos em número; portanto, os pri-
meiros dois dígitos à esquerda são truncados do resultado, o número é negativo e "J" representa o dígito
final 1:
ZONED(-6448,91; 4)
Exemplos avançados
Adição de zeros à esquerda de um campo de caracteres que contém núme-
ros
O campo Número_Funcionário contém o valor "254879". Você precisa converter o valor para uma cadeia
de 10 dígitos com zeros à esquerda.
Dica
Você precisa usar a função VALUE( ) para converter os caracteres em dados numéricos
antes de usar o numeral como entrada para ZONED( ).
OPEN Ar PRIMARY
OPEN Cliente SECONDARY
JOIN PKEY ZONED(Númclien;5) FIELDS NúmCliente Valor Devido SKEY Númclien UNMATCHED
TO Cliente_Ar OPEN PRESORT SECSORT
Observações
Como funciona?
Essa função converte dados numéricos para dados de caractere e adiciona zeros iniciais ao resultado. A
função é comumente usada para harmonizar campos que requerem zeros iniciais, por exemplo, número de
cheque, número da ordem de compra e os campos de número de fatura.
truncada do lado esquerdo. Se o valor de número tiver o mesmo comprimento do comprimento, não
serão adicionados zeros.
Números decimais
O tipo de dados zonado não inclui uma vírgula decimal explícita.
Números negativos
Se o número de entrada for negativo, o dígito mais à direita será exibido como um caractere no resultado:
l "}" para 0
l uma letra entre "J" e "R" para os dígitos 1 a 9
Função ZSTAT( )
Retorna a estatística Z padrão.
Sintaxe
ZSTAT(proporção_real; proporção_esperada; população)
Parâmetros
Nome Tipo Descrição
população numérico O número total dos itens testados. Este parâmetro deve ser um
número inteiro positivo maior que 0
Saída
Numérico.
Exemplos
Exemplos avançados
Parâmetros expressos como números
Com base em 10 anos de dados anteriores, você sabe que a distribuição de reclamações trabalhistas de
acidentes por mês é normalmente muito uniforme. Em abril, maio e junho deste ano, as reclamações
foram cerca de 10 por cento maiores, com média de 220 por mês, em vez de 200. Reclamações em julho
e agosto foram um pouco mais baixas, 193 e 197. As reclamações totais para esse ano foram 2.450 Para
testar se estes resultados altos e baixos foram significativos, use a estatística-Z.
O número real de reclamações para abril a junho é 660, maior do que o esperado. O número esperado
para esse período é de 25% das reclamações anuais, 2.450, ou seja, 612,5. A estatística-Z para essas
contagens é calculada como 2,193:
Uma estatística-Z de 1,96 tem uma significância de 0,05, e 2,57 tem uma significância de 0,01. Portanto, a
probabilidade de que taxas superiores de reclamações devam-se ao acaso está entre 1:20 e 1:100.
O número real de reclamações para julho e agosto é 390, menor do que o esperado. O número esperado
de reclamações para esse período é um sexto das reclamações anuais, 2.450, ou seja, 408,33. A esta-
tística-Z para essas proporções é calculada como 0,967:
Este não é um resultado muito significativo. As estatísticas-Z de 1,000 e menores são muito comuns e
podem ser normalmente ignoradas.
Uma estatística-Z de 1,96 tem uma significância de 0,05, e 2,57 tem uma significância de 0,01. Portanto, a
probabilidade de que taxas superiores de reclamações devam-se ao acaso está entre 1:20 e 1:100.
O número real de reclamações para julho e agosto é baixo, 390. O número esperado de reclamações
para esse período deveria ser um sexto, ou 16,6667% das reclamações anuais, 2.450. A estatística-Z
para essas proporções é 0,967:
Este não é um resultado muito significativo. As estatísticas-Z de 1,000 e menores são muito comuns e
podem ser normalmente ignoradas.
Observações
Como funciona?
A função ZSTT( ) calcula a estatística Z padrão para uso em diversas tarefas de solução de problemas,
incluindo análise digital. Ele produz o resultado com uma precisão de três casas decimais.
Uso de ZSTAT( )
Use ZSTAT( ) para avaliar a frequência provável de ocorrência de determinado resultado em um período
ou categoria específica. Quanto maior a estatística-Z resultante, menor a probabilidade de ocorrência.
Por exemplo, uma estatística-Z de 1,96 tem uma significância de 0,05, representando a probabilidade de
uma em 20 ocorrências, enquanto uma estatística-Z de 2,57 tem uma significância de 0,01, representando
a probabilidade de uma em 100 ocorrências. Para obter informações sobre estatística-Z, consulte um livro
de estatística.
Análises
Scripts de análise
A execução de scripts não está limitada apenas ao Analytics. Se um script comum for convertido em um
script de análise, você poderá agendar e executar scripts no módulo Robôs do HighBond ou no Analytics
Exchange. Você também pode executar scripts de análise na janela Aplicativo de análise, um componente
autônomo do Analytics.
COMMENT
//ANALYTIC Identificação de cheques perdidos
Este script de análise identifica números de cheques perdidos
END
Módulo Robôs do o confirme um ou mais scripts de análise como uma versão no modo de desen-
HighBond volvimento no Robôs, e agende e execute uma versão ativada no modo de pro-
dução
Janela Aplicativo de aná- o empacote o projeto em um arquivo de análise compactado (arquivo .aclapp), abra o
lise projeto como um aplicativo de análise (arquivo .aclx) e execute o script de análise
na janela Aplicativo de análise
Para obter mais informações, consulte "Empacotamento de aplicativos de análise"
Na página 919.
cução do script. Você pode usar essas informações para tomar decisões sobre quais comandos executar
de acordo com o ambiente em que o script está sendo executado.
Use a função FTYPE( )para determinar onde o script está sendo executado:
FTYPE("ax_main") = "b"
Se o script estiver sendo executado no Analytics Exchange ou na janela Aplicativo de análise, a expressão
será avaliada como verdadeira (T). Para script sendo executados no Analytics, a expressão será avaliada
como falsa (F). Para obter mais informações, consulte "Função FTYPE( )" Na página 593.
Nota
AXRunByUser somente está disponível na execução de scripts de análise no Servidor AX.
A variável não é reconhecida na execução de scripts no Analytics.
Exemplo
Este cabeçalho de análise a seguir identifica uma tabela e campo para uso no script, bem como um parâ-
metro de data inicial:
COMMENT
//ANALYTIC Identificação de cheques perdidos
Esta análise identifica números de cheques perdidos
//TABLE v_tabela_pagamentos Tabela de Pagamentos
Selecione uma tabela que exibe os pagamentos e contém uma coluna de número do cheque
//FIELD v_num_cheque CN Número do Cheque
Selecione o campo que contém os números de cheques
//PARAM v_data_inicial D OPTIONAL Data Inicial (opcional)
Insira a data inicial da análise
END
Formato da tag
Cada tag no cabeçalho usa o seguinte formato:
O indicador de tag // deve ser o primeiro caractere não branco na linha de script. A tag deve ime-
diatamente seguir o indicador de tag, sem espaços ou caracteres entre os dois.
Convenções de tags
Componente Convenção
Atributos de tag Ao especificar valores de atributo para uma tag, você pode incluir espaços e, opcionalmente,
colocar o valor entre aspas.
Descrições de tag As descrições são opcionais. Se uma descrição for especificada, ela pode conter diversas
linhas, mas as quebras de linhas não são mantidas no aplicativo cliente.
Quando o script for executado no Analytics, o parâmetro assumirá o valor especificado na atribuição.
Quando a análise é executada em um aplicativo cliente, o valor de teste é ignorado e os parâmetros de
entrada definidos pelos usuários são usados.
Você deve deixar um espaço entre o operador de atribuição e a sintaxe de tag que o precede. Os valores
de atribuição devem usar o qualificador correto para o tipo de dados, como exigido em todo o Analytics.
Para obter mais informações, consulte "Tipos de dados" Na página 21.
"ANALYTIC" Na Designa um script do Analytics como uma análise que pode ser executada no Robôs, no Ser-
página 871 vidor AX ou na janela Aplicativo de análise.
Tag Descrição
Tags de entrada
"FILE" Na Especifica um arquivo não Analytics, como arquivos Excel ou de texto delimitado, que fornece
página 873 entradas para a análise executada no Robôs ou no Servidor AX.
o Robôs: o arquivo deve estar localizado na guia Entrada/Saída no mesmo robô da análise
o Servidor AX: o arquivo deve estar localizado na subpasta Arquivos relacionados na pasta
em que a análise está localizada
"TABLE" Na Define uma tabela do Analytics que o usuário seleciona como entrada para a análise.
página 875
A tag TABLE pode ser seguida de zero ou mais tags FIELD inseridas em linhas sequenciais.
"FIELD" Na Define um campo que o usuário seleciona como entrada para a análise.
página 877
O campo deve fazer parte de uma tabela definida na tag TABLE precedente. A primeira tag
FIELD deve vir imediatamente após uma tag TABLE e pode ser seguida por tags FIELD adi-
cionais digitadas em linhas sequenciais.
"PARAM" Na Cria um parâmetro de entrada para uma análise e define os requisitos para o valor de entrada.
página 879
Um parâmetro de entrada é um espaço reservado que permite que o usuário especifique o
valor real quando agenda ou executa uma análise.
"PASSWORD" Na Cria um parâmetro de entrada de senha para uma análise. O parâmetro fornece arma-
página 891 zenamento criptografado da senha para uso subsequente em um comando do ACLScript.
O usuário é solicitado a especificar o valor de senha necessário quando agenda ou inicia uma
análise para que não seja necessária a intervenção do usuário durante a execução da aná-
lise.
Tags de saída
"DATA" Na Especifica que a tabela do Analytics gerada pela análise é copiada para a subpasta de dados
página 894 (um local de armazenamento) no ambiente de implantação.
Tipicamente, as tabelas do Analytics são armazenadas para que possam ser usadas como
tabelas de entrada nas análises subsequentes.
"RESULT" Na Especifica os resultados de saída da análise que você quer disponibilizar aos usuários finais
página 899 em aplicativos cliente.
Os resultados de saída, mesmo quando existentes, não são automaticamente disponibilizados.
Deve ser usada uma tag RESULT separada para cada item de resultado a disponibilizar.
"PUBLISH" Na Especifica um arquivo contendo metadados que determinam as tabelas do Analytics que serão
página 904 publicadas para o AX Exception na conclusão do processamento da análise.
ANALYTIC
Designa um script do Analytics como uma análise que pode ser executada no Robôs, no Servidor AX ou na
janela Aplicativo de análise.
Sintaxe
//ANALYTIC <TYPE IMPORT|PREPARE|ANALYSIS> nome
< description>
Parâmetros
Nome Descrição
TYPE Identifica o tipo de script de análise como um dos três tipos a seguir:
opcional o IMPORT – recupera dados de uma origem de dados. A saída da análise de impor-
tação é uma tabela de dados bruta.
o PREPARE – transforma dados brutos como necessário para torná-los prontos para
análise. A saída da análise de preparação é uma tabela de análise.
o ANALYSIS – executa testes nos dados das tabelas de análise. A saída da análise ana-
lítica consiste em uma ou mais tabelas de resultados.
As análises com um TYPE especificado são organizadas nas áreas Importar, Pre-
paração ou Análise no Robôs, no Cliente Web AX e na janela Aplicativo de análise.
Essa disposição guia o usuário pela sequência apropriada de execução das análises. A
sequência e o tipo de funcionalidade dentro da análise não são verificados.
Se você omitir TYPE, a análise será exibida na seção Análise.
Nome Descrição
descrição Uma descrição da análise ou outras informações de que o usuário pode precisar para
executar a análise com sucesso.
opcional
A descrição aparece junto à análise nos aplicativos cliente. A descrição pode conter
diversas linhas, mas não pode pular nenhuma. A descrição deve ser digitada na linha
abaixo da tag ANALYTIC associada.
Exemplos
Cabeçalho de análise básico
O cabeçalho da análise a seguir contém um nome e uma descrição da análise:
COMMENT
//ANALYTIC Identificação de cheques perdidos
Esta análise identifica números de cheques perdidos.
END
COMMENT
//ANALYTIC TYPE PREPARE Padroniza dados de endereço
Essa análise limpa e padroniza o campo endereço em preparação para análise de duplicidades.
END
Observações
Um comando COMMENT do ACLScript deve ser digitado na primeira linha do script, seguido pela tag
ANALYTIC na segunda linha. Se a tag ANALYTIC for utilizada em qualquer outro local, ela será igno-
rada.
Um ou mais scripts no projeto do Analytics podem incluir uma tag ANALYTIC.
FILE
Especifica um arquivo não Analytics, como arquivos Excel ou de texto delimitado, que fornece entradas
para a análise executada no Robôs ou no Servidor AX.
l Robôs: o arquivo deve estar localizado na guia Entrada/Saída no mesmo robô da análise
l Servidor AX: o arquivo deve estar localizado na subpasta Arquivos relacionados na pasta em que a
análise está localizada
Nota
Para especificar um arquivo de entrada não Analytics para análises executadas na janela
Aplicativo de análise, consulte "PARAM" Na página 879.
Sintaxe
//FILE nome_arquivo
Parâmetros
Nome Descrição
nome_arquivo O nome do item no robô ou na subpasta Arquivos relacionados a utilizar como arquivo
de entrada para a análise. o nome_arquivo não pode incluir um caminho.
Curingas podem ser usados na especificação do nome do arquivo. Utilize um único aste-
risco (*) para substituir zero ou mais caracteres.
Por exemplo:
o Inv12* corresponde a: Inv12, Inv123 e Inv1234
o *.* corresponde a todos os arquivos de todas as extensões no robô ou na pasta Arqui-
vos relacionados
o Inv_*.* corresponde a Inv_Jan.pdf e Inv_Feb.xls
Dica
Você pode usar a tag //FILE para fazer referência a um arquivo de pre-
ferências .prf do Analytics. Ao fazer isso, o arquivo de preferências na
subpasta Arquivos Relacionados é usada para definir as configurações
do ambiente de tempo de execução em vez do arquivo de preferências
global no Servidor AX. O arquivo de preferências deve ser da última ver-
são do Analytics compatível com sua instalação do Analytics Exchange.
Exemplos
Exemplos básicos
Especifica um arquivo específico:
//FILE ContasSinalizadas.csv
//FILE Sinalizadas*.csv
//FILE *.*
Exemplos avançados
Importar dados de um arquivo incluído
Você executa uma análise mensal de dados do funcionário no Servidor AX. Uma das análises do apli-
cativo de análise importa os dados para análise de um arquivo delimitado colocado mensalmente na
pasta Arquivos relacionados:
COMMENT
//ANALYTIC TYPE IMPORT importar_funcionários
Importa registros de funcionário do arquivo delimitado arquivado na pasta Arquivos relacionados.
//FILE Funcionários.csv
END
IMPORT DELIMITED TO Funcionários "Funcionários.fil" FROM "Funcionários.csv" 0 SEPARATOR
"," QUALIFIER '"' CONSECUTIVE STARTLINE 1 KEEPTITLE FIELD "Nome" C AT 1 DEC 0 WID
11 PIC "" AS "Nome" FIELD "Sobrenome" C AT 12 DEC 0 WID 12 PIC "" AS "Sobrenome"
Observações
A tag FILE não é permitida em análises executadas na janela Aplicativo de análise. Para especificar um
arquivo de entrada para análises executadas na janela Aplicativo de análise, use a tag PARAM. Para
obter mais informações, consulte "PARAM" Na página 879.
TABLE
Define uma tabela do Analytics que o usuário seleciona como entrada para a análise.
A tag TABLE pode ser seguida de zero ou mais tags FIELD inseridas em linhas sequenciais.
Nota
A tag TABLE exige que uma tabela já exista no local de armazenamento para ficar dis-
ponível para seleção. Para obter mais informações, consulte "DATA" Na página 894.
Sintaxe
//TABLE id nome
<description>
Parâmetros
Nome Descrição
id A variável que armazena o nome da tabela de entrada selecionada pelo usuário. Use
esse valor no script de análise para referenciar a tabela.
descrição Texto descritivo que especifica o propósito da tabela. A descrição pode conter diversas
linhas, mas não pode pular nenhuma.
opcional
O valor é exibido nos aplicativos cliente quando o usuário é solicitado a selecionar a
tabela. A descrição pode solicitar que o usuário selecione a tabela correta. Por exemplo,
"Selecione a tabela que contém as informações da folha de pagamento".
A descrição deve ser digitada na linha abaixo da tag TABLE associada.
Exemplos
Exemplos básicos
Tag TABLE com descrição para ajudar o usuário a selecionar a tabela de entrada correta:
Exemplos avançados
Como usar uma tabela definida em um tag TABLE no script
O script a seguir executa um comando AGE em uma tabela selecionada pelo usuário das tabelas de
dados do projeto:
COMMENT
//ANALYTIC script_exemplo
//TABLE v_tabela_pagamentos Tabela de Pagamentos
Selecione uma tabela que exibe os pagamentos e contém uma coluna de número do cheque.
END
OPEN %v_tabela_pagamentos%
AGE ON data_pagamento CUTOFF 20141231 INTERVAL 0;30;60;90;120;10000 SUBTOTAL
Valor_pagamento TO r_saída
CLOSE %v_tabela_pagamentos%
FIELD
Define um campo que o usuário seleciona como entrada para a análise.
O campo deve fazer parte de uma tabela definida na tag TABLE precedente. A primeira tag FIELD deve vir
imediatamente após uma tag TABLE e pode ser seguida por tags FIELD adicionais digitadas em linhas
sequenciais.
Nota
A tag TABLE exige que uma tabela já exista no local de armazenamento para ficar dis-
ponível para seleção. Para obter mais informações, consulte "DATA" Na página 894.
Sintaxe
//FIELD id tipo nome
<descrição>
Parâmetros
Nome Descrição
id A variável que armazena o nome do campo de entrada selecionado pelo usuário. Use
esse valor no script de análise para referenciar o campo.
tipo Os tipos de campos que podem ser selecionados. Qualquer tipo, ou combinação de
tipos, da lista a seguir pode ser selecionado:
o C – dados de caracteres
o N – dados numéricos
o D – subtipo data, datahora ou hora de dados datahora
o L – dados lógicos
Todos os campos calculados da tabela podem ser selecionados independente do tipo
especificado.
descrição Texto descritivo que especifica o propósito do campo. A descrição pode conter diversas
linhas, mas não pode pular nenhuma.
opcional
O valor é exibido nos aplicativos cliente quando o usuário é solicitado a selecionar o
campo. A descrição pode solicitar ao usuário que selecione o campo correto. Por exem-
plo, "Selecione o campo que contém o valor do pagamento".
A descrição deve ser digitada na linha abaixo da tag FIELD associada.
Exemplos
Exemplos básicos
Especifica um campo de caracteres:
Exemplos avançados
TABLE com duas tags FIELD anexas
O cabeçalho da análise a seguir permite que o usuário especifique dois campos de entrada da tabela v_
tabela_pagamentos durante a execução do script:
COMMENT
//ANALYTIC análise de teste
//TABLE v_tabela_pagamentos Tabela de Pagamentos
Selecione uma tabela que exibe os pagamentos e contém uma coluna de número do cheque.
//FIELD v_num_cheque CN Campo do Número do Cheque
//FIELD v_data_pagamento D Campo Data do Pagamento
Selecione a coluna que contém a data de pagamento do cheque.
END
OPEN %v_tabela_pagamentos%
EXTRACT FIELDS %v_num_cheque%, %v_data_pagamento% TO t_análise
PARAM
Cria um parâmetro de entrada para uma análise e define os requisitos para o valor de entrada.
Um parâmetro de entrada é um espaço reservado que permite que o usuário especifique o valor real
quando agenda ou executa uma análise.
Sintaxe
//PARAM id tipo <OPTIONAL> <MULTI> <SEPARATOR valor> <QUALIFIER valor> <VALUES
lista_valores> rótulo
<descrição>
Parâmetros
Nome Descrição
tipo O tipo de dados do parâmetro, que controla qual tipo de valor de entrada pode ser inse-
rido.
Os tipos a seguir podem ser especificados utilizando letras maiúsculas:
o C – dados de caracteres
o N – dados numéricos
o D – subtipo de data de dados datahora
o DT – subtipo de datahora de dados datahora
o T – subtipo de tempo de dados datahora
o L – dados lógicos
Nome Descrição
Nota
Valores de entrada de caracteres qualificados são necessários para que
a análise execute corretamente.
Como PARAM... F funciona
Você também pode especificar que um utilitário de upload de arquivos, ou um nave-
gador de arquivos do Windows, abre:
o F – abre um utilitário de upload de arquivos ou navegador de arquivos do Windows e
permite que o usuário selecione um arquivo de entrada não Analytics para a análise
quando executado no Cliente Web AX ou na janela Aplicativo de análise
Na seleção, o nome do arquivo é inserido automaticamente como um valor de
entrada Caractere. Especifique somente F. Não especifique F C.
Por exemplo:
OPTIONAL Especifica que o parâmetro é opcional e o usuário não é obrigado a digitar um valor.
opcional Para obter mais informações, consulte "Desenho de parâmetros de entrada opcionais"
Na página 886.
VALUES
VALUES
Nome Descrição
Nota
Valores de entrada de vários caracteres delimitados e qualificados são
necessários para que a análise execute corretamente. Os separadores e
qualificadores podem ser inseridos automaticamente ou manualmente
pelo usuário.
SEPARATOR valor SEPARATOR pode ser usado apenas quando MULTI é especificado e tipo é C (carac-
tere).
opcional
Especifica que o caractere separador seja automaticamente inserido entre múltiplos valo-
res de entrada de caracteres, criando uma lista delimitada passada à análise para pro-
cessamento.
valor especifica o caractere separador a ser utilizado. Um separador ou delimitador nor-
malmente utilizado é a vírgula ,.
Se SEPARATOR for omitido, é utilizado o espaço simples como separador por padrão. O
caractere de espaço não pode ser especificado como valor.
Para obter mais informações, consulte "Delimitação e qualificação dos valores de
entrada em caracteres" Na página 887.
QUALIFIER valor QUALIFIER pode ser usado apenas quando MULTI é especificado e tipo é C (caractere).
opcional Especifica que o caractere qualificador de texto seja automaticamente inserido no início
e fim de cada valor de entrada de caracteres na lista delimitada passada para a análise
para processamento. Qualquer texto dentro dos caracteres qualificadores é tratado como
texto simples.
valor especifica o caractere de qualificador a ser usado. Um qualificador normalmente uti-
lizado é o apóstrofo '.
Se QUALIFIER é omitido, não é usado um qualificador padrão. Não é possível espe-
cificar um caractere de espaço como valor.
Para obter mais informações, consulte "Delimitação e qualificação dos valores de
entrada em caracteres" Na página 887.
Nota
Os parâmetros de entrada das análises atualmente não suportam o uso
de aspas duplas (") como qualificador de texto. Em vez disso, é possível
usar apóstrofos ('). A especificação das aspas duplas causará o fun-
cionamento incorreto da tag PARAM.
VALUES lista_valores Uma lista de valores que o usuário pode selecionar durante a execução da análise.
opcional Utilize a sintaxe a seguir para especificar os valores:
MULTI
Nome Descrição
MULTI
Exemplos
Exemplos básicos
Permite que o usuário especifique opcionalmente um intervalo de datas:
Exemplos avançados
Exigir que o usuário especifique um intervalo de quantidade
Você precisa classificar os registros em uma tabela que estão em um intervalo entre um valor mínimo e
máximo. Esse intervalo muda ocasionalmente. Portanto, você oferece parâmetros de entrada para permitir
que o usuário que executa a análise defina o intervalo ao agendar ou executar o script:
COMMENT
//ANALYTIC análise_teste
//PARAM v_quantidade_min N Quantidade Mínima
Insira uma quantidade mínima
COMMENT
//ANALYTIC análise_teste
//PARAM v_num_cliente C OPTIONAL MULTI SEPARATOR , QUALIFIER ' Números de clientes a
excluir (opcional)
Especifique um ou mais números de cliente. Pressione "Enter" após cada número para dispor os
números em linhas separadas. Não coloque os números entre aspas.
END
COMMENT
//ANALYTIC análise_teste
//PARAM v_arquivo_entrada F Arquivo de entrada
COMMENT
//ANALYTIC análise_teste
//PARAM v_arquivo_entrada C Nome e caminho do arquivo de entrada
Insira um caminho e nome de arquivo absolutos Por exemplo, C:\U-
suários\nomedousuario\Documentos\ACL Data\Arquivos de dados da amostra\ Trans_Maio.xls
END
COMMENT
//ANALYTIC teste
Esta análise testa PARAM
//RESULT TABLE t_resultados
//PARAM v_data_inicial D OPTIONAL Insira a data inicial
Observações
Desenho de parâmetros de entrada opcionais
Se você usar OPTIONAL com a tag PARAM, a variável associada ao parâmetro de entrada de análise
pode ou não ser criada quando a análise é executada:
l variável criada automaticamente: se o usuário especifica um valor de entrada
l variável não criada: se o usuário não informar o parâmetro opcional e não especificar um valor de
entrada
Projeto de parâ-
Controle de entrada do usuário (Robôs) metros MULTI VALUES
Um único valor de
entrada informado
manualmente em
um campo
Um ou mais valo-
res de entrada
informados manu-
almente em um
campo
Um único valor de
entrada sele-
cionado de uma
lista suspensa de
valores
Um ou mais valo-
res de entrada
selecionados de
uma lista de valo-
res
Especificação manual dos Exija que o usuário da análise especifique manualmente os separadores e qua-
separadores e qua- lificadores, além dos valores de entrada.
lificadores
Por exemplo:
'América do Norte','Europa','Ásia'
Inclusão dos qua- Inclua os qualificadores junto a cada valor na lista_valores especificada na
lificadores na lista_valores opção VALUES.
Por exemplo:
4 Envolvimento da variável Na sintaxe do script do Analytics, cerque a variável do parâmetro com os qua-
IF MATCH(REGIONS; "%v_regioes%")
Nota
Os parâmetros de entrada das análises atualmente não suportam o uso de aspas duplas (")
como qualificador de texto. Em vez disso, é possível usar apóstrofos (') com a opção
QUALIFIER na lista_valores ou ao especificar manualmente qualificadores em torno dos valo-
res de entrada. As aspas duplas podem ser usadas como qualificadores de texto no corpo do
script do Analytics.
A janela
Aplicativo
Cliente Cliente de aná-
Método Detalhes Robôs AX Web AX lise
PASSWORD
Cria um parâmetro de entrada de senha para uma análise. O parâmetro fornece armazenamento crip-
tografado da senha para uso subsequente em um comando do ACLScript.
O usuário é solicitado a especificar o valor de senha necessário quando agenda ou inicia uma análise para
que não seja necessária a intervenção do usuário durante a execução da análise.
Sintaxe
//PASSWORD índice nome
< description>
Parâmetros
Nome Descrição
índice O identificador numérico associado à senha. O valor deve estar entre 1 e 10.
nome O rótulo para a solicitação de senha. nome exibido no aplicativo cliente quando o apli-
cativo solicita que o usuário digite uma senha.
Exemplos
Crie um parâmetro de entrada de senha para uma consulta SAP via Direct
Link
O cabeçalho de análise especifica um parâmetro de entrada de senha que solicita que o usuário insira uma
senha do SAP. A senha armazenada é usada no comando RETRIEVE subsequente no corpo do script.
COMMENT
//ANALYTIC Exemplo de senha do SAP
//PASSWORD 1 SAP Senha:
//DATA RSADMIN
END
SET SAFETY OFF
RETRIEVE RSADMIN PASSWORD 1
OPEN RSADMIN
SET SAFETY ON
Nota
O parâmetro de entrada de senha e o parâmetro de senha no comando RETRIEVE são
vinculados usando o mesmo identificador numérico:
COMMENT
//ANALYTIC Exemplo de senha do HighBond
//PASSWORD 3 Senha do HighBond:
END
SET SAFETY OFF
OPEN Exceções_CR
EXPORT FIELDS Sem Data de Vencimento Ref Tipo de Valor ACLGRC PASSWORD 3 TO
"10926@us"
SET SAFETY ON
Observações
Armazenamento e criptografia de senha
Os valores das senhas são associados a usuários individuais e são criptografados quando ociosos. As
senhas permanecem seguras durante todo o processamento da análise e são criptografadas em arqui-
vos temporários criados no ambiente de implantação.
Teste no Analytics
Se você testar uma análise com uma ou mais tags PASSWORD no Analytics, ele gerará automaticamente
um comando PASSWORD e solicitará que você insira a senha adequada. Esse comando gerado auto-
maticamente evita a necessidade de inserir comandos PASSWORD na parte do script da análise para fins
de testes e sua posterior remoção antes de entregar a análise aos usuários.
O comando PASSWORD gerado automaticamente é salvo em um log sem o valor da senha.
Os valores de senha não são salvos durante a execução de uma análise no Analytics. Portanto, é neces-
sário especificar a senha ou as senhas em todas as execuções da análise, inclusive quando executando ou
percorrendo a análise passo a passo a partir da posição do cursor.
DATA
Especifica que a tabela do Analytics gerada pela análise é copiada para a subpasta de dados (um local de
armazenamento) no ambiente de implantação.
Tipicamente, as tabelas do Analytics são armazenadas para que possam ser usadas como tabelas de
entrada nas análises subsequentes.
Nota
A Professional Edition do ACL Robotics não inclui um local de armazenamento para tabe-
las do Analytics. A tag //DATA é ignorada em uma análise executada na Professional Edi-
tion.
Se você precisar dos recursos de armazenamento, poderá fazer upgrade para a Enter-
prise Edition.
Sintaxe
//DATA nome
Parâmetros
Nome Descrição
nome O nome da tabela do Analytics a ser armazenada. O valor de nome não pode conter
espaços.
Nota
O valor de nome deve corresponder exatamente ao nome da tabela de
saída do Analytics no script de análise. Você não atribui um nome a
uma tabela com o valor de nome, mas corresponde esse valor a um
nome especificado no script.
Você deve especificar o nome da tabela e não o nome do arquivo de dados de origem.
Correto:
//DATA Verificacoes_Faltantes
Incorreto:
//DATA Verificacoes_Faltantes.fil
Nome Descrição
Nota
Qualquer tabela do Analytics existente com o mesmo nome do valor
especificado será sobrescrita.
Caracteres curinga
Você poderá usar caracteres curinga no nome se alguma parte do nome da tabela for
passível de alteração. Por exemplo, se o nome da tabela depender do mês (faturas-jan,
faturas-fev, etc.), a especificação de invoices-* garantirá que a tabela seja copiada para
a subpasta de dados, independentemente do sufixo do mês.
Você pode especificar um único caractere curinga para copiar todas as tabelas de
saída do Analytics no script de análise para a subpasta de dados:
//DATA *
Cuidado
Tenha cuidado ao usar caracteres curinga. Você poderá sobrescrever
acidentalmente tabelas de dados existentes se o padrão de curingas
que você especificar corresponder a tabelas diferentes das pretendidas.
Como prática recomendada, torne o valor de nome o mais específico
possível. Use caracteres curinga somente quando necessário.
Exemplos
Cópia de uma tabela do Analytics para o local de armazenamento
O cabeçalho de análise a seguir especifica que a tabela Faturas, que é gerada no script associado, é copi-
ada para o local de armazenamento:
COMMENT
//ANALYTIC Tabela de importação
//DATA Faturas
END
IMPORT DELIMITED TO Faturas "Faturas.fil" FROM "Faturas.csv" 0 SEPARATOR "," QUALIFIER '"'
CONSECUTIVE STARTLINE 1 KEEPTITLE ALLCHAR ALLFIELDS
Observações
Armazenamento de tabelas de saída
As tabelas de saída não são automaticamente copiadas para o local de armazenamento. Deve ser usada
uma tag DATA para cada tabela a ser armazenada. Múltiplas tags DATA podem ser incluídas em um
cabeçalho de análise, se necessário.
As tabelas de saída são usadas como entrada para scripts de análise sub-
sequentes
Dependendo do ambiente de implantação e da estrutura dos scripts associados, pode ser necessário
usar a tag DATA para armazenar uma tabela de saída do Analytics que você quer usar em uma análise
posterior.
Durante o processamento da análise, o Robôs e o Servidor AX usam um diretório temporário para arma-
zenar e acessar as tabelas de saída do Analytics. Portanto, pode não ser necessário usar a tag DATA.
A tabela a seguir oferece orientações.
Ambiente de implan-
tação Use a tag DATA se... Não é preciso usar a tag DATA se...
Robôs o uma saída de tabela do Analytics em uma o uma tabela do Analytics é gerada e
tarefa de robô é necessária como entrada usada em seguida como entrada durante
(Somente Enterprise
em outra tarefa de robô uma sequência de scripts de análise exe-
Edition)
cutados em uma única tarefa de robô
o um processo completo de análise de
dados for concluído usando um único
script de análise
Ambiente de implan-
tação Use a tag DATA se... Não é preciso usar a tag DATA se...
Janela Aplicativo de o uma tabela do Analytics gerada por um o um processo completo de análise de
análise script de análise é necessária como dados for concluído usando um único
entrada para outro script de análise script de análise
//DATA src_Faturas
É preciso adicionar o prefixo ao nome da tabela na tag //DATA e no script que a acompanha.
A seção Tabelas de origem permite que você separe visualmente as tabelas que geram entrada para os
scripts subsequentes. Se nenhum nome de tabela de saída tiver o prefixo src_, a seção Tabelas de origem
não será exibida na guia Entrada/Saída e todas as tabelas estarão localizadas por padrão na seção Outras
tabelas .
RESULT
Especifica os resultados de saída da análise que você quer disponibilizar aos usuários finais em aplicativos
cliente.
Os resultados de saída, mesmo quando existentes, não são automaticamente disponibilizados. Deve ser
usada uma tag RESULT separada para cada item de resultado a disponibilizar.
Sintaxe
//RESULT tipo nome
<description>
Parâmetros
Nome Descrição
nome O nome do item de resultado. O valor nome não pode conter espaços.
Nota
O valor de nome deve corresponder exatamente ao nome do item de
resultado no script de análise. Você não atribui um item a uma tabela
com o valor de nome, mas corresponde esse valor a um nome espe-
cificado no script.
Nome da tabela
O valor de nome especifica um nome de tabela do Analytics. Você deve especificar o
nome da tabela e não o nome do arquivo de dados de origem.
Correto:
Incorreto:
Nome Descrição
Caracteres curinga
Você poderá usar caracteres curinga no nome se alguma parte do nome da tabela for
passível de alteração. Por exemplo, se o nome do arquivo depende do mês (faturas-
jan.xls, faturas-fev.xls, etc.), especificar faturas-*.xls garante que o arquivo seja dis-
ponibilizado nos resultados independente do sufixo do mês.
Nome do log
Opcional. O valor de nome especifica um nome de arquivo de log da análise. Se você
não especificar nome, será usado o nome de log padrão: nome_análise.log.
Nota
Se você especificar um nome de log, SET LOG TO nome_log deve apa-
recer no script.
Nome do arquivo
O valor de nome especifica um nome de arquivo não Analytics.
Você deve especificar a extensão de arquivo adequada para o tipo de arquivo não Analy-
tics sendo gerado.
Correto:
Incorreto:
Caracteres curinga
Você pode usar caracteres curinga para todo o valor de nome ou parte dele para espe-
cificar todos os arquivos com uma determinada extensão (*.xlsx) ou para especificar
arquivos em que parte do nome do arquivo pode mudar.
Por exemplo, se o nome do arquivo depende do mês (faturas-jan.xlsx, faturas-fev.xlsx
etc.), especificar faturas-*.xlsx garante que o arquivo seja disponibilizado nos resultados
seja qual for o sufixo do mês.
descrição Texto descritivo sobre o resultado ou outras informações. A descrição pode conter diver-
sas linhas, mas não pode pular nenhuma.
opcional
Exemplos
Tag RESULT para uma tabela do Analytics:
//RESULT LOG
Observações
Uploads para o módulo do Robôs baseado na nuvem
Com scripts de análise executados em instalações do Robôs, a especificação de RESULT LOG ou
RESULT FILE carrega arquivos de log de análises ou arquivos não Analytics do Agente do Robôs no local
para o módulo do Robôs baseado na nuvem no HighBond.
Para obter mais informações sobre logs, consulte "Como os arquivos de log são gerados" abaixo.
A especificação de RESULT TABLE faz upload apenas do layout da tabela (nome do arquivo, tipo de
dados, comprimento do campo). Os dados da tabela de resultado permanecem na rede da organização,
dentro do diretório do Agente do Robôs.
Todas as informações em trânsito são criptografadas.
Script de
análise Agente do Robôs Servidor AX Janela Aplicativo de análise
o Tag RESULT LOG não con- o Tag RESULT LOG não con- o Tag RESULT LOG não con-
siderada siderada siderada
l arquivo de log gerado
arquivo de log gerado auto- arquivo de log gerado auto-
automaticamente na
maticamente no Servidor AX maticamente na guia Resul-
pasta de dados básica do
(disponível em aplicativos cli- tados
Agente do Robôs
ente)
(definição da con-
figuração = "false")
l upload automático do
arquivo de log para o
módulo do Robôs base-
ado na nuvem
(definição de con-
figuração = "true"
(padrão))
Veja a definição de con-
figuração Uplo-
adLogsWhenFailed em
Configurando um Agente do
Falha Robôs.
Durante a execução do script, o arquivo fica temporariamente disponível no sistema de arquivos do Ser-
vidor AX e você pode trabalhar com ele usando processos externos, como os invocados usando o
comando EXECUTE. Durante a execução do script, os processos externos podem acessar o arquivo na
subpasta da tarefa de análise.
Nota
Por padrão, as subpastas das tarefas de análise estão localizadas dentro de ACL\Da-
ta\jobs. Após a conclusão do script, a subpasta de tarefas de análise é removida e o
arquivo é armazenado no banco de dados.
PUBLISH
Especifica um arquivo contendo metadados que determinam as tabelas do Analytics que serão publi-
cadas para o AX Exception na conclusão do processamento da análise.
Sintaxe
//PUBLISH nome_arquivo
Parâmetros
Nome Descrição
Exemplos
A definição de análise e o arquivo de texto que especifica os detalhes de
publicação da análise
A tag FILE é obrigatória se o arquivo de publicação estiver armazenado na pasta do AX, para que ele seja
recuperado quando a análise for processada.
COMMENT
//ANALYTIC Publicar resultados
//RESULT TABLE Resultados
//FILE ex_publicar.txt
//PUBLISH ex_publicar.txt
END
EXTRACT RECORD TO Resultados
"Resultados","MinhaEntidade","MinhaAnálise"
Desenvolvimento de análises
Para facilitar a depuração e isolar erros, desenvolva o corpo do script antes de adicionar o cabeçalho de
análise. Após adicionar o cabeçalho de análise, use o arquivo de log e use valores de teste temporários
para testar a execução da análise. Por fim, implante a análise no ambiente de destino.
Nota
O fluxo de trabalho a seguir é uma sugestão de abordagem para o desenvolvimento de
análises. No entanto, você pode desenvolver as análises da maneira que for mais con-
veniente.
gerado automaticamente quando a análise falha. Se a análise é bem-sucedida, o log só é gerado se você
especifica a tag de análise RESULT.
Inclua a linha a seguir no cabeçalho de análise para garantir a disponibilização de um log toda vez que a
análise for executada:
//RESULT LOG
Para obter mais informações sobre a atribuição de valores de teste temporários, consulte "Especificação
de valores de entrada de teste no Analytics" Na página 869.
Dica
É possível excluir todas as variáveis armazenadas e atribuições de variáveis do projeto do
Analytics inserindo DELETE ALL OK na linha de comando. A limpeza da guia Variáveis
antes do passo a passo da análise oferece um início mais transparente.
Verificação do log
Se a análise falhar, abra e analise o arquivo de log (nome_analise.log). O log deve incluir uma entrada, mar-
cada com um X vermelho, que indica o motivo da falha da análise:
l para valores de entrada inseridos incorretamente, reexecute imediatamente a análise com o valor
de entrada correto
l para erros de sintaxe ou lógicos no corpo do script, corrija o erro no Analytics e reabra o aplicativo
de análise na janela Aplicativo de análise
A análise pode obter sucesso na execução mas a tabela de resultados não conter os resultados espe-
rados. Nessa situação, avalie as entradas de log em sequência e verifique os valores de entrada pas-
sados à análise para se certificar que a análise está funcionando como pretendido.
COMMENT
As tags de análise ficam aqui.
END
Entradas Saídas
também poderá executar manualmente a validação se adicionar o botão Verificar scripts na barra de
ferramentas do Analytics.
1. Se necessário, adicione o botão Verificar scripts à barra de ferramentas do Analytics:
a. Clique duas vezes em uma parte vazia da barra de ferramentas para abrir a caixa de diálogo Per-
sonalizar barra de ferramentas .
b. Na lista Botões disponíveis da barra de ferramentas , selecione o botão Verificar scripts e clique
em Adicionar.
c. Na lista Botões atuais da barra de ferramentas , selecione o botão Verificar scripts e clique em
Mover para cima ou Mover para baixo para alterar a localização do botão.
A ordem dos botões de cima para baixo corresponde à sua localização da esquerda para a direita
na barra de ferramentas.
d. Clique em Fechar para salvar suas alterações.
3. Se o cabeçalho de análise contiver um erro, corrija o erro e clique em Verificar scripts nova-
mente para garantir que não há mais erros.
Teste localmente
Teste todas as análises localmente antes de implantá-las no ambiente de destino. Verifique se as análises
executam da forma esperada e se não exigem interação com o usuário.
Para obter mais informações, consulte "Desenvolvimento de análises" Na página 905.
O uso dos caminhos relativos de arquivos como \resultados permite o desenvolvimento e teste local
das análises e sua implantação em outro ambiente, sem exigir o outro ambiente tenha uma estrutura de
diretórios idêntica.
Nota
O parâmetro PASSWORD não é necessário na execução de comandos de importação e
exportação no Analytics porque o token de acesso do HighBond do usuário atual é usado
automaticamente.
PASSWORD //PASSWORD
Diretrizes
l para evitar falhas no processamento de análises, remova todos os comandos interativos
l para garantir que os arquivos possam ser sobrescritos conforme necessário, sem exibir uma caixa
de diálogo de confirmação, inclua o comando SET SAFETY OFF no início da análise e adicione o
comando SET SAFETY ON no final da análise para restaurar o comportamento padrão
l para evitar que os diálogos de confirmação causem falha na análise, adicione o parâmetro OK após
todos os comandos que normalmente exibem caixas de diálogo:
l RENAME
l DELETE
limita a emitir um aviso. Você pode confirmar ou importar scripts de análise que têm avisos.
l Corrija toda a sintaxe de script que gera um aviso e clique em Verificar scripts novamente
para garantir que os avisos não são mais exibidos.
l Verifique se o ambiente de implantação contém uma estrutura de diretório ou scripts externos ali-
nhados aos caminhos ou scripts externos especificados na análise.
O conjunto de dados reduzido será processado localmente no servidor onde a análise está sendo exe-
cutada pelo Motor AX.
A otimização de análises dessa forma é importante quando os arquivos de dados não estão localizados
no mesmo servidor do Servidor AX ou do Nó do Motor AX que processa a análises e a opção Copiar
dados de análise não está selecionada no aplicativo web Configuração do Servidor AX.
OPEN TabelaGrande
SET FILTER TO data_trans >= `20091201` AND data_trans < `20100101`
COUNT
TOTAL valor
CLASSIFY ON conta ACCUMULATE valor TO ContaClasseTrans
OPEN TabelaGrande
SET FILTER TO data_trans >= `20091201` AND data_trans < `20100101`
EXTRACT FIELDS data_trans desc conta tipo valor TO TabelaAnalise
OPEN TabelaAnalise
COUNT
TOTAL valor
CLASSIFY ON conta ACCUMULATE valor TO ContaClasseTrans
2. No Analytics, clique com o botão direito do mouse na entrada do projeto na guia Visão geral do
Navegador e selecione Empacotar aplicativo de análise.
O projeto do Analytics é a pasta de nível superior na exibição em árvore.
3. Na caixa de diálogo Selecionar Tabelas , faça o seguinte:
a. Para incluir uma ou mais tabelas do projeto e os arquivos de dados associados no aplicativo de
análise, selecione as tabelas e os arquivos de dados a incluir.
Nota
Geralmente, apenas tabelas e arquivos de dados estáticos exigidos por uma ou
mais análises do aplicativo de análise devem ser incluídos, como uma tabela mes-
tre de fornecedores ou uma lista de códigos de categorias de comerciantes.
b. Opcional. Para incluir as interpretações do aplicativo de análise existente, selecione Incluir inter-
pretações .
Interpretações associadas a tabelas ou scripts que não existem no novo pacote não são incluídos.
c. Clique em Para e navegue até a localização onde quer salvar o aplicativo de análise empacotado.
d. Na caixa de diálogo Salvar como, insira um Nome do arquivo com a extensão de arquivo
.aclapp e clique em Salvar.
e. Clique em OK.
Resultado: O aplicativo de análise empacotado é salvo no local especificado. Os demais usuários podem
recuperar o aplicativo de análise empacotado desse local ou distribuí-lo por e-mail ou outro método apro-
priado. Também é possível importar esse arquivo no Servidor AX.
l Cliente Web AX
o Cliente Web AX
Amostra de importação de o Janela Aplicativo de
análise Web_AA_Window análise
"" FIELD "DATA" D WID 10 PIC "YYYY-MM-DD" AS "" FIELD "NUMCLIENTE" C WID 6 AS ""
FIELD "DESCRIÇÃO" C WID 95 AS "" FIELD "VALOR" N WID 9 DEC 2 AS ""
SET SAFETY ON
COMMENT
//ANALYTIC TYPE PREPARE Amostra de análise de preparação
Esta análise prepara a tabela de dados bruta para a análise e a salva na nova tabela do Analytics
"Trans_Maio_preparada" (a tabela de análise). A análise define uma versão mais curta do campo
"Descrição" porque a classificação só é permitida em campos com comprimento de até 64 caracteres.
//TABLE Tabela v_TabelaBruta Table a preparar
Selecione a tabela de dados bruta a preparar
//RESULT TABLE Trans_*_preparada
//DATA Trans_*_preparada
//RESULT LOG
END
COMMENT
//ANALYTIC TYPE ANALYSIS Análise analítica de exemplo
Esta análise classifica a tabela de análise e envia os resultados para a nova tabela do Analytics "Clas-
sificada_Trans_Maio_preparada" (a tabela de resultados). Você pode especificar códigos de cate-
goria de comerciante, números de cliente e intervalos de datas e valores de transação para restringir
que registros são processados.
SET SAFETY ON
Anexo
Requisitos do sistema
Antes de instalar o Analytics, verifique se o computador cumpre os requisitos mínimos de software e
hardware.
Requisitos de software
Nota
Alguns pré-requisitos de software serão instalados automaticamente se não estiverem
presentes no seu computador. Para obter uma lista completa dos pré-requisitos ins-
talados automaticamente, consulte a documentação on-line.
Um dos seguintes sistemas ope- O ACL para Windows é um aplicativo de 32 bits que pode ser executado nas
racionais: versões de 64 bits do Windows.
o Microsoft Windows 10 (64 Nota
bits)
Para instalar o ACL para Windows no Windows 7, você deve ter o
o Microsoft Windows 8.1 (64
Service Pack 1 instalado. O ACL para Windows exige o Microsoft
bits)
o Microsoft Windows 7 Service .NET 4.6.x, que não pode ser instalado em versões do Windows 7
Pack 1 (SP1) (32 bits/64 bits) anteriores ao SP1.
O Windows XP não é mais um sistema operacional compatível.
Para usar funções do Analytics O número de bits da versão instalada de R deve corresponder ao número de bits
integradas à linguagem de pro- do sistema operacional.
gramação R, você deve instalar
Se você estiver usando um dos pacotes de CRAN R, talvez seja necessário adi-
e configurar o R (32 bits/64 bits).
cionar o caminho da pasta binária de R à variável do ambiente PATH no seu com-
As seguintes versões do R putador.
foram testadas e funcionam com
Por exemplo:
o Analytics:
o C:\Arquivos de Programas\R\R-<version>\bin\i386 (32-bit)
o 3.3.2 o C:\Arquivos de Programas\R\R-<version>\bin\x64 (64-bit)
o 3.3.1
o 3.2.5 Nota
o 3.2.3 Você não precisa instalar o R se não pretende usar funções do
Você pode usar o CRAN R (32 Analytics integradas a essa linguagem.
bits/64 bits) ou o Microsoft R
(apenas 64 bits).
Nota
Outras versões do R
também podem fun-
cionar. No entanto,
isso não é garantido.
No momento, o R
3.5.0 ou posterior
não é compatível
com o Analytics.
Para usar funções do Analytics O Python versão 3.5.x foi completamente testado e é totalmente compatível. Você
integradas à linguagem de pro- pode usar versões diferentes, como 3.3.x ou 3.6.x. No entanto, essas versões
gramação Python, você deve ins- não têm a mesma garantia de testes e compatibilidade com o Analytics da versão
talar e configurar: 3.5.x.
o Python versão 3.3.x ou pos- Ao instalar o Python, você também precisa configurá-lo para ser executado no
terior (32 bits) seu sistema. Para obter mais informações, consulte "Configuração do Python
o Variável de ambiente para uso com o Analytics" Na página 933.
PYTHONPATH
o Variável de ambiente Nota
ACLPYTHONDLL Você não precisa instalar o Python se não pretende usar funções
do Analytics integradas a essa linguagem.
A cópia local do mecanismo do Python contido no diretório de ins-
talação do Analytics não é destinada ao uso com as funções
Python do Analytics ou para uso geral do Python. Você deve ins-
talar uma instância separada do Python para essas finalidades.
Para usar o Conector do ACL o Você não precisa instalar o Oracle Instant Client se não quiser usar o Conec-
para Oracle, você precisa ins- tor do ACL para Oracle.
talar: o O número de bits do Oracle Instant Client deve corresponder ao número de
bits do sistema operacional. Se um Instant Client de 32 bits for instalado em
o Oracle Instant Client 11g ou
uma máquina de 64 bits, a conexão falhará.
12c o Se estiver usando o conector com o Analytics Exchange e instalar o Oracle Ins-
tant Client depois do Servidor AX, você precisa reiniciar o Serviço do Analytics
Exchange antes de poder usar o conector.
Requisitos de hardware
Nota
O melhor desempenho do Analytics em um ambiente de produção pode exigir mais recur-
sos do que a especificação mínima.
100 GB ou mais
Além do espaço em disco rígido necessário para a instalação dos
arquivos de aplicativo e pré-requisitos do Analytics, é necessário
Espaço em disco rígido
espaço adicional significativo se um computador for usado para
(armazenamento de dados) armazenar extrações de dados, arquivos simples e resultados.
Obtenha o instalador
Obtenha o instalador do contato principal da organização junto à Galvanize. Se você for o contato principal:
l Com acesso à Internet: obtenha o instalador da página de downloads do Launchpad (http://www.a-
clgrc.com/)
l Sem acesso à Internet: solicite a ajuda do seu representante da Galvanize para obter o instalador
do Launchpad
Extraia o instalador
1. Clique duas vezes no pacote de instalação do ACL para Windows (ACLforWindows141.exe).
2. Se uma caixa de diálogo de aviso de segurança for exibida, verifique as informações listadas e clique
em Sim .
3. Selecione o idioma que deseja usar na instalação e clique em OK.
4. Na página Localização para extrair arquivos , clique em Extrair.
Após os arquivos serem extraídos, o instalador será iniciado automaticamente.
Instale os pré-requisitos
Se for solicitada a instalação de pré-requisitos, clique em Instalar.
Após a instalação dos pré-requisitos, o instalador continua automaticamente.
Inicie o Analytics
Para iniciar o Analytics, execute uma das seguintes ações:
Para criar um projeto do Analytics novo e vazio Em Criar, clique em Projeto analítico
Para abrir um projeto do Analytics (.acl) recente ou de Em Arquivos recentes de análises ou em Arquivos de
amostra Amostra, clique no nome de um projeto
Como funciona?
Para executar scripts do Python, o Analytics deve poder chamar o executável do Python e encontrar os
scripts que está instruído a executar. O Analytics usa a variável de ambiente PATH para localizar o Python
e a variável de ambiente PYTHONPATH para localizar scripts.
Nota
Se você editar um script do Python, deverá atualizar a exibição do projeto do Analytics
para usar a versão mais recente do script do Python. A forma mais simples de atualizar a
exibição é fechar e reabrir tabela em que estiver trabalhando.
O que é Unicode?
O Unicode é um padrão de codificação de texto que usa dois ou mais bytes para representar cada carac-
tere, com um único conjunto de caracteres contendo todos os caracteres de todos os idiomas. As edições
Unicode dos produtos da Galvanize permitem que você exiba e trabalhe com arquivos e bancos de dados
que contêm dados codificados em Unicode em todas as linguagens modernas.
Nota
O Analytics e o Motor AX oferecem suporte a dados Unicode codificados no formato little-
endian (LE). Esses produtos não podem ser usados para analisar dados codificados no for-
mato big-endian (BE).
comando IMPORT DELIMITED que especifica um valor de WID de 7 no Analytics não Unicode, será
necessário atualizar o valor de WID para 14 para produzir o mesmo resultado no Analytics Unicode.
Além disso, para dados Unicode, especifique uma posição inicial em bytes ímpar para os campos e um
número par de bytes para comprimentos de campo. A especificação de uma posição inicial par ou de um
comprimento ímpar pode causar exibição incorreta de caracteres.
Não Unicode
Unicode
Funções de conversão
l PACKED( )
l STRING( )
l UNSIGNED( )
l VALUE( )
l ZONED( )
Funções de cadeia
l AT( )
l BLANKS( )
l INSERT( )
l LAST( )
l LENGTH( )
l REPEAT( )
l SUBSTRING( )
Funções diversas
l FILESIZE( )
l LEADING( )
l OFFSET( )
l RECLEN( )
l DBYTE( ): retorna a interpretação do caractere Unicode de um byte duplo em uma posição deter-
minada em um registro
l DTOU( ): converte um valor de data para exibição de cadeia Unicode correta com base na con-
figuração de local especificada
l HTOU( ): devolve o equivalente Unicode de um valor de cadeia hexadecimal especificado. É o
inverso da função DHEX( )
l UTOD( ): converte uma cadeia Unicode específica de um local em um valor de data do Analytics
Pré-requisitos
Para executar scripts do R no Servidor AX, é necessário:
1. Instalar uma versão compatível da linguagem de script do R em seu computador do Servidor AX.
2. Adicionar a extensão .r à lista autorizada de extensões de arquivos no Servidor AX.
3. No Analytics, crie um projeto para trabalhar e importe no Servidor AX.
Nota
Para obter ajuda para finalizar esses pré-requisitos, entre em contato com seu admi-
nistrador do Analytics Exchange e consulte:
l Requisitos do Servidor AX
l Inclusão de extensões de arquivos na lista autorizada
Arquivos de amostra do R
Os seguintes arquivos de amostra do R contêm scripts comuns que concatenam duas cadeias e retornam
uma única cadeia associada por um caractere de espaço. Esses exemplos são para mostrar como os
scripts do R são executados no Servidor AX, e não como analisar dados com o R.
análise_a.r
conc<-function(x, y) {
paste(x, y, sep=" ")
}
print(conc(valor1, valor2))
análise_b.r
conc<-function(x, y) {
paste(y, x, sep=" ")
}
print(conc(valor1, valor2))
COMMENT
//ANALYTIC Teste de integração do R
verificar integração do R no Servidor AX
//DATA t_tmp
//FILE análise_a.r
//FILE análise_b.r
//RESULT TABLE resultados
END
OPEN t_tmp
CLOSE t_tmp
COMMENT
//ANALYTIC Teste de integração do R
verificar integração do R no Servidor AX
//DATA t_tmp
//FILE análise_a.r
//FILE análise_b.r
//RESULT TABLE resultados
END
OPEN t_tmp
CLOSE t_tmp
l Aplicativos de análise
l nomeProjetoACL
l nomeScriptAnálise
l Dados
l t_tmp
l Arquivos relacionados
l análise_a.r
l análise_b.r
Execução da análise
No Explorador do Servidor do Cliente AX, clique com o botão direito do mouse na análise e selecione
Executar. Os scripts do R são executados como parte da análise e você pode acessar a tabela de resul-
tados no Cliente Web AX.
Resultados
l Aplicativos de análise
l nomeProjetoACL
l nomeScriptAnálise
l Dados
l resultados
l Arquivos relacionados
l análise_a.r
l análise_b.r
Tabela de resultados
l valor
l valor de teste
l teste de valor
Pré-requisitos
Para executar scripts do Python no Servidor AX, é necessário:
1. Instalar uma versão compatível da linguagem de script do Python em seu computador do
Servidor AX.
2. Definir a variável de ambiente PYTHONPATH no Servidor AX.
3. No Analytics, crie um projeto para trabalhar e importe no Servidor AX.
Nota
Para obter ajuda para finalizar esses pré-requisitos, entre em contato com seu admi-
nistrador do Analytics Exchange e consulte:
l Requisitos do Servidor AX
l Configuração do Python para uso com o Servidor AX
Nome do arquivo: lambda_exemplo.py
COMMENT
//ANALYTIC Teste de integração Python
verificar integração do Python no Servidor AX
//DATA py
//DATA resultados
//RESULT TABLE resultados
END
OPEN py
GROUP
ASSIGN v_máx = 11
ASSIGN v_contador = 1
LOOP WHILE v_contador < v_máx
COMMENT
//ANALYTIC Teste de integração Python
verificar integração do Python no Servidor AX
//DATA py
//DATA resultados
//RESULT TABLE resultados
END
OPEN py
GROUP
ASSIGN v_máx = 11
ASSIGN v_contador = 1
LOOP WHILE v_contador < v_máx
EXTRACT PYNUMERIC("lambda_exemplo,minhaFunção",0,v_contador) AS "Valor dos resul-
tados" TO "resultados.fil"
v_contador = v_contador + 1
END
END
CLOSE py
1. No Cliente AX, crie uma coleção e pasta para abrigar o projeto do Analytics.
2. Para importar o projeto:
a. Clique com o botão direito do mouse na pasta criada e selecione Importar.
b. Vá para o projeto do Analytics no seu computador, selecione o arquivo do projeto .acl e clique
em Abrir.
Nota
Certifique-se de importar os arquivos de dados de origem para importar a tabela py
com seu projeto do Analytics.
l Aplicativos de análise
l nomeProjetoACL
l nomeScriptAnálise
l Dados
l py
l Arquivos relacionados
Execução da análise
No Explorador do Servidor do Cliente AX, clique com o botão direito do mouse na análise e selecione Exe-
cutar. O script do Python é executado como parte da análise e você pode acessar a tabela de resultados no
Cliente Web AX.
Nota
Quando o script for executado, o executável do Python procura o arquivo de script no dire-
tório PYTHONPATH da máquina que hospeda o Servidor AX. Se o seu administrador do
Analytics Exchange não tiver carregado o arquivo nesse diretório, a análise falhará.
Resultados
Explorador do servidor depois de executar a análise
l nomeColeção
l nomePasta
l Aplicativos de análise
l nomeProjetoACL
l nomeScriptAnálise
l Dados
l py
l resultados
l Arquivos relacionados
Tabela de resultados
l Valor de resultados
l 1
l 4
l 9
l 16
l 25
l 36
l 49
l 64
l 81
l 100
1000 Nenhum arquivo de preferência foi especificado. Um novo arquivo de preferência padrão foi criado.
1001 Existe um problema com o arquivo de preferência. Um novo arquivo de preferência padrão foi criado.
1002 O projeto foi atualizado de uma versão anterior. Uma cópia foi gravada com a extensão .old.
1003 O arquivo de projeto não pode ser processado. O último projeto salvo foi utilizado.
1008 O arquivo de projeto .old especificado não pode ser utilizado. É necessário especificar um arquivo de pro-
jeto com a extensão .ACL.
1011 O arquivo de projeto especificado não pode ser salvo como uma versão anterior.
Erros de comando
A tabela a seguir lista os códigos de erro retornados quando uma análise falha devido a um comando invá-
lido do ACLScript. O número do código de erro retornado identifica o comando que falhou.
Código
de erro Comando
1 SAMPLE
2 EXTRACT
3 LIST
4 TOTAL
5 DEFINE
6 COMMENT
7 QUIT
8 STOP
9 BYE
10 USE
11 OPEN
12 SAVE
13 DISPLAY
14 ACTIVATE
15 CLOSE
16 HELP
17 COUNT
18 STATISTICS
19 HISTOGRAM
20 STRATIFY
21 SUMMARIZE
22 EXPLAIN
23 GROUP
Código
de erro Comando
24 ELSE
25 END
26 CANCEL
27 SUBMIT
28 DELETE
29 RANDOM
30 SORT
31 FIND
32 DIRECTORY
33 TYPE
34 DUMP
35 INDEX
37 SET
40 DO
41 TOP
42 EXPORT
43 VERIFY
44 SEEK
45 JOIN
46 MERGE
47 SEQUENCE
48 CALCULATE
49 PRINT
Código
de erro Comando
50 LOCATE
51 RENAME
54 COPY
55 REPORT
56 EJECT
58 LET
59 ACCUMULATE
63 ACCEPT
64 ASSIGN
65 AGE
66 CLASSIFY
67 PROFILE
68 DO REPORT
69 LOOP
70 PAUSE
71 SIZE
72 EVALUATE
73 DIALOG
74 IF
75 GAPS
76 DUPS
77 SQLOPEN
78 PASSWORD
Código
de erro Comando
79 IMPORT
80 REFRESH
81 NOTIFY
82 CONNECT
83 RETRIEVE
84 FIELDSHIFT
85 BENFORD
86 CROSSTAB
87 (não usado)
88 ESCAPE
89 NOTES
90 FUZZY DUPLICATE
91 EXECUTE
-10 Os resultados de análise não podem ser salvos porque a pasta de resultados de destino foi excluída
após o início da análise.
-16 Não é possível executar devido a um erro na configuração das propriedades do servidor.
-17 Não foi possível criar um diretório de resultados com nome único.
Código
de erro Mensagem de erro
-23 Falha da publicação. Um ou mais nomes de coluna de tabela são muito longos.
-24 Falha da publicação. Valores inválidos nas células de dados de uma tabela do Analytics.
-25 Falha da publicação. Nenhum tipo de dados suportado nos campos da tabela.
-27 A tarefa não foi executada. O usuário foi removido ou não possui permissão.
-28 A tarefa não foi executada. Erro inesperado. Consulte o log do servidor e do Analytics para obter mais
detalhes.
-29 Não é possível copiar os arquivos de dados. A análise falhou porque os arquivos de dados necessários
não foram copiados para o diretório de tarefas.
-31 Falha da publicação. O arquivo de mapeamento de exceções não pôde ser localizado.
-34 Falha ao armazenar resultados da tarefa. Verifique se há espaço suficiente na unidade que armazena a
pasta de trabalhos e se nenhum arquivo de dados está bloqueado.
l Se o comando Total for o terceiro comando em um grupo, os resultados estarão contidos na variável
TOTAL4.
l Se o segundo comando Total for o quinto comando em um grupo, os resultados estarão contidos na
variável TOTAL6.
Variável do sis-
tema Comando Valor
Variável do sis-
tema Comando Valor
Variável do sis-
tema Comando Valor
Nota
Quando o Analytics identifica o valor mais alto,
valores duplicados não são eliminados. Por exem-
plo, se os valores em ordem decrescente forem
100, 100, 99 e 98, o terceiro maior valor será 99 e
não 98.
Palavras-chave reservadas
O Analytics reserva algumas palavras-chave para finalidades específicas. Não é possível nomear campos
ou variáveis com esses valores chave reservados.
É possível usar uma palavra-chave reservada como nome de campo ou variável adicionando um sufixo a
ela. Por exemplo, o nome "Field" não é permitido, mas "Field_1" ou "Field_2" são permitidos.
Nota
Em alguns casos, também não é possível usar abreviações de palavras reservadas, como
"Can" (CANCEL), "Form" (FORMAT) ou "Rec" (RECORD).
Palavra-chave reser-
vada Propósito no Analytics
AXRunByUser Uma variável do sistema que armazena o nome de usuário do usuário que executa um script
de análise no Servidor AX no formato "domínio\nome_de_usuário".
LINE Usado pelo comando DEFINE COLUMN para especificar se um campo apresenta quebra em
um número especificado de linhas.
Palavra-chave reser-
vada Propósito no Analytics
NOZEROS Em um campo numérico ou relatório, exibe ou imprime valores zero como brancos.
OTHER Indica quais campos ou expressões incluir, mas não subtotalizar, na saída do comando
SUMMARIZE.