Readme

You might also like

Download as txt, pdf, or txt
Download as txt, pdf, or txt
You are on page 1of 3

***************************************************************************** *!* *!* *!* ATFixDbfFpt 1.3 repairs invalid *!* *!

* dbc, dbf, frx, lbx, mnx, pjx, scx, vcx (or user defined xBase) *!* *!* and memo file headers *!* *!* *!* *!* FoxBASE, FoxBASE+, dBASE III PLUS, FoxPro, dBaseIV and *!* *!* Visual FoxPro version 3.0 - 7.x type table and memo files supported. *!* *!* *!* *!* This version can't fix table / memo if table field block is *!* *!* corrupted! *!* *!* *!* *!* Copyright (C) 2001 Arto Toikka. *!* *!* *!* *!* This library is free software; you can redistribute it and/or *!* *!* modify it under the terms of the GNU Library General Public *!* *!* License as published by the Free Software Foundation; either *!* *!* version 2 of the License, or any later version. *!* *!* *!* *!* This library is distributed in the hope that it will be useful, *!* *!* but WITHOUT ANY WARRANTY; without even the implied warranty of *!* *!* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *!* *!* Library General Public License for more details. *!* *!* *!* *!* You should have received a copy of the GNU Library General Public *!* *!* License along with this library; if not, write to the *!* *!* Free Software Foundation, Inc., 59 Temple Place - Suite 330, *!* *!* Boston, MA 02111-1307, USA. You can get it also at: *!* *!* http://www.gnu.org/copyleft/library.html#SEC3 *!* *!* *!* *!* Even this is under a license of GNU you can always send whatever *!* *!* payment for a future development of this and other free tools to me, *!* *!* but it's totally up to you. *!* *!* *!* *!* Arto Toikka *!* *!* Eestinkallio 1 *!* *!* 02280 Espoo *!* *!* Finland *!* *!* at@mp.utu.net *!* *!* tel. +358 400 665566 *!* *!* fax +358 9 8552367 *!* *!* *!* ***************************************************************************** *!* *!* Syntax (Program) *!* *!* DO ATFixDbfFpt WITH tWhatDbf, tnRepairMode, tcContainer, tnMemoBlockSice, tl NoInfo, tlNoBackups, tnLang *!* *!* Syntax (Function) *!* *!* ATFixDbfFpt(tWhatDbf, tnRepairMode, tcContainer, tnContainerBlockSize, tnMem oBlockSice, tlNoInfo, tlNoBackups, tnLang) *!* *!* tWhatDbf Name (with .ext) of the table to repair *!* dbc, dbf, frx, lbx, mnx, pjx, scx, vcx or user defined *!* tnRepairMode 0 (Default) Only report generated *!* 1 table header checked and fixed. *!* 2 memo header checked and fixed. *!* 3 table and memo header checked and fixed.

*!* ** values 4 and greater not supported yet *!* ** values 4 and greater are for greater data-anlysis. *!* 4 All scannable data readed per record from old table file *!* and writed to the new table file, new header writed, *!* new field block writed form template file (if exist) *!* 5 All scannable data readed per record from old memo f ile *!* and writed to the new memo file, new header writed, *!* new field block writed form template file (if exist) *!* 6 All scannable data readed per record from old table and memo files *!* and writed to the new table and memo files file, new headers writed, *!* new field blocks writed form template files (if exis t) *!* tcContainer Relative path and name of the container (+ .EXT). Give it if there is *!* a problem with table / container link and you like to refresh it. *!* (Default empty i.e. no container link refreshed) *!* NOTE!!!! If there isn't container block in the file he ader *!* tcContainer value shoud be logical .F. (all VFP data f iles have a 263 *!* character long container block) *!* tnMemoBlockSice Memo block size (Default 64) *!* tlNoInfo .T. = do not show info screen (only errors) (Default s how info) *!* tlNoBackups .T. = do not make backups from corrupted? files (Defau lt make backups) *!* tnLang Language, 1 = finnish, others are english (Default fin nish) *!* If you add languages please email your addition to me *!* *!* *!* NOTE: (Backup) *!* If make backup is selected following files are generated *!* (to the same directory where table is lovated) *!* Table: table name (with .EXT) + nn (nn = 1 to 99) *!* Memo: memo name (with .EXT) + nn (nn = 1 to 99) *!* *!* *!* NOTE: (RETURN VALUE) *!* Look tnRepairMode *!* positive value (including zero) - > event succesful *!* negative values - > event not succesful *!' -10 = Only report generated, not succesful *!* -50 = Invalid parameters *!* *!* NOTE: (REPORT) *!* ATFixDbfFpt writes info file to the same direcory where table file is located. *!* Name of the info file is: *!* "ATFix_" + name of the table file (without .EXT) + ".TXT" *!* *!* IF RETURN VALUE <> 0 AND <> 1, report is not generated *!* *!* Last modified: *!* 07/01/2001 Started

*!* *!* *!* *!* *!* *!* *!* *!* *!* *!* *!*

07/03/2001 Version 1.0 07/04/2001 - possibility to rewrite container block added 07/10/2001 Sorry 1.1b was VFP7 version, VFP5 - 6 support added 07/11/2001 Reporting bugs fixed 07/20/2001 Forgotten SET STEP ON line removed 07/24/2001 All messages (except info) moved to the FixMessage function 07/24/2001 Parameter tcContainer changed. If type of the tcContainer is Character -> container block exist

*!* (VFP data file) *!* - if length of tcContainer is zero, container block isn't overwr itten *!* - if length of tcContainer is greater than zero, *!* container block is overwritten with the value in tcContainer *!* If type of the tcContainer is not Character -> container block *!* doesn't exist (no VFP data file) *!* 07/24/2001 tnRepairMode = 1 generated an error, FIXED *!* 07/24/2001 error when fixing free table without container block, FIXED *!* NOTE: in the above case DO NOT GIVE a character value to the tcC ontainer *!* 07/24/2001 tnRepairMode = 4 ADDED. If tnRepairMode 1 or 3 (table), *!* new fixed header is overwritten to the old data file *!* If tnRepairmode = 4 new file is generated first and old data fil e *!* is overwritten with the new one. (this is the next step to the *!* next version where user can input field block if it is corrupted . *!* 07/25/2001 Windir changed to the Temp dir *!* *!* Notes: Please if you have any wishes or improvments (or bugs??), e-mail me. *!* *!* *!****************************************************************************

You might also like