como unir 02 bancos .dbf e copiar para um 3º os dados
olá pessoal tenho 02 bancos .dbf
NTF.DBF
NOTA|FILIAL|COD_CLI|NOME |TOTAL_NF|
0010|1 |000126 |FERRAGEM LTDA |200,00 |
0011|1 |001220 |TERRAPLANAGEM |400,00 |
NTF_ITEM.DBF
NOTA|COD_PROD|QUANT|VALOR_UNIT|
0010 |ALI0010 |5 |20,00 |
0010 |FENDA03 |10 |10,00 |
0011 |BAU0110 |4 |100,00 |
Vou criar um 3º arquivo assim
NTF_TUDO.DBF
NOTA|FILIAL|COD_CLI|COD_PROD|QUANT|VALOR_UNIT|
0010|1 |000126 |ALI0010 |5 |20,00 |
0010|1 |000126 |FENDA03 |10 |10,00 |
0011|1 |001220 |BAU0110 |4 |100,00 |
Como devo proceder?,montar um while? ou...se puderem passar um exemplo baseados nestas informações, agradeceria.
Obrigado.
Le
NTF.DBF
NOTA|FILIAL|COD_CLI|NOME |TOTAL_NF|
0010|1 |000126 |FERRAGEM LTDA |200,00 |
0011|1 |001220 |TERRAPLANAGEM |400,00 |
NTF_ITEM.DBF
NOTA|COD_PROD|QUANT|VALOR_UNIT|
0010 |ALI0010 |5 |20,00 |
0010 |FENDA03 |10 |10,00 |
0011 |BAU0110 |4 |100,00 |
Vou criar um 3º arquivo assim
NTF_TUDO.DBF
NOTA|FILIAL|COD_CLI|COD_PROD|QUANT|VALOR_UNIT|
0010|1 |000126 |ALI0010 |5 |20,00 |
0010|1 |000126 |FENDA03 |10 |10,00 |
0011|1 |001220 |BAU0110 |4 |100,00 |
Como devo proceder?,montar um while? ou...se puderem passar um exemplo baseados nestas informações, agradeceria.
Obrigado.
Le
Infohelp
Curtidas 0
Respostas
Emerson Krinski
06/11/2003
Olá
Moleza...
:D
Use NTF_ITEM.DBF new alias Item
index on nota to It_01 // para conseguirmos buscar
set index to It_01 // ativar o indice
Use NTF.DBF new alias Notas
Use NTF_TUDO.DBF new alias Tudo
Zap // para ter certeza que estará vazio a fim de receber os dados
Select Notas // apelido dado para este banco de dados...
do while ! eof()
mNOTA = Nota // Variaveis recebem dados do Nota.dbf
mFILIAL = Filial
mCOD_CLI = Cod_Cli
mNOME = Nome
mTOTAL_NF = Total_Nf
Select Item
seek mNOTA // nao vou testar se encontrou, presumindo que sim...
do while Nota = Mnota .and. ! eof()
mCOD_PROD = COD_PROD
mQUANT = QUANT
mVALOR_UNIT = VALOR_UNIT
Select Tudo // Recebe os dados
dbappend() // cria registro em branco
replace NOTA with mNOTA
replace FILIAL with mFILIAL
replace COD_CLI with mCOD_CLI
replace COD_PROD with mCOD_PROD
replace QUANT with mQUANT
replace VALOR_UNIT with mVALOR_UNIT
Select Item
skip
enddo
Select Notas
skip
enddo
// Fim
Emerson Krinski
Brasília-DF
Moleza...
:D
Use NTF_ITEM.DBF new alias Item
index on nota to It_01 // para conseguirmos buscar
set index to It_01 // ativar o indice
Use NTF.DBF new alias Notas
Use NTF_TUDO.DBF new alias Tudo
Zap // para ter certeza que estará vazio a fim de receber os dados
Select Notas // apelido dado para este banco de dados...
do while ! eof()
mNOTA = Nota // Variaveis recebem dados do Nota.dbf
mFILIAL = Filial
mCOD_CLI = Cod_Cli
mNOME = Nome
mTOTAL_NF = Total_Nf
Select Item
seek mNOTA // nao vou testar se encontrou, presumindo que sim...
do while Nota = Mnota .and. ! eof()
mCOD_PROD = COD_PROD
mQUANT = QUANT
mVALOR_UNIT = VALOR_UNIT
Select Tudo // Recebe os dados
dbappend() // cria registro em branco
replace NOTA with mNOTA
replace FILIAL with mFILIAL
replace COD_CLI with mCOD_CLI
replace COD_PROD with mCOD_PROD
replace QUANT with mQUANT
replace VALOR_UNIT with mVALOR_UNIT
Select Item
skip
enddo
Select Notas
skip
enddo
// Fim
Emerson Krinski
Brasília-DF
GOSTEI 0
Negluck
06/11/2003
O banco de dados e em DBf, creio que vc utiliza um gerenciador do tipo DB4 ou Mfox se vc nao tiver entre encontato
use (o nome do 3º arquivo)
ai vc vai colocar
append from (o endereço que ter o 1º arquivo)
append from (o endereço que ter o 2º arquivo)
EX: use clifor
append from f:\banco\cliforF.dbf
append from F:\banco\cliforJ.dbf
inde on nota to x
use (o nome do 3º arquivo)
ai vc vai colocar
append from (o endereço que ter o 1º arquivo)
append from (o endereço que ter o 2º arquivo)
EX: use clifor
append from f:\banco\cliforF.dbf
append from F:\banco\cliforJ.dbf
inde on nota to x
GOSTEI 0