General information
Category:
Coding, syntax & commands
Title:
Database is using table ?
I used "select 0" for many years in code below with free tables
Now I added my tables to a database and get error "table in use" if I run the code
if I remove "select 0" problem does not happen
What code can I write instead of select 0 ?
(this is a program, not a forma method)
***********************************************
conta_erro = 0
N_ERRO = 0
* set excl on
STORE SYS(5) + curdir() + "dados" TO MyIntoPath && diretorio atual
lcAppendIntoPath = ADDBS(myIntoPath)
lnNumTables = ADIR(aTables,lcAppendIntoPath+"*.dbf")
*CLOSE DATA
SELECT 0 &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& Here is the problem
FOR I = 1 TO lnNumTables
*= MESSAGEBOX (lcAppendIntoPath+aTables[i,1])
TRY
*SELECT * FROM (lcAppendIntoPath+aTables[i,1]) INTO CURSOR TMP1
*use
USE (lcAppendIntoPath+aTables[i,1])
CATCH TO oErr
n_erro = oErr.ErrorNo
= MESSAGEBOX (lcAppendIntoPath+aTables[i,1] + " " + STR( N_ERRO))
IF N_ERRO # 0
conta_erro = conta_erro + 1 && se tiver erro vai acumulando pois passa aqui várias vezes
ENDIF
DO CASE
CASE n_erro = 15
= MESSAGEBOX ("TABELA CORROMPIDA ERR0 15: " )
CASE n_erro = 41
= MESSAGEBOX ("TABELA SEM FTP: ")
CASE n_erro = 1707 && corrompida, fpt, sem CDX
= MESSAGEBOX ("TABELA SEM CDX: ")
CASE n_erro = 114 && corrompida, fpt, sem CDX
= MESSAGEBOX ("TABELA NÃO CONFERE COM O CDX: " )
CASE n_erro = 2091 && corrompida, fpt, sem CDX
= MESSAGEBOX ("TABELA CORROMPIDA ERRO 2091 :" )
THISFORM.Refresh
OTHERWISE
ENDCASE
ENDTRY
ENDFOR
CLOSE DATABASES
if conta_erro # 0 && SE TIVER ERROS
DO case
CASE n_erro = 15 OR n_erro = 41 OR n_erro = 1707 OR n_erro = 114 OR n_erro = 2091
= MESSAGEBOX("Os dados estao corrompidos. Recomendamos enviar a pasta dados para ser analisada. Ou restaure do backup")
other
= MESSAGEBOX ("Erro: " + STR (N_ERRO)+ " Se houver outra instância do software aberta na mesma máquina ou em rede, vá até o menu principal do outro programa que está aberto e clique em opçoes e depois em fechar arquivos.Se o problema persistir informe o erro ao nosso suporte ")
SET EXCLUSIVE OFF
other
ENDCASE
ELSE
ENDIF
SET EXCLUSIVE OFF
Next
Reply
View the map of this thread
View the map of this thread starting from this message only
View all messages of this thread
View all messages of this thread starting from this message only