Clipper 5.02 com DBFCDX
Moderador: Moderadores
-
tidao.baccan
- Usuário Nível 1

- Mensagens: 6
- Registrado em: 28 Jul 2014 12:03
- Localização: Mirassol/SP
Clipper 5.02 com DBFCDX
Ola
Por conveniencia rodo meu programa em Clipper 5.02 a tempos. funciona muito bem. Porem agora os NTX estão muito grandes. Tentei colocar o comando:
REQUEST DBFCDX
RDDSETDEFAULT("DBFCDX")
Porem dá erro: Syntax Erro c2001, e não tem o arquivo DBFCDX na pasta LIB. Copie um LIB DBFCDX de outra versão do Clipper a 5.2, porem tambem não funcionou.
Tento compilar com o 5.2 e alguns fontes dão o erro de Fatal C3049 String space exhausted
O que faço para resolver.
Obrigado
Por conveniencia rodo meu programa em Clipper 5.02 a tempos. funciona muito bem. Porem agora os NTX estão muito grandes. Tentei colocar o comando:
REQUEST DBFCDX
RDDSETDEFAULT("DBFCDX")
Porem dá erro: Syntax Erro c2001, e não tem o arquivo DBFCDX na pasta LIB. Copie um LIB DBFCDX de outra versão do Clipper a 5.2, porem tambem não funcionou.
Tento compilar com o 5.2 e alguns fontes dão o erro de Fatal C3049 String space exhausted
O que faço para resolver.
Obrigado
- jairfab
- Usuário Nível 3

- Mensagens: 252
- Registrado em: 21 Mai 2007 09:43
- Localização: São Paulo, Região Leste - Suzano
Clipper 5.02 com DBFCDX
Para resolver este problema eu compilei todos os sistemas versão clipper em xharbour.
Para isto alteirei apenas o fonte do prg principal incluindo: function main() no inicio do programa.
Para isto alteirei apenas o fonte do prg principal incluindo: function main() no inicio do programa.
Delpji 7, harbour 3.2, xharbour 1.2.3, Bcc7, Minigw, Minigui 19.11, hwgui 2.20, FiveWin 19.05 Gtwvw, Gtwvg, C# VS 2017
-
tidao.baccan
- Usuário Nível 1

- Mensagens: 6
- Registrado em: 28 Jul 2014 12:03
- Localização: Mirassol/SP
Clipper 5.02 com DBFCDX
Não sei se o sistema do colega que iniciou o tópico tem arquivos do tipo .DBT para os campos "memo".
Se os tiver, o padrão de índices .IDX ou .CDX exigem que os arquivos .DBT sejam convertidos para .FPT.
Em 27.03.2011, enviei para a seção DOWNLOADS deste fórum, um utilitário que faz a conversão, procure-o com o nome MUDADBT.
A única sugestão que faça primeiro uma cópia de todos os seus arquivos, pois o executável trabalhará com todos os arquivos .DBT que houver no drive e pasta
informados e procurará o seu .DBF correspondente.
Como na época somente enviei o executável, para que possa(m) saber como o mesmo funciona, anexo abaixo o seu fonte:
Se os tiver, o padrão de índices .IDX ou .CDX exigem que os arquivos .DBT sejam convertidos para .FPT.
Em 27.03.2011, enviei para a seção DOWNLOADS deste fórum, um utilitário que faz a conversão, procure-o com o nome MUDADBT.
A única sugestão que faça primeiro uma cópia de todos os seus arquivos, pois o executável trabalhará com todos os arquivos .DBT que houver no drive e pasta
informados e procurará o seu .DBF correspondente.
Como na época somente enviei o executável, para que possa(m) saber como o mesmo funciona, anexo abaixo o seu fonte:
Código: Selecionar todos
local cores := setcolor()
local i,cntarq
local option,file
request dbfcdx
rddsetdefault("dbfcdx")
dbsetdriver("dbfcdx")
set scoreboard off
set date brit
set century on
driv := "d:\"
diret := curdir()
private farq, fant, fnovo
setcolor("w+/b,g+/n,,bg+b")
drive := "d:\"
direto := curdir()
direto += space(30)
clear
text
Esta rotina mudar todos os arquivos do formato .DBT para o formato .FTP
para uso com o RDD DBFCDX e uso de ¡ndices .CDX/IDX.
Para isso, informar o diret¢rio e pasta onde se encontram tais arquivos.
O sistema abre uma janela com os arquivos .DBT encontrados.
Ap¢s selecionar esse arquivo, ele far todas as modifica‡äes necess rias.
Como o processo ‚ por gera‡Æo de estrutura e c¢pia de arquivos, o tempo
de processamento pode variar em fun‡Æo do tamanho do arquivo tratado.
Quando retornar … janela, o arquivo .DBT tratado nÆo aparecer mais.
Somente utilizar esta rotina ap¢s ter feito c¢pia dos seus arquivos.
NÆo utilizar esse arquivo em rede, e nem com terminais abertos.
A rotina nÆo verificar nem alterar nenhum arquivo de ¡ndices.
A gera‡Æo de novos ¡ndices ficar por conta de sua aplica‡Æo.
Coloque o execut vel em:
- drive: C:
- Pasta: Arquivos de programas\MudarDbt
endtext
inkey(0)
do while .t.
@ 0,0 clear to 23,79
@ 0,0 to 23,79 double
@ 1,10 say "[ MUDAN€A DE ARQUIVOS .DBT PARA .FPT ]"
@ 3,2 say "Drive atual dos arquivos: " get drive ;
pict "@!" valid ! empty("drive")
read
if lastkey() == 27
clear
return
endif
@ 4,2 say "Diret¢rio atual: " get direto pict "@!Ks40" ;
valid ! empty(direto)
read
direto := alltrim(direto)
drdir := drive + direto + "\"
@ 5,2 say "Path selecionado: " + alltrim(drdir)
sn := "S"
@ 7,2 say "Confirma os dados acima ? <SN>" get sn pict "@!" valid sn $ "SN"
read
if sn == "N"
loop
endif
! &drive.
! cd\
! cd &direto.
private dbt_arq[adir("*.dbt")]
cntarq := adir("*.dbt", dbt_arq)
if cntarq == 0
@ 24,0 say "NÆo existem arquivos DBTs nessa pasta! "
inkey(0)
@ 24,0
! &driv.
! cd\
! cd &diret.
direto += space(40)
direto := left(direto,40)
loop
endif
do while (.t.)
close databases
@ 3,2 clear to 7,77
private dbt_arq[adir("*.dbt")]
@ 2,1 to 2,78
@ 4,35 to 17,44 double
@ 4,38 say "DBTs"
cntarq := adir("*.dbt", dbt_arq)
for i := 1 to cntarq
pospto := at(".", dbt_arq[i])
dbt_arq[i] := substr(substr(dbt_arq[i], 1, pospto - 1) + ;
space(8),1,8)
next
option := achoice(5,36,16,43,dbt_arq)
if (option == 0)
exit
endif
@ 1,1 clear to 20,79
farq := trim(substr(dbt_arq[option],1,8)) + ".dbt"
fnovo := trim(substr(dbt_arq[option],1,8)) + ".fpt"
fant := trim(substr(dbt_arq[option],1,8)) + ".dbf"
if file(fnovo)
@ 24,0 say "O arquivo DBT j foi modificado para FPT"
inkey(0)
@ 24,0
loop
endif
if ! file(fant)
@ 24,0 say "NÆo existe o arquivo DBF correspondente a esse DBT !"
inkey(0)
@ 24,0
delete file (farq)
loop
endif
file := drdir + fant
mud_dbt(file)
enddo
direto := direto + space(40)
direto := left(direto,40)
! &driv.
! cd\
! cd &diret.
enddo
setcolor(cores)
return nil
PROCEDURE mud_dbt(fdbf)
cls
select 1
use (fdbf) via "dbfntx"
nreg_ant := lastrec()
copy struc to novo_arq
@ 24,0 say "Aguarde. Copiando para GuardaDB.."
copy to guardadb
close
@ 24,0
select 2
use novo_arq via "dbfcdx"
ndbf := "novo_arq.dbf"
nfpt := "novo_arq.fpt"
@ 24,0 say "Aguarde. Adicionando do GuardaDB.." + ndbf
append from guardadb
nreg_atu := lastrec()
if str(nreg_ant,8) == str(nreg_atu,8)
erase(fdbf)
erase(farq)
endif
close
rename (ndbf) to (fant)
rename (nfpt) to (fnovo)
select 2
use (fant) via "dbfcdx"
close databases
@ 24,0 O bom do computador é que ele resolve os problemas, sem nunca levantar nenhum.
Hoje atuo mais com Clipper 52E, e um pouquinho com XHarbour.
Hoje atuo mais com Clipper 52E, e um pouquinho com XHarbour.
-
tidao.baccan
- Usuário Nível 1

- Mensagens: 6
- Registrado em: 28 Jul 2014 12:03
- Localização: Mirassol/SP
Clipper 5.02 com DBFCDX
Companheiro...
Não uso DBT. Não uso Memo.
Ou seja, não seria esse o motivo para o erro. Será que o CDX não é compativel com Clipper 5.02 ?
Obrigado
Não uso DBT. Não uso Memo.
Ou seja, não seria esse o motivo para o erro. Será que o CDX não é compativel com Clipper 5.02 ?
Obrigado
- Jairo Maia
- Moderador
- Mensagens: 2785
- Registrado em: 16 Ago 2010 13:46
- Localização: Campinas-SP
Clipper 5.02 com DBFCDX
Olá tidao.baccan,
Você precisa atualizar sua versão para a versão 5.2e. Me lembro que já passei algumas vezes o link no site do colega Maligno (um colaborador aqui do fórum), que tinha essa versão no site dele, mas perdi.
Sim. Sua versão não comporta outro RDD além do DBF/NTX.tidao.baccan escreveu:Tentei colocar o comando:
REQUEST DBFCDX
RDDSETDEFAULT("DBFCDX")
Porem dá erro: Syntax Erro c2001
Aqui acho que você quiz dizer 5.02. Esse problema foi solucionado a partir da versão 5.2e, a última lançada pela CA-Clipper antes da versão 5.3. Ele ocorre quando você tem um .PRG muito grande, uma solução para sua versão deste caso seria você dividir seus .PRGs em tamanho menor. Este erro nas versões anteriores a 5.2e também ocorre quando você tem linha com mais de 128 bytes (caracteres), como uma mensagem por exemplo.tidao.baccan escreveu:Tento compilar com o 5.2 e alguns fontes dão o erro de Fatal C3049 String space exhausted
Sinto muito decepcioná-lo, Não é! Somente a partir da versão 5.2 você pode usar outros RDDs.tidao.baccan escreveu:Será que o CDX não é compativel com Clipper 5.02 ?
Você precisa atualizar sua versão para a versão 5.2e. Me lembro que já passei algumas vezes o link no site do colega Maligno (um colaborador aqui do fórum), que tinha essa versão no site dele, mas perdi.
Abraços, Jairo
Harbour / Clipper 5.2e - Blinker 7
(Não respondo dúvidas por MP ou E-mail. Por favor, não encaminhe via mensagem privada ou e-mail, dúvidas que podem ser compartilhadas com todos no fórum)
Harbour / Clipper 5.2e - Blinker 7
(Não respondo dúvidas por MP ou E-mail. Por favor, não encaminhe via mensagem privada ou e-mail, dúvidas que podem ser compartilhadas com todos no fórum)
-
alxsts
- Colaborador

- Mensagens: 3092
- Registrado em: 12 Ago 2008 15:50
- Localização: São Paulo-SP-Brasil
Clipper 5.02 com DBFCDX
Olá!
Seja bem-vindo ao fórum, Tiddao!
Poderia confirmar a versão do Clipper que você usa? Versão 5.02? Conheço 5.0, 5.01 e depois vieram 5.2 e 5.3...
Seja bem-vindo ao fórum, Tiddao!
Poderia confirmar a versão do Clipper que você usa? Versão 5.02? Conheço 5.0, 5.01 e depois vieram 5.2 e 5.3...
[]´s
Alexandre Santos (AlxSts)
Alexandre Santos (AlxSts)
- Toledo
- Administrador

- Mensagens: 3133
- Registrado em: 22 Jul 2003 18:39
- Localização: Araçatuba - SP
- Contato:
Clipper 5.02 com DBFCDX
Tem aqui na seção de downloads: https://pctoledo.org/forum/fileba ... t=c&page=1Jairo Maia escreveu:Me lembro que já passei algumas vezes o link no site do colega Maligno (um colaborador aqui do fórum), que tinha essa versão no site dele, mas perdi.
Abraços,
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
-
tidao.baccan
- Usuário Nível 1

- Mensagens: 6
- Registrado em: 28 Jul 2014 12:03
- Localização: Mirassol/SP
Clipper 5.02 com DBFCDX
Verdade.
Clipper 5.01
Vou tentar o Clipper 5.2e como o amigo Jairo Maia me recomendou.
Agradeço a todos a força.
Muito obrigado por enquanto.
Clipper 5.01
Vou tentar o Clipper 5.2e como o amigo Jairo Maia me recomendou.
Agradeço a todos a força.
Muito obrigado por enquanto.
- rochinha
- Administrador

- Mensagens: 4664
- Registrado em: 18 Ago 2003 20:43
- Localização: São Paulo - Brasil
- Contato:
Clipper 5.02 com DBFCDX
Amiguinhos,
tiddao.baccan, tenho certeza de saber de sua existencia de outro lugar, a tempos. Ou voce se recadastrou aqui recentemente, novamente.
Em todo caso vejamos o seu problema.
voce relata:
Com RTlink ele te mantém engessado nos 640 iniciais de memória enquanto que nos dois que citei são criados espaço maiores de uso de memória para trabalho.
Caso queira testas um ambiente de trabalho sem muita dor de cabeça, baixe meu ambiente aqui
Baixe o arquivo, crie uma pasta no seu drive C: chamada DEV4DOS ficando C:\DEV4DOS e arraste o conteudo do arquivo compactado para dentro dela, ficando:
C:\DEV4DOS
----Clipper
----DOSBox-0.72
----FiveDOS
----Output
Na pasta C:\DEV4DOS tem um atalho chamado Fivewin SDK DOS, execute-o e espere o DOSBox configurar e te jogar dentro do prompt de comando.
Se tudo correr bem voce será jogado na pasta C:\DEV4DOS\FIVEDOS\SAMPLES e nela possui um lote de nome BUILDH.BAT.
Este lote mostra toda configuração necessária para compilar em Clipper com BLinker. Para testar basta comandar BUILDH TUTOR01, BUILDH TUTOR02, etc.
O ambiente possui a FiveDOS, uma biblioteca muito antiga e não deve levar em consideração a inclusão dela para resolver o seu problema, mas entenda que a intalação do ambiente é apenas para te apresentar o uso.
Bom trabalho.
tiddao.baccan, tenho certeza de saber de sua existencia de outro lugar, a tempos. Ou voce se recadastrou aqui recentemente, novamente.
Em todo caso vejamos o seu problema.
voce relata:
Isto tem referencia a memória e com certeza em seu Clipper voce usa o RTlink. Passando a usar versões como 5.2 em diante(a melhor é 5.3e) voce deva passar a usar Blinker ou EXOspace.Fatal C3049 String space exhausted
Com RTlink ele te mantém engessado nos 640 iniciais de memória enquanto que nos dois que citei são criados espaço maiores de uso de memória para trabalho.
Caso queira testas um ambiente de trabalho sem muita dor de cabeça, baixe meu ambiente aqui
Baixe o arquivo, crie uma pasta no seu drive C: chamada DEV4DOS ficando C:\DEV4DOS e arraste o conteudo do arquivo compactado para dentro dela, ficando:
C:\DEV4DOS
----Clipper
----DOSBox-0.72
----FiveDOS
----Output
Na pasta C:\DEV4DOS tem um atalho chamado Fivewin SDK DOS, execute-o e espere o DOSBox configurar e te jogar dentro do prompt de comando.
Se tudo correr bem voce será jogado na pasta C:\DEV4DOS\FIVEDOS\SAMPLES e nela possui um lote de nome BUILDH.BAT.
Este lote mostra toda configuração necessária para compilar em Clipper com BLinker. Para testar basta comandar BUILDH TUTOR01, BUILDH TUTOR02, etc.
O ambiente possui a FiveDOS, uma biblioteca muito antiga e não deve levar em consideração a inclusão dela para resolver o seu problema, mas entenda que a intalação do ambiente é apenas para te apresentar o uso.
Bom trabalho.
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para [url=mailto://fivolution@hotmail.com]fivolution@hotmail.com[/url]. Agradecido.
@braços : ? )
A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
@braços : ? )
A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
Clipper 5.02 com DBFCDX
Se for continuar em clipper aconselho a usar o NSX
REQUEST SIXNSX
RDDSETDEFAULT("SIXNSX")
Uso a anos e não tinve problemas, pode usar indices compostos e tudo mais.
REQUEST SIXNSX
RDDSETDEFAULT("SIXNSX")
Uso a anos e não tinve problemas, pode usar indices compostos e tudo mais.
