 |
|  |
 |
Close Databases All
Set Default To ?
mdata = Getfile(\\\'DBC\\\',\\\'Database to open:\\\')
Open Database (mdata)
lDisp = .T.
nTotal_R = Adbobjects(aAll_Relations,\\\"Relation\\\")
If nTotal_R > 0
For nr = 1 To nTotal_R
Wait Window Nowait \\\"Check \\\"+Upper(Alltrim(aAll_Relations[nr,1]))+;
\\\" >--+ \\\"+Upper(Alltrim(aAll_Relations[nr,2]))+\\\" integrity.\\\"
cAlias = aAll_Relations[nr,1]
If !Used(cAlias)
Use &cAlias In 0
Endif
cAliasP = aAll_Relations[nr,2]
If !Used(cAliasP)
Use &cAliasP In 0
Select &cAliasP
Else
Select &cAliasP
Endif
Set Order To Tag &aAll_Relations[nr,4]
Select &cAlias
nallr = Reccount()
ncheck = 0
nTagCo=Tagcount()
For nt = 1 To nTagCo
If Upper(Alltrim(Tag(nt)))=Upper(Alltrim(aAll_Relations[nr,3]))
mIndExpr=Sys(14,nt)
Exit
Endif
Next nt
Scan
ncheck = ncheck + 1
mv = &mIndExpr &&&aAll_Relations[nr,3]
Select &cAliasP
Seek mv
If !Found()
Select &cAlias
Delete
If Type(\\\'mv\\\')=\\\'N\\\'
cmv = Str(mv)
Else
cmv = mv
Endif
If lDisp
nans = Messagebox( Alltrim(aAll_Relations[nr,3])+\\\'=\\\'+Alltrim(cmv)+;
\\\' was not matched in \\\'+Alltrim(aAll_Relations[nr,2])+;
\\\' and deleted. Display message again?\\\',4+32)
If nans = 6
lDisp = .F.
Endif
Endif
Endif
Wait Window Nowait Alltrim(Str(nr))+\\\" of \\\"+;
ALLTRIM(Str(nTotal_R))+\\\" relations. Check \\\"+;
Upper(Alltrim(aAll_Relations[nr,1]))+;
\\\" >--+ \\\"+Upper(Alltrim(aAll_Relations[nr,2]))+;
\\\" integrity ( by \\\"+Alltrim(mIndExpr)+\\\" ) : \\\";
+Alltrim(Str(ncheck))+;
\\\" of \\\"+Alltrim(Str(nallr))+\\\" records checked.\\\"
Select &cAlias
Endscan
Next nr
Endif
|
|
 |
|  |
|