EASYTRIEVE (Classic e Plus) é uma linguagem de programação de Terceira Geração, projetado para simplificar as tarefas típicas de programação, utilizada principalmente em sistemas comerciais, financeiros e administrativos para empresas e governos. É uma linguagem de programação, com recursos para acesso a arquivos e bases de dados, com comandos que trazem bastante facilidade principalmente para a geração de relatórios.

Fundamentos da Linguagem

É uma linguagem imperativa projetada para tornar mais fácil a manipulação de arquivos e produção de relatórios. É recomendado para iniciantes em técnicas de processamento de dados, pois possui uma assimilação fácil. Em geral, um programa Easytrieve pode aceitar arquivos de entrada múltiplo (SAM / ISAM / VSAM), acesso a bancos de dados (TMF / ADABAS/DB2), realizar a manipulação de arquivos (leitura / gravação / tipo), dados do processo (alfanumérico / numérico / acondicionado / binário), e invocar programas em COBOL e Assembler.

Classic v. Plus

Easytrieve (ou Easytrieve classic) é a primeira iteração da série Easytrieve e exige que o programador use uma estrutura rígida de programa e sintaxe. A segunda iteração Easytrieve era originalmente um produto independente, foi rebatizado como Easytrieve Plus. Easytrieve Plus inclui mudanças na estrutura do programa e sintaxe, o que torna muito mais poderoso e com uma iteração mais amigável com o programador. Easytrieve pode ser executado em mainframes ( z / OS , z / VM , z / VSE ), UNIX , Linux e Sistemas da Microsoft Windows

Similaridade com Cobol

A sintaxe de um programa Easytrieve é ​​muito semelhante ao COBOL. Eles compartilham muitas palavras dos mesmos tipos de dados e reservado, como "MOVE", "ADD", "SUBTRACT", "MULTIPLY", "DIVIDE", "CALL", "CASE", and "IF". Além disso, as "PROCEDURES" podem serem criadas em Easytrieve para permitir a funcionalidade modularizada.

Podemos citar algumas diferenças entre os dois, como: a definição de variável, a leitura de arquivos e geração de relatórios. Como COBOL, o Easytrieve tem muitos dos mesmos tipos de variáveis ​​(alfanumérico, numérico, binário, compactado, etc). A maior diferença é que Easytrieve não usa números de nível.

Leitura de arquivos de entrada é feita muito mais fácil em Easytrieve porque o processo é automatizado. O programador apenas referencia as variáveis ​​a serem utilizadas. Easytrieve lê automaticamente a próxima linha e a lógica se repete.

Gerar um relatório é simples em Easytrieve. O programador pode especificar cada detalhe de um relatório, incluindo seus títulos, campos, espaçamento, a ordem de classificação, quebras de controle, etc.

Estrutura da Linguagem

ENVIRONMENT | PARM ... | SECTION | |

LIBRARY | FILE ... | SECTION | DEFINE ... | | ... |

ACTIVITY | JOB | SECTION | (STATEMENTS) | | (JOB PROCEDURES) | | REPORT | | (REPORT PROCEDURES)| | SORT | | (SORT PROCEDURES) | | ... |

Cada programa Easytrieve contém a seguinte estrutura: ENVIRONMENT SECTION: Nesta parte, são estabelecidos os parâmetros para o programa. Uma área, opcional, de Ambiente (Environment), onde serão descritas as características de ambiente de instalação do Easytrieve. Também utilizada para estabilizar parâmetros do programa modificar as opções padrões de instalação e modalidade de operação. LIBRARY SECTION: Uma área, opcional, de Dados (Library), onde serão descritos os dados a serem processados pelo programa, os arquivos a serem utilizados, os campos associados e também qualquer campo de área de trabalho (auxiliares). ACTIVITY SECTION: Uma área, obrigatória, de Atividades (Activity), onde se define a lógica do programa, mais precisamente: Lê informações dos arquivos; Examina e manipula dados; gravação de dados em arquivos; impressão de relatórios;

Convenções da Linguagem

Letras Minúsculas – especificam valores que devem ser substituídos. Letras Maiúsculas – Palavras-chaves. Devem ser codificadas exatamente como aparecem. {chaves} - Um dos parâmetros indicados entre elas deve ser informado. [colchetes] – Indica parâmetros opcionais. ... - Reticências: indicam que o(s) parâmetro(s) anterior(es) a elas pode(m) ser repetido(s) várias vezes. W/S - campos iniciados com W ou S indicam que a variável é auxiliar (Ex: W-VALOR ou S-VALOR)

Tipos de Variáveis Tipo DescriçãoTamanho Máximo (em bytes)Número de posições decimaisA Alfanumérico 254 InválidoN Numérico 18 0 a 18P Compactado 10 0 a 18B Binário 4 0 a 10U Compactado sem sinal 9 0 a 18

Exemplos de Código Hello World DISPLAY 'HELLO WORLD!'

Outra forma: IMPRIME. PROC DISPLAY 'HELLO WORLD!' END-PROC.

Números Perfeitos FILE PESSOAL NUMPERF 1 5 N

DIVIDENDO W N 5 VALUE 1 NUM W N 5 VALUE 0 DIVISOR W N 5 VALUE 1 SOMA W N 5 VALUE 0 QUOCIENTE W N 5 VALUE 0

CALCULA PROC. QUOCIENTE = DIVIDENDO / DIVISOR IF QUOCIENTE * DIVISOR = DIVIDENDO SOMA = SOMA + DIVISOR END-IF END-PROC.

IF SOMA > DIVIDENDO GO TO PROXIMO-NUM END-IF

DIVISOR = DIVISOR + 1

IF DIVISOR < DIVIDENDO GO TO CALCULA END-IF

IF (SOMA = DIVIDENDO) AND (DIVIDENDO NOT EQUAL 1) NUM = NUM + 1 DISPLAY 'PERFEITO ' NUM ': ' DIVIDENDO END-IF

PROXIMO-NUM PROC. DIVIDENDO = DIVIDENDO + 1

IF NUM < NUMPERF DIVISOR = 1 SOMA = 0 GO TO CALCULA END-IF END-PROC.

Programa Exemplo 001 - Programa completo

JOB DE EXECUÇÃO:

Na estrutura de um programa em Easytrieve, o que caracteriza a parte de procedimentos é um conjunto de ATIVIDADES, Cada atividade é declarada através de um statement JOB. Ou seja, é através de um JOB que executamos o nosso programa, onde definimos o tipo do programa que será executado(Easytrieve), qual será do programa a ser executado, da onde virão seus dados de entrada e onde serão gravados os dados de saída.

Job explicativo para execução do Easytrieve. thumb|centro|

PROGRAMA EXEMPLO 001

Na imagem abaixo temos um simples exemplo de um programa em Easytrieve, onde passamos os dados de entrada no próprio JOB e gravamos na saída, onde poderá ser visto na "SYSREL".

Programa em Easytrieve. thumb|centro|

Para melhor compreensão, veja as saídas em relatório produzidas pelo programa :

SYSREL. thumb|centro|SYSPRINT. thumb|centro|

Ver também Outras linguagens de programação de terceira geração: ALGOL APL BASIC COBOL C FORTRAN Lisp PL/I RPG

Referências CA Easytrieve Plus Guide Mainframe Fórum Apostilas Mainframe Brasil Manual Easytrieve

Compiladores Para Easytrieve usamos os mesmo compiladores do COBOL

Compiladores: IBM COBOL compilers OpenCOBOL TinyCOBOL

Categoria:Linguagens de programação

Liações Externas

TimeLine