VASCON Posted August 18, 2006 Report Share Posted August 18, 2006 PESSOAL, preciso de ajuda: Porque não estou conseguindo apagar o arquivo LENCA.CDX. com nenhuma das funções abaixo: STATIC FUNCTION APAGA() IF NETUSE("CALEN","LENCA",.T.,10) FERASE("LENCA.CDX") PACK ELSE MsgAlert("Arquivo não Disponivel!", "Aguarde!") ENDIF RETURN .T. STATIC FUNCTION APAGA01() IF NETUSE("CALEN","LENCA",.T.,10) ERASE("LENCA.CDX") PACK ELSE MsgAlert("Arquivo não Disponivel!", "Aguarde!") ENDIF RETURN .T. STATIC FUNCTION APAGA02() IF NETUSE("CALEN","LENCA",.T.,10) DELETE FILE("LENCA.CDX") PACK ELSE MsgAlert("Arquivo não Disponivel!", "Aguarde!") ENDIF RETURN .T. NILSON Quote Link to comment Share on other sites More sharing options...
VASCON Posted August 18, 2006 Author Report Share Posted August 18, 2006 PESSOAL, preciso de ajuda: Porque não estou conseguindo apagar o arquivo LENCA.CDX. com nenhuma das funções abaixo: STATIC FUNCTION APAGA() IF NETUSE("CALEN","LENCA",.T.,10) FERASE("LENCA.CDX") PACK ELSE MsgAlert("Arquivo não Disponivel!", "Aguarde!") ENDIF RETURN .T. STATIC FUNCTION APAGA01() IF NETUSE("CALEN","LENCA",.T.,10) ERASE("LENCA.CDX") PACK ELSE MsgAlert("Arquivo não Disponivel!", "Aguarde!") ENDIF RETURN .T. STATIC FUNCTION APAGA02() IF NETUSE("CALEN","LENCA",.T.,10) DELETE FILE("LENCA.CDX") PACK ELSE MsgAlert("Arquivo não Disponivel!", "Aguarde!") ENDIF RETURN .T. NILSON Quote Link to comment Share on other sites More sharing options...
DougDba Posted August 18, 2006 Report Share Posted August 18, 2006 Ola. Aparentemente esta correto. Os seus CDX´s ficam no mesmo diretorio ? Você consegue exclui-lo fora do sistema ? Ja tentou fechar a tabela que esta linkada a ele ? Abraços Doug FWH / xHarbour 0.99.61 Msn-dba2000@hotmail.com Quote Link to comment Share on other sites More sharing options...
VASCON Posted August 18, 2006 Author Report Share Posted August 18, 2006 Doug Estão no mesmo diretorio. São excluidos fora do sistema. Abs. NILSON Quote Link to comment Share on other sites More sharing options...
DougDba Posted August 18, 2006 Report Share Posted August 18, 2006 Nilson, A Tabela a qual ele se refere (.dbf) esta fechada ? Sds, Doug FWH / xHarbour 0.99.61 Msn-dba2000@hotmail.com Quote Link to comment Share on other sites More sharing options...
VASCON Posted August 18, 2006 Author Report Share Posted August 18, 2006 Doug Esta sim! grato NILSON Quote Link to comment Share on other sites More sharing options...
cendon Posted August 18, 2006 Report Share Posted August 18, 2006 Tente sintax antiga: delete file arquivo.cdx Abençoados sejam os pessimistas, eles fizeram backups!! Angelo Cendon cendon.angelo@gmail.com Belo Horizonte-MG Fivewin 2.4 - Harbour 41.0 - @ l,c Workshop Quote Link to comment Share on other sites More sharing options...
VASCON Posted August 19, 2006 Author Report Share Posted August 19, 2006 Angelo Também não apaga grato NILSON Quote Link to comment Share on other sites More sharing options...
Valdir Posted August 19, 2006 Report Share Posted August 19, 2006 Olá... Na pasta de trabalho existem outros arquivos que você consegue apagá-los normalmente ? Caso consiga apagar os outros indices e somente esse não, tente fechá-lo antes de iniciar a função para apagar. exemplo : close "SEU ALIAS" e em seguida faça a chamada da função... Caso o arquivo esteja na mesma pasta, porém não consegue apagá-lo, pode estar faltando a chamada "# Include Directry.ch" no inÃcio do seu .prg um abraço Valdir - Jundiaà - S.P. FW23/CLIP52E/BLINKER7 Quote Link to comment Share on other sites More sharing options...
VASCON Posted August 19, 2006 Author Report Share Posted August 19, 2006 Existe alguma outra possibilidade? Nenhuma das alternativas deu certo. grato NILSON Quote Link to comment Share on other sites More sharing options...
pauloaraujo Posted August 19, 2006 Report Share Posted August 19, 2006 Nilson, tudo bem?? Verifique se esse Ãndice não está com atributo de somente leitura. Outra coisa, atualize seu perfil, pois, se você utilizar FW + Clipper 5.2 e não colocar o TAG na hora de indexar, a extensão seria .IDX, portanto o comando seria ERASE LENCA.IDX. Faça um teste: IF FILE("LENCA.CDX") .OR. FILE("LENCA.IDX") ERASE LENCA.CDX ERASE LENCA.IDX IF FILE("LENCA.CDX") .OR. FILE("LENCA.IDX") ? "O arquivo existe mas não consegui deletar" ELSE ? "Consegui deletar" ENDIF ELSE ? "O erro provavelmente é de PATH" ENDIF id=code>id=code>Retorne que mensagem deu. Um abraço Editado por - pauloaraujo on 19/08/2006 14:40:53 Quote Link to comment Share on other sites More sharing options...
cendon Posted August 19, 2006 Report Share Posted August 19, 2006 crie um pequeno programa a parte e tente dentro dele matar os arquivos de indices, se voce conseguir, com certeza voce tem uma rotina qualquer bloqueando o arquivo dentro do seu outro programa. Abençoados sejam os pessimistas, eles fizeram backups!! Angelo Cendon cendon.angelo@gmail.com Belo Horizonte-MG Fivewin 2.4 - Harbour 41.0 - @ l,c Workshop Quote Link to comment Share on other sites More sharing options...
cendon Posted August 19, 2006 Report Share Posted August 19, 2006 Uma outra coisa o windows xp costuma criar arquivos com nomes contendo espaco Ex:arq1 .cdx e nao arq1.cdx no dos voce consegue matar porque a rotina do DOS retirar os espaços por compatibilidade, so que dentro do FW estes espaços existem e diferenciam os arquivos. Abençoados sejam os pessimistas, eles fizeram backups!! Angelo Cendon cendon.angelo@gmail.com Belo Horizonte-MG Fivewin 2.4 - Harbour 41.0 - @ l,c Workshop Quote Link to comment Share on other sites More sharing options...
LUIS1361303120 Posted August 19, 2006 Report Share Posted August 19, 2006 Eu faco assim, sera que ajuda.. * OBS: Apaga todos os arquivos do disco com a extensao .NTX AEVAL(DIRECTORY(cdir+"\dados\*.ntx"), { |aFichero| FERASE(cDir+"\dados\"+aFichero[1]) }) AEVAL(DIRECTORY(cdir+"\*.txt"), { |aFichero| FERASE(cDir+"\"+aFichero[1]) }) AEVAL(DIRECTORY(cdir+"\*.bak"), { |aFichero| FERASE(cDir+"\"+aFichero[1]) }) AEVAL(DIRECTORY(cdir+"\dados\*.idx"), { |aFichero| FERASE(cDir+"\dados\"+aFichero[1]) }) AEVAL(DIRECTORY(cdir+"\dados\*.cdx"), { |aFichero| FERASE(cDir+"\dados\"+aFichero[1]) }) AEVAL(DIRECTORY(cdir+"\*.cdx"), { |aFichero| FERASE(cDir+"\"+aFichero[1]) }) AEVAL(DIRECTORY(cdir+"\LADP*.DOC"), { |aFichero| FERASE(cDir+"\"+aFichero[1])}) AEVAL(DIRECTORY(cdir+"\*.bat"), { |aFichero| FERASE(cDir+"\"+aFichero[1])}) luis antonio SSP/MG Quote Link to comment Share on other sites More sharing options...
pauloaraujo Posted August 19, 2006 Report Share Posted August 19, 2006 Gente, O problema não é de comando. A rotina dele mesmo está certa. Só tem 4 opções: 1ª) o Ãndice está aberto 2ª) está com atributo de somente leitura 3ª) não está no PATH 4ª) nome incorreto (LENCA.CDX) Quote Link to comment Share on other sites More sharing options...
VASCON Posted August 19, 2006 Author Report Share Posted August 19, 2006 Através da função abaixo houve reconhecimento do arquivo LENCA.CDX STATIC FUNCTION APAGA() IF FILE("LENCA.CDX") MsgAlert("Arquivo Localizado!", "Aguarde!") ENDIF RETURN .T. com esse teste ficam eliminadas as possibilidades: a)erro de diretorio b)extenção IDX c)espaço criado pelo XP Verificando as propriedades do arquivo: a)não está com atributo somente de leitura em atributos avançados, está habilitado: a) arquivo está pronto para ser arquivado indexar o arquivo com serviço de indexação para agilizar a pesquisa Obrigado a todos pela atenção NILSON Quote Link to comment Share on other sites More sharing options...
personal Posted August 19, 2006 Report Share Posted August 19, 2006 Este problema simplesmente aconteceu, o aconteceu depois de um travamento, saÃda brusca do sistema, queda de energia. Oliveira, Sérgio A. PERSONAL Comp. e Sitemas.id=green> Lins - SP ** sergio@personal.com.br FWH 2.5, xharbour 0.99.4, SqlLib, MySql, brMake. TWBrowse(),C5Menu,vPrinter Quote Link to comment Share on other sites More sharing options...
VASCON Posted August 19, 2006 Author Report Share Posted August 19, 2006 SERGIO: Não houve nada de extraordinário: queda de energia, saida brusca do sistema, queda de energia, travamento, ... grato pela atenção NILSON Quote Link to comment Share on other sites More sharing options...
personal Posted August 20, 2006 Report Share Posted August 20, 2006 Este arquivo esta em maquina local, servidor (tipo ??). Agora entramos no campo das tentativas, para poder descobrir. Oliveira, Sérgio A. PERSONAL Comp. e Sitemas.id=green> Lins - SP ** sergio@personal.com.br FWH 2.5, xharbour 0.99.4, SqlLib, MySql, brMake. TWBrowse(),C5Menu,vPrinter Quote Link to comment Share on other sites More sharing options...
VASCON Posted August 20, 2006 Author Report Share Posted August 20, 2006 SÉRGIO: Máquina local Olhe que interessante: testei a função abaixo e também não apagou: STATIC FUNCTION APAGA() AEVAL(DIRECTORY("C:\ANS\&DICO\LENCA.CDX"),{|aFile| FErase("C:\ANS\&DICO\"+aFile[1])}) IF FILE("LENCA.CDX") MsgAlert("Arquivo não Excluido!", "Atencao!") ELSE MsgAlert("Arquivo Excluido!", "Atencao!") ENDIF RETURN .T. NILSON Quote Link to comment Share on other sites More sharing options...
Anthony Ormond Posted March 8, 2008 Report Share Posted March 8, 2008 Bom dia!!!! Eu estou passando por esse problema em um cliente. Não consigo eliminar o CDX, já testei todas as posibilidades deste tópico e não consegui resolver. No mesmo cliente tem dois computadores, um atualiza normalmente e o servidor não consegue apagar o Ãndice. Pelo DOS consigo apagar. O que pode estar causando isso? Desde já, Obrigado. Anthony Ormond FWH(7.12)- xHabour 1.1.0 (simplex) - Pelles C 4.50 - xDev Studio v0.65 Quote Link to comment Share on other sites More sharing options...
aferra Posted March 8, 2008 Report Share Posted March 8, 2008 Olá Antony, blz? eu utilizo desta forma e funciona perfeitamente, inclusive pela rede, que não recomendo. AEVAL(DIRECTORY("DADOS\*.cdx"),{|aFile| FErase("DADOS\"+aFile[1])}) Alessandroid=blue> FW20d+CL53b+Blk7+@Say+CDX "Aceita o conselho dos outros, mas nunca desistas da tua própria opinião"id=red> Quote Link to comment Share on other sites More sharing options...
Daniel Lopes Filho Posted March 8, 2008 Report Share Posted March 8, 2008 teste o ferase If FErase ( ".\indices\" + aDir[ nContador , F_NAME] ) == -1 msgStop( "erro ao processar arquivo chame o suporte técnico" _CR_ + ) + FError() , "ERRO") __QUIT() EndIf ****** xharbour 1.1.0 + gtwvw + dbfcdx fw 8.01+borland resouce workshop/fw pcc USANDO GTWVW + FW JUNTO .... msn..: zazibr@hotmail.com skype: zazibr Daniel lopes Filho Campo Grande/MS Quote Link to comment Share on other sites More sharing options...
daniel_halon Posted March 8, 2008 Report Share Posted March 8, 2008 STATIC FUNCTION APAGA() IF NETUSE("CALEN","LENCA",.T.,10)****Aqui não esta em uso? FERASE("LENCA.CDX") id=code>id=code>Eu acho que a DBF esta aberta daniel_halon@portobakers.com.br FiveWin xHarbour 0.99.71 Pelles C. A vida esta feita de pequenos momentos de felicidade, o resto e pura luta. Quote Link to comment Share on other sites More sharing options...
jdmoura Posted March 8, 2008 Report Share Posted March 8, 2008 Ola VASCON! Tente essa aqui pois esta funcionando perfeitamente sem nenhum problema. Ah! verifica para onde está apontando o seu Path quando vc abre o seu sistema pois o mesmo deve estar apontando para a pasta que está os DBF e os CDX. Outra coisa todos os DBFs devem estar fechados Close ALL. #include "FiveWin.ch" #Include "Directry.Ch" // Para Manipular o Diretorio #Include "Ord.Ch" // Para Utilizar SCOPES, é Necessário o Arquivo Ord.Ch extern Set EXTERNAL DESCEND REQUEST DBFCDX function cadaorga LOCAL bAction bAction:={ | oMeter, otext, oDlg, lEnd | Reorganizar( oMeter, oText, oDlg, @lEnd )} MsgMeter(bAction,"Preparando...","Reorganização da Base de Dados") RETURN //************************************************************************************ STATIC FUNCTION Reorganizar(oMeter,oText,oDlg,lEnd, lErase) //************************************************************************************ default lErase:= .t. if lErase Ferase("\OFICINA\DADOS\ACTP.cdx") Ferase("\OFICINA\DADOS\FOR.cdx") Ferase("\OFICINA\DADOS\Cli1.cdx") Ferase("\OFICINA\DADOS\Mec1.cdx") Ferase("\OFICINA\DADOS\Mao1.cdx") Ferase("\OFICINA\DADOS\Pro1.cdx") Ferase("\OFICINA\DADOS\Vei1.cdx") Ferase("\OFICINA\DADOS\Mov1.cdx") Ferase("\OFICINA\DADOS\PgF1.cdx") Ferase("\OFICINA\DADOS\Ope1.cdx") Ferase("\OFICINA\DADOS\Ctr1.cdx") Ferase("\OFICINA\DADOS\Tab1.cdx") Ferase("\OFICINA\DADOS\Mob1.cdx") Ferase("\OFICINA\DADOS\Ite1.cdx") Ferase("\OFICINA\DADOS\Pgb1.cdx") Ferase("\OFICINA\DADOS\Tmo1.cdx") Ferase("\OFICINA\DADOS\PgP1.cdx") Ferase("\OFICINA\DADOS\Sen1.cdx") endif *ERASE OFICINA\DADOS\*.CDX oText:setText("Reorganizando Fornecedores") IF !ABREARQ('FORNECE',.T.) CLOSE ALL RETURN ELSE index on fornece->NOME TAG ALF_FOR TO For1 ; EVAL ( oMeter:Set( RecNo() ), CursorWait(), SysRefresh() ) EVERY 10 index on fornece->CGC TAG CGC_FOR TO For1 ; EVAL ( oMeter:Set( RecNo() ), CursorWait(), SysRefresh() ) EVERY 10 index on fornece->Codigo TAG COD_FOR TO For1 ; EVAL ( oMeter:Set( RecNo() ), CursorWait(), SysRefresh() ) EVERY 10 index on fornece->NomeFan TAG FAN_FOR TO For1 ; EVAL ( oMeter:Set( RecNo() ), CursorWait(), SysRefresh() ) EVERY 10 ENDIF lEnd:=.T. RETURN Nil ************************************************************** id=code>id=code>Um clipperAbraço jdmoura Jdemourasilva@yahoo.com.br Londrina - Paraná Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.