Você está na página 1de 37

Apostila Fundamentos

1) Conceito de sistemas integrados;


ERP (Enterprise Resource Planning) ou SIGE (Sistemas Integrados de Gesto Empresarial, no Brasil) so sistemas de informao que integram todos os dados e processos de uma organizao em um nico sistema. A integrao pode ser vista sob a perspectiva funcional (sistemas de: finanas, contabilidade, recursos humanos, fabricao, marketing, vendas, compras, etc) e sob a perspectiva sistmica (sistema de processamento de transaes, sistemas de informaes gerenciais, sistemas de apoio a deciso, etc). Os ERPs em termos gerais, so uma plataforma de software desenvolvida para integrar os diversos departamentos de uma empresa, possibilitando a automao e armazenamento de todas as informaes de negcios. A importncia do ERP nas corporaes Entre as mudanas mais palpveis que um sistema de ERP propicia a uma corporao, sem dvida, est a maior confiabilidade dos dados, agora monitorados em tempo real, e a diminuio do retrabalho. Algo que conseguido com o auxlio e o comprometimento dos funcionrios, responsveis por fazer a atualizao sistemtica dos dados que alimentam toda a cadeia de mdulos do ERP e que, em ltima instncia, fazem com que a empresa possa interagir. Assim, as informaes trafegam pelos mdulos em tempo real, ou seja, uma ordem de vendas dispara o processo de fabricao com o envio da informao para mltiplas bases, do estoque de insumos logstica do produto. Tudo realizado com dados orgnicos, integrados e no redundantes. Para entender melhor como isto funciona, o ERP pode ser visto como um grande banco de dados com informaes que interagem e se realimentam. Assim, o dado inicial sofre uma mutao de acordo com seu status, como a ordem de vendas que se transforma no produto final alocado no estoque da companhia. Ao desfazer a complexidade do acompanhamento de todo o processo de produo, venda e faturamento, a empresa tem mais subsdios para se planejar, diminuir gastos e repensar a cadeia de produo. Um bom exemplo de como o ERP revoluciona uma companhia que com uma melhor administrao da produo, um investimento, como uma nova infra-estrutura logstica, pode ser repensado ou simplesmente abandonado. Neste caso, ao controlar e entender melhor todas as etapas que levam a um produto final, a companhia pode chegar ao ponto de produzir de forma mais inteligente, rpida e melhor, o que, em outras palavras, reduz o tempo que o produto fica parado no estoque. A tomada de decises tambm ganha uma outra dinmica. Imagine uma empresa que por alguma razo, talvez uma mudana nas normas de segurana, precise modificar aspectos da fabricao de um de seus produtos. Com o ERP, todas as reas corporativas so informadas e se preparam de forma integrada para o evento, das compras produo, passando pelo almoxarifado e chegando at mesmo rea de marketing, que pode assim ter informaes para mudar algo nas campanhas publicitrias de seus produtos. E tudo realizado em muito menos tempo do que seria possvel sem a presena do sistema. Entre os avanos palpveis, podemos citar o caso de uma indstria mdia norte-americana de autopeas, situada no estado de Illinois, que conseguiu reduzir o tempo entre o pedido e a entrega de seis para duas semanas, aumentando a eficincia na data prometida para envio do produto de 60% para 95% e reduzindo as reservas de insumos em 60%. Outra diferena notvel: a troca de documentos entre departamentos que demorava horas ou mesmo dias caiu para minutos e at segundos. Esse apenas um exemplo. Porm, de acordo com a empresa, possvel direcionar ou adaptar o ERP para outros objetivos, estabelecendo prioridades que podem tanto estar na cadeia de produo quanto no apoio ao departamento de vendas como na distribuio, entre outras. Com a capacidade de integrao dos mdulos, possvel diagnosticar as reas mais e menos eficientes e focar em processos que possam ter o desempenho melhorado com a ajuda do conjunto de sistemas.

2) Evoluo e arquitetura de sistemas integrados (foco protheus10);


Em 1974, foi escrita a primeira verso do SIGA Sistema Integrado de Gerncia Automtica, em Assembly. Em 1978, foi reescrito para Natural/Adabas. Em 1983, comeou a surgir os primeiros micros. E surgiu tambm o primeiro banco de dados para micros, o DBase II, e logo depois, o DBase III. O DBase era um banco de dados que tinha uma linguagem de programao embutida, mas era interpretada. Era obrigado a entregar os fontes. Logo veio o Clipper, como um compilador para o DBase. O Clipper dominou o mercado. Em 1990, com o Clipper 5, foi criada a maioria das facilidades de customizao que o sistema tem hoje, por exemplo, o Dicionrio de Dados. O usurio podia at escrever rotinas inteiras, em linguagem Clipper, e execut-las a partir do menu. Eram os chamados RDMakes. E o sistema passou a se chamar Siga Advanced. Em 1995, o Windows j estava bem desenvolvido. A, o sistema foi reescrito para o ambiente Windows. Tentou-se utilizar a linguagem VO-Visual Objects, que era da mesma fabricante do Clipper (CA-Computer Associates). Mas, assim como o Clipper foi um sucesso total, o VO foi um fracasso total. Depois foi usado o Delphi e tambm o SQL. At que, em 2000, a Microsiga resolveu desenvolver a sua prpria linguagem de programao: o AdvPL Advanced Protheus Language. Como, desde 1990, o sistema j permitia escrever expresses na linguagem Clipper, e at mesmo rotinas inteiras, havia muita coisa desenvolvida nessa linguagem. E como no podia jogar fora tudo isso, e nem obrigar os usurios a reescrever tudo, a Microsiga resolver adotar a mesma sintaxe do Clipper no AdvPL. E o sistema passou a se chamar Protheus. Ento, o AdvPL, pelo menos nos comandos e funes bsicas da linguagem, tem a mesmo sintaxe do Clipper.

3) Mercado ERP (consultoria e clientes);


- Abrangencia do mercado.

Mercado

sistemas caseiros sistema "self 11% made" 11%


sem sistema 22%

Sistemas de gesto ERP 56%

4) Arquitetura (camadas, configuraes, repositrio, pastas e ambientes);


Existem programas monolticos, onde tudo fica no mesmo lugar: a interface, o processamento (aplicao) e o tratamento dos dados. Com o surgimento das primeiras redes-locais, foi possvel separar a parte dos dados num servidor de arquivos. Mas, todo o processamento continuava sendo feito nas estaes. Todos os dados precisavam ser transportados do servidor para a estao. Ento, havia muito trfego na rede. Atualmente, os sistemas so multi-camadas, ou seja, a interface, a aplicao e os dados podem ficar totalmente separados. As estaes no fazem nenhum processamento; s tela, teclado e mouse. Quem faz todo o processamento a aplicao. Ento, o trfego de rede fica s entre o servidor de aplicao e o servidor de dados. A aplicao e o banco de dados podem ficar numa nica mquina ou pode ter um servidor de aplicao e outro de dados. O trfego de rede vai ser entre o servidor de aplicao e o servidor de dados. Podem ter estaes remotas O programa-fonte onde a gente escreve os comandos e funes. um arquivo em formato texto, que pode ser editado em qualquer editor de texto, sem formatao. O sistema no consegue executar. O programa-fonte passa por um processo chamado compilao, que verifica a sintaxe e gera o APO-Advanced Protheus Object. O APO sim executado pelo sistema.

5) Nomenclaturas utilizadas;
Os APOs ficam armazenados num repositrio, o RPO. Inclusive as funes de usurio, tambm so compilados, tornam-se APOs e ficam armazenados no RPO. Um APO executado quando o usurio clica na opo no menu. O Remote requisita o APO ao server, o server carrega do RPO e executa. RPO so os programas do ERP. Regras de negcio. BUILD executveis do sistema, DLLs, mais o RPO. Quando tem uma grande atualizao, que alterou tanto os executveis do sistema quanto o ERP, precisa atualizar este conjunto de arquivos. Chama-se atualizao da Build. Patch quando tem uma alterao de apenas uma parte do RPO. Por exemplo, houve uma alterao em algum imposto. S precisa atualizar aquele programa. Ento gerado um patch para atualizar s o RPO. A atualizao do patch feita no IDE.

6) Instalao e configurao

- Utilizando o wizard de configurao de ambientes.

- Exemplo de topologia bsica.

Topologia Bsica

Servidor de Dados Firewall Servidor Aplicao

Cliente remoto

PDA

Roteador

Cliente DNS

Cliente DNS

Cliente DNS

7) Principais arquivos;
Dividimos os arquivos presentes no sistema em duas classes: a) Arquivos de sistema: So os arquivos responsveis pelas configuraes do sistema. Familia SX arquivos de configurao Familia SIGAMAT informaes das empresas e dos usurios. b) Arquivos de dados: So os arquivos que recebem dados. Todos os arquivos comeam com S de SIGA. Hoje temos as famlias Q, R e P. Os arquivos so divididos em grupos. Por exemplo, SA-Cadastros, SB-Estoques, etc.

8) Caractersticas do sistema;
O sistema permite mltiplas empresas e mltiplas filiais por empresa. O nome de todos os campos comea sempre com o prefixo do nome do arquivo. Ex.: arquivo SA1, campos A1_COD, A1_NOME. Todos os arquivos tem um campo Filial. Apenas o arquivo SM2 Cadastro de Cotaes das Moedas no precisa da Filial pois o valor das moedas deve ser nico para todas as filiais.

Existe o compartilhamento entre filiais e entre empresas. O usurio pode incluir os seus prprios ndices. Por exemplo, o arquivo SA1 tem 7 ndices. O usurio pode incluir o ndice 8. Acontece que, se na prxima verso, a Microsiga incluir mais ndices, o ndice do usurio ser realocado para o final e ser renumerado. Portanto, todo ndice de precisa ter um NickName, e nos programas, ao invs de usar a funo dbSetOrder(), deve-se usar a funo dbOrderNickName(). S os ndices de usurio podem ser NickName. Os ndices da Microsiga nunca tero.

9) Banco de dados relacional (PostgreeSQL).


O Protheus trabalha com base de dados DBF, CTREE e Banco de Dados SQL. DBF e CTREE so tratados diretamente pelo Protheus. Com bancos de dados SQL, necessita do DBAccess. O primeiro passo ter um servidor de banco de dados instalado, onde deve-se criar a base de dados a ser utilizada pelo Protheus. Depois cria-se uma conexo ODBC apontando para esta base de dados. O DBAccess acessa o banco de dados por meio dessa conexo ODBC. No DBAccess, cria-se um ambiente apontando para a conexo ODBC. Por ltimo, no arquivo .INI do Protheus, deve-se ter a sesso [TOTVSDBACCESS] indicando o tipo de banco de dados, o endereo do servidor DBAccess e o ambiente a ser usado. Para incluir o TotvsDBAccess como servio do Windows Vista necessrio rodar o programa SRVINSTW.EXE e incluir o DBAccess na lista de servios. Pode ser que, mesmo logado como Administrador, o Vista no permita a execuo do programa, informando que voc no tem privilgios para isso. Neste caso, clique com o boto direito do mouse e execute o programa atravs da opo "Run as Administrator".

10) Fundamentos de documentao:


a) Gesto de projetos:
- Escopo: parte inicial de um projeto que deve conter todo o levantamento das necessidades e mensurar prazos e fora de trabalho, bem como os itens a serem atendidos e os itens que no faro parte do projeto, forma a base legal do contrato de prestao de servios e deve ser aprovado pelos interessados. - Projeto: Finalizao e formalizao do escopo, deve atender as necessidades de apurao de custos e resultados, bem como ser completado por um cronograma de atividades. - Cronograma: deve ser desenvolvido de maneira clara e objetiva, tendo discriminados todas as tarefas do projeto, bem como seus envolvidos, os prazos de entrega e suas homologaes.

b) Gesto de processos:
- Parte fundamental para o sucesso de qualquer projeto de tecnologia, embora seja ainda relegado a segundo plano, porem estudos efetuados no MIT indicam que quando os processos so bem mapeados, e a equipe

envolvida no projeto esta comprometida, os casos de sucesso beiram os 95%. - Composto de um levantamento inicial que deve ser feito anteriormente ao desenvolvimento do escopo do projeto (viso satlite), e complementado com a analise criteriosa de cada rea ou departamento e processos envolvidos no projeto (viso micro). - Modelos existentes de processos de software:
Mtodos de anlise McCain Neighboors Prieto-Daz Simos HP ODM FODA IDeA STARS DADO Synthesis JODA Hollenbach & Frakes Birk Basili Henninger Objectivo Diminuir custos de adaptao Melhorar elementos reutilizveis Melhorar elementos reutilizveis Construir bibliotecas com elementos reutilizveis Construir elementos reutilizveis Construir elementos reutilizveis Construir elementos reutilizveis Construir bibliotecas com elementos reutilizveis Construir bibliotecas com elementos reutilizveis Integrar a anlise do domnio no processo de desenvolvimento Diminuir custos de adaptao Construir elementos reutilizveis Construir bibliotecas com elementos reutilizveis Construir elementos reutilizveis Construir elementos reutilizveis Construir bibliotecas com elementos reutilizveis Anlise de sistemas Processo para identificar e organizar informao acerca do utilizador Identificar, organizar e modelar informao para produzir requisitos Processo em que definida uma arquitectura e cdigo reutilizveis Identificar e organizar conhecimento acerca de um tipo de problemas para os descrever e resolver Identificar domnios em que a reutilizao de certas experincias vantajosa Identificar padres que se repetem no decorrer de projectos de desenvolvimento Definio Determinar caractersticas que optimizem o domnio Identificar objectos e operaes de uma classe de sistemas Actividade que precede a anlise do sistema Classe Produtos (cdigo) Produtos (cdigo) Produtos (cdigo)

Especificao do modelo do domnio para uma biblioteca Produtos (cdigo) Caracterizar o domnio de software Processo de identificar, organizar e representar informao relevante acerca do domnio Produtos (cdigo) Produtos (cdigo) Produtos (arquitectura) Produtos (arquitectura) Produtos (arquitectura) Produtos (arquitectura) Produtos (requisitos) Produtos (requisitos) Processos Tecnologia Experincia Experincia

- Fluxo de dados por viso gerencial

Diretivas de Segurana
24/06/2010

Viso empresa

CLIENTE

PESSOA FISICA

PESSOA JURIDICA

ADESO (GRANDES CLIENTES)

o negocio

o negocio

VIDE ESPECFICO

VIDE ESPECFICO

o negocio

VIDE ESPECFICO

- painel de atores:

- Ver anexo Modelo_projeto_001.doc

11) Clausulas de segurana;


O sistema possui algumas clausulas de segurana que so: - Acesso ao sistema por usurio e senha; - Configurao de menus especficos por usurio ou grupo de usurios; - Restrio de acessos a mdulos especficos; - Restrio de acessos a empresas e filiais; - Restrio de acessos a rotinas do sistema; - Restrio de acessos a operaes do sistema; - restrio de acessos a campos do sistema.

12) Usurios;
Os usurios podem ser cadastrados aleatriamente, ou por centros de custo e departamentos, que a maneira mais lgica, pois agrupa colaboradores com caractersticas funcionais semelhantes. Seguem as telas para o cadastro de usurios e grupos de usurios.

13) Menus
- Os Menus do sistema podem ter suas opes reformuladas de maneira que cada Usurio possa ter um menu de acesso prprio, de acordo com o tipo de trabalho por ele desenvolvido. - Nesta operao, deve ser definido um menu para cada usurio ou grupo de usurios, e na configurao de senhas, associa-se o menu senha do usurio que determinar quais mdulos, movimentaes, acessos, empresas e filiais ele poder acessar.

- Sempre para confirmar o menu devemos selecionar a opo GERAR.

14) Empresas e filiais;


- O sistema possui o tratamento de mltiplas empresas e mltiplas filiais, podendo ter at 98 empresas de 00 a 98, mais as combinaes alfanumricas de A1 a ZZ, exceto a empresa 99, que por padro a empresa teste e no necessita de validao por parte da TOTVS. - A mesma proporo de empresas aplicada as filiais.

15) Habilitando empresas;


- Para a efetivao da empresa para efeito de trabalho se faz necessrio um cadastro prvio da mesma, no qual devemos informar seus dados fiscais, endereos e caractersticas sindicais. - Aps esse cadastro dever ser enviado um e-mail para a TOTVS, com o arquivo SIGAMAT.EMP, que se encontra na pasta System do diretrio PORTHEUS_DATA.

- Ao retornar o e-mail da TOTVS, j com os dados da empresa/filial homologados, deve-se sobrepor o arquivo SIGAMAT.EMP, e tambem copiar o arquivo APPLY.KEY na pasta system. - Somente aps esse procedimento a empresa estar liberada para uso.

16) Mapeamento de arquivos;


- O mapeamento dos arquivos o que possibilita o tratamento de compartilhamento de dados no sistema. - O compartilhamento de dados pode ser entre filiais e entre empresas (jogos de arquivos diferentes). - Compartilhando dados entre empresas deixamos de ter rotinas de replicao de dados, que geram custo e demandam tempo.

17) Dicionrio de dados;


- Foi o grande diferencial do sistema em relao aos concorrentes, pois em apenas uma tabela esto todos os arquivos e suas estruturas, possibilitando assim uma manuteno, personalizao e customizao mais geis e seguras, pois todas as tratativas relacionadas a campos e tabelas devemos obrigatoriamente fazer pelo sistema.

18) ndices
- Um arquivo pode ter at 35 ndices, e embora eles estejam ordenados em ordem alfanumrica no sistema sua chamada via advpl somente numrica. - Alm dos ndices originais, podemos incluir novos ndices ao sistema, porem devemos tomar o cuidado de relacionar um NICK NAME aos mesmos, pois seno em uma atualizao de verso o sistema ir renomea-los e os programas que o utilizam no mais funcionaro.

19) Consulta padro;


- So as consultas padres que possibilitam a visualizao dos dados atravs da tecla <F3>.

20) Tabelas genricas;

- So nas tabelas genricas que inclumos dados estticos no sistema, tais como: estados da federao, CFOP, tipos de baixa entre outros.

21) Bases de dados:


a) Produo; b) Testes.

22) Parametros do sistema;


- So pelos parmetros que conseguimos inserir as regras de negcio da empresa no sistema, e a sua perfeita configurao garante um funcionamento mais gil e seguro.

23) Gatilhos.
- O Gatilho uma atualizao disparada a partir de um determinado evento previamente definido. - No caso do Protheus, a definio deste evento a digitao de determinados campos.

- O Gatilho permite ao usurio estabelecer uma atualizao dinmica dos dados atravs da definio de critrios, isto , a partir da digitao de um dado possvel atualizar automaticamente outros campos pertencentes ao mesmo arquivo ou no. - Essa movimentao aceita Sintaxes Xbase, isto , funes Clipper ou funes ADVPL, incluindo user functions.

24) Interatividade
- Nesta aula iremos revisar e efetuar os exerccios prticos de toda a parte interativa do sistema. - Iremos efetuar as seguintes personalizaes:
Usurios; Menus; Empresas e filiais; Habilitando empresas; Mapeamento de arquivos; Dicionrio de dados; ndices; Consulta padro; Tabelas genricas; Bases de dados; Parametros do sistema; Gatilhos.

25) Conceito de lgica de programao AdvPl;


- Neste momento iremos nos aprofundar em conceitos de programao e trataremos primeiro de lgica de programao, que no passa de uma forma de raciocnio linear e coeso, no qual temos que transferir para um objeto (programa) todos os passos de uma determinada rotina. - Existem algumas estruturas que so necessrias para desenvolvermos essa habilidade que so:

a) Raciocnio lgico; b) Fluxograma de dados(informaes) c) Algortimo dos dados. d) Portugues estruturado.

26) Estruturas bsicas de programao;


- No aprendizado de qualquer linguagem de programao essencial desenvolver os conceito No

aprendizado de qualquer linguagem de programao essencial desenvolver os conceitos relacionados a lgica e a tcnica da escrita de um programa. - Com foco nesta necessidade, este tpico ir descrever resumidamente os conceitos envolvidos no processo de desenvolvimento de um programa atravs dos conceitos relacionados tcnica da escrita
de um programa. Lgica de programao Algoritmos Diagramas de blocos Lgica A lgica de programao necessria para pessoas que desejam trabalhar com desenvolvimento de sistemas e programas, ela permite definir a seqncia lgica para o desenvolvimento. Ento o que lgica?

Lgica de programao a tcnica de encadear pensamentos para atingir determinado objetivo.

Seqncia Lgica Estes pensamentos, podem ser descritos como uma seqncia de instrues, que devem ser seguidas para se cumprir uma determinada tarefa.

Seqncia Lgica so passos executados at atingir um objetivo ou soluo de um problema.

Instrues Na linguagem comum, entende-se por instrues um conjunto de regras ou normas definidas para a realizao ou emprego de algo. Em informtica, porm, instruo a informao que indica a um computador uma ao elementar a executar. Convm ressaltar que uma ordem isolada no permite realizar o processo completo, para isso necessrio um conjunto de instrues colocadas em ordem seqencial lgica.

Por exemplo, se quisermos fazer uma omelete de batatas, precisaremos colocar em prtica uma srie de instrues: descascar as batatas, bater os ovos, fritar as batatas, etc. evidente que essas instrues tm que ser executadas em uma ordem adequada no se pode descascar as batatas depois de frit-las. Dessa maneira, uma instruo tomada em separado no tem muito sentido; para obtermos o resultado, precisamos colocar em prtica o conjunto de todas as instrues, na ordem correta.

Instrues so um conjunto de regras ou normas definidas para a realizao ou emprego de algo. Em informtica, o que indica a um computador uma ao elementar a executar.

Algoritmo Um algoritmo formalmente uma seqncia finita de passos que levam a execuo de uma tarefa. Podemos pensar em algoritmo como uma receita, uma seqncia de instrues que do cabo de uma meta especfica. Estas tarefas no podem ser redundantes nem subjetivas na sua definio, devem ser claras e precisas. Como exemplos de algoritmos podemos citar os algoritmos das operaes bsicas (adio, multiplicao, diviso e subtrao) de nmeros reais decimais. Outros exemplos seriam os manuais de aparelhos eletrnicos, como um videocassete, que explicam passo-a-passo como, por exemplo, gravar um evento. At mesmo as coisas mais simples, podem ser descritas por seqncias lgicas, tais como: - tomar banho - dirigir

Os algoritmos so descritos em uma linguagem chamada pseudocdigo. Este nome uma aluso posterior implementao em uma linguagem de programao, ou seja, quando for utilizada a linguagem a de programao propriamente dita como, por exemplo, ADVPL. Por isso os algoritmos so independentes das linguagens de programao, sendo que ao contrrio de uma linguagem de programao no existe um formalismo rgido de como deve ser escrito o algoritmo. O algoritmo deve ser fcil de interpretar e fcil de codificar. Ou seja, ele deve ser o intermedirio entre a linguagem falada e a linguagem de programao. Regras para construo do Algoritmo Para escrever um algoritmo precisamos descrever a seqncia de instrues, de maneira simples e objetiva. Para isso utilizaremos algumas tcnicas: 1. Usar somente um verbo por frase; 2. Imaginar que voc est desenvolvendo um algoritmo para pessoas que no trabalham com informtica; 3. Usar frases curtas e simples; 4. Ser objetivo; 5. Procurar usar palavras que no tenham sentido dbio.

Fases Para implementar de um algoritmo de simples interpretao e codificao necessrio inicialmente dividir o problema apresentado em trs fases fundamentais, as quais so:

ENTRADA: So os dados de entrada do algoritmo; PROCESSAMENTO: So os procedimentos utilizados para chegar ao resultado final; SADA: So os dados j processados.

Estudando algoritmos Neste tpico sero demonstrados alguns algoritmos do cotidiano, os quais foram implementados utilizando os princpios descritos nos tpicos anteriores.

Tomar banho Fritar um ovo Trocar lmpadas Descascar batatas Jogar o jogo da forca Calcular a mdia de notas

Tomar banho 1. 2. 3. 4. 5. 6. 7. Pegar toalha, shampoo e sabonete Abrir registro , esquentar a gua Se colocar embaixo da gua do chuveiro Utilizar shampoo e saboneteAscender o fogo Enxaguar o corpo Fechar registro da agua Pegar toalha e se secar

Fritar um ovo 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Pegar frigideira, ovo, leo e sal Colocar leo na frigideira Ascender o fogo Colocar a frigideira no fogo Esperar o leo esquentar Quebrar o ovo na frigideira Jogar a casca no lixo Retirar a frigideira do fogo quando o ovo estiver no ponto Desligar o fogo Colocar sal a gosto

Trocar lmpadas 1. 2. 3. 4. 5. Se a lmpada estiver fora do alcance, pegar uma escada Pegar a lmpada nova Se a lmpada queimada estiver quente, pegar um pano Tirar lmpada queimada Colocar lmpada nova

Descascar batatas

1. Pegar faca, bacia e batatas 2. Colocar gua na bacia 3. Enquanto houver batatas, descascar as batatas 3.1. Colocar as batatas descascadas na bacia

Jogar o jogo da forca 1. Escolher a palavra 2. Montar o diagrama do jogo 3. Enquanto houver lacunas vazias e o corpo estiver incompleto: 3.1. Se acertar a letra: escrever na lacuna correspondente 3.2. Se errar a letra: desenhar uma parte do corpo na forca

Calcular a mdia de notas 1. Enquanto houver notas a serem recebidas: 1.1. Receber a nota; 2. Some todas as notas recebidas; 3. Divida o total obtido pela quantidade de notas recebidas; 4. Exiba a mdia das notas.

Jogar o jogo da velha contra o algoritmo

1. Enquanto existir um quadrado livre e ningum ganhou ou perdeu o jogo: 1.1. Espere a jogada do adversrio, continue depois 1.2. Se centro estiver livre: jogue no centro 1.3. Seno, se o adversrio possuir 2 quadrados em linha com um quadrado livre, jogue neste quadrado 1.4. Seno, se h algum canto livre, jogue neste canto

Teste de mesa Aps desenvolver um algoritmo ele dever sempre ser testado. Este teste chamado de TESTE DE MESA, que significa seguir as instrues do algoritmo de maneira precisa para verificar se o procedimento utilizado est correto ou no.

Para avaliar a aplicao do teste de mesa, utilizaremos o algoritmo de calcular a mdia de notas:

Algoritmo: Calcular a mdia de notas

1. Enquanto houver notas a serem recebidas: a. Receber a nota;

2. Some todas as notas recebidas; 3. Divida o total obtido pela quantidade de notas recebidas; 4. Exiba a mdia das notas.

Teste de mesa:

1. Para cada nota informada, receber e registrar na tabela abaixo:

ID

Nota

2. Ao trmino das notas, a tabela dever conter todas as notas informadas, como abaixo:

ID 1 2 3 4 5 6

Nota 8.0 7.0 8.0 8.0 7.0 7.0

3. Somar todas as notas: 45

4. Dividir a soma das notas, pelo total de notas informado: 45/6 7.5 5. Exibir a mdia obtida: Mensagem(Mdia: 7.5) Representao de algoritmos atravs de diagramas de bloco Algoritmo 01: Fritar um ovo 1. Pegar frigideira, ovo, leo e sal 2. Colocar leo na frigideira 3. Ascender o fogo 4. Colocar a frigideira no fogo 5. Esperar o leo esquentar 6. Quebrar o ovo na frigideira 7. Jogar a casca no lixo 8. Retirar a frigideira do fogo quando o ovo estiver no ponto 9. Desligar o fogo 10. Colocar sal a gosto

- Estruturas de deciso: Representao 01: IF...ELSE com aes para ambas as situaes

Aes anteriores ...

Verdadeiro

Anlise da condio

Falso

Ao vinculada ao resultado verdadeiro

Ao vinculada ao resultado falso

Continuao do fluxo aps a tomada da deciso

Aes anteriores ... Falso Anlise da condio 1 Verdadeiro Ao vinculada a condio 1

Falso

Anlise da condio 2

Verdadeiro

Ao vinculada a condio 2

Falso

Anlise da condio N

Verdadeiro

Ao vinculada a condio N

Falso

Continuao do fluxo aps a tomada da deciso

Representao: WHILE...END

Aes anteriores ...

Anlise da condio Loop

Falso

Verdadeiro Ao vinculada ao resultado verdadeiro

Continuao do fluxo ...

- Existem diversas variaes para a estrutura WHILE...END, na qual h a possibilidade da primeira execuo ser realizada sem a anlise da condio, a qual valer apenas a partir da segunda execuo. - A linguagem ADVPL aceita a sintaxe DO WHILE...ENDDO, que em outras linguagens representa a situao descrita anteriormente (anlise da condio somente a partir da segunda execuo), mas em ADVPL esta sintaxe tem o mesmo efeito do WHILE...END.

Representao: FOR...TO...NEXT

Aes anteriores ...

Anlise da condio

Falso

Verdadeiro Ao vinculada ao resultado verdadeiro

Incrementa o contador de passos

Continuao do fluxo ...

- A estrutura FOR...TO...NEXT, dependendo da linguagem de programao, permite a realizao de um incremento simples a cada execuo da instruo NEXT, ou a adio de outro valor ao contador, o qual dever especificado de acordo com a sintaxe da linguagem. - Em ADVPL pode ser utilizada a instruo STEPS para alterar o valor a ser adicionado no contador de passos a cada execuo da instruo NEXT, sendo que este valor poder ser at negativo, viabilizando uma contagem decrescente.

27) Cnab
a) Modelos; b) Aplicaes.

28) Monitor; 29) Conceito de funes de programao:


a) b) c) d) Caractere; Numrico; Data; Lgico.

- A Linguagem ADVPL teve seu incio em 1994, sendo na verdade uma evoluo na utilizao de linguagens no padro xBase pela Microsiga Software S.A. (Clipper, Visual Objects e depois FiveWin). Com a criao da tecnologia Protheus, era necessrio criar uma linguagem que suportasse o padro xBase para a manuteno de todo o cdigo existente do sistema de ERP Siga Advanced. Foi ento criada a linguagem chamada Advanced Protheus Language.

- O ADVPL uma extenso do padro xBase de comandos e funes, operadores, estruturas de controle de fluxo e palavras reservadas, contando tambm com funes e comandos disponibilizados pela Microsiga que a torna uma linguagem completa para a criao de aplicaes ERP prontas para a Internet. Tambm uma linguagem orientada a objetos e eventos, permitindo ao programador desenvolver aplicaes visuais e criar suas prprias classes de objetos. - Quando compilados, todos os arquivos de cdigo tornam-se unidades de inteligncia bsicas, chamados APOs (de Advanced Protheus Objects). Tais APOs so mantidos em um repositrio e carregados dinamicamente pelo PROTHEUS Server para a execuo. Como no existe a linkedio, ou unio fsica do cdigo compilado a um determinado mdulo ou aplicao, funes criadas em ADVPL podem ser executadas em qualquer ponto do ambiente Advanced Protheus. - O compilador e o interpretador da linguagem ADVPL o prprio servidor PROTHEUS (PROTHEUS Server), e existe um ambiente visual para desenvolvimento integrado (PROTHEUSIDE) onde o cdigo pode ser criado, compilado e depurado. - Os programas em ADVPL podem conter comandos ou funes de interface com o usurio. De acordo com tal caracterstica, tais programas so subdivididos nas seguintes categorias: Programao Com Interface Prpria com o Usurio - Nesta categoria entram os programas desenvolvidos para serem executados atravs do terminal remoto do Protheus, o Protheus Remote. O Protheus Remote a aplicao encarregada da interface e da interao com o usurio, sendo que todo o processamento do cdigo em ADVPL, o acesso ao banco de dados e o gerenciamento de conexes efetuado no Protheus Server. O Protheus Remote o principal meio de acesso a execuo de rotinas escritas em ADVPL no Protheus Server, e por isso permite executar qualquer tipo de cdigo, tenha ele interface com o usurio ou no. Porm nesta categoria so considerados apenas os programas que realizem algum tipo de interface remota utilizando o protocolo de comunicao do Protheus. - Podem-se criar rotinas para a customizao do sistema ERP Microsiga Protheus, desde processos adicionais at mesmo relatrios. A grande vantagem aproveitar todo o ambiente montado pelos mdulos do ERP Microsiga Protheus. Porm, com o ADVPL possvel at mesmo criar toda uma aplicao, ou mdulo, do comeo. - Todo o cdigo do sistema ERP Microsiga Protheus escrito em ADVPL. Programao Sem Interface Prpria com o Usurio - As rotinas criadas sem interface so consideradas nesta categoria porque geralmente tm uma utilizao mais especfica do que um processo adicional ou um relatrio novo. Tais rotinas no tm interface com o usurio atravs do Protheus Remote, e qualquer tentativa nesse sentido (como a criao de uma janela padro) ocasionar uma exceo em tempo de execuo. Estas rotinas so apenas processos, ou Jobs, executados no Protheus Server. Algumas vezes, a interface destas rotinas fica a cargo de aplicaes externas, desenvolvidas em outras linguagens, que so responsveis por iniciar os processos no servidor Protheus atravs dos meios disponveis de integrao e conectividade no Protheus. - De acordo com a utilizao e com o meio de conectividade utilizado, estas rotinas so subcategorizadas assim:

Programao por Processos - Rotinas escritas em ADVPL podem ser iniciadas como processos individuais (sem interface) no Protheus Server atravs de duas maneiras: Iniciadas por outra rotina ADVPL atravs da chamada de funes como StartJob() ou CallProc() ou iniciadas automaticamente na inicializao do Protheus Server (quando propriamente configurado).

Programao de RPC - Atravs de uma biblioteca de funes disponvel no Protheus (uma API de comunicao), podemse executar rotinas escritas em ADVPL diretamente no Protheus Server, atravs de aplicaes externas escritas em outras linguagens. Isto o que se chama de RPC (de Remote Procedure Call, ou Chamada de Procedimentos Remota). - O servidor Protheus tambm pode executar rotinas em ADVPL em outros servidores Protheus atravs de conexo TCP/IP direta utilizando o conceito de RPC. Do mesmo modo, aplicaes externas podem requisitar a execuo de rotinas escritas em ADVPL atravs de conexo TCP/IP direta.

Programao de WEB - O Protheus Server pode tambm ser executado como um servidor Web, respondendo a requisies HTTP. No momento destas requisies, pode executar rotinas escritas em ADVPL como processos individuais, enviando o resultado das funes como retorno das requisies para o cliente HTTP (como por exemplo, um Browser de Internet). Qualquer rotina escrita em ADVPL que no contenha comandos de interface pode ser executada atravs de requisies HTTP. O Protheus permite a compilao de arquivos HTML contendo cdigo ADVPL embutido. So os chamados arquivos ADVPL ASP, para a criao de pginas dinmicas.

Programao TelNet - TelNet parte da gama de protocolos TCP/IP que permite a conexo a um computador remoto atravs de uma aplicao cliente deste protocolo. O PROTHEUS Server pode emular um terminal TelNet, atravs da execuo de rotinas escritas em ADVPL. Ou seja, pode-se escrever rotinas ADVPL cuja interface final ser um terminal TelNet ou um coletor de dados mvel.

A estrutura de um programa ADVPL composta pelas seguintes reas:

Estrutura de um programa em advpl


rea de Identificao Declarao dos includes Declarao da funo Identificao do programa rea de Ajustes Iniciais Declarao das variveis Corpo do Programa Preparao para o processamento Processamento rea de Encerramento

30) Funes bsicas de programao e manuteno de tabelas;


a) Open: - Abre ou utiliza uma tabela.

b) Copy; - Faz a cpia (duplicao de uma tabela ou parte de uma tabela:

c) Update; - Efetua uma atualizao em um campo. d) Insert; - Inclue um novo registro

e) Delete; - Apaga lgicamente um registro, ou seja o registro no aparecer mais nas telas de browse e de edio.

f)

Substring; - Utiliza parte de uma string (sequencia de texto). g) Len; - Traz o numero exato de uma expresso numrica. h) Ctod, Stod, Dtoc e Dtos; - Efetua o tratamento de datas no sistema: - CTOD: Caractere para data - STOD: String para data; - DTOC: Data para caractere; - STOD: String para caractere. i) Pack; -

Elimina os registros marcados para deleo pelo comando delete.

j)

Zap; -

Elimina todos os dados de uma tabela, porem mantendo a sua estrutura.

k) Drop; 31)

Elimina os dados de uma tabela e a sua estrutura tambem.

MPsdu (aplicativo de tratamento de dados).


- Utilizado para a manuteno dos dados de uma empresa, possibilita o tratamento de dados sem qe se utilize o aplicativo do banco. - muito importante a utilizao de filtros nesta rotina, pois os mesmos possibilitam o real tratamento dos dados selecionados, diminuindo assim a chance de se alterar algo indevidamente; - Vale lembrar que no MpSdu, todoas a alteraes so feitas diretamente nos dados, e a recuperao posterior s poder ser feita atravs da recuperao de backup; - recomendado que sempre que se fizer necessrio a manuteno de tabelas pelo MpSdu, seja feito uma cpia de backup dos dados a serem manipulados. - Segue abaixo um exemplo de utilizao de filtro.

32) Analise de error.log;


- O error.log gerado sempre que houver uma falha critica no sistema, e geralmente as trs primeiras linhas j indicam qual o erro ocorrido.

33)TotvsDevStudio:
a) Conceitos; - Utilizado como a interface de desenvolvimento e de manuteno do repositrio de aplicativos. b) Aplicao; - Utilizado para a compilao de programas e aplicao de correes do produto.

c) Ambientes; - So utilizados para o trabalho normal dos usurios e recomendamos que se possvel (problemas de espao e de governana), se utilize do modelo abaixo:

Modelo de Ambientes

PRODUO

DESENVOLVIMENTO

EMERGENCIAL

TESTES

CONTINGENCIA

HOMOLOGAO

Banco Produo

Banco Testes

d) Projetos; - So os arquivos que contem as listas de programas, e devem ser organizados por assunto, e conterem as pastas fontes e documentao.

e) Programas; - So os arquivos que desenvolvemos para customizar o sistema, e devem obrigatoriamente estar dentro de um projeto. Local nItem := 0 ProcRegua(Len(aCols) + FCount()) // Grava o registro da tabela Pai, obtendo o valor de cada campo dbSelectArea(cAlias1) RecLock(cAlias1, .T.) For i := 1 To FCount() IncProc() If "FILIAL" $ FieldName(i) FieldPut(i, xFilial(cAlias1)) Else FieldPut(i, M->&(Eval(bCampo,i))) EndIf Next MSUnlock() f) Compilao; - o ato que faz a atualizao do repositrio, e assim possibilita a utilizao do programa pelo sistema;

- S possvel a compilao se no houver nenhum usurio utilizando o ambiente, vale lembrar que schedules ativados pelo appserver, tambm so considerados como usurios e tambm deves estar desabilitados.

g) Atualizao do repositrio. - Se faz necessria a atualizao do repositrio sempre que se alterar algum programa, ou ento quando precisamos atualizar o mesmo por algum patch ou update disponibilizado pela TOTVS; - vale lembrar que sempre devemos atualizar a base de homologao antes da de produo, pois todas as alteraes devem ser testadas em um conceito geral, diminuindo assim a ocorrncia de no conformidades no programa.

Você também pode gostar