Olá a Todos!
Alguém pode postar aki como se cria um DBF temporário e depois se copia o conteúdo desse DBF para outro DEFINITIVO?
Além disso, tenho as seguintes dúvidas:
1-) Qual é mesmo a diferença entre o COPY TO e o APPEND FROM?
2-) Se eu criar um campo no DBF temporário chamado CODPED e, utilizando o COPY TO ou APPEND FROM, quiser copiar o conteúdo desse campo para o campo PEDIDO no DBF DEFINITIVO... como faço?
Um Abraço,
Janio
DBF temporário
Moderador: Moderadores
DBF temporário
fui...
e-mail:janioaguiar@yahoo.com.br
msn: janio_aguiar@hotmail.com
xHarbour1.2.1/Harbour3.2 + wvg + hwgui + Mediator + MySql
e-mail:janioaguiar@yahoo.com.br
msn: janio_aguiar@hotmail.com
xHarbour1.2.1/Harbour3.2 + wvg + hwgui + Mediator + MySql
-
evolver
- Membro Master

- Mensagens: 189
- Registrado em: 28 Ago 2004 01:02
- Localização: Cruz Alta - RS
- Contato:
Bem copy to é copiar o banco de dados para outro ou seja ele vai copiar os dados para outro, append from é adicionar de ou seja ele adiciona ao banco de dados atual os dados de um banco de dados externo.
Quanto a segunda pergunta apenas com o copy to que tu vai poder copiar os dados para outra mas para retornar é bom criar uma rotina para evitar que os dados dupliquem.
Quanto a segunda pergunta apenas com o copy to que tu vai poder copiar os dados para outra mas para retornar é bom criar uma rotina para evitar que os dados dupliquem.
Sergio "Evolver" Fagundes
CURVE-SE DIANTE DE MIM SER INSIGNIFICANTE, POIS EU SOU ROOT
Só respondo em PVT perguntas relativas ao que eu faço. Qualquer outra dúvida favor postar no fórum.
Peço aos veteranos que antes de responder a uma pergunta repetida dêem uma pesquisada e instruam a quem perguntou a fazer o mesmo.
CURVE-SE DIANTE DE MIM SER INSIGNIFICANTE, POIS EU SOU ROOT
Só respondo em PVT perguntas relativas ao que eu faço. Qualquer outra dúvida favor postar no fórum.
Peço aos veteranos que antes de responder a uma pergunta repetida dêem uma pesquisada e instruam a quem perguntou a fazer o mesmo.
Valeu Evolver!
Agora preciso de um exemplo de criação de DBF temporário e cópia deste para o definitivo.
Um Abraço,
Janio
Agora preciso de um exemplo de criação de DBF temporário e cópia deste para o definitivo.
Um Abraço,
Janio
fui...
e-mail:janioaguiar@yahoo.com.br
msn: janio_aguiar@hotmail.com
xHarbour1.2.1/Harbour3.2 + wvg + hwgui + Mediator + MySql
e-mail:janioaguiar@yahoo.com.br
msn: janio_aguiar@hotmail.com
xHarbour1.2.1/Harbour3.2 + wvg + hwgui + Mediator + MySql
-
supgaroto
- Usuário Nível 2

- Mensagens: 51
- Registrado em: 19 Ago 2003 14:24
- Localização: Rua Aristotoles Fernandes Valdares, 1190
Código: Selecionar todos
NINX=0
DO WHILE .T.
IF !FILE("SET_"+STRZERO(NINX,2)+".TMP")
WGDEST:="SET_"+STRZERO(NINX,2)
Private astru
astru := {;
{"CODIGO","C",08,00},;
{"CLIENTE","C",39,00}}
DBCREATE(WGDEST+".TMP",aSTRU)
EXIT
ENDIF
NINX++
ENDDO
wgdbf:="SET_"+STRZERO(NINX,2)+".TMP"
select 2
use &wgdbf
aqui vc salva as informações
select 1
use cliente
select 2
go top
do while !eof()
select 1
append blank
replace cod_cli with codigo
replace nome with cliente
commit
select 2
skip
enddo
select 2
close
delete file(Wgdbf)
-
evolver
- Membro Master

- Mensagens: 189
- Registrado em: 28 Ago 2004 01:02
- Localização: Cruz Alta - RS
- Contato:
O código do garoto tá muito bom mas não preve alteração dos dados, apenas a inserção similar ao apend blank e copia similar ao copy to.
Vamos a umas pequenas modificações no código.
Outra forma de fazer o replace de um pro outro sem se preocupar com o nome dos campos seria
Vamos a umas pequenas modificações no código.
Código: Selecionar todos
procedure cptotemp()
public wgdbf:=""
NINX=0
DO WHILE .T.
IF !FILE("SET_"+STRZERO(NINX,2)+".TMP")
EXIT
ENDIF
NINX++
ENDDO
wgdbf:="SET_"+STRZERO(NINX,2)+".TMP"
use cliente index cli001 //cli001 - strzero(codigo,4)
copy to &wgdbf for cep = "98050000" //coloque qualquer condicao aqui
return
procedure rtfromtemp()
use cliente index cli001 alias cliente
use &wgdbf alias temp new
go top
do while !eof()
v_codigo=codigo
select client
seek strzero(v_codigo,4)
if eof()
append blank
endif
replace codigo with temp->codigo
replace cliente with temp->cliente
...
...
commit
select temp
skip
enddo
select temp // so pra garantir mas nao é necessário
use
ferase(wgdbf)
select cliente
return
Código: Selecionar todos
procedure rtfromtemp()
...
...
...
if eof()
append blank
endif
for i = 1 to fcount()
cliente->(fieldname(i)):=temp->(fieldname(i))
next
...
...
return
Sergio "Evolver" Fagundes
CURVE-SE DIANTE DE MIM SER INSIGNIFICANTE, POIS EU SOU ROOT
Só respondo em PVT perguntas relativas ao que eu faço. Qualquer outra dúvida favor postar no fórum.
Peço aos veteranos que antes de responder a uma pergunta repetida dêem uma pesquisada e instruam a quem perguntou a fazer o mesmo.
CURVE-SE DIANTE DE MIM SER INSIGNIFICANTE, POIS EU SOU ROOT
Só respondo em PVT perguntas relativas ao que eu faço. Qualquer outra dúvida favor postar no fórum.
Peço aos veteranos que antes de responder a uma pergunta repetida dêem uma pesquisada e instruam a quem perguntou a fazer o mesmo.
Boa tarde a todos!
Agradeço ao Evolver e ao SupGaroto pelas respostas.
Coloquei este post pq eu estava e ainda estou fazendo uso de uma matriz pra guardar os itens de cada venda (produtos)... prar depois repassar pro DBF na hora de salvar a venda.
Só que eu estava encontrando dificuldade quando necessitava manipular esses dados em execução... tipo ter que excluir algum produto...
Talvez com um DBF temporário esta operação se torne mais fácil... vou tentar jogar os produtos da venda num DBF temporário e no final da venda repasso pro definitivo.
Obrigado a todos
Um Abraço
Janio
Agradeço ao Evolver e ao SupGaroto pelas respostas.
Coloquei este post pq eu estava e ainda estou fazendo uso de uma matriz pra guardar os itens de cada venda (produtos)... prar depois repassar pro DBF na hora de salvar a venda.
Só que eu estava encontrando dificuldade quando necessitava manipular esses dados em execução... tipo ter que excluir algum produto...
Talvez com um DBF temporário esta operação se torne mais fácil... vou tentar jogar os produtos da venda num DBF temporário e no final da venda repasso pro definitivo.
Obrigado a todos
Um Abraço
Janio
fui...
e-mail:janioaguiar@yahoo.com.br
msn: janio_aguiar@hotmail.com
xHarbour1.2.1/Harbour3.2 + wvg + hwgui + Mediator + MySql
e-mail:janioaguiar@yahoo.com.br
msn: janio_aguiar@hotmail.com
xHarbour1.2.1/Harbour3.2 + wvg + hwgui + Mediator + MySql
