sexta-feira, 5 de julho de 2013

Interfaces gráficas [Windows 1, Mac 1, Linux +de 20... e subindo]

Vamos aqui falar um pouco sobre interfaces gráficas e a possibilidade de personalização para deixar o micro do "seu" jeito.

Vamos começar pelo Windows, afinal é o mais "VENDIDO". E paramos por aqui, afinal se você usa este sistema, simplesmente não tem escolha de interface. É a imposta pela Microsoft e acabou... Bonito isso né? Você pode no máximo, alterar umas cores aqui e ali e uns poucos temas. Ah sim tem a opção de alterar o papel de parede, ou tinha, afinal o Win8 nem isso tem direito mesmo... Como sempre você foi lesado.

Quanto ao Mac, apesar de poder também ter algumas poucas variações, você, dono de um Mac meio que fica preso à interface criada para o seu Hardware, não é de todo mal, mas realmente apresenta poucas possibilidades. Felizmente, a interface dos OS da Apple são realmente muito bem acabadas e agradáveis e, neste caso vale cada tostão gasto, afinal é um sistema robusto e feito para não dar problemas... Ao contrário de uma gigante por aí, os caras trabalham direito.

Finalmente vamos falar de Linux.
Neste sistema, dado como difícil ou feito para nerds, temos uma singela quantidade de interfaces possíveis, todas graças a um único fato: Código Livre. Portanto, temos simplesmente algumas dezenas de interfaces gráficas das mais simples às mais incrívelmente complexas e bonitas usando recursos mirabolantes das mais modernas placas de vídeo existentes. Mas que são quase indefinidamente personalizáveis e mesmo que dois usuários utilizem a mesma interface, muito provavelmente serão tão diferentemente configuradas que poderão ser vistas como interfaces diferentes.

Há alguns anos atrás (portanto a matéria está relativamente desatualizada, ou seja, já existem muitas outras interfaces disponíveis) foi postado um artigo sobre suas diferenças e características. O Artigo segue abaixo.


Boa leitura:

==== Interfaces gráficas no Linux ===================

Esse tema é realmente muito polêmico entre os usuários Linux. Gerenciador é igual time de futebol e religião, cada um tem a sua e é quase impossível mudar. Neste artigo abordarei alguns gerenciadores e quais as suas vantagens de desvantagens.

Uma infinidade de gerenciadores
Acho que todos nós, ao instalar o Linux, fomos fuçar em todos os gerenciadores de janela presentes, dentre eles o KDE, Gnome, Xfce, ICEwm, Fluxbox, Blanes, entre outros.

Neste artigo pretendo, não apontar o melhor gerenciador de janelas, porém o melhor para a necessidade de cada um. Eu sei que este tema é um tema extremamente de gosto, por isso tentarei ser o mais neutro possível quanto as avaliações.

O KDE
Tenho certeza que a maioria das pessoas, senão todas que estiverem acessando este artigo, já abriram ao menos uma vez o KDE, e que grande parte delas o usa até hoje.

O KDE é um dos gerenciadores mais completos no ambiente Linux. Ele trabalha com a biblioteca QT, e ele é um pouco pesado, sendo quase impossível trabalhar com ele em máquinas mais antigas.

Por experiência própria já tentei rodar ele num celeron 333 Mhz com 128 MB de RAM e o desempenho não foi o esperado, pelo contrário, muito abaixo.

Porém já o utilizei na máquina em que trabalho, um AMD 1.1 Ghz com 512 MB RAM e o desempenho foi muito bom, fiquei satisfeito com a agilidade do mesmo.

O que faz o KDE se destacar é ele se parecer muito com o Windows, da Microsoft. Tanto visualmente como funcionalmente, é lógico que com algumas diferenças. Talvez por isso ele seja tão popular, pois os migrantes de Windows para Linux, ao abrirem o KDE (gerenciador padrão em muitas distros), se familiarizam com ele.

A quantidade de Apps. (programas) que o KDE disponibiliza para o usuário é muito grande. Existe uma ferramenta, já pré-instalada com o KDE para cada uma das funções do Windows. O Centro de controle, para substituir o Painel de Controle do Windows, o OpenOffice.org para substituir o Office e muito mais. Tudo isso em um fácil acesso, apenas clicando no botão com o símbolo K.

Conclusão sobre KDE: Recomendo ele a todas as pessoas que ainda não estiverem muito familiarizadas com o ambiente Linux, mas que tenham um computador com no mínimo 256 MB de RAM para que o KDE supra as expectativas. E também o recomendo para aqueles que gostam de ter tudo a mão ou em um ambiente de trabalho, aonde tempo é dinheiro.

Gnome
O Gnome é, digamos, aquele que concorre lado a lado com o KDE. Ele é um ambiente muito funcional, que dispõe de todos as facilidades do famigerado Windows, e, acredite se quiser, até funcionalidades a mais!

Assim como no KDE, a sua interface é parecida com a do Windows, porém esta difere no ponto em que a sua barra de tarefas está localizada no canto inferior e a barra aonde contém o menu iniciar e os atalhos para programas, está no canto superior.

O Gnome também é um ambiente que permite você personalizar o seu desktop. Ele não é tão customizável como outros gerenciadores, como o FluxBox, mas você pode mexer com a disposição dos painéis, pode deixar ele igual ao KDE. Creio eu que ele não seja tão customizável por causa de suas funcionalidades, assim como acontece no KDE.

O Gnome, além de ser robusto, também conta com sua leveza. Ele é, pelo menos muitos dos amigos aqui do VOL acham, mais leve que seu concorrente, o KDE.

Nas primeiras vezes em que mexi com Linux, um amigo meu me disse para usar o Gnome ao invés do KDE e segui seu conselho. Não me arrependi, pois todas as funcionalidades encontradas no KDE também são encontradas no Gnome. Ele tem muitas aplicações, como editores de texto, visualizadores de imagem e etc.

Porém o Gnome não serve para aquela máquinas mais velhas, pois eu disse que ele era mais leve em relação ao KDE, porém para um desempenho satisfatório, é recomendado no mínimo 128 MB de RAM (garanto que até em processadores 333 o Gnome consegue rodar bem).

Conclusão sobre Gnome: Tão funcional e robusto como o KDE, porém mais leve. Indicado para iniciantes em Linux que gostam de ter mais desempenho (e quem não gosta?). Possui as mesmas funcionalidades básicas do Windows, com algumas a mais.

O Fluxbox
O Fluxbox (Caixa de fluxo, pelo nome já se tem uma noção da simplicidade deste) é um gerenciador muito leve. Para se ter uma noção, sua instalação tem, em média, 700 Kb.

O Fluxbox é um gerenciador que permite a você um altíssimo grau de personalização, aonde você pode mudar cada milímetro do gerenciador a seu modo. Algumas skins padrão já vem com ele, porém há um pequeno "tesouro" de skins na internet, basta procurar.

Tirando a parte da personalização, o Fluxbox é um gerenciador ideal para aquela máquina antiga, que está jogada no canto sem utilidade. Te garanto que o Fluxbox consegue reviver qualquer máquina, exceto aquelas com 8 MB de RAM.

Um dos contras do Fluxbox é a dificuldade em se configurar qualquer coisa que seja, como por exemplo o teclado, aonde você tem que abrir o arquivo de configuração aonde está especificado o teclado para poder alterar seu layout e já em outros gerenciadores, como o KDE, basta apenas abrir o Centro de Controle.

Talvez um dos motivos de muitos idolatrarem o Fluxbox, seja a sua alta capacidade de personalização. Pessoalmente já o utilizei e gostei muito de o deixar com a minha cara, mas também é só isso que se pode fazer com ele.

Conclusão sobre Fluxbox: Ideal para quem precisa fazer "voltar a vida" aquela máquina que está jogada lá no canto e que ninguém lembra mais que existe, ou para quem quer personalizar o ambiente gráfico a sua maneira. Também indico para aqueles que usam aplicativos muito pesados e precisam gastar pouca memória com o X. Contra-indico para os usuários que mexam a pouco tempo em Linux.

XFCE 4
O Xfce 4 é, por assim dizer, uma mistura da funcionalidade do KDE com o layout do Gnome e a leveza do Fluxbox. Sei que muitos dos nossos amigos que vão ler este artigo vão discordar, porém teste-o e verá!

O Xfce tem um ambiente parecido com o do Gnome, apenas invertendo-se um pouco as disposições.

O Xfce é bom para uma máquina razoável, aonde se gostaria de ganhar em desempenho, porém sem perder a funcionalidade e o visual amigável de outros gerenciadores. Também é fácil de se configurar o ambiente do Xfce com apenas um botão no Settings do painel localizado na parte inferior.

Os usuários migrantes do Windows podem facilmente se dar bem com o Xfce, porém vão estranhar ao não verem o botão Iniciar, muito comum no Windows.

O grau de customização do Xfce não é muito grande, assim como no KDE e no Gnome, porém, ainda sim, é possível deixá-lo a sua maneira, sem contar que já vem uma grande gama de layouts, fontes e o diabo a quatro junto com o Xfce.

Conclusão sobre Xfce 4: Ideal para quem quer ganhar desempenho sem perder na interface. É preciso de uma máquina razoável para poder se trabalhar atingindo as expectativas no Xfce. Bom para usuários iniciantes em Linux.

O WindowMaker
Este é um gerenciador muito completo, de visual bonito e altamente customizável. Pessoalmente falando, ele me agrada muito, pela sua leveza, simplicidade, e acima de tudo, agilidade.

O WindowMaker não se parece com nenhum dos gerenciadores anteriores. Não há barra de tarefas nenhuma nele. Os aplicativos, conforme são abertos, são dispostos em ícones no Desktop.

O WindowMaker é leve, quase tão leve quanto o Fluxbox, e conta com quase os mesmos recursos do Fluxbox, diferenciando-se apenas na disposição das tarefas e no layout.

O WindowMaker é um dos dois gerenciadores que eu escolhi para por no meu ambiente de trabalho. No WindowMaker também não há muitos recursos para configuração como no Gnome ou KDE, assim como no Blanes, Fluxbox e companhia limitada.

Eu não aconselharia um usuário iniciante a usar o WindowMaker, porém já vi casos de usuários totalmente alheios a Linux instalarem-no em seus computadores pessoais e se darem super bem com ele. Mas, cada caso é um caso.

Conclusão sobre WindowMaker: Ideal para máquinas mais ou menos, aonde se gostaria de ganhar rapidez e agilidade no gerenciamento das janelas. Não recomendo muito a usuários iniciantes, porém já vi casos de iniciantes gostarem do WindowMaker.

Blanes, XVWM e outros
O Blanes é a pura imitação do Windows 98, inclusive no quesito bugs.

O Blanes é o gerenciador muito bom para aquelas pessoas que tem uma máquina um tanto desatualizada e migraram para Linux agora, do Windows 98. Mas dentre o visual do Blanes há um porém, o Blanes não tem quase nenhuma opção de configuração e semelhantes, como no KDE.

Não há muito do que falar sobre o Blanes, ele apenas é um gerenciador, por assim dizer, bem razoável, a única dificuldade vai ser utilizá-lo caso não se tenha alguma experiência com o Linux.

Conclusão sobre Blanes: Ideal também para ressuscitar aquela máquina que está jogada num canto e ninguém lembra mais. Porém, apesar de assemelhar-se muito com o Windows 98, ele peca em funcionalidade. Assim sendo, não é recomendado que um usuário menos experiente em Linux utilize-o.

XVWM e outros
O Xvwm, o Twm e outros *wm são basicamente iguais, diferindo apenas em posicionamento do alternador de áreas de trabalho e etc.

Está é, na minha opinião, a mais leve de todas as interfaces. Porém ninguém faz milagre e a leveza tem um custo, toda a interface gráfica "foi para o brejo". A única coisa presente no Xvwm é o alternador de áreas de trabalho e um botão para executar o Xterm (No Twm nem isso tem!). Lógico que, por ser tão enxuto, a customização dele também é de altíssimo grau.

O botão é acessado por meio do clique com o botão direito no Desktop.

Este é o gerenciador ideal para ressuscitar aquele 133 com 32 de RAM. Porém um usuário iniciante em Linux ficará completamente perdido com esse gerenciador, já que a maioria das ferramentas de uso comum são de difícil acesso.

Conclusão sobre Xvwm e outros: Servem para ressuscitar aquele 133 com 32 MB de RAM e para os apaixonados por customização. Um usuário Linux iniciante poderá se deparar com dificuldades na utilização dos mesmos.

Considerações finais
Agora resta a você decidir qual gerenciador usar. Disse, no começo do artigo, que não indicaria o melhor gerenciador, e daria as opções de escolha a você.

Se você gosta de customizar, estarei disponibilizando alguns links do pessoal aqui do VOL mesmo para sua diversão ;) .

    KDE: http://www.vivaolinux.com.br/artigos/verArtigo.php?codigo=2184
    Gnome: http://www.vivaolinux.com.br/dicas/verDica.php?codigo=6596
    Fluxbox: http://www.vivaolinux.com.br/artigos/verArtigo.php?codigo=4095
   
Fonte: http://www.vivaolinux.com.br/artigo/Escolhendo-o-melhor-gerenciador-de-janelas
Por: Mateus Pinheiro

==================================

Seja Livre - Use Linux... A propósito uso o XFCE por que acho bonito... Só isso.


terça-feira, 2 de julho de 2013

Instalando o Gimp 2.8.x no Ubuntu.

Nesta versão, o modo de janela única tem recebido atenção especial e alguns incômodos, como o botão de fechar não conseguir realmente fechar o GIMP ou as docks do lado direito não manterem seu tamanho, foram corrigidos.

GIMP 2.8.x é o ramo estável e sem novos recursos serão adicionados. O próximo grande lançamento GIMP será 2.10, que deverá ser totalmente portado para GEGL, suporte a aceleração OpenCL em GEGL, obter suporte para máscaras de camada em grupos de camadas, uma nova ferramenta envoltório, clonagem perfeita, uma ferramenta de transformação unificada e muito mais. Então, com GIMP 3.0, a aplicação deverá ser portado para GTK3 (trabalho em andamento). As datas de lançamento estimada para GIMP 2.10 e 3.0 não são conhecidas ainda.

Instalando GIMP 2.8.6 no Ubuntu

Para adicionar o PPA de variedade e instalar o aplicativo no Ubuntu, faça o seguinte:
Passo 1. Abra um terminal (Usando o Dash ou pressionando as teclas CTRL+ALT+T);
Passo 2. Adicione o repositório do aplicativo com o seguinte comando:
sudo add-apt-repository ppa:otto-kesselgulasch/gimp
Passo 3. Atualize o Apt digitando o comando:
sudo apt-get update
Passo 4. Agora instale o programa com o comando:
sudo apt-get install gimp
Passo 5. Para instalar o GIMP Plugin Registry, uma coleção de plugins do GIMP que inclui GIMP FX Foundry e muitos outros plugins úteis, digite o seguinte comando:
sudo apt-get install gimp-plugin-registry
Passo 6. Se quiser instalar o G’MIC, uma ferramenta que está disponível como um plugin GIMP e que vem com um grande número de filtros de imagem pré-definidos e efeitos (mais de 190), use o seguinte comando:
sudo apt-get install gimp-gmic
 
 
--------------------------------------
fonte: 
http://www.edivaldobrito.com.br/instale-o-gimp-2-8-6-no-ubuntu/
 
Seja Livre - Use Linux 

quarta-feira, 19 de junho de 2013

Uma lista com os melhores emuladores de video games para Linux

Na onda dos emuladores dos velhos consoles (e alguns nem tão velhos assim...) há algum tempo foi publicada uma lista bem bacana com alguns dos melhores emuladores para o Linux.

Para ver a lista, acesse:http://www.upubuntu.com/2012/09/a-list-of-best-game-console-emulators.html

Resumindo a lista temos:

1.PCSX2 (PLayStation 2)
2. ePSXe (PlaySTation 1) / Pcsxr


3. Mupen64 (Nintendo 64 Emulator)  

4. ZSNES (Super Nintendo emulator)

5. Snes9x (Super Nintendo/SNES emulator)

6. Gngb (Nintendo Gameboy Color)

7. DeSmuME (Nintendo DS)

8. VBA-M (Nintendo Game Boy Advance)

9. Dolphin  (Gamecube / Wii / Triforce Emulator)

10. DGen (Sega Genesis/MegaDrive)

11. Yabause (Sega Saturn)        

12. Stella (Atari 2600)

13. Atari800 (Atari 800, 800XL, 130XE and 5200)

A lista detalhada encontra-se disponivel aqui ao lado, ou acessando o link:
 https://sites.google.com/site/hildodutra/home/emuladores.txt?attredirects=0&d=1

   

sábado, 15 de junho de 2013

Quer jogar os arcades dos Anos 80 e 90, simples use o MAME.

Os mais antigos (tipo eu!) ainda se lembram dos famosos arcades da década de 80/90 tais como moon patrol, zaxxon e outros mas a galerinha nova só quer saber de visual 3D recursos incríveis, realismo... Bem, às vezes as pessoas se esquecem que jogos são para divertir e que tal se divertir com os antigos, simples e viciantes jogos da nossa época?

Para isto, é muito simples: Instale o MAME

sudo apt-get install mame mame-tools sdlmame sdlmame-tools

Baixe suas roms em http://www.rom-world.com

E divirta-se.



Mais informações em: 


ou

terça-feira, 4 de junho de 2013

UEFI Bios - Desativando o fast boot para poder instalar um Linux! A M$ tentou de novo...

Com a falácia de aumentar a performance e a segurança, a Microsoft e claro, como não poderia deixar de ser, uma série de empresas de construção de hardware inventaram uma nova maneira de lhe usurpar seus trocados...

Você compra um computador com o novíssimo e péssimo Windows 8, com a firme vontade de NÃO ACEITAR A EULA, aquela licença maldita que deixa você escravizado por um produto mal feito e muito caro, e com isto tentar um reenbolso, já que é quase impossível achar o modelo certo de computador no mercado que não esteja infectado com aquele sisteminha operacional das grades, digo, das janelas...

Simplesmente, ao ligar, antes mesmo do boot a tal licença aparece e, você sequer consegue dar boot por outros gadgets como CD, DVD, penDrive, enfim, ou você aceita, e diz para a Microsoft que você adora ela e que o fato de comprar um computador dá a ela o direito de também lhe vender um software que você NÃO quer. (Já ouviu falar que isso é venda casada e que bate de frente com o nosso código do consumidor? Acho que a Microsoft defecou três bombons para isso...)

Mas, tudo tem jeito. Apesar de parecer impossível se livrar disso, NÃO ACEITE A LICENÇA! Quando iniciar basta você mandar o computador reiniciar e fique pressionando DEL, F2 ou F12, dependendo do modelo/fabricante, para acessar o BIOS (apesar de ser bem rápido hoje em dia, não é impossível acessá-lo) .

Feito isso, você terá acesso às configurações básicas do seu Hardware (QUE É SEU - VOCÊ COMPROU!) então, desabilite o "Fast Boot" veja a imagem abaixo:


Em algumas placas mãe, você pode inclusive desabilitar a opção UEFI, faça isso.

Pronto, seu (QUE É SEU MESMO, AFINAL FOI O SEU DINHEIRO QUE LEVOU O PARA CASA!) computador agora poderá ser formatado e instalar a sua distribuição Linux preferida e até fazer o velho boot duplo (eca!) conforme a sua necessidade.

Mas não se esqueça de guardar todas as informações e documentos da compra, para poder dar entrada no PROCON pedindo ressarcimento do SEU dinheiro que foi cobrado no momento da compra casada, afinal você comprou foi o computador não o software embarcado, desde que você não mantenha o Windows na máquina, claro.

Sei que é uma luta inglória por uns trocados, pode levar anos e você pode até perder, mas se todos nós fizermos isso, um dia, poderemos comprar nossos computadores e escolher qual sistema queremos instalar. E não teremos que aceitar que nos empurrem qualquer lixo como sistema operacional, simplesmente por que já vem instalado.

Seja Livre... Livre-se de softwares proprietários... Use GNU/Linux!

domingo, 5 de maio de 2013

Rolador de dados. Free de Livre e Free de Grátis...

Para os aficionados por RPG, para os que gostam, para os que são apenas curiosos e gostariam de ter seu próprio rolador de dados...

Criei um programa para rolar dados, qualquer tipo de dados, em object pascal (Lazarus) basta dizer o número de lados, quantas vezes jogar e ele dá a relação de todas as jogadas e o resultado final somado.

Simples, prático... Mas tem um porém...

Apesar de distribuir o programa em binário e os seus fontes, só compilei para Linux, quem usa o Windows, desculpe... Compre o Delphi, aprenda a programar, estude o código faça e compile o seu rolador, mas cuidado... Sabe lá se o Windows acha que "seu" rolador de dados é pirataria ou quem sabe tem um vírus dentro do código...

Ah para os Linuxusers... Divirtam-se...

 link removido.


A propósito, não incluí a licença, mas... É livre tipo GNU/GPL, ok.

Seja Livre... Use Linux

sexta-feira, 3 de maio de 2013

Lazarus - Criando relatórios com FortesReport

Para a criação de relatórios, o Lazarus já trás o componente LazReport, no entanto ele precisa ser instalado no IDE. Para fazer a instalação do pacote, acesse o menu Package -> Open package file (.lpk). Localize o diretório de instalação do Lazarus e na pasta components abra lazreport e depois source. Abra o pacote lazreport.lpk, clique em Compile e depois em Install. Como já sabemos isso irá recompilar o IDE. Depois de inicializado novamente estará disponível a aba LazReport. Leia aqui um tutorial básico sobre o LazReport.
No entanto queremos mostrar uma alternativa ao LazReport. Por essa razão, vamos apresentar neste artigo o FortesReport. Para quem conhece o QuickReport, que fazia parte do Delphi, não terá dificuldade de desenvolver com esse componente. Baixe o pacote aqui e instale. Os procedimentos são semelhantes aos que mostramos acima. Você terá uma nova aba chamada Fortes Report.


Conectando o banco de dados

O primeiro passo para criar a aplicação é fazer a conexão com o banco de dados. Vamos usar o SQLite e o ZeosLib. O banco de dados será o mesmo já usado em exemplos anteriores. Selecione a aba Zeos Access e coloque um TZConnection no Data Module. Defina a propriedade Database com o caminho e o nome do arquivo do banco de dados. Na propriedade Protocol escolha sqlite-3.
Agora coloque um TZReadOnlyQuery da mesma aba. Na propriedade Connection escola o TZConnection anterior. Na propriedade SQL digite SELECT * FROM CIDADE ORDER BY NOME. Localize a aba Data Access e coloque um TDataSource no Data Module. Na propriedade DataSet selecione o TZReadOnlyQuery. Para que possamos visualizar uma prévia do relatório deixe o banco conectado e a Query aberta. Queremos criar um relatório com a seguinte aparência:


Ou seja, mostraremos as cidades em ordem alfabética e a cada letra inicial nova ela será impressa destacando um novo grupo de cidades.
A aplicação deverá ter dois forms. Um onde será criado o relatório, e outro que chamará o primeiro. Assim, se a aplicação já possui um form, adicione o segundo. Nosso trabalho será todo efetuado em cima do segundo form.
Selecione a aba Fortes Report e coloque um TRLReport no form. Esse componente é como se fosse a folha de papel e possui um quadriculado para facilitar o desenho. No Inspetor de Objetos expanda a propriedade AllowedBands e coloque em True as opções btColumnHeader, btDetail e btHeader. O componente trabalha com bandas e isso define quais as bandas que são permitidas no relatório. Definimos que nosso relatório terá um cabeçalho de página (btHeader), um cabeçalho de coluna (btColumnHeader) e uma banda de detalhe (btDetail). Na propriedade DataSource selecione o TDataSource colocado no Data Module anteriormente.
Agora coloque um TRLBand. Defina a propriedade BandType como btHeader. Aumente a altura da banda e coloque um TRLLabel sobre a TRLBand. Defina a propriedade Caption como Relatório de Cidades. Na propriedade Align selecione faCenter, para centralizar o rótulo na banda. Expanda a propriedade Font e defina Size como 14, por exemplo. Coloque um TRLSystemInfo no lado esquerdo da banda. Na propriedade Info selecione itDate. Isso mostrará a data atual na banda. Coloque outro TRLSystemInfo, este no lado direito da banda e defina a propriedade Info como itPageNumber. Isso mostra o número da página
Coloque outro TRLBand e defina BandType como btColumnHeader. Coloque dois TRLLabel sobre esta e defina as propriedades Caption como ID e Nome respectivamente.
Como desejamos agrupar as cidades precisamos de um TRLGroup. Coloque um componente desses. Expanda AllowedBands e defina btDetail e btHeader como True. As propriedades DataField ou DataFormula são responsáveis por definir como se dará a quebra de grupos. Como queremos que a quebra ocorra pela primeira letra do nome da cidade, então informamos em DataFormula, copy(nome, 1, 1).  Se a quebra fosse por um campo, este seria informado em DataField. Coloque um TRLBand sobre TRLGroup. Defina BandType como btHeader. Coloque um TRLDBText sobre o btHeader. Defina a propriedade DataSource com o TDataSource que foi inserido no DataModule. Podemos aqui imprimir um campo ou uma fórmula. Usaremos DataFormula para imprimir apenas a letra inicial do nome da cidade informando copy(nome, 1, 1). Coloque outro TRLBand sobre TRLGroup e dessa vez defina BandType como btDetail. Na banda detalhe é que são mostradas as linhas da tabela. Coloque dois TRLDBText sobre o btDetail de forma que fiquem abaixo dos rótulos ID e Nome inseridos no btColumnHeader. Defina a propriedade DataSource de ambos com o mesmo TDataSource usado desde o início do artigo. Na propriedade DataField do primeiro TRLDBText, informe ID_CIDADE. E no segundo informe NOME.
Podemos obter uma prévia do relatório clicando com o botão em TRLReport e selecionando Preview.
Para finalizar o exemplo coloque um botão no form que irá chamar o relatório. Abaixo de implementation acrescente no uses o nome da unit referente ao form do relatório. E no evento OnClick do botão escreva o código para chamar o método Preview() de RLReport.

como criar um relatório mestre detalhe usando o FortesReport. Para implementar o exemplo usei um banco de dados Firebird e ZeosLib. Use o seguinte script para criar as tabelas. Neste caso o relacionamento mestre detalhe é formado pelas tabelas VENDA e ITEM.

O Data Module

Inicie uma aplicação no Lazarus e insira um Data Module. Selecione a aba Zeos Access e coloque um TZConnection no Data Module. Defina as propriedades da seguinte forma:

Database - informe o banco de dados Firebird que foi criado.
Name - dê um nome ao componente. Por exemplo: dbVendas.
Password - masterkey.
Protocol - firebird-2.0 ou a versão que está sendo usada.
User - sysdba.

Mude Connected para true, para verificar se a conexão está configurada corretamente.
Coloque um TZReadOnlyQuery e defina:

Connection - selecione o TZConnection.
Name - defina um nome para o componente. Por exemplo: queVenda.
SQL - select a.id_venda, a.data_venda, b.nome from venda a, cliente b where a.id_cliente = b.id_cliente.

Selecione a aba Data Access e coloque um TDataSource, onde DataSet deve estar associado à Query anterior. Defina Name como dsVenda.

Coloque um segundo TZReadOnlyQuery, defina Connection da mesma maneira e em Name digite queItem, por exemplo. Na propriedade SQL informe select a.id_produto, b.nome, a.quantidade, b.preco_venda, a.quantidade * b.preco_venda total from item a, produto b where a.id_produto = b.id_produto and id_venda = :id_venda.

Defina a propriedade DataSource desta Query com dsVenda. Isto, juntamente com o parâmetro :id_venda definem o relacionamento mestre detalhe entre as duas Queries. O parâmetro :id_venda é definido por queVenda através de dsVenda.

Coloque mais um TDataSource e defina a propriedade DataSet com a Query queItem. Defina Name como dsItem. Leia mais para conexão com Firebird em Lazarus - Conectando Firebird com SQLdb ou ZeosLib.

O relatório

Esse é o aspecto do relatório que iremos construir:




Agora adicione um novo form à aplicação. Localize a aba Fortes Report e coloque um TRLReport. No Inspetor de Objetos expanda a propriedade AllowedBands e coloque em True as opções btColumnHeader, btDetail e btHeader. Na propriedade DataSource selecione dsVenda, a tabela mestre.
Agora coloque um TRLBand. Defina a propriedade BandType como btHeader. Aumente a altura da banda e coloque um TRLLabel sobre a TRLBand. Defina a propriedade Caption como Relatório de Vendas. Na propriedade Align selecione faCenter, para centralizar o rótulo na banda. Expanda a propriedade Font e defina Size como 14, por exemplo. Coloque um TRLSystemInfo no lado esquerdo da banda. Na propriedade Info selecione itDate. Isso mostrará a data atual na banda. Coloque outro TRLSystemInfo, este no lado direito da banda e defina a propriedade Info como itPageNumber. Isso mostra o número da página.
Coloque outro TRLBand e defina a propriedade BandType como btDetail. Sobre essa banda, que deve mostrar os dados da tabela mestre, coloque TRLLabels definindo seus Caption como Venda, Data, Cliente, CÓDIGO, NOME, QTDE, PREÇO e TOTAL. Coloque também três TRLDBTexts. Defina seus DataSource como dsVenda e DataField como ID_VENDA, DATA_VENDA e NOME.


A banda deve ser dimensionada adequadamente de acordo com a figura acima. Coloque um TRLSubDetail e defina a propriedade DataSource como dsItem. Esta banda irá mostrar os dados da tabela detalhe. Expanda a propriedade AllowedBands e coloque em True as opções btDetail e btSummary. Sobre essa banda coloque um TRLBand. Defina BandType como btDetail. Coloque cinco TRLDBTexts e defina DataSource como dsItem. Em DataField informe ID_PRODUTO, NOME, QUANTIDADE, PRECO_VENDA e TOTAL. Coloque outro TRLBand sobre TRLSubDetail e defina BandType como btSummary. Esta banda é usada para imprimir totais de relatórios ou grupos. Sobre esta banda coloque um TRLLable e defina seu Caption como Total da Venda:. Ao lado dele coloque um TRLDBResult. Este componente é usado para totalizar uma coluna, por exemplo. Defina DataSource como dsItem. Em DataField informe TOTAL. A propriedade Info define a operação que será realizada. Defina como riSum. que indica que a coluna TOTAL será somada. Na propriedade DisplayMask escreva #,###,##0.00. Isso irá formatar o valor mostrado. Pode-se definir DisplayMask para os TRLDBTexts referentes a PRECO_VENDA e TOTAL.

No form que irá chamar o relatório coloque um botão e no evento OnClick escreva o código que mostrar uma prévia do relatório:

frmMestreDetalhe.rlVendas.Preview();

É necessário informar na cláusula uses o nome da unit do relatório. Abrir a conexão e as Queries também é necessário para que o relatório seja visualizado.