Jump to content
Fivewin Brasil

Migração para SQLRDD


edutraini

Recommended Posts

Bom dia, Pessoal

Estou mudando o meu sistema para SQL usando SQLRDD 

Na rotina que faço o Pedido de Vendas com dbf eu crio um arquivo temporario aonde vou incluindo os itens do pedido e na hora de gravar o pedido pego esse conteudo e gravo dentro do banco de dados

como tenho que trabalhar com sql usando comando xbase

No exemplo abaixo eu abro meu arquivo de itens do pedido e dou copy stru para o temporario e vou adicionando os itens e depois replace no arquivo principal

   SELE PEDI
   copy stru to &vn_arqiTEM
 

Link to comment
Share on other sites

Bom dia Edu.

Eu não sei se existe vantagem em usar o SQLRDD. Eu fiz minha migração usando o tDolphin, estou contente com a solução mas agora existe uma opção melhor que é a solução nativa do FiveWin nas últimas versões.

No caso dos pedidos: pode continuar usando dbf local e depois salvar a partir dele no SqL, mas pode ser diferente:
Eu faço assim: quando salva o pedido, já cria o registro no SQL e depois vai inserindo os itens do pedido direto no sql a cada inclusão de item.
Uso matrizes para guardar os dados de cada item. Quando o usuário clica Salvar o item, o sistema monta o comando SQL a partir dos valores da matriz.
No caso, existe uma tabela para os dados gerais do pedido e uma tabela com todos os itens de todos os pedidos.
Exemplo parcial:

        cQry := 'INSERT INTO `itpedi` SET '
        cQry += 'codite = "'+ xi+'",'
        cQry += 'codped = "'+ matriz[1]+'",'
        cQry += 'codped_id = "'+ alltrim(str(matriz[45]))+'",'
        cQry += 'produt_id = "'+ alltrim(str(matriz[43]))+'",'
        cQry += 'fornec_id = "'+ alltrim(str(matriz[44]))+'",'        
        cQry += 'qtd_ped = "'+ alltrim(str(matriz[2]))+'",'
        cQry += 'qtd_ent = "'+ alltrim(str(matriz[18]))+'",'
        cQry += 'aentre = "'+ alltrim(str(matriz[19]))+'",'
        cQry += 'codpro = "'+ matriz[3]+'",'
        cQry += 'codfor = "'+ matriz[6]+'",'
        cQry += 'preco_unit = "'+ alltrim(str(matriz[4]))+'",'
        cQry += 'preco_tot = "'+ alltrim(str(matriz[8]))+'",'
        cQry += 'status = "'+ matriz[5]+'",'
        cQry += 'pdesc = "'+ alltrim(str(matriz[9]))+'"'

        sysrefresh()
        oQry2   := oServer:sqlQuery( cQry)
        sysrefresh()


[]´s

 

Link to comment
Share on other sites

Ah, tá.

Eu também trabalho assim. Continuo usando arquivo temporário local, em dbf, apenas para não prejudicar desempenho (velocidade).

Depois salvo tudo no BD remoto, da mesma forma que Rogerio Figueira.

Quanto se há vantagem em usar SQLRDD, até o momento a única que encontrei foi a possiblidade de usar Firebird que, para rede local, atualmente está melhor que o MySQL e MariaDB no quesito "salvar em várias tabelas com uma única query". Se alguém tiver uma solução para isso em MySQL e MariaDB com SQLRDD, aceito códigos de exemplo. :D

Link to comment
Share on other sites

5 horas atrás, Rogerio Figueira disse:

Bom dia Edu.

Eu não sei se existe vantagem em usar o SQLRDD. Eu fiz minha migração usando o tDolphin, estou contente com a solução mas agora existe uma opção melhor que é a solução nativa do FiveWin nas últimas versões.

No caso dos pedidos: pode continuar usando dbf local e depois salvar a partir dele no SqL, mas pode ser diferente:
Eu faço assim: quando salva o pedido, já cria o registro no SQL e depois vai inserindo os itens do pedido direto no sql a cada inclusão de item.
Uso matrizes para guardar os dados de cada item. Quando o usuário clica Salvar o item, o sistema monta o comando SQL a partir dos valores da matriz.
No caso, existe uma tabela para os dados gerais do pedido e uma tabela com todos os itens de todos os pedidos.
Exemplo parcial:

        cQry := 'INSERT INTO `itpedi` SET '
        cQry += 'codite = "'+ xi+'",'
        cQry += 'codped = "'+ matriz[1]+'",'
        cQry += 'codped_id = "'+ alltrim(str(matriz[45]))+'",'
        cQry += 'produt_id = "'+ alltrim(str(matriz[43]))+'",'
        cQry += 'fornec_id = "'+ alltrim(str(matriz[44]))+'",'        
        cQry += 'qtd_ped = "'+ alltrim(str(matriz[2]))+'",'
        cQry += 'qtd_ent = "'+ alltrim(str(matriz[18]))+'",'
        cQry += 'aentre = "'+ alltrim(str(matriz[19]))+'",'
        cQry += 'codpro = "'+ matriz[3]+'",'
        cQry += 'codfor = "'+ matriz[6]+'",'
        cQry += 'preco_unit = "'+ alltrim(str(matriz[4]))+'",'
        cQry += 'preco_tot = "'+ alltrim(str(matriz[8]))+'",'
        cQry += 'status = "'+ matriz[5]+'",'
        cQry += 'pdesc = "'+ alltrim(str(matriz[9]))+'"'

        sysrefresh()
        oQry2   := oServer:sqlQuery( cQry)
        sysrefresh()


[]´s

 

boa tarde poderia explicar melhor sobre tDolphin, como usar o que instalar.... etc....

 

Link to comment
Share on other sites

20 horas atrás, Theotokos disse:

boa tarde poderia explicar melhor sobre tDolphin, como usar o que instalar.... etc....

Boa tarde.
Se você tem o Fivewin atualizado, melhor seria usar o FWMaria nativo dele. Tem gente que já migrou do tDolphin para o FWMaria, dizem compensar.
Eu ainda não fiz isso por motivo de custos, vou esperar passar a pandemia e os negócios melhorarem.

Usar o tDolphin é simples, para mim a migração foi muito fácil.

Você precisa baixar as libs e fazer uns testes . Depois disso mãos a obra.
https://bitbucket.org/danielgarciagil/tdolphin/downloads/

Na pasta samples tem vários exemplos.

Qualquer dúvida, pode perguntar.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...