Não homologado
Copyright © 1998, 1999 DATASUL S.A. Todos os direitos reservados.
Nenhuma parte deste documento pode ser copiada, reproduzida, traduzida ou
transmitida por qualquer meio eletrônico ou mecânico, na sua totalidade ou
em parte, sem a prévia autorização escrita da DATASUL S.A., que reserva-se
o direito de efetuar alterações sem aviso prévio. A DATASUL S.A não assume
nenhuma responsabilidade pelas conseqüências de quaisquer erros ou
inexatidões que possam aparecer neste documento.
DATASUL S.A.
Av. Santos Dumont, 831, Joinville, SC, CEP 89.222-900
2.00 14/07/99
i
Índice
Prefácio.............................................................................................. iii
Prefácio
CAPÍTULO 1
Introdução
Objetivo O Manual de Referência do Data Viewer 2.02 tem como objetivo de mostrar
ao usuário como trabalhar com o Data Viewer 2.02. Através de telas,
exemplos, etc., deve ser mostrado os passos de elaboração de relatórios,
assim como poder modificar os mesmo ou até eliminá-los.
O Data Viewer é uma ferramenta para extração de dados, voltada ao usuário
final, que possibilita a elaboração de relatórios e exportação de dados através
da geração de um programa com código fonte em Progress de interface
gráfica.
Sua principal finalidade é auxiliar o usuário em suas tarefas do dia-a-dia,
permitindo confeccionar relatórios dentro de necessidades específicas
obedecendo as limitações da ferramenta.
Características As principais características do módulo são:
• Ambiente Windows 95;
• Armazena todas as definições dos bancos de dados a serem utilizados,
em uma base própria;
• Permite a agregação da bases específicas;
• Disponibiliza manutenção no relacionamento das tabelas a serem
utilizadas;
• Utiliza rótulos do dicionário de dados, que podem ser alterados pelo
usuário;
• Permite que o mesmo relatório seja gerado em forma de listagem ou
exportação de dados;
• Fácil manipulação dos objetos no layout do relatório;
2
Criação do
Fonte Compilação do
Data Viewer (.W e .P) Fonte
Programa
RCODE
2.02 Fonte
CAPÍTULO 2
Público Alvo
Objetivo O principal usuário do Data Viewer é o usuário final que, na maioria dos
casos, não possui conhecimento técnico de linguagem de programação. Além
destes, é destinado a profissionais das áreas de desenvolvimento, operações,
assistência técnica e parceiros.
Visão geral A utilização da ferramenta pode ser exemplificada como:
CAPÍTULO 3
Geração do Utilização do
Fonte Progress Fonte Progress
Gerado
Fonte
Gerado
(.W/.P) Fonte
Compilado
Compilação RCODE
Fonte
Compilado
RCODE
Cópia do Programa Compilado
9
CAPÍTULO 4
Objetivo Este processo tem por objetivo orientar o usuário quanto ao acesso.
Botão Relatórios: Este botão tem por objetivo detalhar de que forma é
feita a manutenção nos relatórios do usuário no Data Viewer. O mesmo é um
atalho para a Função Manutenção do Relatório.
Botão Tabelas: Este botão tem por objetivo realizar a manutenção nas
tabelas que fazem parte do relatório. O mesmo é um atalho para a Função
Tabelas do Relatório.
Botão Campos: Este botão tem por objetivo realizar a manutenção dos
campos que fazem parte do relatório. O mesmo é um atalho para a Função
Campos do Relatório.
Botão Seleção: Este botão tem por objetivo realizar a manutenção dos
campos a serem utilizados como seleção para o relatório (faixa inicial e final).
O mesmo é um atalho para a Função Seleções do Relatório.
Botão Geração WEB: Este botão tem por objetivo a Geração WEB dos
relatórios. Gera a interface, faz a compilação, porém a verificação de erro
(caso ocorra) é feita no WEBSpeed. O mesmo é um atalho para a Função
Geração WEB.
Botão Desfazer: Este botão tem por objetivo questionar o usuário se ele
“Deseja desfazer as alterações ?”.. O mesmo é um atalho para a Função
Desfazer.
Botão Atualizar: Este botão tem por objetivo questionar o usuário se ele
“Deseja salvar as alterações ?”. O mesmo é um atalho para a Função
Atualizar.
Botão Fonte Livre: Este botão tem por objetivo permitir ao usuário
escrever código Progress ou até mesmo chamar outros programas, includes
em pontos específicos do relatório. O mesmo é um atalho para a Função
Fonte Livre.
CAPÍTULO 4 Processo Acesso ao Data Viewer 13
CAPÍTULO 5
Processo Relatórios
Campo Descrição
Relatório Inserir o nome do relatório a ser gerado. Deverá ter 6
(seis) caracteres quaisquer no nome, mais 1 (uma) ou 2
(duas) letras, variando de "a" até "bz".
Exemplo:
Relatório: CDR004a.
Título Inserir o título para o relatório que está sendo criado. Este
título será impresso no cabeçalho de cada página do
relatório.
Exemplo:
Relatório: CDR004a
Título: Listagem de Produtos Faturados.
Nota
Este título de classificação, será impresso na página de
parâmetros do relatório e, também será utilizado no
programa a ser gerado para apresentar todas as
classificações deste relatório, podendo-se a partir deste,
identificar e chamar o relatório pela classificação.
Nota
layout.
Exportação Tipo Será realizada a exportação dos dados para os objetos do
Separador layout do relatório a um arquivo texto separando estes
conforme o separador definido pelo usuário. Obedecendo
ainda quebra de linha por cada grupo do layout do
relatório.
Exportação Tipo Será realizada a exportação dos dados para os objetos do
Progress layout do relatório a um arquivo texto utilizando-se o
método de exportação do Progress, o qual utiliza como
separador um espaço, para campos do tipo caracter são
exportados entre aspas, campos lógicos como yes/no.
Separador Informar o tipo de separador a ser utilizado para identificar
os campos dos dados a serem exportados.
Podem ser: tabulação, espaço, sustenido, vírgula, ponto e
vírgula ou outro, a escolha do usuário.
Perfil Informar se o relatório a ser gerado será utilizando no
produto EMS-200, EMS-500 ou Padrão (outro produto).
Tipo Gráfico Informar o tipo de gráfico que será gerado.
Suporte HTML Definir se o relatório gerado poderá ter sua saída em
HTML ou não.
Relatório Padrão Definir se o relatório será padrão, ou seja, apenas a
empresa criadora do relatório poderá alterá-lo.
Nota
Pode-se perfeitamente modificar um relatório do tipo listagem para um do tipo
exportação e vice-versa, porém, como já mencionado anteriormente, caso a
listagem tenha cálculos variados ou totais serão desconsiderados para a
exportação.
Faixa de valores
inicial e final para
leitura das tabelas
disponíveis.
Campo Descrição
Título Possibilita a alteração do título da tela de acompanhamento no
Acompanhamento processamento do relatório.
Atributo Possibilita a alteração do campo da tela de acompanhamento no
Acompanhamento processamento do relatório. Pode ser selecionado o campo de
uma das tabelas utilizadas para fazer o relatório.
Função Atualizar
Objetivo Esta função tem por objetivo questionar o usuário se ele “Deseja salvar as
alterações ?”.
Descrição Selecionar no menu do Data Viewer a opção “Relatório”, item “Atualizar” ou
por meio do botão “Atualizar”, onde existirá acesso à tela Atualizar.
22
Função Desfazer
Objetivo Esta função tem por objetivo questionar o usuário se ele “Deseja desfazer as
alterações ?”.
Descrição Selecionar no menu do Data Viewer a opção “Relatório”, item “Desfazer” ou
por meio do botão “Desfazer”, onde existirá acesso à tela Desfazer.
23
CAPÍTULO 6
Processo Colunas
Objetivo Este processo tem por objetivo descrever as funções Campos do Relatório,
Campos Calculados, Propriedades, Reordena Campos e Grupos.
Incluir campo
Eliminar campo
Verificando o layout:
Campo Descrição
Atributo Inserir o nome do atributo (campo calculado) que
irá armazenar um valor informado.
Rótulo Inserir o título ou descrição para o campo
calculado cadastrado.
Tipo Dado Selecionar tipo de informação que será
armazenado.
As opções disponíveis são: caracter, inteiro,
CAPÍTULO 6 Processo Colunas 27
Feito isto, basta clicar sobre o botão “OK” e, sair da tela de manutenção de
campos calculados. Este campo calculado será apresentado no layout do
relatório. Veja:
CAPÍTULO 6 Processo Colunas 29
Campo Descrição
Tabela Informar o nome da tabela, caso o objeto selecionado seja um
campo calculado, este aparecerá em branco.
Atributo Informar o nome do objeto selecionado.
Tipo Dado Informar o tipo de dado ou conteúdo do objeto.
Exemplo:
Caracter: Conversor de Voltagem
Inteiro: 147
Decimal: 147,36
Data: 21/04/1998
Lógico: Sim
do relatório.
Grupo Informar o número do grupo do campo selecionado no layout do
relatório.
Tamanho Col-Label Informar o espaço necessário para rótulo de coluna mais
tradução do campo selecionado no layout do relatório.
Tamanho Label Informar o espaço necessário para rótulo de coluna mais
tradução do campo selecionado no layout do relatório.
Exibir Habilitar o campo que específica a condição em que serão
mostrados os registros lidos.
Sempre: serão mostrados todos os registros lidos.
Primeiro: será mostrado apenas o primeiro registro lido dentro
de uma classificação escolhida pelo usuário.
Último: será mostrado apenas o último registro lido dentro de
uma classificação escolhida pelo usuário.
Grupo Informar o tipo de descrição ou título utilizado no grupo.
No label: não mostra a descrição ou título dos campos no
layout.
Side label: mostra a descrição ou título dos campos no layout
ao lado do mesmo (em linha).
Column-label: mostra a descrição ou título dos campos no
layout em cima do mesmo (em coluna).
Nota
Quando selecionada uma das opções de label no item grupo,
esta será aplicada para todo o grupo do objeto selecionado.
Na tela acima, deve-se clicar sobre o campo que é desejado utilizar como
separador de grupo, exemplo o “nr-nota-fisc” e, após clicar sobre o botão
“Separa”, depois pressionar o botão OK.
Botão Descrição
Propriedades Possibilita informar se o campo selecionado quebra página quando
mudar de valor.
Nota
Os botões Propriedades e Separa, somente ficarão habilitados
quando selecionado um campo que possua classificação no relatório
ou um campo calculado e o próximo é uma classificação.
Nota
Grupo é uma divisão hierárquica, que possibilita ao programa quebrar as
informações mediante os grupos informados, para melhor visualizar as
informações.
34
Podemos citar como exemplo uma Listagem de Notas Fiscais por Clientes,
onde teríamos no grupo 1 (um) os dados do cliente e, no grupo 9 (nove) as
informações referentes a nota fiscal, item, valor mercadoria e valor total da
nota.
Consultando o exemplo, observamos que há dois grupos:
Grupo 1:
CAPÍTULO 6 Processo Colunas 35
Grupo 9:
37
CAPÍTULO 7
Processo Geral
Campos Descrição
Ordem Informar se a classificação do campo selecionado, será de forma
ascendente (menor para maior) ou, descendente (maior para menor).
Visualização Informar se deseja visualizar as tabelas e campos pelo nome ou pela
descrição.
Nota
É permitido ao usuário através do botão "Edita", editar a classificação e fazer
alterações nesta, caso necessário.
Exemplo:
Temos uma listagem de notas ficais e queremos que seu resultado seja
classificado apenas pelo mês da nota e não toda a sua data.
Classificação: nota-fiscal.data-emissao
Edita: month(nota-fiscal.data-emissao).
Utilizamos assim a função month do progress para resgatar o valor do mês
em uma data e, temos o relatório classificado apenas por mês.
Conferindo seleções:
Botão Incluir
Botão Modificar
Campo Descrição
Variável Inserir o nome da variável a ser cadastrada.
Este campo não pode ter espaço em branco, caracteres
especiais ou acentuação.
Rótulo Inserir o título ou descrição para a variável.
Este campo pode ter espaço em branco, caracteres
especiais ou acentuação.
Formato Inserir o formato que será utilizado para informar o
conteúdo da variável.
Inicial Valor Inicial que será apresentado ao solicitar o conteúdo
para a variável.
Tipo Dado Selecionar o tipo de informação que a variável
armazenará.
44
Opções disponíveis:
• Caracter: Conversor de Voltagem;
• Inteiro: 147;
• Decimal: 147,36;
• Data: 21/04/98;
• Lógico: sim.
Visualizador Além do formato, pode-se definir outras maneiras de
mostrar o conteúdo da variável (fill-in, radio-set, combo-
box).
Nota
Somente é permitida seleção de outros formatos, para
variáveis do tipo inteiro ou caracter. Variáveis do tipo
lógico, tem como formato padrão "toggle-box" ou "check-
box".
Botão Descrição
Encontra Faz referência da ocorrência informada com a existência de uma
ocorrência igual em outra tabela a ser informada.
Não Faz referência da ocorrência informada com a inexistência de uma
Encontra ocorrência igual em outra tabela a ser informada.
Seta direita ( Adicionar abre parênteses na linha da ocorrência selecionada.
Seta Eliminar abre parênteses na linha da ocorrência selecionada.
esquerda (
Seta direita ) Adicionar fecha parênteses na linha da ocorrência selecionada.
Seta Eliminar fecha parênteses na linha da ocorrência selecionada.
esquerda )
E Adicionar conector lógico de obrigatoriedade na linha da ocorrência
selecionada.
46
Adicionar total do
campo
selecionado ao
relatório.
Nota
Para que seja permitida a Manutenção de Totais, é necessário ter pelo menos
1 (um) campo no layout do relatório que seja do tipo de dado inteiro ou
decimal. Cada total possui vínculo direto com uma classificação do relatório
ou geral.
Botão Gerar
Código
Campo Descrição
Atributo Informar o nome do atributo (variável) que
está sendo cadastrada para armazenar o
cálculo.
50
gera.
Atributo: atributo de uma tabela utilizada em
classificação do relatório, ou geral.
Campo Acumulado Tabela: tabela utilizada para leitura no relatório.
Atributo: atributo do tipo inteiro ou decimal, de
uma tabela utilizada para o relatório.
Definição/Primeiro/Cálculo/Fim Armazena o código progress responsável para
que seja gerado o cálculo, este código pode ser
alterado pelo usuário.
Após clicar sobre o Botão Gerar Código, e
preenchidos os campos anteriores, são
geradas as definições e fórmulas dos dados
informados, dentro dos respectivos pontos
(Definição, Primeiro, Cálculo, Fim).
• Definições: Código com as definições do
cálculo;
• Primeiro: Código para zerar o cálculo;
• Cálculo: Fórmula para atribuir o valor
desejado ao cálculo;
• Fim: Finalização do Cálculo.
Local do relatório
onde será utilizado
o Fonte Livre
CAPÍTULO 8
Processo Geração
Objetivo Este processo tem por objetivo descrever as funções Teste, Fonte, Geração
WEB e Editor.
Função Teste
Objetivo Esta função tem por objetivo possibilitar a geração do programa de interface
do relatório e do programa de processamento, além de compilar e executar
este programas.
Descrição No menu do Data Viewer, opção “Geração”, item “Teste” ou pelo botão
“Teste”, efetuamos a geração do relatório (teste).
Função Fonte
Objetivo Esta função tem por objetivo possibilitar a geração do programa de interface
do relatório e do programa de processamento, além de compilar estes
programas. Esta opção não executa os programas gerados.
58
Função Editor
Objetivo Esta função possibilita acessar o Editor Progress.
Descrição No menu do Data Viewer, opção “Geração”, item “Editor” ou pelo botão
“Editor”, permite acesso a tela Procedure Editor.
61
CAPÍTULO 9
Processo Administração
Objetivo Este processo tem por objetivo descrever as funções Administrar Tabelas,
Administrar Relacionamentos, Manter Relacionamentos, Manter Tabelas,
Manter Campos, Manter Usuários, Alterar Usuário Relatório, Permissões
Usuários (Tabelas / Campos), Perfis (Manter, Exportar, Importar, Manter
Blocos x Perfil), Dados (Exportar / Importar), Geração (Relatórios / Menu),
ProTools.
Será visto neste capítulo, como trabalhar com as rotinas de Administração do
Data Viewer.
Estrutura a partir
do pai.
Estrutura a partir
do filho.
Botão Incluir
Para incluir uma tabela virtual, na tela de Manutenção de Tabelas, clicar sobre
o botão “Incluir”:
CAPÍTULO 9 Processo Administração 67
Campo Descrição
Tabela Inserir o nome da tabela a ser criada.
Tabela Origem Selecionar uma tabela origem, onde a nova será uma cópia da
origem.
Descrição Inserir uma descrição para a tabela criada.
Tipo Tabela Assinalar o tipo de tabela que o usuário está criando (Física,
Virtual, Temporária).
Física: quando da criação de uma tabela do tipo física, esta será
considerada como uma tabela que deveria ter sido importada de
uma base de dados para o Data Viewer.
Nota
Tabela do tipo “Física” não deve possuir tabela origem.
Virtual: tabela virtual ou buffer, é uma cópia de uma tabela física.
Devendo sempre possuir uma tabela origem. Este tipo de tabela,
quando lida, apresenta os mesmos dados existentes em sua
tabela de origem.
Temporária: é uma tabela do tipo temporária, sem dados
inicialmente. O usuário deverá fazer uma rotina para carregá-la
com as informações desejadas. Pode possuir uma tabela de
origem ou não. Estas tabelas são definidas nos programas
gerados pelo Data Viewer como new shared, podendo ser
compartilhada por outros programas durante a mesma seção
Progress.
Cópia Quando assinalada a opção “Copia Relacionamentos”, todos os
Relacionamentos relacionamentos que a tabela origem possui, serão copiados para
a tabela a ser criada. Porém, quando da manutenção de
relacionamentos na tabela origem, este não ocorrerá
automaticamente para as tabelas derivadas.
Para modificar ou eliminar uma tabela virtual, clicar nos respectivos botões na
tela de Manutenção de Tabelas.
Botão Fórmula: só
pode ser informada
para atributos
virtuais.
Campo Descrição
Tabela Nome da tabela a qual o atributo selecionado pertence.
Atributo Inserir o nome do atributo selecionado.
Rótulo Inserir a descrição ou título do atributo selecionado para ser apresentado
Coluna na forma de coluna.
Rótulo Inserir a descrição ou título do atributo selecionado para ser apresentado
na forma de linha.
Formato Inserir a forma a qual o conteúdo do atributo selecionado vai ser
apresentado.
Tipo Dado Selecionar tipo de informação a qual o atributo selecionado vai
armazenar.
As opções disponíveis são: caracter, inteiro, decimal, data, lógico.
Tipo Assinalar uma das opções:
Campo • Virtual: armazena uma fórmula no seu conteúdo (define uma
variável no programa do relatório que o utilizar).
• Físico: não armazena fórmula, apenas seu próprio conteúdo para o
registro.
Campo Quando assinalado, informar se o atributo possui um texto no seu
Narrativa conteúdo para o registro.
70
Campo Descrição
Usuário Inserir o nome do usuário que terá acesso ao Data Viewer.
Caminho Editor Texto Inserir o caminho editor texto.
72
Campo Descrição
Senha Atual Inserir a senha atual para alteração.
Quando este programa for acessado pela primeira vez, o usuário
não precisa informar a senha atual, devido a mesma não existir.
Será informado apenas a nova senha, confirmando esta senha.
Nova Senha Inserir a nova senha do usuário.
Confirma Senha Confirmar a nova senha digitada no campo "Nova Senha".
Campo Descrição
Relatório Origem Selecionar o relatório de origem.
Usuário Destino Selecionar o usuário destino do relatório.
Relatório Destino Inserir o nome do relatório destino. O programa apresenta o nome
do relatório origem, possibilitando alterações quando necessário.
Título Inserir o título do relatório, sendo que o programa apresenta o
título do relatório origem, permitindo alterações quando
necessário.
Título Inserir o título de classificação, sendo que o programa apresenta
Classificação o título classificação origem, possibilitando alterações quando
necessário.
Nota
Após alterar o usuário do relatório, o usuário anterior do relatório de origem
não mais terá este relatório na sua lista de relatórios na tela de Manutenção
de Relatórios.
74
Botão Incluir
Botão Eliminar
CAPÍTULO 9 Processo Administração 75
Botão Incluir
Botão Eliminar
Nota
Podemos definir Perfil, como sendo um conjunto de blocos que fazem a
integração com determinado produto.
O usuário que não tiver permissão sobre um produto específico, não terá
acesso sobre os blocos daquele produto.
80
Campo Descrição
Exportação Definições: quando assinalado, indica que serão exportadas as
informações relacionadas as base carregadas para trabalhar no Data
Viewer, ou seja, são as tabelas, campos, índices, relacionamentos
entre outros.
Dados: quando assinalado, habilita os campos Perfis, Relatórios e
Seleção.
Indica que serão exportadas todas as informações referentes aos
relatórios existentes no Data Viewer, ou seja, tudo que for necessário
CAPÍTULO 9 Processo Administração 81
Campo Descrição
Relatórios Definições: quando assinalado, indica que serão importadas as
informações relacionadas as base carregadas para trabalhar no Data
Viewer, ou seja, são as tabelas, campos, índices, relacionamentos
entre outros.
Dados: quando assinalado, Indica que serão importadas todas as
informações referentes aos relatórios existentes no Data Viewer, ou
seja, tudo que for necessário para que este relatório seja gerado.
Diretório Informar diretório para o qual foram geradas ou exportadas
(anteriormente) as informações (relatórios).
82
Através das faixas por Usuário e Relatório, pode ser feita a geração de todos
os relatórios, de um ou vários usuários, de uma só vez.
Opções de geração:
• Tela Relatório: programa com tela de interface do relatório, página de
seleção, parâmetros e impressão.
• Fonte Relatório: programa com lógica do relatório, é o programa que faz o
processamento e impressão dos dados para o relatório.
• Tela Classificação: programa com tela que apresentará todas as
classificações de um mesmo relatório.
• Tela Web: quando assinalado, possibilita Geração WEB.
CAPÍTULO 9 Processo Administração 83
Função ProTools
Objetivo Esta função tem por objetivo disponibilizar uma barra de ferramentas para
auxiliar o usuário do Data Viewer.
Descrição Através do menu do Data Viewer, opção “Administração” item “ProTools”,
acessamos o ProTools:
84
CAPÍTULO 10
Objetivo Este processo tem por objetivo mostrar o formato e impressão de valores dos
atributos e variáveis do relatório.
Descrição O formato do atributo determina como seu valor será apresentado em tela ou
impresso, independente do valor armazenado no banco de dados.
Por exemplo, o atributo nome tem 40 caracteres no banco de dados, mas
para a impressão será utilizado o formato x(20), logo, apenas os vinte
primeiros caracteres serão impressos.
Valor inicial para os formatos conforme o tipo de dado:
Tipo de Dado Formato Inicial
Caracter X(8)
Data 99/99/99
Decimal ->>,>>9.99 *
Inteiro ->,>>>,>>9 *
Lógico Sim / Não
Nota: Caso seja utilizado o formato Europeu na seção Progress (-E), o valor
inicial para formato decimal é ->>.>>9,99 e para inteiro é ->.>>>.>>9. Mais
informações ver item "Impressão para Formato Numérico".
Símbolo Objetivo
+ Posicionado na frente do número, indica que o
valor mencionado é positivo.
- Posicionado na frente do número, indica que o
valor mencionado é negativo.
> or z Caso o conteúdo do seu atributo seja (U) ou, não
utilize todo o formato, este deixará em branco ao
invés de preencher com zeros.
9 Indica um número. Caso o conteúdo do seu
atributo seja (0) ou, não utilize todo o formato,
este será preenchido com zeros.
* Indica um número. Caso o conteúdo do seu
atributo seja (0) ou, não utilize todo o formato,
este será preenchido com asterisco.
Impressão para Formato Data: o formato data traz como valor inicial dois
dígitos para o dia, dois para o mês e dois para o ano, (99/99/99) podendo este
último ser modificado para quatro dígitos (99/99/9999). Pode-se usar como
separador a barra (/) ou o traço (-).
Também como inicial vem a ordem (mês/dia/ano). Para modificar esta ordem,
basta na inicialização da seção Progress, setar o parâmetro (-d) com a ordem
desejada, como por exemplo, -d dmy, que representa dia, mês e ano.
Exemplos Formato Valor Impressão
99/99/99 3/10/1990 03/10/1990
99/99/9999 3/10/2090 03/10/2090
99-99-99 3/10/1990 03-10-90
99-99-99 3/10/2090 ???????? *
999999 3/10/1990 031090
999999 03/10/90 031090
99999999 03/10/1990 03101990
Nota: Neste exemplo o valor 3/10/2090 é muito grande para ser mostrado
naquele formato. A parte com o ano tem formato para impressão de "99" e o
valor é "2090", onde é necessário que no formato a parte do ano seja "9999",
em função do valor sair da centena atual.
89