índice Delphi Editorial Desafio The Club Dicas Legenda Iniciante Intermediário Avançado

Tamanho: px
Começar a partir da página:

Download "índice Delphi Editorial Desafio The Club Dicas Legenda Iniciante Intermediário Avançado"

Transcrição

1 agosto 2012

2 agosto 2012

3 índice Editorial C# Delphi Android 04 Linguagem C# - Criando Classes e Objetos 05 Autor: Marcos César Silva Delphi Criando aplicações com FireMonkey e acesso a 10 banco de dados no Delphi XE2 Autor: Lucas Vieira de Oliveira Android - Lendo e Carregando Arquivo Texto 15 Autor: Thiago C. Montebugnoli Delphi Parte V Autor: Luciano Pimenta 21 Dicas Desafio The Club Legenda Iniciante Intermediário Avançado agosto

4 Bem-vindo Salve! Salve! Neste mês a revista The Club comemora no dia 5 de Agosto o Dia Internacional da Cerveja, tendo como propósito principal a possibilidade de unir amigos e familiares para saborear com responsabilidade esta maravilhosa bebida. Tão bom quanto uma cerveja gelada em uma sexta-feira agitada estão os artigos dos colunistas e colaboradores deste mês. Marcos César Silva nos ensina a Criar Classes e Objetos de uma forma simples e prática na Linguagem C#, servindo de base para outros tipos de linguagens. Nosso colaborador mensal Luciano Pimenta traz a quinta parte da seqüência dos artigos do Curso de Delphi XE para Iniciantes, tendo também muitas informações para os que já possuem um pouco mais de experiência com o Delphi. Já o consultor técnico Lucas de Oliveira continua firme e forte abordando assuntos de grande importância e relevância no suporte técnico, sendo que neste mês ele cria exemplos de aplicações com FireMonkey junto com acesso a banco de dados. O FireMonkey é uma VCL turbinada que torna possível criar formulários mais interativos. Eu continuo minha jornada com artigos relacionados ao Sistema Android criando um exemplo prático de como se deve ler e carregar arquivos do tipo texto. A seção de Dicas Delphi está sempre nos disponibilizando os melhores macetes e assuntos abordados neste mês de Agosto. Um Forte abraço, Av. Profº Celso Ferreira da Silva, 190 Jd. Europa - Avaré - SP - CEP Informações e Suporte: (14) Internet Cadastro: cadastro@theclub.com.br Suporte: suporte@theclub.com.br Informações: info@theclub.com.br Skype Cadastro: theclub_cadastro Skype Suporte: theclub_linha1 theclub_linha2 theclub_linha3 Copyright The Club 2012 Diretor Técnico Marcos César Silva Diagramação Eduardo Massud Arte Vitor M. Rodrigues Revisão Eliziane Valentim Colunistas Lucas de Oliveira Luciano Pimenta Thiago Cavalheiro Montebugnoli Marcos César Silva Impressão e acabamento: GRIL - Gráfica e Editora Taquarituba-SP - Tel. (14) Thiago Montebugnoli - Editor Chefe thiago@theclub.com.br Reprodução A utilização, reprodução, apropriação, armazenamento em banco de dados, sob qualquer forma ou meio, de textos, fotos e outras criações intelectuais em cada publicação da revista The Club Megazine são terminantemente proibidos sem autorização escrita dos titulares dos direitos autorais. Delphi é marca registrada da Borland International, as demais marcas citadas são registradas pelos seus respectivos proprietários. 04 agosto 2012

5 C# Linguagem C# Criando Classes e Objetos Nesta importante etapa abordo um conceito geral de Classes e Objetos na linguagem C# aproveitando para descrever os tipos mais importantes ao decorrer do nosso aprendizado. Na Programação Orientada a Objetos (POO) tudo é baseado em classes e objetos, sendo que o conceito é universal e imprescindível, qualquer que seja a linguagem em que esta seja aplicada. A POO procura estabelecer um modelo de programação que aproxima o desenvolvedor do mundo real. Seguiremos enfatizando os principais conceitos e posteriormente um exemplo prático do uso de Classes e Objetos. Conceito Geral de Classes e Objetos Uma classe é uma unidade do sistema e dentro dela estão definidos atributos e métodos, que são respectivamente as informações que uma classe pode armazenar e ações que elas podem desempenhar. Para ficar mais fácil o entendimento, um atributo possui as mesmas funcionalidades de uma variável, assim como um método o mesmo que um procedimento ou função. A diferença fundamental entre classe e objeto reside no fato da classe conter as definições do que essa nova unidade irá fazer e o objeto ser um caso especial de uma classe. É importante saber que enquanto exista apenas uma definição de classe, podem existir diversos objetos baseados numa classe. agosto

6 Figura 01: Classe e Objeto. A imagem 01 ilustra de uma forma mais didática o que estou descrevendo. Conceito de Atributos Na realidade, os denominados atributos nada mais são do que as variáveis da classe, os locais que guardarão as informações referentes aquela classe. Quando um objeto é criado a partir de uma classe, neste momento os atributos passam a ter informações específicas assumindo estados especiais, ou seja, de uma forma geral este é o momento onde são atribuídos os valores. Existem dois tipos de atributos, os que permitem acesso externo ao da classe e os que não permitem, são denominados respectivamente de Públicos e Privados. Aproveitando este tópico, falaremos de um recurso importante da POO, o Encapsulamento de dados, que significa uma proteção às suas propriedades. De uma forma geral, estes conceitos são melhores compreendidos seguindo o exemplo a seguir. Exemplo: //Declaração do atributo do tipo string e private private string nome; Figura 02: Refactor/Encapsulate Field. A linguagem C#, junto com o Visual Studio possui inúmeros macetes que nos auxilia diariamente. Podemos então encapsular estas propriedades com a ajuda do Refactor, clicando com o botão direito em nome escolhendo Refactor/ Encapsulate Field... Ver Figura 02. Logo após aparecerá uma janela com os seguintes dizeres. Ver Imagem 03. Figura 03: Encapsulate Field. Por padrão a Propriedade nome virá com a primeira letra em maiúsculo, isto serve para diferenciar da propriedade privada criada anteriormente. Clique no botão Ok para prosseguir com o código a seguir. //Encapsulamento do atributo Público Nome public string Nome get return nome; set nome = value; Deixamos o atributo Nome dinâmico, pois poderemos retornar e atribuir valores dinamicamente com os operadores Get e Set respectivamente, permitindo criar regras e lógicas para acesso a dados e público permitindo uma visibilidade e acessibilidade externa à Classe. Usaremos este recurso para fins didáticos, sem nenhuma regra adicional. Conceito de Métodos São as funções e Procedimentos dentro da classe. Realizam operações sobre as informações contidas nos atributos de uma classe. Os métodos podem ser entendidos como mensagens trocadas entre diferentes objetos. Assim como os atributos, os métodos também podem ser do tipo público ou privado. Exemplo: //Declaração do método Cadastrar(), do tipo void e public public void Cadastrar() MessageBox. Show("Cadastrando sócio... "); Métodos do tipo void podem ser comparados aos procedimentos, ou seja, não retornam nenhum valor. Já para retornar algum dado veremos o exemplo a seguir. Exemplo: //Declaração do método ConfirmarCadastro(), do tipo bool e public public bool ConfirmarCadastro(int tipo) if (tipo == 1) return true; else return true; O método criado anteriormente está retornando um valor do tipo Booleano utilizando a cláusula return, que significa retorno. Construtores e Destrutores Toda classe criada deverá possuir dois métodos: o Construtor (Construct) que é chamado no momento quando instanciamos a Classe e o Destrutor (Destruct) quando liberamos o objeto 06 agosto 2012

7 criado por esta classe da memória. No C# temos o denominado Garbage Collector, trocando em miúdos seria um Coletor de Lixos. Ele é responsável pela destruição de todo objeto que não é mais utilizado, sendo um recurso capaz de oferecer uma solução automatizada ao gerenciamento de memória. Exemplo: //Construtor public Socio() MessageBox. Show("Objeto Criado com sucesso!"); //Destrutor ~Socio()da classe O método Construtor será invocado quando instanciamos a Classe Socio e para fins de aprendizado achei interessante demonstrar a sintaxe do Destrutor, que normalmente não precisamos nos preocupar, pois contamos com o recurso Garbage Collector citado anteriormente. Tipos de Classes Na Programação Orientada a Objetos contamos com diversos tipos de classes como: Públicas, Privadas, Protegidas, Estáticas, Abstratas, Seladas, Herdadas entre outras, sendo que todas possuem recursos que se encaixam ao decorrer da análise do projetista. Nesta etapa abordarei os principais conceitos referentes a este assunto As classes públicas, assim como os atributos e métodos, permitem que qualquer pessoa instancie objetos. O nome da classe é precedido pelo nível de acesso (public) seguindo pela palavra chave class. Exemplo: public class Socio // Códigos da Classe Neste caso temos uma classe pública chamada Socio. Privada (Private) Seguindo a mesma lógica dos atributos e métodos, as classes privadas não permitem acesso externo. A sintaxe de criação pode ser conferida a seguir. Exemplo: private class Socio // Códigos da Classe Ou class Socio // Códigos da Classe Existem duas maneiras para declaração de classes privadas, a primeira utilizando a palavra private e a segunda sem nenhuma referência. Com o exemplo citado anteriormente fica mais fácil a visualização. Instanciáveis Public class Socio //atributos estáticos private string nome; public string Nome get return nome; set nome = value; Exemplo de utilização: Socio soc = new Socio(); soc.nome = "Thiago Montebugnoli"; Estáticas Quando utilizamos estes tipos de classes, deveremos por obrigação, possuir todos os atributos como estáticos. A principal característica destas classes é não permitir realizar a instância de um objeto, ou seja, quando for utilizá-la basta fazer referência aos membros para poder trabalhar com os mesmos. Exemplo de criação: Public static class Socio //atributos estáticos private static string nome; public static string Nome get return Socio.nome; set Socio.nome = value; Pública (Public) Este tipo de classe é o mais utilizado, ou seja, toda vez que precisarmos criar um objeto, é necessário instanciá-lo, podendo assim criar vários objetos desta mesma classe. Exemplo de criação: Exemplo de utilização: Socio.nome = Thiago Montebugnoli agosto

8 Na sua utilização basta atribuir o valor desejado. Como foi dito anteriormente, a instancia já é criada automaticamente quando executamos o programa, podendo ser utilizada em todos os pontos do software. A principal vantagem no uso desta classe é a automatização na criação da instância. Criando um Exemplo prático //Namespaces utilizados using System; using System.Collections. Generic; using System.Linq; using System.Text; using System.Windows. Forms; string Cpf cpf; value; get return set cpf = Crie uma aplicação Windows Forms e adicione um botão no formulário. A tela deverá ficar idêntica a Imagem 04. Figura 04: Tela de Exemplo. A partir de agora vou detalhar todas as etapas de como se deve criar uma classe e usá-la logo em seguida, para isto clique em cima da solução e com o botão direito escolha Add/New Item... e na região esquerda em Visual C# Items escolha Code e em seguida Class. Aproveite e clique no botão Add. Ver Imagem 05. Figura 05: Adicionando uma Classe no projeto. O Visual Studio por padrão cria apenas o namespace Classes, e a classe Socio. Vou criar uma classe pública e logo em seguida instanciá-la. A Imagem 01 nos ilustra de uma forma clara de como irá ficar nossa classe Socio e o código abaixo abrange de uma forma prática todas as etapas explicadas anteriormente. namespace Classes //Classe pública public class Socio //Construtor da classe public Socio() MessageBox. Show("Objeto Criado com sucesso!"); classe //Destrutor da ~Socio() //Atributos/ Propriedades Privadas Encapsuladas private string nome; private string cpf; private string rg; private DateTime nascimento; private string telefone; private string endereco; //Atributos/ Propriedades Públicas Encapsuladas public string Nome get return nome; set nome = value; public rg; value; public string Rg get return set rg = public DateTime Nascimento get return nascimento; set nascimento = value; public string Telefone get return telefone; set telefone = value; public string Endereco get return endereco; set endereco = value; //Métodos públicos public void Cadastrar() MessageBox.Show(string. Format("Cadastrando sócio...\r\nnome: 0, - Rg: 1, Cpf: 2",nome,rg,cpf)); public bool ConfirmarCadastro(int 08 agosto 2012

9 tipo) Parse("15/11/1984"); soc.telefone = "(14) true; true; if (tipo == 1) return else return public bool ValidarSocio(int tipo) if (tipo == 1) return true; else return true; public void Alterar() MessageBox. Show("Alterando sócio..."); No formulário criado iremos instanciar um objeto da classe Socio e logo em seguida o código comentado correspondente "; soc.endereco = "Rua Fulano de Tal, 999"; //Invocando métodos soc.cadastrar(); if (soc. ConfirmarCadastro(1)) MessageBox. Show("Cadastro Confirmado!"); if (soc. ValidarSocio(1)) MessageBox. Show("Sócio Validado!"); soc.alterar(); O primeiro passo foi criado o objeto soc usando a palavra reservada new, logo em seguida definimos os atributos e invocamos os métodos. A Figura 06, 07 e 08 nos dá uma boa idéia do funcionamento de uma classe em Run-Time. Figura 07: Passo 02 Atribuindo Valores e Executando Métodos. Conclusão Neste artigo procurei separar em duas etapas, a primeira com conceitos básicos de Programação Orientada a Objetos (POO) e a outra com um exemplo prático e de fácil entendimento. Vou continuar com conceitos e dicas sobre este assunto nos próximos artigos. Abraços e até o mês que vem! private void button1_ Click(object sender, EventArgs e) //Instanciando um objeto Socio soc = new Socio(); //Inserindo atributos soc.nome = "Thiago Montebugnoli"; soc.rg = " "; soc.cpf = " "; soc.nascimento = DateTime. Figura 06: Passo 01 - Construtor. Sobre o autor Marcos César Silva Consultor de Sistemas na consultoria de sistemas DataSmart e Consultor Técnico do The Club, Bacharel em Ciência da Computação, MBA em Gestão Empresarial, Certificações MCAD (Microsoft Certified Application Developer) e MCSD. NET (Microsoft Certified Solution Developer.NET) marcos@theclub.com.br agosto

10 Criando aplicações com FireMonkey e acesso a banco de dados no Delphi XE2 Este artigo tem como foco, criar uma aplicação de exemplo utilizando a plataforma FireMonkey, a tecnologia LiveBindings, a tecnologia DBExpress e o Servidor de banco de dados FireBird. Serão abordados com mais profundidade os temas FireMonkey e LiveBindings que são novidade da nova IDE do Delphi, a XE2. Vamos então conhecer um pouco sobre essas novas tecnologias que foram acopladas ao Delphi. O que é o FireMonkey? O Delphi XE2 chegou ao mercado repleto de novidades. E uma das mais cobiçadas pela comunidade Delphi é o FireMonkey. Este framework chamou a atenção dos usuários Delphi por suas excelentes características. O FireMonkey é uma nova plataforma de desenvolvimento do Delphi XE2, com ela é possível criar aplicações e distribuí-las para plataformas Windows 32 bits, Windows 64 bits, Mac OS X e ios (iphone). Além disso, o FireMonkey possibilita criar uma aplicação mais rica em visual, além é claro de criar gráficos em 3D, similares as animações criadas em Flash que são utilizadas em muitas páginas da web. O FireMonkey não deixa nada a desejar, nem se tratando em desempenho de aplicações, pois utiliza de todo o poder da CPU e também da GPU (Unidade de Processamento Gráfico) para aplicações em 3D, assim sendo, não precisa se preocupar com o desempenho de suas aplicações FireMonkey. São quatro tipos de projetos FireMonkey para o Delphi XE2, são eles: 1. FireMonkey 3D Application; 2. FireMonkey 3D ios Application; 3. FireMonkey HD Application; 4. FireMonkey HD ios Application. Tendo em vista estas opções de projetos, percebe que FireMonkey HD Application dentre as demais é a que mais coincide com a tradicional VCL, os projetos para aplicações iphone se percebe facilmente, e os projetos para aplicações com gráficos em 3D também fica fácil se perceber. Neste artigo será exemplificado mais a frente, a forma que mais se coincide com a VCL. 10 agosto 2012

11 Conexão a dados através da DBExpress Na VCL, tradicional plataforma de desenvolvimento mais utilizada pelos usuários Delphi em aplicações com acesso a dados, utiliza-se, entre outras tecnologias, a DBExpress para acessar um banco de dados pela aplicação. Dentro de um DataModule distribui-se os componentes utilizados para este acesso, que são sequencialmente o TSQLConnection e o TSQLDataSet ou TSQLQuery. Para garantir melhor desempenho, utiliza-se também a combinação de alguns componentes da palheta DataAccess, o TDataSetProvider e o TClientDataSet. Com estes componentes devidamente configurados, já terá uma conexão persistente com um banco de dados. Continuando a linha de raciocínio, na VCL, depois de configurados os componentes de acesso aos dados, é necessário utilizar um componente TDataSource dentro do formulário onde será feita a manipulação dos dados, este que será a origem dos dados no formulário. Para exibir os dados no formulário faz-se o uso de componentes DataWares, como DBEdit, EDbText entre outros da palheta DataControls. Estes têm em comum duas propriedades, onde se configuram o DataSource ao qual estará vinculado e o DatField que é propriamente dito o Campo da tabela que o componente irá exibir e manipular no formulário. Estando tudo isso configurado, o formulário está pronto para exibir e manipular os dados em tempo de execução. Até aqui não tem nenhuma mudança, como foi dito esta é uma das formas mais tradicionais de conexão a banco de dados utilizada em Delphi. Esta seria uma conexão para uma VCL, mas e se fosse uma aplicação FireMonkey, o que mudaria? A resposta é bem simples, não mudaria nada que se refere à conexão de banco de dados, ou seja, poderá continuar utilizando forma tradicional. O que muda realmente, é que o FireMonkey não conta com os componentes DataWares da palheta DataControls, o DBEdit, o DBText, etc... Sendo assim, para exibir os dados num formulários serão utilizados os componentes da palheta Standard. Neste ponto surge a necessidade de se utilizar a outra novidade da versão XE2 do Delphi, a tecnologia LiveBindings (Ligações ao vivo). O que é LiveBindings? LiveBindings é baseado em expressões relacionais, é um novo recurso de ligação de dados que foi adicionado a IDE do Delphi XE2 para apoiar tanto a VCL quanto o FireMonkey, utiliza-se de expressões para fazer a ligação de um objeto a outro por meio de suas propriedades. O conceito principal destas ligações está em identificar o objeto de origem e o objeto de controle (o destino dos dados), além é claro de configurar as expressão de origem do objeto de origem e a expressão de controle. Estas configurações podem ser feitas no pelo ObjectInspector nas propriedades do objeto de controle. Tendo em vista que estas ligações envolvem um objeto de origem e um objeto de controle, podemos ter três situações sobre o fluxo dos dados, sabendo que Source e Control são respectivamente os objetos de origem e de controle: 1. dirsoucetocontrol; 2. dircontroltosouce; 3. dirbidirectional. As opções acima são configuradas na propriedade Direction do componente BindExpression relacionado ao objeto de controle, não se atente em entender isso agora, no exemplo será explicado esta ligação com mais detalhes, o importante agora é saber que o fluxo de dados de uma ligação LiveBindings pode ser tanto da origem para o controle quanto do controle para a origem, ou ainda os dois ao mesmo tempo, marcando a opção dirbidirectional. Ao criar uma expressão de ligação pelo ObjectInspector, é adicionado ao formulário automaticamente um componente BindingList, que armazenará e gerenciará todas as expressões presentes neste formulário. Outro componente importante é o BindScope, o qual gera um escopo de ligação entre os componentes. No caso de ligação a dados, ou seja, a um TDataSouce, usa-se o BindScopeDB. Um exemplo simples de LiveBindings seria passar o texto digitado em um TEdit para ao Caption de um TLabel, neste caso o TEdit é a origem dos dados, ou seja, a configuração de ligação entre os componentes será feita toda no TLabel pela propriedade LiveBindings. Neste ponto se for um projeto montado na plataforma FireMonkey, listará nesta propriedade duas opções, New LiveBinding e Link To DB Field, se for uma projeto em VCL apenas aparecerá a primeira opção. Seguindo o exemplo, escolha a opção New LiveBinding, aparecerá uma janela para selecionar o tipo de componente que deseja criar, selecione TBindExpression e clique em Ok. Aparecerá mais uma propriedade no ObjectInspector do TLabel, denominada BindExpressionLabel11. Agora será definido a ligação entre os objetos, marque os seguintes valores nas seguintes propriedades do Label1: 1. ControlExpression = Text (Na plataforma FireMonkey não é mais Caption); 2. Direction = dirsourcetocontrol; 3. SourceComponent = Edit1; 4. SourceExpression = Text. Até aqui já está configurado a ligação, porém resta agora apenas notificar o mecanismo de expressão, que irá atualizar os objetos conforme as alterações em suas propriedades, para isso basta apenas uma linha de código. No evento onchange do Edit1, coloque a seguinte codificação: BindingsList1. Notify(Edit1, Text ); O método Notify, irá notificar aos mecanismos de expressões as mudanças que ocorreram na propriedade Text, o segundo parâmetro do método, do componente Edit1 que é o Primeiro parâmetro do método. Pronto este primeiro exemplo já está funcional, pode executá-lo e ver o que acontece com acontece com a Label1 depois que digitar algo na caixa de texto. Veja na figura 1 o exemplo em execução. Figura 1 Exemplo de LiveBindings na plataforma VCL Com este pequeno exemplo, espero ter esclarecido a funcionalidade do recurso LiveBindings, agora podemos ter exemplo base do artigo onde será criado um projeto FireMonkey HD Application que fará conexão a um banco de dados FireBird através da tecnologia DBExpress. agosto

12 Exemplo prático do FireMonkey com ligação ao banco de dados FireBird Agora descreverei os passos para a criação do exemplo prático deste artigo, serão divididos em etapas para facilitar o entendimento e a possibilidade do leitor pular uma etapa em que já possua o conhecimento específico como a conexão à base de dados. Criação do banco de dados Por motivo de organização, crie uma pasta com o nome do projeto Escolar e dentro dela outra pasta onde será salvo o banco de dados, pode nomeá-la como Banco, se necessário pode até criar uma pasta para organizar as fontes do projeto, mas isto fica a critério de cada um, uma boa organização agiliza e muito na localização de arquivos pertinentes ao projeto. Crie um banco de dados firebird com o nome ESCOLAR, que será usado a fim de exemplificar este artigo, e uma tabela ALUNOS com os seguintes campos: CREATE TABLE ALUNOS ( ID_ALUNO INTEGER NOT NULL, NOME VARCHAR (60) CHARACTER SET NONE COLLATE NONE, DATA_NASCIMENTO DATE, CPF VARCHAR (15) CHARACTER SET NONE COLLATE NONE, CIDADE VARCHAR (60) CHARACTER SET NONE COLLATE NONE, UF CHAR (2) CHARACTER SET NONE COLLATE NONE, TELEFONE VARCHAR (15) CHARACTER SET NONE COLLATE NONE); ALTER TABLE ALUNOS ADD CONSTRAINT PK_ALUNOS PRIMARY KEY (ID_ALUNO); CREATE UNIQUE INDEX PK_ALUNOS ON ALUNOS (ID_ ALUNO); Listagem 1: Banco de dados Escolar Criação do projeto FireMonkey HD Application - Delphi O próximo passo é abrir o Delphi XE2 e criar um novo projeto FireMonkey HD Application - Delphi. Salve na pasta Fontes que está dentro da pasta Escolar o projeto com o nome ESCOLAR.dproj, e salve a primeira Unit com o nome de unalunos. pas. Esta será a Unit que manipulará os dados da tabela Alunos presente no banco de dados. Altera a propriedade Name do Form1 para frmalunos. Conexão da aplicação à base de dados através de um DataModule Para fazer a conexão da aplicação criada com a base de dados, crie um DataModule pelo menu File/New/Other e na janela New Itens seleciona no menu à esquerda Delphi Projects/Delphi Files, serão listados à direita os itens a serem adicionados ao projeto, escolha DataModule e clique em Ok. Altere a propriedade Name do DataModule1 para DM e salve a Unit com o nome undm. Através do mecanismo DataExplorer, localizado à direita da tela, crie uma nova conexão FireBird clicando com o botão direito em seguida New Connection, de o nome de ESCOLAR. Para especificar o caminho do banco de dados, clique com o botão direito na conexão que acabou de criar e selecione a opção Modify Connection, informe a localização do arquivo do banco de dados, o nome de usuário e a senha de acesso do mesmo, e teste a conexão. Caso de algum erro verifique se o caminho está certo, caso seja necessário antes do caminho especifique o IP ou o nome do computador, exemplo NomedoPC-PC:C:\ESCOLAR\Banco\ESCOLAR.FDB. Configurando os componentes DBExpress Coloque um componente TSQLConnection da palheta DBExpress e configure a propriedade ConnectionName para ESCOLAR, marque false em LoginPrompt e de o nome de CONEXAO. Agora coloque no DM um componente TSQLDataSet também da palheta DBExpress, altere seu Name para sdsalunos, defina em ConnectionName a conexão Escolar, e coloque em CommandText a SQL SELECT * FROM ALUNOS. Carregue os Fields do sdsalunos e configure suas propriedades ProvidersFlags. Adicione mais um componente ao DM, agora um TDataSetProvider da palheta DataAccess, dê o nome de dspalunos, em UpDateMode selecione upwherekeyonly e para finalizar as configurações deste componente selecione a propriedade opções e marque True em poallowcommandtext. Agora para finalizar e possibilitar o acesso dos dados em memória local, de forma desconectada com o servidor de banco de dados, coloque um componente TClientDataSet da palheta DataAccess, altere a propriedade Name para cdsalunos e selecione em ProviderName o dspalunos. Até este ponto, o mecanismo de acesso e manipulação aos dados está pronto. O que resta fazer é carregar os Fields do cdsalunos e configurá-los da mesma forma como os Fields do sdsalunos. Como o cdsalunos irá trabalhar com os dados em memória local, para poder gravar no banco de dados às atualizações feitas nele é preciso chamar o método ApplyUpDates passando o parâmetro -1 ou 0 (zero) nos eventos AfterPost e AfterDelete, veja na listagem 2 um exemplo: procedure TDM.cdsAlunos AfterDelete(DataSet: TDataSet); cdsalunos. ApplyUpdates(-1); Listagem 2 Método ApplyUpDates do cdsalunos Criando um layout para o frmalunos e ligando-o ao DM Até este ponto do exemplo não tem novidades para quem já trabalha com a tecnologia DBExpress, pois a conexão com o banco de dados, como foi dito antes, continua sendo feita da forma tradicional. Porém, agora temos que vincular os Fields do cdsalunos, que se encontra no DM, a um componente TDataSource, que será adicionado no frmalunos, ou seja, o frmalunos terá que ter a declaração da undm em sua cláusula Uses, isto pode ser feito visualmente pelo menu File/Use Unit, depois basta selecionar a undm e confirmar clicando em Ok. Logo após adicione um DataSource ao frmalunos e altere o Name dele para dsalunos, este será a origem dos dados deste formulário, na propriedade DataSet selecione pelo combo a opção DM.cdsAlunos. Na VCL isto garantiria que qualquer componente DataWare, da palheta DataControls, 12 agosto 2012

13 ligado ao dsalunos poderia manipular um Field sem maiores complicações, bastaria apenas configurar no componente o dsalunos e o Field que ele representaria. Como estamos criando um projeto pela plataforma FireMonkey, isso já não é possível devido ao fato de não contarmos com estes componentes DataWares, por isso teremos que fazer o uso do novo recurso de ligações LiveBindings, para podermos configurar os componentes visuais comuns para estarem gerenciando os dados a partir de expressões. Para poder fazer um vinculo das expressões LiveBindings com o dsalunos teremos é claro que definir um escopo para estas ligações, sendo assim adicione ao formulário um TBindScopeDB, altere seu Name para BindScopeDB e na propriedade DataSource selecione o dsalunos, com isso qualquer componente visual através da propriedade LiveBinding terá acesso aos Fields do cdsalunos e poderá manipulá-los. Agora vamos definir um layout para o frmalunos, veja na figura 2 uma sugestão, neste exemplo será utilizado um BindNavigator da palheta LiveBindings, que tem a mesma funcionalidade de um DBNavigator, neste componente é necessário apenas configurar a propriedade BindScope selecionando o recém-criado BindScopeDB. Será necessário também adicionar os componentes de edição e visualização dos campos da tabela de alunos, neste caso iremos adicionar seis componentes TEdit lembrando de alterar a propriedades Name de cada um seguindo um padrão, por exemplo edtidaluno, edtnome, edtdatanascimento, edtcpf, edtcidade e edttelefone. Assim ficará mais fácil fazer a chamada deste componentes nas linhas de código. Coloque também um componente TComboEdit da palheta Additinonal, este tem a mesma função do combobox comum, onde se preenche uma lista de itens, estes que serão os valores a serem armazenados no banco de dados, altere o Name deste componente para cbeuf, e adicione as siglas das UFs na propriedade item separando cada uma por uma quebra de linha com o botão Enter, lembrando que o campo UF foi definido com o tipo Char (2), limitando o armazenamento a apenas 2 caracteres. Para listar os registros cadastrados no banco, em VCL usa-se um DBGrid, neste exemplo em Firemonkey será usado um TStringGrid, aletre seu Name para sgalunos, mais a frente explicarei como fazer sua ligação com os dados. Para finalizar o layout do frmalunos, restam apenas distribuir os rótulos (Labels) de cada componente. Agora vamos fazer as configurações LiveBindings dos componentes, para que possibilite o acesso aos dados. Figura 2 Sugestão de layout para o frmalunos Configurando as ligações dos componentes com o recurso LiveBindings Tendo todos os componentes visuais ajustados ao layout do formulário, agora vamos fazer os vínculos com os componentes de acesso aos dados via LiveBindings. Baseando-se na nomenclatura sugerida dos componentes, selecione o componente edtidaluno e na janela ObjectInspector localize a propriedade LiveBinding, ao clicar na combo serão listadas duas opções como mostra a figura 3, a opção NewLiveBinding seria para o caso de fazer uma ligação manualmente como foi mostrado no primeiro exemplo onde se informava a ControlExpression, a Direction, o SourceComponent e a SourceExpression, porém como neste exemplo as ligações serão feitas aos Fields do cdsalunos escolheremos a segunda opção, Link to DB Field, abrirá uma janela listando os Fields vinculados ao BindScopeDB, ver figura 4, agora basta selecionar, neste caso, o Field ID_ALUNO e pressionar Ok. Faça isso para todos os componentes TEdit, definindo corretamente seus BindLinks para os Fields correspondentes. No cbeuf (TComboEdit) depois de inserido as siglas das UFs na lista de itens, basta criar um BindLink para o campo UF da tabela, da mesma forma que foi feito com o edtidaluno. Figura 3 - Link to DB Field Ao criar o primeiro DBLink, automaticamente é criado no formulário um componente TBindingsList, este é responsável por listar todas as expressões Binding presentes no formulário, pode- -se também através deste componente editar as expressões listadas, alterando suas propriedades Figura 4 - New DB Link de forma desvinculadas aos componentes de controle. Entenda que o BindingList utiliza o mesmo mecanismo de uma ActionList, ele agrupa todos os controles Bindings facilitando a visualização dos mesmos, veja na figura 5 a lista dos componentes do frmalunos que é aberta logo após dar dois cliques no componente BindingsList. Figura 5 - Lista de componentes Bindings Para configurar a sgalunos (TStringGrid) muda um pouco, mas continua seguindo a mesma linha de raciocínio dos BindLinks, porém a opção será Link to DB DataSource. Ao selecionar esta opção será aberta novamente a janela New DB Link para selecionar em qual o escopo está ligado o dsalunos, neste exemplo temos apenas um escopo, mas poderiam ser mais conforme as necessidades forem surgindo. Ao criar o BindLink para o sgalunos, já está praticamente pronto nosso projeto, basta apenas realizar alguns ajustes para melhorar a forma de exibição dos dados na grid, logo abaixo da propriedade LiveBinding do componente sgalunos, surgiu uma nova propriedade chamada DBLinksgAlunos1, esta propriedade será criada em todos os componentes, ela se refere de fato ao BindLink vinculado ao objeto selecionado, neste caso o sgalunos, iremos utilizar a propriedade Columns. Da mesma forma que no tradicional DBGrid da VCL, pode-se adicionar os campos do cdsalunos na grid de forma manual, podendo assim definir a largura e o título da coluna de cada Field. Então agosto

14 clique na propriedade Columns e abrirá a janela para o gerenciamento das colunas da grid, basta clicar no botão inserir e selecionar os campos um a um, definindo suas propriedades, ver tabela 1. Tabela 1 Propriedades das colunas da sgalunos Ao preencher todas as propriedades das colunas da sgalunos, nosso exemplo está quase pronto, basta alguns ajustes para uma melhor performance. O ideal é que a conexão ao banco de dados seja aberta apenas uma vez ao abrir o formulário principal e fecha quando o mesmo seja encerrado. Como neste exemplo temos apenas uma tela, esta fará a função de abrir e fechar a conexão e também abrir e fechar o ClientDataSet utilizado na manipulação dos dados do formulário, o cdsalunos. Para que isso seja possível, basta apenas duas linhas de códigos no evento oncreate e duas no evento onclose do frmalunos. Veja a listagem 3. procedure TfrmAlunos. FormClose(Sender: TObject; var Action: TCloseAction); DM.cdsAlunos.Close; DM.CONEXAO.Connected := False; Figura 6 - Projeto em tempo de execução Estes códigos garantem o desempenho do projeto em execução, mas temos que ter em mente a ordem de criação formulários na aplicação, acesse o menu do Delphi Project/Options selecione a opção Forms e veja à direita a ordem em que será feito o auto-create, se o DM estiver em segundo lugar no seu projeto, arraste-o para a primeira posição, para que seja criado antes do frmalunos e pressione Ok. Isso é feito para prevenir um futuro erro de execução. Veja que é feito o uso do DM no formulário de alunos, para abrir e fechar a conexão e o cdsalunos, sendo assim isto não seria possível se o formulário de alunos fosse criado antes do DM, por isso o DM deve ser criado antes do formulário. Agora sim, nosso exemplo está funcionando, pode fazer alguns cadastros de teste, note que a cada alteração nos componentes a grid vai sendo atualizada automaticamente como se fosse uma DBGrid mesmo. Veja na figura 6 a aplicação sendo executada. Conclusão Procurei mostrar neste artigo, de uma forma introdutória, um exemplo de como trabalhar com duas novas tecnologias do Delphi XE2, o Fire- Monkey e o recurso LiveBindings, para fazer uma aplicação com acesso à banco de dados. Vimos que mesmo num projeto FireMonkey a conexão via DBExpress mantém a mesma forma de trabalhar, alterando somente a forma de ligar os componentes visuais com os de acesso aos dados. Além disso, ainda é possível fazer muitas outras coisas com o Firemonkey, como foi dito na introdução, é uma tecnologia bastante inovadora e cheia de recursos para os usuários distribuírem em suas aplicações. E está abrindo novas portas para os desenvolvedores adeptos ao Delphi. Espero que tenham gostado do artigo, um abraço a todos e até a próxima. procedure TfrmAlunos. FormCreate(Sender: TObject); DM.CONEXAO.Connected := True; DM.cdsAlunos.Open; Sobre o autor Lucas Vieira de Oliveira Consultor Técnico The Club. suporte@theclub.com.br Listagem 3 Códigos de manipulação da conexão e do cdsalunos na aplicação 14 agosto 2012

15 Android Lendo e Carregando Arquivo Texto Neste mês abordarei um pouquinho de como podemos criar e carregar arquivos do tipo texto no Android armazenando estas informações no cartão SD do dispositivo. Montaremos um exemplo prático abordando recursos como: Criar e utilizar o evento Onclick() do botão, Utilização da classe Java.IO para manipulação de arquivos, entre outros recursos que poderão ser acompanhados ao decorrer da leitura. Opções de Armazenamento O Android nos fornece diversas formas para salvar os dados, sendo que a solução depende da necessidade, podendo assumir as seguintes formas: SharedPreferences: Armazenar dados particulares primitivos em pares chave-valor. Internal Storage: Armazenar dados privados na memória do dispositivo. External Storage: Armazenar dados públicos sobre o armazenamento externo compartilhado. SQLite DataBases: Armazenar dados estruturados em um banco de dados. Como foi dito no início do artigo, usaremos a opção External Storage, que significa Armazenamento externo. External Storage Armazenamento Externo agosto

16 Os dispositivos compatíveis com o sistema Android suporta uma memória externa compartilhada que podemos utilizar para diversas tarefas, como por exemplo manipular arquivos do tipo texto. Podendo ser um cartão SD ou uma memória interna não removível. Os arquivos salvos para o armazenamento externo são de leitura para todos podendo ser modificado pelo usuário. Comandos úteis: Environment.getExternalStorageState() : Comando necessário para verificar se a mídia está disponível. Environment.getExternalStorageDirectory(): comando para abrir um diretório que representa a raiz do armazenamento externo, usando o diretório: /Android/dados/<nome do pacote>/arquivos Criando um exemplo prático O lay-out da aplicação se dividirá em duas partes, a primeira iremos criar um arquivo do tipo texto e salvá-lo no cartão SD, já a segunda escolheremos o arquivo para posteriormente carregá-lo em um EditText. Para isto abra seu Eclipse e clique em File/New/Android Project e crie um projeto em Android, recomendo a criação na versão 2.2 ou 2.3. Adicionando permissões Um detalhe importante para esse projeto é que será necessário habilitar a permissão WRITE_EXTERNAL_STORAGE no arquivo manifest, pois graças a essa permissão que seu aplicativo pode gravar arquivos no SD Card. Dê um duplo clique no arquivo AndroidManifest.xml e na aba Permissions clique no botão Add para adicionar o código a seguir. Ver Imagem 01. android.permission.write_external_storage Esta permissão indica que podemos salvar dados em um dispositivo externo, o código deverá ficar parecido com o a seguir. Figura 01: Android Manifest Permissions. <activity android:name=. Android_txtActivity app_name > <intent-filter> <action android:name= android.intent.action.main /> <category android:name= android.intent. category.launcher /> </intent-filter> </activity> </application> <uses-permission android:name= android. permission.write_external_storage /> </manifest> Criando a interface gráfica Trabalharemos com os componentes padrões do Android, como: TextView, EditText, Button e Spinner. A imagem 02 nos dá uma noção melhor de como os componentes deverão estar dispostos em nosso arquivo principal main.xml. <?xml version= 1.0 encoding= utf-8?> <manifest xmlns:android= android.com/apk/res/android package= pct.android_txt android:versioncode= 1 android:versionname= 1.0 > <uses-sdk android:minsdkversion= 8 /> <application > Podemos conferir o código XML correspondente logo em seguida. <?xml version= 1.0 encoding= utf-8?> <LinearLayout xmlns:android= schemas.android.com/apk/res/android android:orientation= vertical android:layout_width= fill_parent android:layout_height= fill_parent android:weightsum= 1 > 16 agosto 2012

17 parent android:singleline= false android:gravity= top android:lines= 5 android:layout_height= 120dp /> <Button android:text= Salvar txt android:onclick= click_salvar android:layout_height= wrap_ content android:layout_width= 115dp android:layout_gravity= center_ horizontal /> Figura 02: Disposição dos componentes. <TextView android:text= Diretório: android:layout_width= wrap_ content android:layout_height= wrap_ content /> <TextView android:text= Nome do arquivo txt: android:layout_width= wrap_ content android:layout_height= wrap_ content /> <EditText android:text= android:layout_width= match_ parent android:layout_height= wrap_ content /> <TextView android:text= Texto do arquivo a ser salvo: android:layout_width= wrap_ content android:layout_height= wrap_ content /> <EditText android:text= android:layout_width= match_ <TextView android:text= android:layout_width= fill_parent android:layout_height= wrap_ content /> <LinearLayout android:layout_ width= fill_parent android:gravity= center_ vertical android:layout_height= wrap_ content > <Spinner splistararquivos android:layout_ width= 220dp android:layout_weight= 10 android:layout_ height= 50dp /> <Button android:layout_ weight= 1.0 android:text= Carregar txt android:onclick= click_ Carregar android:layout_ width= 115dp android:layout_ height= wrap_content /> </LinearLayout> <TextView android:text= Texto do arquivo a ser carregado: android:layout_width= wrap_ content android:layout_height= wrap_ content /> agosto

18 <EditText android:text= android:layout_width= match_ parent android:singleline= false android:gravity= top android:lines= 5 android:layout_ height= 120dp /> </LinearLayout> Podemos rodar o exemplo e teremos uma tela parecida com a da Figura 03. Criaremos também algumas variáveis ao decorrer do desenvolvimento, confiram a seguir: private TextView txtroot; private TextView txtnomearq; private TextView txtsalvar; private TextView txtler; private Spinner SpnListarArquivos; private ArrayList<String> Arquivos = new ArrayList<String>(); No evento OnCreate() faremos atribuições às variáveis e invocaremos o método Listar() seguido de um Try..Catch. public void oncreate(bundle savedinstancestate) super.oncreate(savedinstancestate); try setcontentview(r.layout.main); Figura 03: Lay-Out da aplicação. Codificando o Exemplo Usaremos alguns pacotes adicionais, sendo necessário adicioná-los ao projeto. import java.io.bufferedreader; import java.io.file; import java.io.fileoutputstream; import java.io.filereader; import java.util.arraylist; import android.os.environment; import android.view.view; import android.widget.arrayadapter; import android.widget.spinner; import android.widget.textview; import android.widget.toast; txtroot = (TextView) findviewbyid(r.id.txtroot2); txtnomearq = (TextView) findviewbyid(r.id.edtnomearq); txtsalvar = (TextView) findviewbyid(r.id.edtsalvar); txtler = (TextView) findviewbyid(r.id.edtler); SpnListarArquivos = (Spinner) findviewbyid(r.id.splistararquivos); txtroot.append(obterdiretorio()); Listar(); catch (Exception e) Mensagem( Erro : + e.getmessage()); Achei necessário criar uma função Padrão Mensagem (), a qual será responsável notificar o usuário. Esta classe Toast se difere da AlertDialog. Builder pois a mesma apenas informa no rodapé inferior da tela do Android o ocorrido e logo em seguida desaparece, achei interessante usar este tipo de recurso para fins de aprendizado, podemos conferir a seguir o método que recebe como parâmetro uma String. 18 agosto 2012

19 private void Mensagem(String msg) Toast.makeText(getApplicationContext(), msg, Toast.LENGTH_SHORT).show(); O próximo método nos retorna o diretório de armazenamento externo. private String ObterDiretorio() File root = android.os.environment. getexternalstoragedirectory(); return root.tostring(); O método Listar() preencherá o componente Spinner com os arquivos do tipo.txt salvos no diretório externo. Usamos os tipos de variáveis File e File[], sendo respectivamente responsáveis por obter o diretório e os arquivos deste diretório. Adicionamos os arquivos em um Array para posteriormente utilizá-los. public void Listar() File diretorio = new File(ObterDiretorio()); File[] arquivos = diretorio. listfiles(); Ao clicarmos no botão Salvar executaremos o método Click_Salvar, usaremos um Try..Catch, onde transformamos o texto digitado em um Array de Bytes e com o método Write inserimos os dados seguido de uma notificação ao usuário. Com o método Listar() atualizaremos o Spinner com o nome dos arquivos.txt. Ver Imagem 04. public void click_salvar(view v) String lstrnomearq; File arq; byte[] dados; try lstrnomearq = txtnomearq. gettext().tostring(); arq = new File(Environment. getexternalstoragedirectory(), lstrnomearq); FileOutputStream fos; dados = txtsalvar.gettext().tostring(). getbytes(); fos = new FileOutputStream(arq); fos.write(dados); fos.flush(); fos.close(); Mensagem( Texto Salvo com sucesso! ); if(arquivos!= null) int length = arquivos.length; for(int i = 0; i < length; ++i) File f = arquivos[i]; if(f.isfile()) Arquivos.add(f. getname()); ArrayAdapter<String> arrayadapter = new Ar rayadapter<string>(this,android.r.layout. simple_dropdown_item_1line, Arquivos); SpnListarArquivos. setadapter(arrayadapter); Criando o método Salvar() Figura 04: Salvando o Arquivo.txt. agosto

20 Listar(); catch (Exception e) Mensagem( Erro : + e.getmessage()); Criando o método Carregar() Já o método carregar, continuaremos a utilizar o Try..Catch, sendo que de primeiro momento pegamos o item que está selecionado no componente Spinner, limpamos o campo txtler e logo em seguida efetuamos uma leitura linha a linha do arquivo carregando para a caixa de texto toda a informação lida. Ver Imagem 05. public void click_carregar(view v) String lstrnomearq; File arq; String lstrlinha; try lstrnomearq = SpnListarArquivos. getselecteditem().tostring(); txtler.settext( ); arq = new File(Environment. getexternalstoragedirectory(), lstrnomearq); BufferedReader br = new BufferedReader(new FileReader(arq)); while ((lstrlinha = br.readline())!= null) if (!txtler.gettext(). tostring().equals( )) txtler.append( \n ); txtler.append(lstrlinha); Mensagem( Texto Carregado com sucesso! ); catch (Exception e) Mensagem( Erro : + e.getmessage()); Conclusão Este artigo nos demonstrou os conceitos básicos e essenciais para trabalhar com arquivos textos no Sistema Android. Procurei demonstrar alguns recursos diferentes dos abordados nos meses anteriores a fim de aumentar nosso leque de aprendizado. Vou ficando por aqui, um forte abraço e até o mês que vem! Sobre o autor Thiago Cavalheiro Montebugnoli Thiago Cavalheiro Montebugnoli é tecnólogo, formado pela Faculdade de Tecnologia de Botucatu SP (FATEC) foi consultor técnico do The Club, já desenvolveu softwares utilizando a plataforma.net, Delphi junto com Banco de Dados SQL Server e Firebird. Atualmente trabalha no Centro de Processamento de Dados da Prefeitura Municipal de Itaí-SP. Possui as seguintes certificações: MCP - Microsoft Certified Professional, MCTS - Microsoft Certified Technology Specialist, MCAD - Microsoft Certified Application Developer e MCSD - Microsoft Certified Solution Developer. thiago@theclub.com.br Figura 05: Carregando o Arquivo.txt. 20 agosto 2012

21 Delphi Parte V Vimos no artigo anterior, o inicio dos exemplos sobre banco de dados. Nesse artigo veremos mais dicas sobre desenvolvimento de aplicações cliente/server com dbexpress no Delphi, onde a principal será a parametrização dos cadastros. Imagine o nosso cadastro de clientes tenha algo em torno de 500 registros, o que não é nada de tão absurdo. Pelo que construímos até agora, teríamos o DBNavigator para navegar entre os registros, o que não tem nenhuma facilidade. Vamos alterar o projeto para que as consultas sejam parametrizadas e possamos modificar o cadastro. Teremos assim, performance da aplicação pois teremos em memória apenas os registros necessários para a edição dos dados. Parametrizando as consultas agosto

22 Figura 1. Configurando o parâmetro do cadastro de cliente Para parametrizar as consultas precisamos modificar a consulta SQL adicionando o parâmetro que desejamos. Veja no código a seguir, como ficará a consulta para o cliente. select ncdcliente, snmcliente, tdtnascimento, nvllimite from CLIENTE where ncdcliente = :ncdcliente Assim, criamos um parâmetro para a consulta (basta ter dois pontos antes). Ao fechar o editor, a propriedade Params do SQLDataset mapeia os parâmetros adicionados no SQL (Figura 1). Configure o parâmetro para o tipo correto, nesse exemplo, ftinteger. Precisamos repassar esse parâmetro para o ClientDataSet. Para isso, basta clicar com o botão direito no componente e escolher a opção Fetch Params. Pronto. Para conferir, acesse a propriedade Paras do cdscliente, ela deve ter a mesma configuração do dscliente. Agora, se abrirmos a aplicação você notará que nenhum registro é mostrado. Obviamente, devido a mudança do SQL. Como podemos então mostrar os dados? Precisamos ter uma consulta auxiliar para buscarmos o registro que precisamos mudar. Isso já introduz um conceito importante no nosso projeto, o de performance. Não precisamos retornar todos os agosto 2012 Figura 2. Usando abas no cadastro de clientes Figura 3. Aba de pesquisa no cadastro de cliente registros do cadastro (imagine 5, 10 mil registros) para modificar um apenas. Vamos retornar para o cadastro, apenas o registro que desejamos alterar. Modificando o cadastro de cliente Precisamos mudar o layout do cadastro de clientes. Precisamos adicionar uma pesquisa para que possamos retornar o registro que o usuário vai alterar. Vamos criar abas para o cadastro, onde teremos uma para o cadastro em si e outra para um grid de pesquisa. Adicione um PageControl no formulário e insira dois TabSheets. Crie uma aba com o texto: Dados gerais e outra como Pesquisa. Na aba Dados gerais adicione os controles de tela (podemos remover o DBNavigator). Veja na Figura 2 como ficou o cadastro. Veja que nosso cadastro ficou mais bonito. Agora, precisamos configurar a aba de pesquisa. Adicione um Edit, um Grid e um DataSource. Faça a ligação do DataSource com o grid. Veja na Figura 3 a aba de pesquisa. Precisamos configurar uma consulta para ser usado na pesquisa do cadastro. Nesse tipo de pesquisa, não precisamos retornar uma quantidade grande de dados, precisamos apenas o código e um campo referente a descrição do cadastro (neste caso, o nome do cliente). Vamos criar outro Data Module para conter os componentes para as pesquisas que vamos usar na aplicação. Fica a seu critério para usar apenas um Data Module, apenas atente para colocar o novo Data Module a ser criado na inicialização do projeto. Pesquisas auxiliares

Listando itens em ComboBox e gravando os dados no Banco de Dados MySQL.

Listando itens em ComboBox e gravando os dados no Banco de Dados MySQL. Listando itens em ComboBox e gravando os dados no Banco de Dados MySQL. Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2012 Edição 7 Listando e Gravando Listando itens em ComboBox e gravando os dados no

Leia mais

ETEC DR. EMÍLIO HENRNANDEZ AGUILAR PROGRAMAÇÃO DE COMPUTADORES II PROFESSOR RAFAEL BARRETO DELPHI FORMULÁRIO COM ABAS E BUSCAS DE REGISTROS

ETEC DR. EMÍLIO HENRNANDEZ AGUILAR PROGRAMAÇÃO DE COMPUTADORES II PROFESSOR RAFAEL BARRETO DELPHI FORMULÁRIO COM ABAS E BUSCAS DE REGISTROS ETEC DR. EMÍLIO HENRNANDEZ AGUILAR PROGRAMAÇÃO DE COMPUTADORES II PROFESSOR RAFAEL BARRETO DELPHI FORMULÁRIO COM ABAS E BUSCAS DE REGISTROS FORMULÁRIOS COM ABAS Trabalhar com abas (ou guias) é um recurso

Leia mais

Despachante Express - Software para o despachante documentalista veicular DESPACHANTE EXPRESS MANUAL DO USUÁRIO VERSÃO 1.1

Despachante Express - Software para o despachante documentalista veicular DESPACHANTE EXPRESS MANUAL DO USUÁRIO VERSÃO 1.1 DESPACHANTE EXPRESS MANUAL DO USUÁRIO VERSÃO 1.1 1 Sumário 1 - Instalação Normal do Despachante Express... 3 2 - Instalação do Despachante Express em Rede... 5 3 - Registrando o Despachante Express...

Leia mais

Inserindo Dados no Banco de Dados Paradox.

Inserindo Dados no Banco de Dados Paradox. Inserindo Dados no Banco de Dados Paradox. - Construção do Banco de Dados: Para podermos inserir algo em um banco precisaremos de um Banco de Dados, para isto iremos montar um utilizando o Programa Database

Leia mais

Procedimentos para Reinstalação do Sisloc

Procedimentos para Reinstalação do Sisloc Procedimentos para Reinstalação do Sisloc Sumário: 1. Informações Gerais... 3 2. Criação de backups importantes... 3 3. Reinstalação do Sisloc... 4 Passo a passo... 4 4. Instalação da base de dados Sisloc...

Leia mais

Trabalhando com conexão ao banco de dados MySQL no Lazarus. Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011

Trabalhando com conexão ao banco de dados MySQL no Lazarus. Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011 Trabalhando com conexão ao banco de dados MySQL no Lazarus Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011 Edição 4 O Componente Trabalhando com conexão ao banco de dados MySQL no Lazarus Ano: 03/2011

Leia mais

ANDROID APPLICATION PROJECT

ANDROID APPLICATION PROJECT Criando um programa Abrindo o programa Eclipse, clique na opção [FILE], depois em [NEW], selecione a opção [PROJECT], uma janela de opção do tipo de projeto irá se abrir, escolha [ANDROID] logo depois

Leia mais

Memória Flash. PdP. Autor: Tiago Lone Nível: Básico Criação: 11/12/2005 Última versão: 18/12/2006. Pesquisa e Desenvolvimento de Produtos

Memória Flash. PdP. Autor: Tiago Lone Nível: Básico Criação: 11/12/2005 Última versão: 18/12/2006. Pesquisa e Desenvolvimento de Produtos TUTORIAL Memória Flash Autor: Tiago Lone Nível: Básico Criação: 11/12/2005 Última versão: 18/12/2006 PdP Pesquisa e Desenvolvimento de Produtos http://www.maxwellbohr.com.br contato@maxwellbohr.com.br

Leia mais

AMBIENTE. FORMULÁRIO: é a janela do aplicativo apresentada ao usuário. Considere o formulário como a sua prancheta de trabalho.

AMBIENTE. FORMULÁRIO: é a janela do aplicativo apresentada ao usuário. Considere o formulário como a sua prancheta de trabalho. DELPHI BÁSICO VANTAGENS Ambiente de desenvolvimento fácil de usar; 1. Grande Biblioteca de Componentes Visuais (VCL - Visual Component Library), que são botões, campos, gráficos, caixas de diálogo e acesso

Leia mais

Google Drive. Passos. Configurando o Google Drive

Google Drive. Passos. Configurando o Google Drive Google Drive um sistema de armazenagem de arquivos ligado à sua conta Google e acessível via Internet, desta forma você pode acessar seus arquivos a partir de qualquer dispositivo que tenha acesso à Internet.

Leia mais

Sistema básico de cadastro em Delphi com banco de dados InterBase.

Sistema básico de cadastro em Delphi com banco de dados InterBase. Sistema básico de cadastro em Delphi com banco de dados InterBase. Nesta apostila vamos abordar o uso do banco de dados Interbase e o acesso nativo com os componentes da paleta InterBase do Delphi, eu

Leia mais

FERRAMENTAS DE COLABORAÇÃO CORPORATIVA

FERRAMENTAS DE COLABORAÇÃO CORPORATIVA FERRAMENTAS DE COLABORAÇÃO CORPORATIVA Compartilhamento de Arquivos no Google Drive Sumário (Clique sobre a opção desejada para ir direto à página correspondente) Utilização do Google Grupos Introdução...

Leia mais

MANUAL DE UTILIZAÇÃO

MANUAL DE UTILIZAÇÃO MANUAL DE UTILIZAÇÃO Módulo de operação Ativo Bem vindo à Vorage CRM! Nas próximas paginas apresentaremos o funcionamento da plataforma e ensinaremos como iniciar uma operação básica através do nosso sistema,

Leia mais

MANUAL DO ADMINISTRADOR LOCAL. Entidade Municipal

MANUAL DO ADMINISTRADOR LOCAL. Entidade Municipal MANUAL DO ADMINISTRADOR LOCAL Entidade Municipal Abril / 2011 ÍNDICE Objetivos do Sistema de Registro de Integrado - REGIN... 3 Principais Módulos do Sistema... 4 Módulo Controle de Acesso... 5 Módulo

Leia mais

Figura 1: tela inicial do BlueControl COMO COLOCAR A SALA DE INFORMÁTICA EM FUNCIONAMENTO?

Figura 1: tela inicial do BlueControl COMO COLOCAR A SALA DE INFORMÁTICA EM FUNCIONAMENTO? Índice BlueControl... 3 1 - Efetuando o logon no Windows... 4 2 - Efetuando o login no BlueControl... 5 3 - A grade de horários... 9 3.1 - Trabalhando com o calendário... 9 3.2 - Cancelando uma atividade

Leia mais

Display de 7. PdP. Autor: Tiago Lone Nível: Básico Criação: 16/12/2005 Última versão: 18/12/2006. Pesquisa e Desenvolvimento de Produtos

Display de 7. PdP. Autor: Tiago Lone Nível: Básico Criação: 16/12/2005 Última versão: 18/12/2006. Pesquisa e Desenvolvimento de Produtos TUTORIAL Display de 7 Segmentos Autor: Tiago Lone Nível: Básico Criação: 16/12/2005 Última versão: 18/12/2006 PdP Pesquisa e Desenvolvimento de Produtos http://www.maxwellbohr.com.br contato@maxwellbohr.com.br

Leia mais

CRIANDO BANCOS DE DADOS NO SQL SERVER 2008 R2 COM O SQL SERVER MANAGEMENT STUDIO

CRIANDO BANCOS DE DADOS NO SQL SERVER 2008 R2 COM O SQL SERVER MANAGEMENT STUDIO CRIANDO BANCOS DE DADOS NO SQL SERVER 2008 R2 COM O SQL SERVER MANAGEMENT STUDIO Antes de criarmos um novo Banco de Dados quero fazer um pequeno parênteses sobre segurança. Você deve ter notado que sempre

Leia mais

Manual Administrador - Mídia System

Manual Administrador - Mídia System Manual Administrador - Mídia System Logo após cadastrarmos sua Empresa em nosso sistema, será enviado um e-mail confirmando as informações de acesso do Administrador do sistema. Obs: Caso não tenha recebido

Leia mais

Tutorial WEB CONTENT MANAGEMENT [WCM] Obtenha benefícios a partir das aplicações customizadas da ADMT.

Tutorial WEB CONTENT MANAGEMENT [WCM] Obtenha benefícios a partir das aplicações customizadas da ADMT. Tutorial WEB CONTENT MANAGEMENT [WCM] Obtenha benefícios a partir das aplicações customizadas da ADMT. PÁGINA: 2 de 21 Nenhuma parte deste documento pode ser utilizado ou reproduzido, em qualquer meio

Leia mais

Follow-Up Acompanhamento Eletrônico de Processos (versão 3.0) Manual do Sistema. 1. Como acessar o sistema Requisitos mínimos e compatibilidade

Follow-Up Acompanhamento Eletrônico de Processos (versão 3.0) Manual do Sistema. 1. Como acessar o sistema Requisitos mínimos e compatibilidade do Sistema Índice Página 1. Como acessar o sistema 1.1 Requisitos mínimos e compatibilidade 03 2. Como configurar o Sistema 2.1 Painel de Controle 2.2 Informando o nome da Comissária 2.3 Escolhendo a Cor

Leia mais

FCT Faculdade de Ciências e Tecnologia Serviço Técnico de Informática STI SGCD Sistema Gerenciador de Conteúdos Dinâmicos

FCT Faculdade de Ciências e Tecnologia Serviço Técnico de Informática STI SGCD Sistema Gerenciador de Conteúdos Dinâmicos FCT Faculdade de Ciências e Tecnologia Serviço Técnico de Informática STI SGCD Sistema Gerenciador de Conteúdos Dinâmicos Manual do Usuário Presidente Prudente, outubro de 2010 Índice 1. Introdução e Instruções

Leia mais

Conhecendo o Visual FoxPro 8.0 Parte 1

Conhecendo o Visual FoxPro 8.0 Parte 1 AULA Conhecendo o Visual FoxPro 8.0 Parte 1 Em qualquer profissão é importante que se conheça bem as ferramentas que serão usadas para executar o trabalho proposto. No desenvolvimento de software não é

Leia mais

Manual de Gerenciamento de Conteúdo

Manual de Gerenciamento de Conteúdo Manual de Gerenciamento de Conteúdo 1 Sumário 1) O que é um Gerenciador de Conteúdo...3 2) Como o Site está Estruturado...3 3) Como Gerenciar o Conteúdo do Site...5 3.1) Adicionar Itens no Menu de Navegação...6

Leia mais

Programação para Android. Aula 08: Persistência de dados SQL

Programação para Android. Aula 08: Persistência de dados SQL Programação para Android Aula 08: Persistência de dados SQL Persistência de dados Na maioria das aplicações precisamos ter algum tipo de persistência de dados. Para guardar informações de forma persistente

Leia mais

Acesso à Dados ZEOS x Delphi. Professor Anderson

Acesso à Dados ZEOS x Delphi. Professor Anderson Acesso à Dados ZEOS x Delphi Professor Anderson Introdução O ZEOS é uma biblioteca que provê o acesso à uma base de dados em MYSQL. Através dessa Library, podemos realizar operações de manipulação da base

Leia mais

Está apto a utilizar o sistema, o usuário que tenha conhecimentos básicos de informática e navegação na internet.

Está apto a utilizar o sistema, o usuário que tenha conhecimentos básicos de informática e navegação na internet. 1. Descrição Geral Este manual descreve as operações disponíveis no módulo VTWEB Client, cuja finalidade é gerenciar cadastros de funcionários, realização de pedidos e controle financeiro dos pedidos.

Leia mais

Guia do Usuário. versão 1.2. GiuSoft Tecnologia - www.giusoft.com.br

Guia do Usuário. versão 1.2. GiuSoft Tecnologia - www.giusoft.com.br Guia do Usuário versão 1.2 GiuSoft Tecnologia - www.giusoft.com.br Sumário Introdução 2 O que é o Alitem? 3 Portal de aplicativos na Internet 3 Site de relacionamentos 3 Infra-estrutura de desenvolvimento

Leia mais

Programação para Android. Aula 07: Persistência de dados Shared Preferences, Internal e External Storage

Programação para Android. Aula 07: Persistência de dados Shared Preferences, Internal e External Storage Programação para Android Aula 07: Persistência de dados Shared Preferences, Internal e External Storage Persistência de dados Na maioria das aplicações precisamos ter algum tipo de persistência de dados.

Leia mais

Manual de Publicaça o no Blog da Aça o TRIBOS nas Trilhas da Cidadania

Manual de Publicaça o no Blog da Aça o TRIBOS nas Trilhas da Cidadania Manual de Publicaça o no Blog da Aça o TRIBOS nas Trilhas da Cidadania Sumário Objetivos do Blog... 2 Log-in... 3 Esqueci minha senha... 4 Utilizando o Blog... 5 Encontrando seu Blog... 5 Conhecendo o

Leia mais

( TIAGO DOS SANTOS MENDES ) PROGRAMAÇÃO DISPOSITIVOS MOVEIS ANDROID STUDIO

( TIAGO DOS SANTOS MENDES ) PROGRAMAÇÃO DISPOSITIVOS MOVEIS ANDROID STUDIO Serviço Nacional de Aprendizagem Comercial E.E.P. Senac Pelotas Centro Histórico Programa Nacional de Acesso ao Ensino Técnico e Emprego Curso Técnico em Informática ( TIAGO DOS SANTOS MENDES ) PROGRAMAÇÃO

Leia mais

Está apto a utilizar o sistema, o usuário que tenha conhecimentos básicos de informática e navegação na internet.

Está apto a utilizar o sistema, o usuário que tenha conhecimentos básicos de informática e navegação na internet. Conteúdo 1. Descrição geral 2 2. Resumo das funcionalidades 3 3. Efetuar cadastro no sistema 4 4. Acessar o sistema 6 5. Funcionalidades do menu 7 5.1 Dados cadastrais 7 5.2 Grupos de usuários 7 5.3 Funcionários

Leia mais

Display de Cristal Líquido

Display de Cristal Líquido TUTORIAL Display de Cristal Líquido Autor: Tiago Lone Nível: Básico Criação: 09/03/2006 Última versão: 18/12/2006 PdP Pesquisa e Desenvolvimento de Produtos http://www.maxwellbohr.com.br contato@maxwellbohr.com.br

Leia mais

Manual de Utilização do Zimbra

Manual de Utilização do Zimbra Manual de Utilização do Zimbra Compatível com os principais navegadores web (Firefox, Chrome e Internet Explorer) o Zimbra Webmail é uma suíte completa de ferramentas para gerir e-mails, calendário, tarefas

Leia mais

CRIAÇÃO DE RELATÓRIOS EM DELPHI

CRIAÇÃO DE RELATÓRIOS EM DELPHI PROGRAMAÇÃO DE COMPUTADORES II PROFESSOR RAFAEL BARRETO CRIAÇÃO DE RELATÓRIOS EM DELPHI Relatórios são tão importantes quanto as consultas, com a vantagem de poder imprimir os valores armazenados nos Bancos

Leia mais

Tabela e Gráficos Dinâmicos Como estruturar dinamicamente dados no Excel

Tabela e Gráficos Dinâmicos Como estruturar dinamicamente dados no Excel Tabela e Gráficos Dinâmicos Como estruturar! Para que serve a Tabela e o Gráfico Dinâmico?! Como criar uma Tabela Dinâmica?! Como criar um Gráfico Dinâmico?! Como podemos atualizar dos dados da Tabela

Leia mais

1. Tela de Acesso pg. 2. 2. Cadastro pg. 3. 3. Abas de navegação pg. 5. 4. Abas dados cadastrais pg. 5. 5. Aba grupo de usuários pg.

1. Tela de Acesso pg. 2. 2. Cadastro pg. 3. 3. Abas de navegação pg. 5. 4. Abas dados cadastrais pg. 5. 5. Aba grupo de usuários pg. Sumário 1. Tela de Acesso pg. 2 2. Cadastro pg. 3 3. Abas de navegação pg. 5 4. Abas dados cadastrais pg. 5 5. Aba grupo de usuários pg. 6 6. Aba cadastro de funcionários pg. 7 7. Pedidos pg. 12 8. Cartões

Leia mais

3. No painel da direita, dê um clique com o botão direito do mouse em qualquer espaço livre (área em branco).

3. No painel da direita, dê um clique com o botão direito do mouse em qualquer espaço livre (área em branco). Permissões de compartilhamento e NTFS - Parte 2 Criando e compartilhando uma pasta - Prática Autor: Júlio Battisti - Site: www.juliobattisti.com.br Neste tópico vamos criar e compartilhar uma pasta chamada

Leia mais

Manual Sistema MLBC. Manual do Sistema do Módulo Administrativo

Manual Sistema MLBC. Manual do Sistema do Módulo Administrativo Manual Sistema MLBC Manual do Sistema do Módulo Administrativo Este documento tem por objetivo descrever as principais funcionalidades do sistema administrador desenvolvido pela MLBC Comunicação Digital.

Leia mais

Revisando sintaxes SQL e criando programa de pesquisa. Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011

Revisando sintaxes SQL e criando programa de pesquisa. Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011 Revisando sintaxes SQL e criando programa de pesquisa. Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011 Edição 5 SELECT * FROM Minha_memoria Revisando Sintaxes SQL e Criando programa de Pesquisa Ano:

Leia mais

Veja abaixo um exemplo de como os dados são mostrados quando usamos o

Veja abaixo um exemplo de como os dados são mostrados quando usamos o Objeto DataGridView O controle DataGridView é um dos objetos utilizados para exibir dados de tabelas de um banco de dados. Ele está disponível na guia de objetos Data na janela de objetos do vb.net. Será

Leia mais

Entradas Digitais. PdP. Autores: Luís Fernando Patsko e Tiago Lone Nível: Intermediário Criação: 27/12/2005 Última versão: 18/12/2006

Entradas Digitais. PdP. Autores: Luís Fernando Patsko e Tiago Lone Nível: Intermediário Criação: 27/12/2005 Última versão: 18/12/2006 TUTORIAL Entradas Digitais Autores: Luís Fernando Patsko e Tiago Lone Nível: Intermediário Criação: 27/12/2005 Última versão: 18/12/2006 PdP Pesquisa e Desenvolvimento de Produtos http://www.maxwellbohr.com.br

Leia mais

Manual do Google agenda. criação e compartilhamento de agendas

Manual do Google agenda. criação e compartilhamento de agendas Manual do Google agenda criação e compartilhamento de agendas 1 O que é o Google Agenda? Google Agenda é um serviço de agenda on line gratuito do Google, onde você pode anotar compromissos e tarefas, organizando

Leia mais

SUMÁRIO 1. AULA 6 ENDEREÇAMENTO IP:... 2

SUMÁRIO 1. AULA 6 ENDEREÇAMENTO IP:... 2 SUMÁRIO 1. AULA 6 ENDEREÇAMENTO IP:... 2 1.1 Introdução... 2 1.2 Estrutura do IP... 3 1.3 Tipos de IP... 3 1.4 Classes de IP... 4 1.5 Máscara de Sub-Rede... 6 1.6 Atribuindo um IP ao computador... 7 2

Leia mais

CRIANDO TEMPLATES E LEGENDAS

CRIANDO TEMPLATES E LEGENDAS CRIANDO TEMPLATES E LEGENDAS Este tutorial tem como objetivo instruir passo à passo como criar templates de peças, utilizar os novos recursos de cadastro de propriedade de peças e criação de legenda. 1-

Leia mais

MANUAL DO ANIMAIL 1.0.0.1142 Terti Software

MANUAL DO ANIMAIL 1.0.0.1142 Terti Software O Animail é um software para criar campanhas de envio de email (email Marketing). Você pode criar diversas campanhas para públicos diferenciados. Tela Principal do sistema Para melhor apresentar o sistema,

Leia mais

SCIM 1.0. Guia Rápido. Instalando, Parametrizando e Utilizando o Sistema de Controle Interno Municipal. Introdução

SCIM 1.0. Guia Rápido. Instalando, Parametrizando e Utilizando o Sistema de Controle Interno Municipal. Introdução SCIM 1.0 Guia Rápido Instalando, Parametrizando e Utilizando o Sistema de Controle Interno Municipal Introdução Nesta Edição O sistema de Controle Interno administra o questionário que será usado no chek-list

Leia mais

SSE 3.0. Guia Rápido. Módulo Secretaria. Nesta Edição

SSE 3.0. Guia Rápido. Módulo Secretaria. Nesta Edição SSE 3.0 Guia Rápido Módulo Secretaria Nesta Edição 1 Acessando o Módulo Secretaria 2 Cadastros Auxiliares 3 Criação de Modelos Definindo o Layout do Modelo Alterando o Layout do Cabeçalho 4 Parametrização

Leia mais

MANUAL COTAÇAO WEB MANUAL MANUAL AVANÇO INFORMÁTICA AVANÇO INFORMÁTICA. [Digite seu endereço] [Digite seu telefone] [Digite seu endereço de email]

MANUAL COTAÇAO WEB MANUAL MANUAL AVANÇO INFORMÁTICA AVANÇO INFORMÁTICA. [Digite seu endereço] [Digite seu telefone] [Digite seu endereço de email] MANUAL COTAÇAO WEB [Digite seu endereço] [Digite seu telefone] [Digite seu endereço de email] MANUAL MANUAL AVANÇO INFORMÁTICA AVANÇO INFORMÁTICA Material Desenvolvido para a Célula Materiais Autor: Equipe

Leia mais

Trecho retirando do Manual do esocial Versão 1.1

Trecho retirando do Manual do esocial Versão 1.1 Trecho retirando do Manual do esocial Versão 1.1 A rotina de acesso direto ao XML do S-1000, o usuário pode encontrar na opção de cadastro de Empresas do SIP. Sempre que o usuário localizar a figura ao

Leia mais

Barra de ferramentas padrão. Barra de formatação. Barra de desenho Painel de Tarefas

Barra de ferramentas padrão. Barra de formatação. Barra de desenho Painel de Tarefas Microsoft Power Point 2003 No Microsoft PowerPoint 2003, você cria sua apresentação usando apenas um arquivo, ele contém tudo o que você precisa uma estrutura para sua apresentação, os slides, o material

Leia mais

Prática 3 Microsoft Word

Prática 3 Microsoft Word Instituto Federal de Educação, Ciência e Tecnologia do Estado da Paraíba, Campus Sousa Disciplina: Informática Básica Prática 3 Microsoft Word Assunto: Tópicos abordados: Prática Utilização dos recursos

Leia mais

Revisão: Introdução. - Integração com o AutoManager; 1 Atualização de versão do banco de dados PostgreSQL

Revisão: Introdução. - Integração com o AutoManager; 1 Atualização de versão do banco de dados PostgreSQL Urano Indústria de Balanças e Equipamentos Eletrônicos Ltda. Rua Irmão Pedro 709 Vila Rosa Canoas RS Fone: (51) 3462.8700 Fax: (51) 3477.4441 Características do Software Urano Integra 2.2 Data: 12/05/2014

Leia mais

Tutorial USERADM Como inserir conteúdo no Portal Transparência

Tutorial USERADM Como inserir conteúdo no Portal Transparência Portal Transparência / Acesso a Informação Tutorial USERADM Como inserir conteúdo no Portal Transparência Como acessar? 1. Primeiramente acesse o site de sua instituição, como exemplo vamos utilizar o

Leia mais

Procedimentos para Instalação do Sisloc

Procedimentos para Instalação do Sisloc Procedimentos para Instalação do Sisloc Sumário: 1. Informações Gerais... 3 2. Instalação do Sisloc... 3 Passo a passo... 3 3. Instalação da base de dados Sisloc... 16 Passo a passo... 16 4. Instalação

Leia mais

TUTORIAL COM OS PROCEDIMENTOS DE

TUTORIAL COM OS PROCEDIMENTOS DE TUTORIAL COM OS PROCEDIMENTOS DE GERAÇÃO DE BOLETOS CAIXA ECONÔMICA FEDERAL NO FINANCE Finance V10 New 2 Índice Como gerar Boleto Bancário pela Caixa Econômica... 3 Como efetuar a Conciliação por Extrato

Leia mais

ETEC DR. EMÍLIO HENRNANDEZ AGUILAR PROGRAMAÇÃO DE COMPUTADORES I PROFESSOR RAFAEL BARRETO

ETEC DR. EMÍLIO HENRNANDEZ AGUILAR PROGRAMAÇÃO DE COMPUTADORES I PROFESSOR RAFAEL BARRETO ETEC DR. EMÍLIO HENRNANDEZ AGUILAR PROGRAMAÇÃO DE COMPUTADORES I PROFESSOR RAFAEL BARRETO DELPHI - UTILIZANDO OPENDIALOG PARA ARMAZENAR IMAGENS EM BANCO DE DADOS Criaremos uma solução simples para criar

Leia mais

ÍNDICE... 2 INTRODUÇÃO... 4

ÍNDICE... 2 INTRODUÇÃO... 4 Mic crosoft Excel 201 0 ÍNDICE ÍNDICE... 2 INTRODUÇÃO... 4 Interface... 4 Guias de Planilha... 5 Movimentação na planilha... 6 Entrada de textos e números... 7 Congelando painéis... 8 Comentários nas Células...

Leia mais

ECD1200 Equipamento de Consulta de Dados KIT DE DESENVOLVIMENTO

ECD1200 Equipamento de Consulta de Dados KIT DE DESENVOLVIMENTO Equipamento de Consulta de Dados KIT DE DESENVOLVIMENTO Versão do documento: 1.1 1. Introdução...3 2. Documentação...3 2.1. DOCUMENTAÇÃO DE REFERÊNCIA... 3 2.2. DESCRIÇÃO FUNCIONAL... 4 2.2.1. INTERFACE...

Leia mais

Curso de atualização Educação Integral e Integrada. Tutorial Moodle. Belo Horizonte, 2013.

Curso de atualização Educação Integral e Integrada. Tutorial Moodle. Belo Horizonte, 2013. Curso de atualização Educação Integral e Integrada Tutorial Moodle Belo Horizonte, 2013. 1. INTRODUÇÃO... 3 2. ACESSANDO O AMBIENTE... 4 3. CONHECENDO O AMBIENTE... 5 3.1. CAIXAS DE UTILIDADES... 5 4.

Leia mais

Renovação Online de Certificados Digitais A3 (Com Boleto Bancário)

Renovação Online de Certificados Digitais A3 (Com Boleto Bancário) Renovação Online de Certificados Digitais A3 (Com Boleto Bancário) Guia de Orientação Todos os direitos reservados. Imprensa Oficial do Estado S.A. 2013 Página 1 de 47 Índice PRÉ-REQUISITOS PARA INSTALAÇÃO...

Leia mais

Repeater no GASweb. Regiões

Repeater no GASweb. Regiões Repeater no GASweb Por: Rodrigo Silva O controle de servidor Repeater é um container básico que permite a você criar uma lista de qualquer informação que deseja em uma página Web. Ele não tem uma aparência

Leia mais

Google Drive: Acesse e organize seus arquivos

Google Drive: Acesse e organize seus arquivos Google Drive: Acesse e organize seus arquivos Use o Google Drive para armazenar e acessar arquivos, pastas e documentos do Google Docs onde quer que você esteja. Quando você altera um arquivo na web, no

Leia mais

MANUAL DE INSTALAÇÃO E CONFIGURAÇÃO. Motor Periférico Versão 8.0

MANUAL DE INSTALAÇÃO E CONFIGURAÇÃO. Motor Periférico Versão 8.0 MANUAL DE INSTALAÇÃO E CONFIGURAÇÃO Motor Periférico Versão 8.0 1. Apresentação... 3 2. Instalação do Java... 3 2.1 Download e Instalação... 3 2.2 Verificar Instalação... 3 3. Download do Motor Periférico...

Leia mais

MANUAL DO GERENCIADOR ESCOLAR WEB

MANUAL DO GERENCIADOR ESCOLAR WEB CNS LEARNING MANUAL DO GERENCIADOR ESCOLAR WEB Versão Online 13 Índice ÍNDICE... 1 VISÃO GERAL... 2 CONCEITO E APRESENTAÇÃO VISUAL... 2 PRINCIPAIS MÓDULOS... 3 ESTRUTURAÇÃO... 3 CURSOS... 4 TURMAS... 4

Leia mais

Banco de Dados Microsoft Access: Criar tabelas. Vitor Valerio de Souza Campos

Banco de Dados Microsoft Access: Criar tabelas. Vitor Valerio de Souza Campos Banco de Dados Microsoft Access: Criar tabelas Vitor Valerio de Souza Campos Objetivos do curso 1. Criar uma tabela no modo de exibição Folha de Dados. 2. Definir tipos de dados para os campos na tabela.

Leia mais

1. Introdução pág.3 2. Apresentação do sistema Joomla! pág.4 3. Acessando a administração do site pág.4 4. Artigos 4.1. Criando um Artigo 4.2.

1. Introdução pág.3 2. Apresentação do sistema Joomla! pág.4 3. Acessando a administração do site pág.4 4. Artigos 4.1. Criando um Artigo 4.2. 1. Introdução pág.3 2. Apresentação do sistema Joomla! pág.4 3. Acessando a administração do site pág.4 4. Artigos 4.1. Criando um Artigo 4.2. Editando um Artigo 4.3. Excluindo um Artigo 4.4. Publicar

Leia mais

Acessando um Banco de Dados

Acessando um Banco de Dados Acessando um Banco de Dados Introdução Agora que você já está craque em JSP e já instalou seu servidor, vamos direto para a parte prática! Neste tutorial vamos aprender a acessar um banco de dados. Para

Leia mais

Programação para Dispositivos Móveis

Programação para Dispositivos Móveis Programação para Dispositivos Móveis Fatec Ipiranga Análise e Desenvolvimento de Sistemas Aula 05 Programando formularios, activities e intents. Dalton Martins dmartins@gmail.com São Paulo, Março, 2012

Leia mais

FERRAMENTAS DE COLABORAÇÃO CORPORATIVA

FERRAMENTAS DE COLABORAÇÃO CORPORATIVA FERRAMENTAS DE COLABORAÇÃO CORPORATIVA Manual de Utilização Google Grupos Sumário (Clique sobre a opção desejada para ir direto à página correspondente) Utilização do Google Grupos Introdução... 3 Página

Leia mais

Instalando o Lazarus e outros sistemas de suporte. Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011

Instalando o Lazarus e outros sistemas de suporte. Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011 Instalando o Lazarus e outros sistemas de suporte Prof. Vitor H. Migoto de Gouvêa Colégio IDESA 2011 Edição 1 Levante e ande - Instalando o Lazarus e outros sistemas de suporte. Ano: 02/2011 Nesta Edição

Leia mais

Construtor de sites SoftPixel GUIA RÁPIDO - 1 -

Construtor de sites SoftPixel GUIA RÁPIDO - 1 - GUIA RÁPIDO - 1 - Sumário Introdução...3 Por que utilizar o Construtor de Sites?...3 Vantagens do Construtor de Sites...3 Conceitos básicos...3 Configuração básica do site...5 Definindo o layout/template

Leia mais

Manual do Publicador. Wordpress FATEA Sistema de Gerenciamento de Conteúdo Web

Manual do Publicador. Wordpress FATEA Sistema de Gerenciamento de Conteúdo Web Manual do Publicador Wordpress FATEA Sistema de Gerenciamento de Conteúdo Web Sumário Painel de Administração... 3 1 - Inserção de post... 5 2 Publicação de post com notícia na área headline (galeria de

Leia mais

CRIANDO UM BANCO DE DADOS

CRIANDO UM BANCO DE DADOS CRIANDO UM BANCO DE DADOS Bem, antes de iniciarmos propriamente no delphi, devemos aprender a usar sua ferramentas, sendo uma das mais importantes o Database Desktop, pois é com esta que construímos nossos

Leia mais

Manual do Visualizador NF e KEY BEST

Manual do Visualizador NF e KEY BEST Manual do Visualizador NF e KEY BEST Versão 1.0 Maio/2011 INDICE SOBRE O VISUALIZADOR...................................................... 02 RISCOS POSSÍVEIS PARA O EMITENTE DA NOTA FISCAL ELETRÔNICA.................

Leia mais

TUTORIAL DO ACCESS PASSO A PASSO. I. Criar um Novo Banco de Dados. Passos: 1. Abrir o Access 2. Clicar em Criar um novo arquivo

TUTORIAL DO ACCESS PASSO A PASSO. I. Criar um Novo Banco de Dados. Passos: 1. Abrir o Access 2. Clicar em Criar um novo arquivo TUTORIAL DO ACCESS PASSO A PASSO I. Criar um Novo Banco de Dados Passos: 1. Abrir o Access 2. Clicar em Criar um novo arquivo 3. Clicar em Banco de Dados em Branco 4. Escrever um nome na caixa de diálogo

Leia mais

Manual Equipamento ST10 Flasher Rev. 1

Manual Equipamento ST10 Flasher Rev. 1 Maio de 2014 2 Sumário Introdução:... 3 Acessórios utilizados:... 4 Instalação:... 5 Abrindo e Conhecendo o Software:... 10 SET PORT... 11 RELOAD MONITOR... 13 BlankCheck... 14 ERASE FLASH... 14 DUMP...

Leia mais

Manual Signext Card Explorer

Manual Signext Card Explorer Índice 1. Gerenciador... 1 2. Editar... 4 3. Token... 7 4. Key Pair... 8 5. Certificado... 9 6. Sobre... 10 O Card Explorer é um software desenvolvido para que o usuário possa: gerar par de chaves, inserir/excluir

Leia mais

Noções de. Microsoft SQL Server. Microsoft SQL Server

Noções de. Microsoft SQL Server. Microsoft SQL Server Noções de 1 Considerações Iniciais Basicamente existem dois tipos de usuários do SQL Server: Implementadores Administradores 2 1 Implementadores Utilizam o SQL Server para criar e alterar base de dados

Leia mais

Melhor do que driblar os vírus de pendrive, é não pegá-los! Mas como fazer isto?

Melhor do que driblar os vírus de pendrive, é não pegá-los! Mas como fazer isto? Melhor do que driblar os vírus de pendrive, é não pegá-los! Mas como fazer isto? Por padrão, a maioria dos pendrives vêm formatados com o padrão conhecido como FAT32. Este padrão já meio antigo, é muito

Leia mais

Programação para Android. Aula 06: Activity, menus e action bar

Programação para Android. Aula 06: Activity, menus e action bar Programação para Android Aula 06: Activity, menus e action bar Activity A classe Activity é quem gerencia a interface com o usuário. Ela quem recebe as requisições, as trata e processa. Na programação

Leia mais

Manual do Painel Administrativo

Manual do Painel Administrativo Manual do Painel Administrativo versão 1.0 Autores César A Miggiolaro Marcos J Lazarin Índice Índice... 2 Figuras... 3 Inicio... 5 Funcionalidades... 7 Analytics... 9 Cidades... 9 Conteúdo... 10 Referência...

Leia mais

Data Transformation Services (DTS) por Anderson Ferreira Souza

Data Transformation Services (DTS) por Anderson Ferreira Souza Data Transformation Services (DTS) por Anderson Ferreira Souza O Sql Server possui um recurso extremamente poderoso que é muito pouco utilizado pelos administradores e programadores. Com certeza, sendo

Leia mais

Instalando software MÉDICO Online no servidor

Instalando software MÉDICO Online no servidor Instalando software MÉDICO Online no servidor A máquina denominada Servidora é a que armazenará o banco de dados do software (arquivo responsável pelas informações inseridas), compartilhando com as demais

Leia mais

Manual de Instalação. SafeSign Standard 3.0.77. (Para MAC OS 10.7)

Manual de Instalação. SafeSign Standard 3.0.77. (Para MAC OS 10.7) SafeSign Standard 3.0.77 (Para MAC OS 10.7) 2/23 Sumário 1 Introdução... 3 2 Pré-Requisitos Para Instalação... 3 3 Ambientes Homologados... 4 4 Hardware Homologado... 4 5 Instruções de Instalação... 5

Leia mais

TUTORIAL: MANTENDO O BANCO DE DADOS DE SEU SITE DENTRO DO DOMÍNIO DA USP USANDO O SSH!

TUTORIAL: MANTENDO O BANCO DE DADOS DE SEU SITE DENTRO DO DOMÍNIO DA USP USANDO O SSH! UNIVERSIDADE DE SÃO PAULO (USP) ESCOLA DE ARTES, CIÊNCIAS E HUMANIDADES (EACH) TUTORIAL: MANTENDO O BANCO DE DADOS DE SEU SITE DENTRO DO DOMÍNIO DA USP USANDO O SSH! Autoria e revisão por: PET Sistemas

Leia mais

Banco de Dados Microsoft Access: Criar tabelas

Banco de Dados Microsoft Access: Criar tabelas Banco de Dados Microsoft Access: Criar s Vitor Valerio de Souza Campos Objetivos do curso 1. Criar uma no modo de exibição Folha de Dados. 2. Definir tipos de dados para os campos na. 3. Criar uma no modo

Leia mais

Omega Tecnologia Manual Omega Hosting

Omega Tecnologia Manual Omega Hosting Omega Tecnologia Manual Omega Hosting 1 2 Índice Sobre o Omega Hosting... 3 1 Primeiro Acesso... 4 2 Tela Inicial...5 2.1 Área de menu... 5 2.2 Área de navegação... 7 3 Itens do painel de Controle... 8

Leia mais

Modo Estrutura é o ambiente de definição e estruturação dos campos, tipos de dados, descrição e propriedades do campo.

Modo Estrutura é o ambiente de definição e estruturação dos campos, tipos de dados, descrição e propriedades do campo. Unidade 02 A- Iniciando o Trabalho com o ACCESS: Criar e Salvar um Banco de Dados Acessar o ACCESS Criar e Salvar o Banco de Dados Locadora Encerrar o Banco de Dados e o Access Criando um Banco de Dados

Leia mais

Bem- Vindo ao manual de instruções do ECO Editor de COnteúdo.

Bem- Vindo ao manual de instruções do ECO Editor de COnteúdo. Manual de Instruções ECO Editor de Conteúdo Bem- Vindo ao manual de instruções do ECO Editor de COnteúdo. O ECO é um sistema amigável e intui?vo, mas abaixo você pode?rar eventuais dúvidas e aproveitar

Leia mais

Como funciona? SUMÁRIO

Como funciona? SUMÁRIO SUMÁRIO 1. Introdução... 2 2. Benefícios e Vantagens... 2 3. Como utilizar?... 2 3.1. Criar Chave / Senha de Usuário... 2 3.2. Recursos da Barra Superior... 2 3.2.1. Opções... 3 3.2.1.1. Mover Para...

Leia mais

ÍNDICE 1 INTRODUÇÃO. 04 2 ACESSO AOS SISTEMAS. 05 3 DOCUMENTOS MANUTENÇÃO. 08 08 3.2 10 3.3 OCR. 11 4 REGISTRO DE DOCUMENTOS. 13 5 GERANDO DOCUMENTOS

ÍNDICE 1 INTRODUÇÃO. 04 2 ACESSO AOS SISTEMAS. 05 3 DOCUMENTOS MANUTENÇÃO. 08 08 3.2 10 3.3 OCR. 11 4 REGISTRO DE DOCUMENTOS. 13 5 GERANDO DOCUMENTOS ÍNDICE 1 INTRODUÇÃO... 04 2 ACESSO AOS SISTEMAS... 05 3 DOCUMENTOS MANUTENÇÃO... 08 3.1Tipos de Documentos... 08 3.2 Relações entre Documentos... 10 3.3 OCR... 11 4 REGISTRO DE DOCUMENTOS... 13 5 GERANDO

Leia mais

Manual Integra S_Line

Manual Integra S_Line 1 Introdução O é uma ferramenta que permite a transmissão Eletrônica de Resultado de Exames, possibilitando aos Prestadores de Serviços (Rede Credenciada), integrarem seus sistemas com os das Operadoras

Leia mais

Como incluir artigos:

Como incluir artigos: Como incluir artigos: O WordPress é uma ferramenta muito flexível, com muitas variações e ajustes que podem torná-lo algo muito simples e também muito sofisticado conforme os recursos que são configurados

Leia mais

Persistência de Classes em Tabelas de Banco de Dados

Persistência de Classes em Tabelas de Banco de Dados UTFPR DAELN - Disciplina de Fundamentos de Programação II ( IF62C ). 1 Persistência de Classes em Tabelas de Banco de Dados 1) Introdução! Em algumas situações, pode ser necessário preservar os objetos

Leia mais

MANUAL DE INSTALAÇÃO DO ODONTO TECHNOLOGY

MANUAL DE INSTALAÇÃO DO ODONTO TECHNOLOGY MANUAL DE INSTALAÇÃO DO ODONTO TECHNOLOGY 1 Índice I - Prefácio...3 II - Instalação do tipo servidor...4 III Obter o nome do computador servidor...17 IV Instalação do tipo cliente...19 V Como inserir a

Leia mais

FERRAMENTAS DE COLABORAÇÃO CORPORATIVA

FERRAMENTAS DE COLABORAÇÃO CORPORATIVA FERRAMENTAS DE COLABORAÇÃO CORPORATIVA Criação de Formulários no Google Drive Sumário (Clique sobre a opção desejada para ir direto à página correspondente) Criação de Formulários no Google Drive Introdução...

Leia mais

Manual de Atualização Versão 3.6.4.

Manual de Atualização Versão 3.6.4. Manual de Atualização Versão 3.6.4. Sumário 1. AVISO... 1 2. INTRODUÇÃO... 2 3. PREPARAÇÃO PARA ATUALIZAÇÃO... 3 4. ATUALIZANDO GVCOLLEGE E BASE DE DADOS... 7 5. HABILITANDO NOVAS VERSÕES DO SISTEMA....

Leia mais

Manual de configuração do sistema

Manual de configuração do sistema Manual de configuração do sistema (v.1.5.x Beta) Rua México, 119 Sala 2004 Centro Rio de Janeiro, RJ www.doctors-solution.com.br www.simdoctor.com.br contato@simdoctor.com.br Sumário 1. Fazendo seu primeiro

Leia mais

Manual do sistema SMARsa Web

Manual do sistema SMARsa Web Manual do sistema SMARsa Web Módulo Gestão de atividades RS/OS Requisição de serviço/ordem de serviço 1 Sumário INTRODUÇÃO...3 OBJETIVO...3 Bem-vindo ao sistema SMARsa WEB: Módulo gestão de atividades...4

Leia mais