quinta-feira, 25 de outubro de 2007

Traduções de alguns recursos do ECO IV

Fala pessoal a seguir estão os links de alguns pdfs sobre alguns dos recursos do ECO IV traduzidos.

Introdução

Mantendo classes de negócios e relacionamentos em diagramas UML

Execução de diagramas de estados da UML

Transações na memória

Suporte a múltiplos: desfazer/refazer

Expressões OCL

Em breve estarei disponibilizando outros documentos.

Grande Abraço a todos,
Diego M. Garcia

quarta-feira, 17 de outubro de 2007

Criando applicação DataSnap com Rem Objects

Fala pessoal,
Finalmente tive um tempinho para postar aqui um exemplo simples de como utilizar o Rem Objects da mesma forma que faziamos com o DataSnap do delphi, porém sem dor de cabeça ;) afinal utilizar o TDComConnection do delphi era realmente uma chatice, pois dependia da tecnologia da ms, que por sua vez era preciso instalar e configurar o dcom nos pcs clientes e no servidor. Com o Rem Objects acabou esses problemas. Vamos parar com a conversa e ir direto ao assunto.

Criando a aplicação servidora.

1º Vá em File -> New -> Vcl Forms Application.

2º Salve seu projeto em uma pasta chamada Servidor.

3º Vá em File -> New -> Other, depois vá em Rem Objects SDK, selecione o RemObjects DataSnap Server Module e click em OK.

4º Renomei seu DataSnap Module e salve o.

5º No form principal da aplicação coloque um Componente TRoIndyHttpServer responsavel pela comunicação entre a aplicação cliente / servidora, um TRoBinMessage utilizado para comunicar entre as aplicações utilizando mensagens em formato binario.

6º Clique no Componente TRoIndyHttpServer, vá na propriedade dispatchers e clique no botão "...", clique em Add, selecione o componente TRoBinMessage no campo Message e feche este editor.

7º Vá para o DataModule criado anteriormente e coloque um componente de conexão, neste exemplo será utiliza o TSqlConnection do DbExpress, configure o normalmente.

8º Coloque um SqlDataSet, sete sua propriedade SqlConnection para o componente SqlConnection criado anteriormente e coloque seu Sql na propriedade commandtext.

9º Coloque um componente TDataSetProvider e sete sua propriedade Dataset para o componente SqlDataSet criado anteriormente.

10º Clique no data module e clique no botão "..." da propriedade Providers.

11º Neste editor clique no botão Add New, clique no novo item criado e sete a propriedade Provider para o DatasetProvider criado anteriormente e sete a propriedade nome para o nome que devera aparecer na aplicação cliente.

12º Sete a propriedade Active do componente TRoIndyHttpServer para True.

13º Compile sua aplicação e execute-a.

Agora vamos criar a aplicação cliente.

1º Vá em File -> New -> Vcl Forms Application.

2º Adicione um componente TRoDataSnapConnection e um TRoWinInetHttpChannel.

3º Sete a propriedade Channel do componente TRoDataSnapConnection para o componente TRoWinInetHttpChannel.

4º Sete a propriedade targetUrl do componente TRoWinInetHttpChannel para http://endereco_ip_servidor:8099/bin. Obs.: a porta 8099 esta configurada e pode ser modificada no componente TRoIndyHttpServer na aplicação servidora.

5º Coloque um componente TRoBinMessage.

6º No Componente TRoDataSnapConnection sete a propriedade Message para o componente TRoBinMessage.

7º Certifique-se de que a aplicação servidor esteja sendo executada e então sete a propriedade connected do componente TRoDataSnapConnection e do TRoWinInetHttpChannel para True.

8º Coloque um componente TClientDataSet e sete sua propriedade RemoteServer para o componente TRoDataSnapConnection e a propriedade provider para o provider criado na aplicação servidor.

9º Coloque um TDataSource e sete a propriedade dataset para o TClientDataSet.

10º Coloque TDBGrid e sete a propriedade datasource para o TDataSource.

11º Ative seu TClientDataset e execute a aplicação.

Pronto sua aplicação 3 camadas já está rodando ;)

Facil e rápido.

Grande Abraço a todos,
até a próxima.

Diego M. Garcia

quinta-feira, 11 de outubro de 2007

Delphi 2007 + Oracle + BDE

Hello guys,

Today I`ve to solve a problem to a friend mine. The problem was stabilish an oracle connection usins bde synce he was migrating his application from Delphi 7 to Delphi 2007.

1º: Be sure that your Delphi 2007 is not the professional version, becuse the professional doesnt allows connections with oracle database.

2º: Install the oracle client.

3º: Copy the file -> C:\oracleexe\app\oracle\product\10.2.0\server\network\admin\tnsnames.ora that is located on the machine that has the oracle server installed to the folder C:\XEClient\Network\admin\tnsnames.ora of the client machine.

4º: if your bdeadmin doesnt show the native oracle driver (Configuration->Native Drivers->ORACLE), reinstalle your BDE and it will show.

5º: Open your delphi 2007 and drop a TDatabase component in your form, rigth click it and select the option Database Editor...

6º: Fill the field name with the name of your oracle database. Ex.: DBSystem

7º: Select the ORACLE on the combobox Driver name:.

8º: Fill the field parameter override like bellow:
LANGDRIVER=DBWINUS0
SERVER NAME=XE
USER NAME=your_db_username
SQLQUERYMODE=SERVER
PASSWORD=your_db_pass

9º Uncheck the option login prompt of the TDatabase and Connect.

If the TDatabase doesnt connect then reboot your machine. That is BDE :P.

If you are doing this on Windows vista then allways run the bdeadmin with administrator permissions.

Hope it helps someone ;)

Regards,
Diego M. Garcia.

quarta-feira, 10 de outubro de 2007

Delphi 2007 + Oracle + BDE

Fala pessoal,
Hoje tive que resolver um problema para um amigo meu, o problema era realizar a conexao com o oracle atravez de uma aplicação que utiliza bde e foi desenvolvida em delphi 7 que agora esta sendo portada para o Delphi 2007.

1º: certifique-se de que a sua versão do delphi não seja a professional, pois a mesma não possibilita a utilização do drive do oracle.

2º: instale o client do oracle.

3º: copie o arquivo -> C:\oracleexe\app\oracle\product\10.2.0\server\network\admin\tnsnames.ora que fica no pc onde o servidor oracle esta instalado para a pasta C:\XEClient\Network\admin\tnsnames.ora

4º: caso seu bdeadmin não esteja listando o drive nativo do oracle (Configuration->Native Drivers->ORACLE), reinstale seu BDE e ele aparecera.

5º: Abra seu delphi 2007 coloque um component TDatabase em seu form, clique com o botao direito do mouse sobre o TDatabase e selecione a opção Database Editor...

6º: Preencha o campo Name com o nome de seu Banco de dados Oracle Ex.: DBSistema

7º: Selecione o Driver name: ORACLE

8º: Preencha o campo parameter override como abaixo:
LANGDRIVER=DBWINUS0
SERVER NAME=XE
USER NAME=nome_do_usuario
SQLQUERYMODE=SERVER
PASSWORD=senha

9º Desmarque a opção login prompt do TDatabase e Connect.

Caso não conecte tente reiniciar sua maquina. Pois afinal isso é BDE.

Abraço espero que seja util para alguem ;)

Diego M. Garcia.

segunda-feira, 1 de outubro de 2007

Fazendo smartphone Moto Q utilizar a internet do seu pc com bluetoth generico e bluesoleil

I ai pessoal bleza ?

Depois de quebrar a cabeça por um bom tempo consegui fazer o MOTO Q funcionar com um adaptador bluetoth generico de R$20,00 que vc pode achar no Mercado Livre.

Esses adaptadores bluetoth vem com um software chamado BlueSoleil para utilizar os serviços de seu dispositivo.

Para que seu Moto Q funcione vc precisara instalar o cd que acompanha seu MOTO Q, ele instalara o Active Sync da MS e os drivers do aparelho.

Agora abra o BlueSoleil e certifique se de que o serviço de porta serial esteja ativado. Aproveite e anote as portas que esta sendo utilizada pelo Bluetooth, Ex.: COM6.

Após feito isso abra seu Active Sync, vá em Arquivo -> Configuração e marque a opção "Permitir conexões com um dos seguintes itens:" e selecione a porta serial do BlueSoleil. Clique em OK.

Agora em seu Moto Q vá em iniciar -> Bluetooth -> Gerenciador de Bluetooth e ligue o Bluetooth. Após feito isso vá em Iniciar -> ActiveSync -> Menu -> Conectar Via Bluetooth -> Siga os passos na tela e selecione a porta do BlueSoleil que vc configurou no ActiveSync do PC.

Pronto seu Moto Q irá conectar perfeitamente no pc e vc podera navegar na net, usar msn e etc, utilizando a conexão do pc sem pagar taxa de gprs da sua operadora.

Ps.: Algumas vezes o Bluesoleil trava ao tentar reconectar pelo Moto Q, basta finalizar o processo do active sync do pc e reiniciar o serviço da porta COM do bluesoleil e abrir o active sync do pc novamente. Caso isso não resolva, reinicie seu Moto Q e faça esse processo novamente.

Abraço a todos,
Diego M. Garcia.