Pessoal estou com um problema de conversao de .txt p/ .dbf

Fórum sobre a linguagem CA-Clipper.

Moderador: Moderadores

Avatar do usuário
helio
Usuário Nível 3
Usuário Nível 3
Mensagens: 175
Registrado em: 04 Ago 2004 10:36
Localização: São Bento do Una-PE
Contato:

Pessoal estou com um problema de conversao de .txt p/ .dbf

Mensagem por helio »

Pessoal estou com um problema para converter um arquivo .txt para .dbf o seguinte o arquivo .txt que estou tentando converte e do seguinte formato: ex: PED|01|12|1,2000|21102006|1 os campos estao separados por este caracter | e ja usei APPEND FROM nome Arquivo DELEMITE WITH | ou || ou ´||´ ou (||) e nao deu em nada por isso estou colocando este problema aqui se alguem puder me ajudar ficarei muito agradecido, muito obrigado pela forca Valeu

Helio Beltrao Jr.
helio@hrbinfo.com.br
Avatar do usuário
Clipper
Colaborador
Colaborador
Mensagens: 1334
Registrado em: 23 Ago 2004 00:04
Localização: Recife/PE

Mensagem por Clipper »

Me manda o arquivo que vou ver o que consigo, se não der com o Append From (que eu acho que não dá), eu faço uma rotina para tranferir.

Até logo.

Ps. Mande tb a estrutiura do DBF.

Marcelo mmendeso@gmail.com mmendeso@ig.com.br
Programador que é programador, quando tá de folga vai inventar função nova, fazer testes, ou seja... se divertir
Cobra 210 - Drive de 8" 1.024 KB - 64 KB RAM - Impressora de Linha Cobra - Visicalc - Fortran - Dialog - Sistema Operacional SP/M (é sp/m mesmo - era o cp/m da cobra)
Avatar do usuário
gvc
Colaborador
Colaborador
Mensagens: 1270
Registrado em: 23 Ago 2005 10:57

Mensagem por gvc »

Teste isto:

Neste caso, os campos são separados por ";".
No arquivo HUM é feito uma carga completa do seu arquivo texto.

[hum.dbf - campo1, C, 500, 0]

m_campo := array(15)

hum->(dbgotop())
while !hum->(eof())

@ 20,05 say hum->(recno()) color 'w/r'
afill(m_campo, '')
a12 := alltrim(hum->campo1)
i := 1
a13 := 1
while a13 > 0
a13 := at(';', a12) - 1
m_campo := left(a12, a13)
a12 := substr(a12, a13 + 2)
i++
end

doiz->(dbappend())
doiz->campo1 := m_campo[01]
doiz->CODISERV := val(m_campo[02])
doiz->CMP_ID := m_campo[03]
doiz->PLANO := m_campo[04]
doiz->CNPJ := m_campo[05]
doiz->CEDREQ := m_campo[06]
doiz->BENEFICIAR := m_campo[07]
doiz->SUBSIDIO := m_campo[08]
doiz->ASSINATURA := m_campo[09]
doiz->COMPROVACA := m_campo[10]

hum->(dbskip())
end
"TRS-80/Sincler/Apple/PC - Clipper Winter 85, tlink 1.0 [pc 10 MHz - 640K] {NEZ 8000 2Kb RAM}"
{POG - Programação Orientada a Gambiarra}
Avatar do usuário
helio
Usuário Nível 3
Usuário Nível 3
Mensagens: 175
Registrado em: 04 Ago 2004 10:36
Localização: São Bento do Una-PE
Contato:

Mensagem por helio »

Valeu gvc foi mais ou menos o que consegui fazer Valeu pela forca.

Helio Beltrao
helio@hrbinfo.com.br
Responder