DATACOMBO ADODC MIGRADO DO VB6 NAO FUNCIONA

CAMILAMOHER 13/03/2013 16:10:10
#420407
.. socorro!!

por favor..estou migrando um sistema do vb6 para o vb.net.. esta tudo funcionando inclusive o datagrid acoplado a dados (adodc)
mas o datacombo tem um bug..
ele funciona apenas quando o form em q ele esta contido abre pela primeira vez.. boundtext e ctltext , tudo normal..
se eu confirmo a gravação de um registro e preciso abrir novamente o form, ele vem com bug => ele está populado mas se tento selecionar algum item., ele nao seleciona (como se estivesse vazio) e tambem nao envia o campo boundtext..

por favor..estou desesperada, pois vou desistir de migrar se nao conseguir isso..
alguma boa alma pode me ajudar?
MJAC 07/04/2013 22:29:10
#421632
Camila posta o código para que possamos depurar, assim apenas de explicar não temos como saber qual o problema.
CAMILAMOHER 09/04/2013 10:51:42
#421676
oi MJAC..esse eu ja resolvi.. tirei o datacombo q era do vb6 e substitui pelo combobox do vb.net..
o ADODC estava funcionando no vb2008, acoplado ao datagraid .. so que percebi q a Microsoft nao vende o VS2008 e sim o VS 2012..peguei meu projeto e abri no VS2012 Express ..agora quem nao funciona é o ADODC do vb6......nao existe compatibilidade com o VS2012.. cancela ao dar refresh:.. ele dá uns 3 ou 4 refresh e depois cancela.. maldito Bil Gates...
o codigo agora é esse:

adodc.recordsource = [Ô]Select * from etc etc......[Ô]
adodc.refresh ..ppaaauuuuu!!!
MJAC 25/04/2013 00:22:40
#422464
exite o ADO.NET que simula o ADODC do vb6 da uma pesquisada nisso. Aconselho usar o VB 2012 com o update 1 e 2 instalado, está realmente muito melhor que as versões anteriores.
LUIS.HERRERA 25/04/2013 08:00:26
#422469
Camila bom dia.

Olha migrar não é usar coisas da versão anterior (compatibilidade quase zero) para nova versão. O correto é reescrever tudo na nova linguagem, e só usar os componentes dela, pois com a descontinuidade do VB6 no próximo Windows, nada dele irá funcionar, DLL, OCX, etc... (informações oficiais da Microsoft).

Eu estou fazendo isso e não me arrependo. Tem coisas simples do VB6 que ficaram absurdamente mais complexas e trabalhosas (uso o C#), e outras ao contrário, ficaram ridiculamente mais simples. Porém no [Ô]Frigir dos ovos[Ô] a manutenção do .Net está sendo uma mão na roda. Qualquer mudança é facilmente ajustada, além do VS avisar quase tudo que está errado, apesar de alguns bugs. Uso o VS 2008.

Tudo que fazia no DataCombo, faço com o Combobox comum do VS, apesar de usar tudo por código e nada vinculado, pois uso o conceito de 3 camadas, já objetos vinculados vão totalmente contra essa prática, uma vez que a UI faz o acesso aos dados, e não há a camada de negócios, com isso a manutenção do sistema fica comprometida, além de você não ter o controle do seu programa, que é feito pelos componentes.

Nota: Uso muito o DataGridView e o Combo no meu sistema, e [Ô]Penei[Ô] bastante até conseguir que ele funcionasse com todos os recursos corretamente, mas com a ajuda do Jonas hoje está tudo [Ô]Tinindo[Ô].

Concelho, abandona tudo que é do VB6 e faça tudo direto no VS dot.net
CAMILAMOHER 25/04/2013 11:19:56
#422479
Caro Luis Herrera .. desculpe,mas é muito facil dizer pra nao usar nada do vb6 quando voce tem um sistema com algumas dezenas de formularios.. tenho lido muito esta recomendação em tudo q é forum...
meu sistema possui 800 formularios!!!!!!, mais centenas e centenas de modulos.(nem contei pra nao desesperar)..
minha ideia era primeiro migrar com componentes do vb6 e aos poucos , durante 3 ou 4 anos, substitui-los..
este sistema eu ja tinha migrado do clipper para o vb6 ..em 5 anos!!! 5 anos inteiros!! mas acho q foi mais facil do que a tarefa herculea que o Bil Gates quer que eu faça daqui pra frente...

Caro MJAC..desculpe mas nao entendi sua mensagem..mas se entendi: existe update 2 do vs2012?? ele funciona no express (sim porque estou testando ainda no express pra ver se vou conseguir migrar)
minha grande duvida é: se eu comprar o VS2012, eu consigo dar um downgrade para o VS2008 que notei que roda (claro, trocando datcombo por combobox) razoavelmente???

obrigada pela atenção...
MJAC 05/05/2013 01:23:43
#422960
Amiga existe sim o update 2 do 2012, infelizmente não sei informar se funciona no express pois adquiri a versão completa logo que saiu do beta na promoção de lançamento, e quanto ao downgrade, não será fácil, para o 2010 até é possível desde que não utilize wpf.

Quanto ao conselho do Luis eu também tenho sistemas legados gigantescos como o seu e sei o quanto é trabalhoso e cansativo reescrever e a parte mais ruim é quando não temos mais os componentes terceirizados que eliminam muitos códigos, por exemplo quando migrei tive que criar um componente para detectar e controlar webcam no meu sistema de locadoras, realmente reescrever é melhor mas envolve tempo e desgaste para um sistema que já temos funcionando, por tanto veja se realmente vale a pena migrar parcialmente para ter meio benefício ou se já vale a pena migrar tudo para obter o máximo que tem a ganhar.

Por exemplo estou migrando para VB com XAML que irá funcionar no windows 8, site com silverlight, dispositivos móveis e no desktop com a mesma aparência e funcionalidades e sem precisar registrar dlls como o vb6 exigia podendo assim ter também o meu programa como portable por não precisar se instalado na máquina e rodar diretamente de um pendrive por exemplo

Abraços.
PROFESSOR 06/05/2013 18:09:23
#423016
é, esta é uma realidade que diariamente se vê.

O VB6 foi lançado em 1998 pela Microsoft, junto com o Visual Studio 98, ou Visual Studio 6.0.
O Visual Studio 98 teve o encerramento de seu suporte em 3/29/2004, desde que estivesse atualizado com o SP6.
O Visual Basic 6.0 (Enterprise Edition e Standard Edition) teve seu suporte extendido até 4/8/2008.
O suporte [Ô]Main Stream[Ô] para o Visual Basic vence agora, em 2013, e os componentes nativos do Windows que são suportados pelo VB6 serão mantidos até 2017, exceto os TriEdit e de terceiros.
Já em 2000, o componente ADODC era fortemente desaconselhado, posto que cada um deles mantém em si uma conexão própria á base de dados, o que em certos formulários podia significar dez, doze ou até mais conexões simultâneas [Ô]trafegando[Ô] pela rede.

Resumindo, o uso do VB6 pelos desenvolvedores deveria ter sido encerrado em 2008, e isso vem sendo notificado pela Microsoft desde 2005, pelo menos. O Visual Studio 2005 foi o último á conseguir converter códigos do VB6.

Estamos em 2013, o VB6 está com 15 anos de idade. Apenas de forma ilustrativa, no ano em que o VB6 foi lançado, ou seja, o equipamento para o qual o VB6 foi desenhado, chegava, no máximo, á algo como:


[th][/th]















[/td]
Micro PC Desktop [Ô]Top de Linha[Ô] - 1998
ComponenteDescriçãoPreço (em US$)
CPU:Intel Pentium II 450Mhz3.690,00
Motherboard:Tyan Thunder559,00
Memória:4 pentes de 256Mb SDRAM DIMM (1Gbyte)3.100,00
Monitor:Sony GDM F5001.900,00
Video:Matrox Millenium G200 16Mb228,00
Som:Event Eletronics Gina500,00
HD:Dual 9Gb Seagate Cheetah1.580,00
CD-ROM:HiVal 40x40200,00
Floppy:LS-12090,00
Falantes:Cambridge SoundWorks PSW1700,00
Teclado:Cherry G81-800485,00
Mouse:Logitech MouseMan Plus41,00
Gabinete:Addtronics 7890A198,00
Sistema:Microsoft Windows 98170,00
Total:[td]11.141,00


De lá para cá, isto virou isto , não se fala mais em [Ô]usar o fax[Ô], modem nunca mais fêz barulho, e muito mais.

O VB6 nasceu junto com Blade, O Caçador de Vampiros. E essa franquia se extinguiu em 2006, há 7 anos atrás, quando Wesley Snipes nem fazia mais parte do elenco.

Depois do VB6, a Microsoft já lançou o Visual Studio 2002, 2003, 2005, 2008, 2010 e 2012, ou seja, seis outras IDE[ô]s de desenvolvimento.

Como VB6 puro, isto é, sem acrescentar componentes externos, você podia acessar bases de dados via RDO, DAO e ADO, podia criar aplicativos Desktop e Web, podia criar controles e componentes. Vinha com assistentes dos mais variados tipos e com as mais variadas finalidades, o que o transformou em um verdadeiro [Ô]páu para toda obra[Ô].

Mas, como sempre acontece, o tempo não parou, os sistemas operacionais evoluíram, o povão cada vez mais se conectou, e hoje, o VB6 é tão obsoleto quanto era o Turbo Pascal quando o VB6 foi lançado.

Continua funcionando, e bem, em Windows 7 / Windows 8 ? Sim. Da mesma forma como o dBase III Plus da Ashton Tate que eu tenho instalado aqui em meu Windows 7 x64, na pasta C:\DBASEIII\, o VB6 continua funcionando. Mas há um abismo entre funcionar e estar atual. E o VB6 com certeza não está mais.

Para quem, como eu, lida com VB há tempos, VB.Net com XAML, como diz o MJAC, é o caminho mais curto para se manter. Para quem começa, as apostas que eu faço estão no HTML5 com CSS3 e Javascript, no máximo um C# como complemento.

E nós, que gostamos do VB6. apesar da paixão ser algo difícil de abandonar, temos de perceber que não há muito mais tempo pela frente. Temos de migrar. E migrar não significa apenas [Ô]mudar a cara[Ô] dos aplicativos, muito ao contrário. O mais importante é mudar a tecnologia, ainda que a [Ô]cara[Ô] continue a mesma. OOP, abortar o uso do Recordset, conhecer GDI, entender LINQ, são passos obrigatórios, fundamentais e imprescindíveis.

Como eu disse uma vez, é claro que podemos [Ô]empurrar com a barriga para mais adiante[Ô], mas isso tem uma data limite, possivelmente em 2017. Hoje mesmo, com tantos Windows 7 e Windows 8 já instalados em Notebooks e Desktops, há uma dificuldade crescente dos desenvolvedores (e muita [Ô]esfregação de bits[Ô]), para que seus aplicativos VB6 funcionem á contento. Gambiarras, como desativar a UAC, compartilhar pastas, e até instalar o VB6 completo, por exemplo, são [Ô]recursos[Ô] usados com frequência para esse fim.

Em 1998, dificilmente se encontrava uma padaria com um computador. Aliás, os caixas ainda eram registradoras mecânicas. Hoje, aplicativos de celular fazem conferência de estoque, acessam os mais variados dados, conectam jogadores e usuários de bate-papo, além de fazerem chamadas telefônicas. Até ambulantes usam conexão, para poder receber via cartão de crédito, coisa que há alguns anos era considerado simplesmente impossível. Nesses 15 anos, a informática mudou, e muito. Hoje há geladeiras se conectam para enviar mensagens SMS ou de email com a lista de produtos que o dono deve comprar. WebService é algo comum, quase indispensável.

Não é sermão, é um alerta.

Claro, há aplicações que são colossais, e cuja migração pode demandar um tempo grotesco de tão grande. Mas imagine o caso de uma Prefeitura Municipal, onde, em 1998, apenas algumas poucas salas existiam computadores, que na maior parte dos casos, servia mais como uma máquina de escrever. Hoje, todas as Secretarias têm de ser integradas á um sistema de gestão que viabilize respostas rápidas por parte do Executivo, ou seja, Prefeitos, Secretários, Alunos, Funcionários, Cidadãos em geral, vão se encontrar nesse sistema. Estamos falando de, ás vezes dezenas, ás vezes centenas de milhares de pessoas, conectadas. Em 2010, o Brasil tornou amplamente divulgada a [Ô]Transparência Pública[Ô], pois é um dos países signatários de acordos internacionais, como os EUA, onde os gastos públicos e a aplicação dos recursos deve ser pública e de fácil acesso á população, assim como aos demais prestadores e tomadores de serviços. Será que estes sistemas são pequenos ? E caso sejam gigantes, será que por conta disso, o Brasil vai [Ô]virar-se[Ô] lá fora e declarar [Ô]não quero mais brincar disso[Ô] ?

Infelizmente, ou felizmente, ainda não sei bem, mas o fato é que precisamos estar mais [Ô]em sintonia[Ô] com técnicas mais atuais, ou pensar seriamente em mudar de profissão.

CAMILAMOHER, não é absolutamente nada contra você, você postou uma dúvida, apenas. Trata-se muito mais de um desabafo pessoal, pois eu tenho percebido que, por conta de pouco tempo, por conta do fato de que ainda há faculdades que usam o VB6 como o máximo em linguagem de programação, ou seja para não perderem clientes, seja como for, ainda há muitos colegas que não despertaram para a necessidade de evoluir. E quando o tempo se tornar curto demais, quem mais vai sofrer são justamente aqueles que tem os aplicativos maiores, mais complexos e mais bem preparados, mas em tecnologia desatualizada.
LUIS.HERRERA 07/05/2013 10:03:59
#423036
Camila assina abaixo de tudo que o professor disse.

Não [Ô]Estou Pensando que é Fácil[Ô] como você comentou, pois meu sistema não é pequeno também. Não vou entrar no mérito da questão, pois acho que cada um sabe da complexidade e dificuldade de seu sistema, só estamos aqui para tentar ajudar, pois há o caminho adequado e o que certamente irá dar problemas, cada um sabe a dor de cabeça que deseja ter.

Se você acha que vai levar 5 anos, não se preocupe com isso agora, o importante é começar. Veja que é melhor em 2 anos você ter 50% do sistema pronto e funcional, liberado e depois ir liberando o restante conforme termina, que não ter nada e ficar com tudo parado por incompatibilidade em algum momento. Isso sim é problema.

Nunca parei para contar quantos formulários meu sistema tem, mas ele está sempre em constante evolução, com novos recursos e módulos sendo incluídos. Digo Módulos aos novos controles de gestão do cliente e não arquivos bas do vb.

Posso não ter seus 800 formulários, mas por volta dos 200 talvez, sendo que alguns deles fazem o cadastro de 10 ou mais tabelas. Fiz isso na época pensando em reduzir o tamanho do EXE, ou seja um único form anabolizado onde depois vi o tamanho do problema ao fazer manutenção. Pois fica tudo embolado, ocultar e exibir campos para cada situação, etc... Talvez fosse melhor ter os 800 ou até mil formulários, seria mais fácil manter.

Hoje cada form é específico, vou usar OOP o máximo que puder ou [Ô]Souber[Ô]. Tem que escrever mais código? Sim, mas a manutenção depois é muito mais fácil e objetiva.

Só para você ter uma ideia, eu faço tudo sozinho:
Análise do sistema; planejamento; administração do banco de dados, programação, designer, testes, criação dos manuais, instaladores, imagens do sistema, suporte técnico ao cliente, comercial e se isso não fosse o suficiente, ainda faço e mantenho o site, toda a contabilidade e gestão da empresa e junto a isso, aprendo o Dot.Net e estou reescrevendo o sistema inteiro no C# 2008, incluindo um monte de novas funcionalidades, módulos, além do sistema agora ser não só em português, mas em Inglês e Espanhol e muitas outras coisas.

O prazo que defini são 2 anos para conclusão, mas espero terminar antes.

Importante Minha intenção ao relatar isso não é querer ser melhor que ninguém, mas dizer que mudar é inevitável e só quem pode decidir isso somos nós mesmos, e não há obstáculos se tivermos vontade. Os obstáculos somos nós que colocamos e não os outros. Relutei muito em migrar, mas ou migro ou [Ô]morro[Ô] e dependo do meu sistema para sobreviver hoje. Assim arregacei as mangas e estou fazendo, pois o difícil é começar.

Sou do signo de virgem e por isso sou perfeccionista, assim já que é para migrar então estou migrando e não vou reaproveitar nada para não ter problemas depois. Se aceita conselho, esse é um deles.

Desejo toda a sorte do mundo, e não fique preocupada com 800 formulários, se preocupe com o primeiro, foi isso que fiz e deu certo. Com OOP, depois que pega o jeitão, cheguei a fazer o cadastro de 5 formulários em algumas horas, pois a coisa passa a ser bem mais prática e sistemática, uma receita de bolo que quase vira produção em série. Só quando entra nos cadastros específicos, a coisa se torna mais complexa e trabalhosa, mas até chegar neles, pegou prática nos básicos, comece sempre pela parte mais simples.
CAMILAMOHER 10/05/2013 06:40:30
#423228
obrigada professor..obrigada Luiz Herrera..

Luiz.. o que é OOP? vc tem algum exemplo..?
Faça seu login para responder