Página 1 de 1

Migrar do xHarbour para o Harbour

Enviado: 18 Mar 2024 15:50
por kakamachado
Caros amigo. Migrei há alguns anos um sistema em Clipper5 para o xHarbou/Minigui/Miniprint. Posteriormente verificou-se, conforme consta aqui mesmo no forum, que o xHarbour foi congelado enquanto que o Harbour vem sendo atualizado. As perguntas são: Vale a pena converter agora para o Harbour? Qual o grau de dificuldade que ocorrerá, isto é, precisaria alterar muito o código tendo em vista usar a Minigui e a Miniprint? Algumas/muitas funções precisariam ser alteradas ou substituídas por não existirem no Harbour (o sistema é muito grande e não posso gerar erros/inconsistências). Qual o melhor ambiente (produtos e versões) para usar? Alguém teve esta experiência? Desde já obrigado.

Migrar do xHarbour para o Harbour

Enviado: 18 Mar 2024 18:53
por JoséQuintas
xhb.png
Consta como atualizado há dois dias atrás.
Se o motivo for por atualização....

Se mesmo assim quiser migrar, acho que a parte que pega mais é sobre OLE, e misturar rotinas em C pra isso.
Também depende se tiver rotinas em C específicas, que poderiam depender de compilador C específico.
De um modo geral é: só testando, porque nenhum fonte é igual a outro, tudo pode existir nos fontes.

A recomendação que faço é de migrar sem criar fontes alternativos.
Procure centralizar as diferenças, ou em arquivo CH ou em arquivo PRG.
Assim tem sempre o aplicativo em uso e funcionando em xharbour, mesmo que eventualmente compile e teste com harbour.
Criar duas versões pode atrapalhar a migração, se tiver que ficar alterando sempre dois fontes.

Migrar do xHarbour para o Harbour

Enviado: 20 Mar 2024 21:34
por sygecom
kakamachado escreveu:Caros amigo. Migrei há alguns anos um sistema em Clipper5 para o xHarbou/Minigui/Miniprint. Posteriormente verificou-se, conforme consta aqui mesmo no forum, que o xHarbour foi congelado enquanto que o Harbour vem sendo atualizado. As perguntas são: Vale a pena converter agora para o Harbour? Qual o grau de dificuldade que ocorrerá, isto é, precisaria alterar muito o código tendo em vista usar a Minigui e a Miniprint? Algumas/muitas funções precisariam ser alteradas ou substituídas por não existirem no Harbour (o sistema é muito grande e não posso gerar erros/inconsistências). Qual o melhor ambiente (produtos e versões) para usar? Alguém teve esta experiência? Desde já obrigado.
Não uso a Minigui, então sobre exatamente o que pode lhe causar de problemas eu não sei.

Estou em uma jornada de migrar para harbour faz uns dois meses, apesar das ultimas duas semanas ter parado para atender outras demandas, tenho vários problemas com a Hwgui em particular.
Em xharbour uso o SQLRDD para esse caso com harbour o colega Marcos Gambeta fez uma migração muito bem feita para harbour( https://github.com/marcosgambeta/sqlrddpp )

De mais tente não usar xhb.lib que deixa compatível e, sim tente alterar para usar as function/comando do Harbour.

Com certeza cada um tem uma jornada pela frente nessas migração, acredito que não tem uma receita pronta.

Tenho uma unica e boa dica que fez toda diferença, só que olhei pra ele semanas depois de ficar quebrando pedra é: Leia o arquivo \harbour\doc\xhb-diff.txt e veja exatamente tudo que é citado nesse documento, leia mais de uma vez para ter certeza que vai procurar no seu sistema tudo que indica nesse arquivo.
https://github.com/harbour/core/blob/ma ... b-diff.txt

Migrar do xHarbour para o Harbour

Enviado: 20 Mar 2024 22:04
por Itamar M. Lins Jr.
Olá!
Quando voltei a usar o Harbour, foi por necessidade, na época testava o LetoDb. E eles começaram a usar o MT do Harbour. Mais ou menos por ai, que voltei para o Harbour.
Tem gente que não se importa com MT, eu mesmo não me importo, com tanto que funcione.
Lembro que tinha o comando IN

Código: Selecionar todos

IF "JOAO" in cSTRING
Bastou substituir "IN" por "$" e alguma coisa com BEGIN SEQUENCE que é um pouco diferente.

PS. também não sei a quantos anda o xHarbour em modo 64Bits. Hoje meu sistema roda 100% 64Bits. Com muita coisa migrada e em migração para LINUX usando Hwgui.

Saudações,
Itamar M. Lins Jr.