[firebase-br] BDE PARA IBIBJECTS - Aplicativo REFIND

Gladiston Santana gladiston em vidy.com.br
Seg Abr 13 09:16:07 -03 2020


Gustavo,

Pode ser um pouco frustante, mas faça uma cópia de um projeto que use todos
os componentes BDE que os outros projetos usam, chame-o de projeto piloto.
Observe se o dfm está no modo texto ou binário, qualquer que seja o método
de search&replace irá falhar se usar os dfm´s no modo binário. Há um
utilitário ao que não me lembro bem o nome que faz a conversao de dfm
binario->texto numa tacada só.
Depois use apenas neste projeto piloto o refind, ele funciona para qualquer
coisa, no seu caso você teria de criar um arquivo texto com o modelo das
substituições a serem feitos, existem um modelo de BDE para FIREDAC/DBX
poderá usar ele como partida. Uma outra forma é usar o notepad++ e fazer o
search&replace em arquivos trocando TDatabase->TIBODatabase,
TTable->TIBOTable,.., por este método você teria depois de abrir cada .dfm
para que as impurezas sejam removidas (propriedades e eventos não comuns).
Usando o projeto piloto, anote tudo que tá fazendo para tornar o projeto
viável sem BDE.
Eu já fiz isso duas vezes, BDE para IBO e depois para Firedac, veja algumas
anotações da ultima:
Por ultimo, abrir projeto por projeto procurar por units do IBO e
removê-las.
<--- INICIO ---->
Converter programas IBO para FireDAC
Não pode haver nenhuma unit começando com IB_*, por exemplo:
  IB_Components,
  IB_Session,
  IB_Grid,
  IB_Access
  IB_VCL,
  IB_Script,
  IB_Ledger,
Faça search& replace para trocar ' IB_Components, ' por vazio e repita para
cada nome de unit na pasta \projeto\source\*.pas|*.dpr
1. Trocar dfm  .* Dataset .*\r por nada (expressão regular)
2. Trocar dfm  .* DataSource .*\r por nada (expressão regular)
(cuidado, agora deverá mudar a opção de modo de busca para 'Normal' e
marcar 'coincidir palavras inteiras')
3. Trocar pas/dpr utils_fb para utils_db (palavras inteiras)
4. Trocar pas/dpf jadedb para utils_vidy15 (palavras inteiras)
5. Trocar pas/dfm/dpr TIB_Connection por TFDConnection (palavras inteiras)
6. Trocar pas/dfm/dpr TIB_Transaction por TFDTransaction (palavras inteiras)
7. Trocar pas/dfm/dpr TIB_DataSource por TDataSource  (palavras inteiras)
8. Trocar pas/dfm/dpr TIB_Grid para TDBGrid (palavras inteiras)
9. Trocar pas/dfm/dpr TIB_Query por TFDQuery (palavras inteiras)
10. Trocar pas/dfm/dpr TIB_Script por TFDQuery (palavras inteiras)
11. Trocar pas/dfm/dpr IB_Connection por Connection (palavras inteiras)
12. Trocar pas/dfm/dpr IB_Transaction por Transaction (palavras inteiras)
13. Trocar pas/dfm/dpr DefaultTransaction por Transaction (palavras
inteiras)
14. Trocar pas/dfm/dpr IB_TransForUpdates por UpdateTransaction (palavras
inteiras)
(....) não dá para colocar tudo por causa do limite da lista.
<--- FIM ---->
Daí siga roboticamente o roteiro, projeto por projeto. No caso acima, usei
o notepad++, pois desconhecia como criar um modelo refind para
IBO->Firedac. Talvez para você na lista do IBO alguém já tenha criado um
modelo BDE->IBO, faça a consulta.



Mais detalhes sobre a lista de discussão lista