Autor Tópico: Manutenção do banco HyperFile Client/Server  (Lida 12722 vezes)

JacquesBica

  • Full Member
  • ***
  • Mensagens: 197
  • Karma: +0/-0
  • Boas cercas fazem bons vizinhos
Manutenção do banco HyperFile Client/Server
« Online: Dezembro 10, 2013, 08:46:50 am »
Quando o banco HF C/S é instalado em produção no cliente, há alguma ferramenta para execução de comandos DDL, ou seja, manutenção das tabelas, criação de campos, índices, etc?

No Firebird, por exemplo, utiliza-se o IBExpert. E no Hypefile?

Marcelo Braga

  • Global Moderator
  • *****
  • Mensagens: 123
  • Karma: +1/-0
Re:Manutenção do banco HyperFile Client/Server
« Responder #1 Online: Dezembro 12, 2013, 01:21:05 am »
Voce consegue fazer isso de várias formas:
1 - quando voce reinstala a nova versao no cliente, o proprio instalador do windev tem uma opção para atualizar o banco.
2 - voce pode executar comandos SQL direto no HFSQL.

abraços,

JacquesBica

  • Full Member
  • ***
  • Mensagens: 197
  • Karma: +0/-0
  • Boas cercas fazem bons vizinhos
Re:Manutenção do banco HyperFile Client/Server
« Responder #2 Online: Dezembro 12, 2013, 07:14:47 am »
Eu não utilizo o instalador do WD para distribuir o aplicativo.
Na verdade, envio para o tablet apenas o APK e este conecta o banco HF que está no servidor.
Estou com receio deste processo uma vez que não há uma ferramenta propria, independente, para manutenção do banco tal qual temos em outros ambientes, por exemplo, MSSQL, FB, PG, Oracle, etc.

Grato pelo retorno.

Marcelo Braga

  • Global Moderator
  • *****
  • Mensagens: 123
  • Karma: +1/-0
Re:Manutenção do banco HyperFile Client/Server
« Responder #3 Online: Dezembro 12, 2013, 11:46:21 am »
Na sua analise, voce está conectado ao servidor.
No menu da analise - structure of files / Synchronizing the structure and the data deployed....
voce consegue atualizar todas as alterecóes do BD da produção e do teste.

JacquesBica

  • Full Member
  • ***
  • Mensagens: 197
  • Karma: +0/-0
  • Boas cercas fazem bons vizinhos
Re:Manutenção do banco HyperFile Client/Server
« Responder #4 Online: Dezembro 12, 2013, 12:35:40 pm »
No desevolvimento eu faço isto. Mantenho o banco hospedado no meu servidor de acordo com as alterações feitas na Analyse.
E depois, em produção? Quando terei vários clientes usando, quem sabe, versões diferentes do aplicativo. Estas alterações de banco deverão ser repassadas ao cliente de acordo com a última versão do aplicativo. Por exemplo, se o cliente "A" estiver rodando a versão 1.0, o cliente "B" a versão 1.05, etc... lá pelas tantas todos resolvem atualizar o aplicativo para a versão 2.0. Como se dá este processo? Como terão acesso às alterações feitas no banco?

Marcelo Braga

  • Global Moderator
  • *****
  • Mensagens: 123
  • Karma: +1/-0
Re:Manutenção do banco HyperFile Client/Server
« Responder #5 Online: Dezembro 12, 2013, 12:49:50 pm »
Bem no windev o instalador faz a atualizacao.
No caso do mobile nao sei como ocorre.

eduardowolak

  • Full Member
  • ***
  • Mensagens: 146
  • Karma: +0/-0
Re:Manutenção do banco HyperFile Client/Server
« Responder #6 Online: Dezembro 12, 2013, 12:51:06 pm »
Então, em todos projetos que trabalhei existia um controle de versionamento de banco, exatamente como vc falou, se o cliente está na versão X, o atualizador(desenvolvido por você), roda os scripts até a versão atual, caso de algum erro, o bloco de transação não comitava, funciona bem, toda compilação de procedures ou qualquer modificação nas tabelas sejam elas de inclusão ou modificação o DBA mantinha um script e enviava junto nas atualizações, e como é transacionado, ou faz tudo, ou não faz nada.

Para disparar os comandos DDL vc pode utilizar a função em JAVA que postei no tópico Windev Mobile X SQLite.

Wolak.

JacquesBica

  • Full Member
  • ***
  • Mensagens: 197
  • Karma: +0/-0
  • Boas cercas fazem bons vizinhos
Re:Manutenção do banco HyperFile Client/Server
« Responder #7 Online: Dezembro 12, 2013, 01:37:32 pm »
É justamente este o ponto... hoje, em sistema ERP com Firebird, nós dispobilizamos um script para cada versão do sistema. Desta forma, não importa qual a versão que o usuario esteja usando. Para atualizar para a versão atual, basta ele baixar o aplicativo novo e rodar quantos scripts forem necessários. Para isto o usuário possui em seu ambiente de trabalho o IBExpert.

Como estou desenvolvendo o aplicativo Android conectando o banco HyperFile C/S estou encontrando estas dificuldades para rodar os comando DDL (manuteção de tabelas, campos, etc).

Marcelo Braga

  • Global Moderator
  • *****
  • Mensagens: 123
  • Karma: +1/-0
Re:Manutenção do banco HyperFile Client/Server
« Responder #8 Online: Dezembro 12, 2013, 01:43:39 pm »
se nao me engano, o mobile funciona com sql-lite e eu uso o DBbrowser , é free e é muito bom.
http://www.dbsoftlab.com/database-browser/overview.html

mande sua duvida para a pcsoft, o suporte deles funciona muito bem.
sinto nao ter podido ajudar.

eduardowolak

  • Full Member
  • ***
  • Mensagens: 146
  • Karma: +0/-0
Re:Manutenção do banco HyperFile Client/Server
« Responder #9 Online: Dezembro 12, 2013, 01:49:04 pm »
Entendi, nunca usei o Hyperfile como banco de dados, utilizo assiduamente o Postgresql como banco principal, e no Mobile agora o SQLite, no Mobile disparo os comandos DML pela função JAVA, funciona bem, agora em relação ao Hyperfile, não levo fé não, mas como eu falei, nunca usei, mas já tive relatos de que ele não aguenta o tranco, uma curiosidade, o Hyperfile é um A.C.I.D?

JacquesBica

  • Full Member
  • ***
  • Mensagens: 197
  • Karma: +0/-0
  • Boas cercas fazem bons vizinhos
Re:Manutenção do banco HyperFile Client/Server
« Responder #10 Online: Dezembro 12, 2013, 01:53:13 pm »
Eu também não levo fé no HyperFile, porem, tive que adota-lo nesta aplicação Android somente porque é possivel acessa-lo diretamente via IP, ou seja, o Android transmite os pedidos para o HyperFile que está no servidor. No servidor há um "programinha robot" que sincroniza os dados a partir do HyperFile gravando-os definitivamente no banco Firebird que é o banco do ERP.

Em modo local, no tablet, uso o SQLite nativo do Android.

eduardowolak

  • Full Member
  • ***
  • Mensagens: 146
  • Karma: +0/-0
Re:Manutenção do banco HyperFile Client/Server
« Responder #11 Online: Dezembro 12, 2013, 01:59:11 pm »
Entendi, contorno isso de duas maneiras, uma, que é a mais lenta é utilizando HTTPRequest, ele recebe os dados via texto e começa a inclusão, é meio lenta, contorno desligando a integridade, a outra é enviando o banco SQLite para o FTP e um aviso com HTTPPost para a Web, assim que ele receber o arquivo o proprio sistema da Web encarrega-se de abrir o banco DB, ler as informações e fazer todo o processo e tal, depois ele devolve o DB para o Mobile com os novos dados, é meio trabalhoso, mas foi oq eu encontrei de mais rapido, uma carga de 10 mil itens em 30 segundos, mas enfim, parece que agora na versão 19 você vai poder acessar qualquer banco de dados remotamente através do SQLExec no MOBILE.

Wolak.

JacquesBica

  • Full Member
  • ***
  • Mensagens: 197
  • Karma: +0/-0
  • Boas cercas fazem bons vizinhos
Re:Manutenção do banco HyperFile Client/Server
« Responder #12 Online: Dezembro 12, 2013, 02:14:58 pm »
Quanto a integração entre o Android e o ERP (banco remoto) já fiz várias gambiarras, algumas até bem engenhosas... a última invenção que fiz foi algo simples  e bem prático: Para carregar os cadastros no Android, uso uma chamada via httprequest que executa um select em PHP. Para enviar os pedidos para o servidor, no Android, eu gravo um txt com os pedidos na pasta do Dropbox (a versao 18 faz isto, na revista LST 93 tem um exemplo bem facil). No servidor, o proprio Dropbox faz a sincronização instantanea deste TXT. O "programinha robot" faz leitura do TXT e transfere o pedido para o banco Firebird.

eduardowolak

  • Full Member
  • ***
  • Mensagens: 146
  • Karma: +0/-0
Re:Manutenção do banco HyperFile Client/Server
« Responder #13 Online: Dezembro 12, 2013, 02:20:51 pm »
E vc já experimentou o Webdev?, fica mais fácil hein...

JacquesBica

  • Full Member
  • ***
  • Mensagens: 197
  • Karma: +0/-0
  • Boas cercas fazem bons vizinhos
Re:Manutenção do banco HyperFile Client/Server
« Responder #14 Online: Dezembro 12, 2013, 02:31:21 pm »
Eu até comprei o WB e tentei.......... porem, como tinha pressa e dominava o PHP, acabei optando por este por uma questão de segurança. Parti daquele conceito que a melhor ferramenta é aquela que eu conheço. Na semana passada fiz um prototipo muito bom com SQLite + Hyperfile. Está funcionando bem, suprindo todas as necessiades, porem, me deparei com este inconveniente que é a manutenção do banco de uma forma transparente para o usuario. Ainda pretendo voltar a estudar o WB para testar suas funcionalidades.