Jump to content
Fivewin Brasil

APAGAR CDX


VASCON

Recommended Posts

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

Link to comment
Share on other sites

  • Replies 60
  • Created
  • Last Reply

Top Posters In This Topic

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

Link to comment
Share on other sites

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

Link to comment
Share on other sites

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

assinatpaulo.jpg

Editado por - pauloaraujo on 19/08/2006 14:40:53

Link to comment
Share on other sites

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

Link to comment
Share on other sites

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

Link to comment
Share on other sites

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

Link to comment
Share on other sites

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

B) indexar o arquivo com serviço de indexação para agilizar a pesquisa

Obrigado a todos pela atenção

NILSON

Link to comment
Share on other sites

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

Link to comment
Share on other sites

  • 1 year later...

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

Link to comment
Share on other sites

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>

Link to comment
Share on other sites

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

Link to comment
Share on other sites

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á

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

×
×
  • Create New...