Para quem precisa desenvolver alguma rotina de coleta de dados em dispositivos Windows CE com Microsoft .Net, segue um aplicativo que executa estas funcões sem a necessidade de codificação de suas interfaces.
Conheça o AC Factory
Acesse agora: http://www.4glnews.com/p/acfactory.html
.Net com Progress 4GL
Uso de Progress 4GL com a plataforma Microsoft .Net, entre outras novidades
segunda-feira, 2 de janeiro de 2012
quarta-feira, 4 de maio de 2011
Aplicações Satélite com .Net e Progress
Olá Amigos,
Estamos participando de um projeto em um de nossos clientes e com isto estamos reformulando um dos processos de venda: A Cotação de Vendas
Atualmente este cliente necessita disponibilizar uma licença do ERP para que os representantes acessem apenas um módulo (poucas telas), disputando assim o número de licenças com os demais usuários.
O processo da cotação na WEB, utiliza as licenças do ERP apenas nas requisições (poucos segundos) e assim que a requisição encerra a licença é liberada. Olhando por este aspecto, uma simples licença pode ser compartilhada por 10 ou 20 usuários, talvez até mais dependendo da requisição.
Os projetos WEB são desenvolvidos todos sobre a plataforma ASP.NET e acessando o ERP através do Framework. Toda a regra de negócio, API e DBO, podem ser reutilizadas no lado Progress.
Abaixo algumas imagens do processo de cotação pela WEB.
Este processo diminui o número de licenças e permite que o usuário acesse o sistema de qualquer lugar, inclusive com uma conexão não tão boa.
Quer criar um sistema satélite e economizar licenças?
Estamos participando de um projeto em um de nossos clientes e com isto estamos reformulando um dos processos de venda: A Cotação de Vendas
Atualmente este cliente necessita disponibilizar uma licença do ERP para que os representantes acessem apenas um módulo (poucas telas), disputando assim o número de licenças com os demais usuários.
O processo da cotação na WEB, utiliza as licenças do ERP apenas nas requisições (poucos segundos) e assim que a requisição encerra a licença é liberada. Olhando por este aspecto, uma simples licença pode ser compartilhada por 10 ou 20 usuários, talvez até mais dependendo da requisição.
Os projetos WEB são desenvolvidos todos sobre a plataforma ASP.NET e acessando o ERP através do Framework. Toda a regra de negócio, API e DBO, podem ser reutilizadas no lado Progress.
Abaixo algumas imagens do processo de cotação pela WEB.
Este processo diminui o número de licenças e permite que o usuário acesse o sistema de qualquer lugar, inclusive com uma conexão não tão boa.
Quer criar um sistema satélite e economizar licenças?
quinta-feira, 3 de março de 2011
Utilizando Eventos de Classes .Net no Progress (ABL)
Diante das novas versões do Progress (10.2A ou superior) a linguagem permite acessar qualquer classe criada com o .Net Framework.
Classes para envio de e-mail, integração com Office, validações (RegEx), etc. Tudo isso agora é possível fazendo uso de forma nativa sem utilizar recursos OCX. No .Net as DLLs não são registradas bastando apenas serem empacotadas junto com o projeto.
Uma classe .Net, assim como em qualquer linguagem OO, pode possuir seus atributos, métodos e eventos.
Particularmente falando de eventos, o .Net permite que ao disparar um evento para o consumidor desta classe, sejam enviados parâmetros através do evento. O consumidor da classe deverá criar um método para evento (SUBSCRIBER) para poder manipular os parâmetros.
Porém no Progress temos um problema. Um evento disparado pelo .Net deve seguir o padrão adotado pela ponte (bridge) entre o Progress e .Net, ou seja, os parâmetros que este evento deve enviar ao chamador não podem ser diferentes de:
O Progress suporta apenas estes dois parâmetros em cada evento disparado pelo .Net. Caso tenha um evento que passe como parâmetros valores diferentes desta assinatura, então este evento não será suportado no Progress disparando assim uma exceção e encerrando o programa. Os eventos nativos dos componentes do Framework .Net já seguem este padrão.
Então lembre-se, para disponibilizar seus eventos de classes .Net no Progress, use sempre System.Object e System.EventsArgs como parâmetros.
Classes para envio de e-mail, integração com Office, validações (RegEx), etc. Tudo isso agora é possível fazendo uso de forma nativa sem utilizar recursos OCX. No .Net as DLLs não são registradas bastando apenas serem empacotadas junto com o projeto.
Uma classe .Net, assim como em qualquer linguagem OO, pode possuir seus atributos, métodos e eventos.
Particularmente falando de eventos, o .Net permite que ao disparar um evento para o consumidor desta classe, sejam enviados parâmetros através do evento. O consumidor da classe deverá criar um método para evento (SUBSCRIBER) para poder manipular os parâmetros.
Porém no Progress temos um problema. Um evento disparado pelo .Net deve seguir o padrão adotado pela ponte (bridge) entre o Progress e .Net, ou seja, os parâmetros que este evento deve enviar ao chamador não podem ser diferentes de:
- Primeiro parâmetro: System.Object (sender)
- Segundo parâmetro: System.EventArgs (e)
O Progress suporta apenas estes dois parâmetros em cada evento disparado pelo .Net. Caso tenha um evento que passe como parâmetros valores diferentes desta assinatura, então este evento não será suportado no Progress disparando assim uma exceção e encerrando o programa. Os eventos nativos dos componentes do Framework .Net já seguem este padrão.
Então lembre-se, para disponibilizar seus eventos de classes .Net no Progress, use sempre System.Object e System.EventsArgs como parâmetros.
quinta-feira, 27 de janeiro de 2011
Arquitetura para Web ou Arquitetura para Sistema Operacional (Client)?
Concordando com grandes engenheiros e especialistas em arquitetura de sistemas, incluindo neste meio as empresas Microsoft, Apple e Google, digo:
HTML5 é o futuro da Web (Futuro mesmo, pois, ainda não foi lançado oficialmente).
Mas (tudo tem um mas), não deve substituir aplicações baseadas em sistema operacionais. Tudo depende da necessidade e das alternativas de distribuição da informação.
Estão em alta os sistemas para SmartPhones, portanto muita coisa ainda deve ser feita nestes ambientes e para isto o HTML5 é útil. Existem opções para realizar o deploy de aplicações HTML pela AppStore utilizando alguns mecanismos de empacotamento do XCode. Existe também opção para distribuição de HTML para o Android. HTML5 será o substituto do HTML atual e assim será empregado para desenvolvimento de portais, como já é feito atualmente, ou containers de aplicações Flex e Silverlight.
O que mais o HTML5 pode fazer? (é mais fácil ler no W3C).
Sobre Flex e Silverlight
Recentemente, Steve Ballmer (CEO da Microsoft), informou que o Silverlight é a plataforma da Microsoft para desenvolvimentos em ambiente SmartPhone baseado em Windows. Também vemos neste mesmo meio a Apple fechando as portas para Flash em seus dispositivos. Com um sorriso na orelha o Google apenas agradece.
Mas qual seria o futuro do desenvolvimento de aplicações?
Aplicações Web não devem substituir as aplicações Desktop (O desktop é que deve ser substituído). Isto é de comum acordo entre todas estas grandes empresas.
Flex e Silverlight vão deixar de existir?
Eu acredito que não. O que deve existir é uma melhor arquitetura das aplicações para atuar como SmartClients. Isto já deveria estar sendo feito por todas as empresas.
Uma resposta do Steve Jobs para estes questionamentos.
"Adobe has repeatedly said that Apple mobile devices cannot access “the full web” because 75% of video on the web is in Flash," says Jobs. "What they don’t say is that almost all this video is also available in a more modern format, H.264, and viewable on iPhones, iPods and iPads...Although Flash has recently added support for H.264, the video on almost all Flash websites currently requires an older generation decoder that is not implemented in mobile chips and must be run in software. The difference is striking: on an iPhone, for example, H.264 videos play for up to 10 hours, while videos decoded in software play for less than 5 hours before the battery is fully drained."
"Flash was created during the PC era – for PCs and mice," Jobs said in summary. "Flash is a successful business for Adobe, and we can understand why they want to push it beyond PCs. But the mobile era is about low power devices, touch interfaces and open web standards – all areas where Flash falls short."
"The avalanche of media outlets offering their content for Apple’s mobile devices demonstrates that Flash is no longer necessary to watch video or consume any kind of web content."
Texto original: http://www.bit-tech.net/news/hardware/2010/04/30/apple-explains-why-no-flash-on-iphone/1
Resumo: Melhor uso da bateria, pois utiliza um formato mais evoluído para distribuição de vídeos e também porque o Flex foi elaborado para uso em PCs, sendo assim tem incompatibilidade com a Interface Touch do iPhone e iPad.
Futuro para Mercado de Desenvolvimento
Trabalho com Progress 4gl desde a versão 7.0 e com .Net desde a versão 1.0 do framework (VS2002 Beta). De lá para cá, todas as ferramentas evoluiram muito. O destaque maior fica para a Microsoft com o Visual Studio. Não posso falar de Java ou de outros ambientes pois não atuo nisto, mas vi alguns frameworks para PHP, Python e Ruby e todos oferecem aceleração no desenvolvimento.
Visto que trabalhamos com prazos cada vez mais curtos, utilizar ferramentas de aceleração é o primeiro passo para o futuro. Pensando nisso você deve tomar um rumo novo caso não venha desenvolvendo com agilidade.
A tecnologia não deve ser um fator impeditivo de sua produção. Uma empresa de consultoria e desenvolvimento deve gastar mais tempo pensando na regra de negócio do cliente e assim poder oferecer uma solução mais robusta, ganhando mais tempo para realização de testes antes de distribuir no ambiente do cliente.
Pense que muitas janelas (80%) devem ser geradas com cliques e poucas linhas de código. Muitas funcionalidades já devem estar desenvolvidas fazendo com que se siga um padrão no uso das mesmas e também ganhando tempo. O Framework Vértice .Net trabalha exatamente neste sentido. Gasta-se mais tempo pensando na regra de negócio do cliente e não com o desenvolvimento de janelas.
O que vem depois?
O emprego de uma boa metodologia, seja ela RUP, XP, Scrum, entre outras, ou baseada nestes conceitos ou até mesmo um misto de todas elas.
Percebi que estou fugindo do assunto do post, então continuaremos esta conversa em breve.
Carlos R. Nobrega
Arquiteto de Soluções .Net
HTML5 é o futuro da Web (Futuro mesmo, pois, ainda não foi lançado oficialmente).
Mas (tudo tem um mas), não deve substituir aplicações baseadas em sistema operacionais. Tudo depende da necessidade e das alternativas de distribuição da informação.
Estão em alta os sistemas para SmartPhones, portanto muita coisa ainda deve ser feita nestes ambientes e para isto o HTML5 é útil. Existem opções para realizar o deploy de aplicações HTML pela AppStore utilizando alguns mecanismos de empacotamento do XCode. Existe também opção para distribuição de HTML para o Android. HTML5 será o substituto do HTML atual e assim será empregado para desenvolvimento de portais, como já é feito atualmente, ou containers de aplicações Flex e Silverlight.
O que mais o HTML5 pode fazer? (é mais fácil ler no W3C).
Sobre Flex e Silverlight
Recentemente, Steve Ballmer (CEO da Microsoft), informou que o Silverlight é a plataforma da Microsoft para desenvolvimentos em ambiente SmartPhone baseado em Windows. Também vemos neste mesmo meio a Apple fechando as portas para Flash em seus dispositivos. Com um sorriso na orelha o Google apenas agradece.
Mas qual seria o futuro do desenvolvimento de aplicações?
Aplicações Web não devem substituir as aplicações Desktop (O desktop é que deve ser substituído). Isto é de comum acordo entre todas estas grandes empresas.
Flex e Silverlight vão deixar de existir?
Eu acredito que não. O que deve existir é uma melhor arquitetura das aplicações para atuar como SmartClients. Isto já deveria estar sendo feito por todas as empresas.
Uma resposta do Steve Jobs para estes questionamentos.
"Adobe has repeatedly said that Apple mobile devices cannot access “the full web” because 75% of video on the web is in Flash," says Jobs. "What they don’t say is that almost all this video is also available in a more modern format, H.264, and viewable on iPhones, iPods and iPads...Although Flash has recently added support for H.264, the video on almost all Flash websites currently requires an older generation decoder that is not implemented in mobile chips and must be run in software. The difference is striking: on an iPhone, for example, H.264 videos play for up to 10 hours, while videos decoded in software play for less than 5 hours before the battery is fully drained."
"Flash was created during the PC era – for PCs and mice," Jobs said in summary. "Flash is a successful business for Adobe, and we can understand why they want to push it beyond PCs. But the mobile era is about low power devices, touch interfaces and open web standards – all areas where Flash falls short."
"The avalanche of media outlets offering their content for Apple’s mobile devices demonstrates that Flash is no longer necessary to watch video or consume any kind of web content."
Texto original: http://www.bit-tech.net/news/hardware/2010/04/30/apple-explains-why-no-flash-on-iphone/1
Resumo: Melhor uso da bateria, pois utiliza um formato mais evoluído para distribuição de vídeos e também porque o Flex foi elaborado para uso em PCs, sendo assim tem incompatibilidade com a Interface Touch do iPhone e iPad.
Futuro para Mercado de Desenvolvimento
Trabalho com Progress 4gl desde a versão 7.0 e com .Net desde a versão 1.0 do framework (VS2002 Beta). De lá para cá, todas as ferramentas evoluiram muito. O destaque maior fica para a Microsoft com o Visual Studio. Não posso falar de Java ou de outros ambientes pois não atuo nisto, mas vi alguns frameworks para PHP, Python e Ruby e todos oferecem aceleração no desenvolvimento.
Visto que trabalhamos com prazos cada vez mais curtos, utilizar ferramentas de aceleração é o primeiro passo para o futuro. Pensando nisso você deve tomar um rumo novo caso não venha desenvolvendo com agilidade.
A tecnologia não deve ser um fator impeditivo de sua produção. Uma empresa de consultoria e desenvolvimento deve gastar mais tempo pensando na regra de negócio do cliente e assim poder oferecer uma solução mais robusta, ganhando mais tempo para realização de testes antes de distribuir no ambiente do cliente.
Pense que muitas janelas (80%) devem ser geradas com cliques e poucas linhas de código. Muitas funcionalidades já devem estar desenvolvidas fazendo com que se siga um padrão no uso das mesmas e também ganhando tempo. O Framework Vértice .Net trabalha exatamente neste sentido. Gasta-se mais tempo pensando na regra de negócio do cliente e não com o desenvolvimento de janelas.
O que vem depois?
O emprego de uma boa metodologia, seja ela RUP, XP, Scrum, entre outras, ou baseada nestes conceitos ou até mesmo um misto de todas elas.
Percebi que estou fugindo do assunto do post, então continuaremos esta conversa em breve.
Carlos R. Nobrega
Arquiteto de Soluções .Net
quarta-feira, 26 de janeiro de 2011
Como fazer uma janela de atualização em poucos segundos
Uma breve apresentação de criação de uma janela de atualização através do Visual Studio.
Assinar:
Postagens (Atom)



