TPS Repair

TPS Repair manual / Manual de TPS Repair

Complete instructions in English and Spanish. Instrucciones completas en inglés y español.

TPS Repair recovers readable records from damaged Clarion TopSpeed (.TPS) files. It also updates existing files to match a new version of your application, including resolving Error 47 after an update. You can process one file or all .TPS files in a folder.

The program builds and verifies a new file before replacing the original. A licensed copy keeps a backup when it replaces a file. An evaluation copy saves a sample and leaves the original unchanged.

Before you start

  • Close the application that uses the files. TPS Repair needs exclusive access and permission to read, write and rename files in the data folder.
  • Have the owner passwords ready for any password-protected files.
  • For damage recovery, leave File structure (optional) empty unless TPS Repair asks for a structure. To update files for a new application version, select that version's .EXE or .DLL instead.

TPS Repair runs without installation, activation or network access. It cannot restore deleted records.

Repair one file

Open TpsRep.exe:

TPS Repair with the file selectors, owner password list and Repair button

  1. Press File... next to File or folder to process. Select the damaged .TPS file, or drag it from Explorer into that box.
  2. Leave File structure (optional) empty. If TPS Repair asks for a structure, see If the file lost its structure.
  3. For a protected file, enter its password in the box below the Owner passwords list. Press Add.
  4. Press Repair.

The bottom of the window shows the current stage and progress. Large files can take several minutes. When the repair finishes, the report opens in your browser. The center pane also shows a summary.

With the default settings, a licensed copy replaces the original after a repair that needs no data-loss confirmation. If confirmation is needed, TPS Repair asks first. See Where your files went for the output and backup locations.

Repair a folder

  1. Press Folder... next to File or folder to process. Select the data folder, or drag it from Explorer into that box.
  2. Leave File structure empty unless you need an external structure. You can select one source file or a folder containing sources. A single source, such as your application's .EXE or .DLL, can describe several or all of the damaged files.
  3. Add any owner passwords, then press Repair.

TPS Repair processes .TPS files directly inside the selected folder. It does not search subfolders. It prepares and verifies the repaired files before replacing any originals.

File selection and exceptional cases

To repair several files, select their folder. Dragging several files from the same folder offers to select that entire folder, including files you did not drag. Files from different folders cannot be selected together.

A protected file can be skipped if no available password opens it. In the window, TPS Repair offers to accept a password, skip that file, skip all protected files, or stop. Unattended runs skip protected files by default; use --stop-on-protected-files to stop instead. If every file is skipped, the exit code is 10.

Unreadable, damaged or in-use files that cannot be processed cause the folder repair to fail. No originals are replaced. A valid empty TPS file is rebuilt and verified normally.

Folder outputs and backups

A folder replacement first creates and verifies a ZIP backup containing every original .TPS file found in the folder, including skipped protected files. The repaired files then take their original names. Skipped files stay unchanged.

If you decline replacement or use --no-replace, the repaired files are saved in a separate ZIP under their original filenames. Skipped files are excluded.

Failures before replacement leave the originals unchanged. If replacement fails, TPS Repair attempts to restore the originals. An incomplete rollback keeps the verified backup and reports the paths needed for manual recovery.

Fix Error 47 after an application update

A new version of a Clarion application may report Error 47: Invalid Record Declaration when its expected file structure differs from the existing TPS files. Use TPS Repair to update those files to the structure the new application requires.

Close the application and open TpsRep.exe. Add any owner passwords needed for the data files, then:

  1. Press Folder... next to File or folder to process and select the application's data folder.
  2. Press File... next to File structure (optional) and select the new application's .EXE or .DLL.
  3. Press Repair.

Choose the file that contains the table declarations. If they are in a DLL, select that DLL. One EXE or DLL can describe all the TPS files in the folder.

TPS Repair reads the current structure from each TPS file and rebuilds it using the structure declared by the new program. It converts the records and verifies that the rebuilt files match the selected structure.

With a licensed copy and the default replacement settings, the verified files replace the originals, which are kept in a backup ZIP. Changes that require data-loss confirmation prompt you before replacement. Review the report's field changes and Saved outcome, then open the files with the updated application. Evaluation copies save samples and leave the originals unchanged.

For conversion details and other structure sources, see Repairing into a newer structure. The site article explains why Error 47 occurs.

Where your files went

Check Saved outcome near the top of the HTML report first. It tells you whether the repaired files are in place or the originals remain unchanged. The report also lists the output and backup paths.

Files are saved beside the input. Folder archives are saved inside the selected data folder. Automatic names have these forms:

<name>_repaired_yyyy-mm-dd_hh-mm.zip     Separate repaired ZIP
<name>_original_yyyy-mm-dd_hh-mm.zip     Original backup ZIP
<name>_evaluation_yyyy-mm-dd_hh-mm.zip   Evaluation sample ZIP
<name>_report_yyyy-mm-dd_hh-mm.html      Repair report
<folder>_repaired_yyyy-mm-dd_hh-mm.zip   Separate repaired files
<folder>_original_yyyy-mm-dd_hh-mm.zip   Folder backup
  • Single-file replacement: the repaired file takes the original name. The original is kept inside the _original_ ZIP under its original filename.
  • Single-file repair without replacement: the original stays in place. Extract the _repaired_ ZIP to use the recovered file under its original filename.
  • Folder replacement: repaired files take their original names. The originals are kept in verified _original_ ZIP archives.
  • Folder repair without replacement: use the files in the _repaired_ ZIP.
  • Evaluation: originals stay unchanged. Single-file samples are saved in an _evaluation_ ZIP; folder samples remain separate TPS files. See Evaluation and licensing for sample limits.

Single-file backup ZIPs are verified before replacement. If replacement fails, TPS Repair attempts to restore the original and saves the repaired output in a separate ZIP. If archiving or rollback fails, the report identifies the retained archive or work file needed for recovery.

Automatic names never overwrite existing files. A name already in use gets _2, _3, and so on. Generated output extensions preserve the input's capitalization. An explicit report path, supplied with --report <path> or ReportPath, replaces any existing file at that path.

Automatic report names use the repair's start time. The HTML footer shows the start time, finish time and elapsed time in hours, minutes and seconds. These are local times. Elapsed time includes the wait for replacement confirmation and ends before report generation. Saving the report again preserves those times.

Reading the report

Start with Saved outcome, then review the record counts and Recovery findings. In a folder report, use the filter box to find a file. Expand a file or table to see its details.

The main counts describe different parts of the repair:

  • Records recovered: readable records reconstructed from the damaged file.
  • Records written: records successfully saved to the repaired file.
  • Recovered records not written: recovered records that were not saved. Evaluation reports distinguish the sample limit from records rejected during writing.
  • Declared records not reached: the shortfall between the original file's readable stored count and the records reached by the recovery scan.
  • Damaged areas: unreadable regions found in the file. This is not a count of lost records.

For example, recovering and writing 285 records from a file whose stored count is 288 leaves a shortfall of three. It does not mean that three recovered records failed to save.

Recovery findings explains issues such as rejected duplicates, damaged attachments, missing structures and field conversions. Click a linked count to see the affected fields, indexes or tables.

An attachment is the content of a memo or BLOB field. A damaged attachment is left empty by default, while the rest of its record is saved. With --skip-damaged, the whole record is omitted. A record rejected by a unique index is also recovered but not written. Neither case belongs in Declared records not reached.

Damaged attachment counts refer to field occurrences across records. Structure change counts refer to fields or indexes. A field that appears in several records can therefore contribute several damaged attachment occurrences.

Before-and-after examples show observed changes to values, with up to two examples per affected field. An empty example cell means no example was recorded; it does not prove that every value was unchanged. Attachment changes show lengths rather than their contents. Long detail lists show up to 25 named entries per group; totals remain complete.

An unconfirmed original count means the TopSpeed driver could not independently count the damaged table. The recovered count still comes from the recovery scan, but the original total is unknown.

Evaluation samples show recovered input data. A displayed row may not be in the saved sample file. Arrows show values assigned to a written record. Control bytes appear as decimal codes in angle brackets.

Press Save report... to keep a copy of the result currently in the window, including a failed repair's error and support code. The browser may be showing a temporary preview; saving lets you choose a permanent location.

For scripts, use --report for an automatic name or --report <path> for a specific location. HTML is the default. Use --report-format text for plain text. A .html, .htm, .txt or .log extension in the report path overrides the format option. HTML reports are self-contained and work offline.

The window always opens an HTML result. If you requested a text report, it saves that file and opens a separate HTML preview. Windows manages temporary previews. To save a report in another language, switch languages and save another copy.

When it asks you a question

Questions appear when a repair needs a decision:

  • Data loss: choose whether to replace the original or keep the repaired output separately. The report describes the loss.
  • Damaged attachments: choose whether to keep each affected record with its damaged attachment empty or omit the whole record. The answer applies to the rest of the repair, including all remaining files in a folder.
  • Missing password: enter a password or choose how to handle protected files in the folder.
  • Missing structure: select a source that describes the damaged file.

Use --no-replace to always save repaired output separately. For data-loss confirmation, --yes allows replacement and --no declines it. These options do not remove evaluation limits.

Unattended runs use --no-gui. They decline replacement that needs confirmation unless --yes is set. They keep records with empty damaged attachments and skip protected files by default. Use --skip-damaged or --stop-on-protected-files to change those choices. Configured policies also suppress the corresponding questions in the window.

If the file lost its structure

The structure describes the file's tables, fields and indexes. TPS Repair normally reads it from the damaged file. If that structure is unusable, select one of these under File structure and run the repair again:

  • a working copy of the same .TPS file, such as a backup;
  • a .CLW source file containing its declaration;
  • the Clarion .EXE or .DLL that declares it;
  • a folder containing any of these sources.

A source may describe more than one damaged file. Structure folders are searched only at the top level, for .TPS, .CLW, .EXE and .DLL files. Each damaged file must match one usable source. If none matches, or several match, TPS Repair tries the structure inside the damaged file and reports that fallback.

The same owner password list is used for damaged files and TPS structure sources.

Validating a supplied structure

If the damaged file's own structure is unreadable, the supplied structure must match the version that wrote its records. A newer structure is not a substitute for the missing original.

TPS Repair checks every recovered record against the selected structure before writing output. An incompatible length, field encoding or attachment reference stops the repair with TR-108. This check cannot be bypassed. Once a structure is selected, a failed record check stops the repair rather than trying other sources.

Passing the check does not prove that equally sized fields have the correct meaning. Review the recovered data before accepting the result. Damage to the contents of a declared attachment follows the normal attachment policy.

Using a .CLW file

Use self-contained TopSpeed FILE declarations. Supported elements include literal and local EQUATE sizes, RECORD, nested GROUP, DIM, OVER, KEY/INDEX, MEMO and BLOB.

The reader does not expand includes. It ignores unrelated content and rejects declarations whose layout cannot be resolved.

Using a program (.EXE or .DLL)

Select the file that contains the declarations. TPS Repair reads it without executing the program or loading its DLLs. Related DLLs are not opened automatically: select the DLL itself if that is where the declarations live.

Supported programs use the Win32 FILE layouts verified with Clarion 5.5, 6, 9, 11 and 11.1 samples. Compatibility depends on the file's actual layout; not every Clarion build is guaranteed to work. Unsupported formats, including 64-bit, packed and non-Clarion programs, are rejected.

TPS Repair matches tables using recovered prefixes, table identities, physical filenames and FILE labels. Equivalent declarations are combined. Ambiguous matches stop the repair and are listed for review. Passwords embedded in the program are ignored.

Repairing into a newer structure

For the folder workflow, follow Fix Error 47 after an application update. To update just one file, use File... next to File or folder to process instead of selecting a folder.

You can also supply a working .TPS or a .CLW declaration with the new structure. The existing TPS files must still contain a readable structure so the old records can be interpreted correctly. Use evaluation mode or --no-replace to inspect the converted output before replacing originals.

Field matching and conversion rules

The old structure is used to read records; the selected structure defines the output. Fields match by physical NAME first, then by field label, ignoring case. Reordered fields retain their values. New fields are cleared and removed fields are dropped.

Values are assigned using Clarion's type conversions. Attached files can only convert to attached files. A conversion requires data-loss confirmation if the new type, size, dimension, range or precision cannot represent all possible old values. This includes text-to-number conversions even when the values in the current file happen to convert exactly.

The structures must contain the same number of tables. In multi-table files, tables match by prefix or logical identity; the output uses the selected structure's table names.

Owner passwords

Enter a password below the Owner passwords list and press Add. Repeat for other passwords. Select an entry and press Remove to remove it.

Press Save owners to keep the list for future runs. Adding or removing entries does not save it automatically. The saved list is loaded for both window and command-line use.

Passwords are stored encrypted in the [Owners] section of TpsRep.ini, beside TpsRep.exe. Saving preserves other sections. The encryption prevents casual disclosure, but the key is embedded in the application so the list can travel between computers. Treat the INI as sensitive: it is not a credential vault. Invalid or modified entries are skipped with a warning.

For scripts, repeat --owner <password> or --owner-file <path> in the order to try them. Each password file contributes its first nonempty line. Command-line entries are tried before saved passwords. Exact duplicates from the saved list are skipped. Passwords passed directly on the command line may be visible to other local processes.

Evaluation and licensing

All paid licenses use the same software, with no per-file or per-record limits:

  • Company: Internal Use: one company working on its own data, with unlimited people and machines. It does not cover work for clients.
  • Solo Consultant: one designated operator working on the licensee's own data and for unlimited clients and machines. Support can assign a permanent replacement operator for the same licensee; operators cannot share or rotate that role.
  • Consultancy: any number of authorized operators in one consultancy, working on its own data and for unlimited clients and machines.

Consultants may run TPS Repair on client machines and deliver the resulting data files, but clients may not receive the licensed executable for their own use. Write to tpsrep@sca.mx about redistribution, vendor bundling or OEM licensing.

Every license includes twelve months of updates and support. Versions released during that coverage are yours to use permanently, offline. Support covers installing and running TPS Repair. It excludes custom recovery, forensic analysis, customer-data review, custom development, and guaranteed emergency response.

Current prices, renewals and upgrades are listed at https://tpsrep.com/buy. Your private download page shows the renewal and upgrade prices that apply to your license.

An evaluation scans the entire damaged file and measures the recovery results. It builds and verifies real TPS sample files that you can open with your own application.

The limits are:

  • Each table saves half its recoverable records, rounded up, up to 500 records. Records are taken in recovery order. Readable memo and BLOB data is included.
  • Folder repairs report on every eligible file, but keep only the first three evaluation samples.
  • Originals are never replaced. Replacement settings have no effect.
  • A report is always saved, even without --report.

The report separates the evaluation limit from records rejected during writing. A license removes the sample limits; it does not guarantee that rejected records can be saved. Evaluation runs return exit code 4 and support code TR-500.

Buy a license at https://tpsrep.com/buy. You receive a signed TpsRep.exe personalized with the confirmed licensee name, license tier and public license ID. Replace the evaluation executable with that copy. There is no activation or separate license file. Licenses do not expire or require network access. The licensee name and public license ID appear in the application and reports.

Running it from a script

TpsRep.exe
TpsRep.exe --gui [file-or-folder [options]]
TpsRep.exe file-or-folder [options]

No arguments opens the window. --gui opens it with the supplied values filled in, ready for you to press Repair.

Use --no-gui for unattended runs, or set NoGui=true in the INI. Otherwise the program shows progress and waits for someone to close the result dialog. The program does not read or write a console. Unattended results are available through the exit code and any enabled report.

Examples:

TpsRep.exe C:\data\orders.tps --no-gui --report
TpsRep.exe C:\data --structure C:\app\myapp.exe --no-replace --no-gui --report
TpsRep.exe C:\data\orders.tps --owner-file C:\keys\owner.txt --yes --no-gui --report

Options:

--structure <path>          Structure source: .TPS, .CLW, .EXE, .DLL, or a folder.
--owner <password>          Owner password. May be repeated.
--owner-file <path>         Read a password from the first nonempty line.
--yes                      Allow replacement when data-loss confirmation is needed.
--no                       Decline replacement when data-loss confirmation is needed.
--no-replace               Always save repaired output separately.
--no-gui                   Run without windows or questions.
--skip-damaged             Omit records with damaged attachments.
--stop-on-protected-files  Stop a folder repair if a protected file cannot be opened.
--report [path]            Save a report; omit the path for an automatic name.
--report-format <kind>     html (default) or text; txt and log also mean text.
--batch-size <count>       Records per write batch. Default: 10000.
--language <code>          auto (default), en or es.
--help | -h | /?           Show help in a Windows dialog.

Exit codes

0   Repair completed
2   Repair completed with reported data loss
3   Replacement declined
4   Evaluation completed; originals unchanged
10  Invalid arguments, no usable structure, or all files skipped
20  Repair or verification failed
30  Access, replacement, archive or rollback failed

Settings

Create TpsRep.ini beside the TpsRep.exe you launch. You can also create it with Save owners, then edit it. The program always uses this location, even when launched from another folder.

Add an [Options] section with the defaults you need:

[Options]
Structure=definitions\myapp.exe
ReplacementPolicy=NeverReplace
Gui=false
NoGui=true
SkipDamaged=false
StopOnProtectedFiles=true
Report=true
ReportPath=reports\latest.html
ReportFormat=html
BatchSize=10000

All keys are optional and case-insensitive. Boolean values accept true/false, yes/no or 1/0. Relative Structure and ReportPath paths are resolved from the INI's folder.

ReplacementPolicy accepts:

  • AskOnLoss: ask before replacement that needs data-loss confirmation. Default.
  • ReplaceOnLoss: allow that replacement, like --yes.
  • KeepOnLoss: decline that replacement, like --no.
  • NeverReplace: always save separately, like --no-replace.

Gui and NoGui cannot both be true. ReportPath and ReportFormat require Report=true. Without ReportPath, an enabled report gets an automatic name. ReportFormat accepts html, text, txt or log.

Explicit command-line options override corresponding INI values. Options with no command-line inverse, such as Report=true, SkipDamaged=true and StopOnProtectedFiles=true, remain enabled until you edit the INI.

Unknown or duplicate keys, invalid values and conflicting options stop the run with exit code 10 and TR-130, TR-131 or TR-132. An invalid INI can produce a dialog even with --no-gui, because it is read before those options apply.

Launching without arguments always opens the window. Configured repair policies still apply when you press Repair. Save owners with Save owners rather than putting them in [Options].

The [Preferences] section

The language selector saves its choice separately:

[Preferences]
Language=auto

Use auto, en or es. An unrecognized value falls back to Windows language settings. You can set this value in advance for a deployment. If the INI cannot be written, TR-408 is shown and the choice lasts for the current session.

Language

Choose English, Español or the automatic option at the bottom left of the window. The interface changes immediately, and subsequent reports use the selected language. Existing report files keep their original language.

Language selection uses this order:

  1. --language for the current run.
  2. Language in the INI's [Preferences] section.
  3. Windows language settings.

auto uses Windows. It selects Spanish if either the display language or regional language is Spanish; otherwise it selects English.

Support codes and machine-readable report lines stay unchanged. Technical Details: text is not translated. File and folder dialogs follow Windows. Use --language en if a script depends on English report prose.

Work folders and runtime files

TPS Repair writes the recovered data into a TPS-Repair work folder beside the input, or inside the selected data folder. It verifies the output structure and reopens every table with the TopSpeed driver to confirm the written counts before replacement.

An existing work folder is reused only if it is empty and writable. Otherwise, a numbered name such as TPS-Repair_1 is used. Existing contents are left alone.

The work folder is normally removed when the run ends. If a verified repair cannot be moved to its final location, or rollback cannot finish, TPS Repair keeps the needed files and reports their paths. A crash or power failure may also leave a work folder behind. Later runs leave nonempty work folders intact.

Running the executable and bundled documents

TpsRep.exe is a native Win32 application. The target computer needs neither a Clarion compiler nor a .NET runtime. Test the evaluation on the Windows version and machine where you need it.

The application and ZIP support are linked into the executable. It runs directly without extracting runtime DLLs or creating an application cache. Settings remain beside the executable you launch.

Each ZIP is limited to less than 2 GiB and 65,535 entries. Folder repairs create additional ZIPs when the conservative size or entry limit would be exceeded. Multiple archives end in .part001.zip, .part002.zip, and so on; each opens independently and contains complete TPS files. The report lists every part. Extract all parts into the same destination to recover the full set. All parts are verified before any original is replaced. If replacement cannot be rolled back completely, retain the entire backup set shown in the report. A single TPS file must still fit within one ZIP's conservative size allowance. An oversized file is rejected before creating archives or replacing originals.

Keep this manual with the executable. Licensed deliveries also include TpsRep-legal.txt.

What a report contains of your data

Reports may contain duplicate index values, up to two before-and-after value pairs per changed field, and evaluation sample rows. Attachment contents are excluded; changes to attachments are reported by length. Passwords are excluded, and equivalent commands replace them with [redacted].

Single-file text reports also include a technical findings log for local troubleshooting. It may contain recovered values. Do not send reports or logs to support.

Support codes

Quote the bracketed TR-nnn code when asking for help.

TR-100  The first argument was not a file or folder.
TR-101  The damaged file no longer describes its own structure. Supply one.
TR-102  The structure file or folder does not exist.
TR-103  That file type cannot supply a structure. Use .TPS, .CLW, .EXE or .DLL.
TR-104  That file describes no TPS tables.
TR-105  No readable records were found. The file may be truncated or overwritten.
TR-106  The structure and the damaged file describe different numbers of tables.
TR-107  A working table could not be created from the structure.
TR-108  The structure describes a different table or cannot safely interpret every recovered record.
TR-110  No .TPS files directly inside the folder. Subfolders are not searched.
TR-111  No structure sources directly inside the structure folder.
TR-112  More than one structure in the folder matches. Name the exact file.
TR-113  Nothing in the structure folder matches.
TR-114  A password-protected file could not be opened, and stopping was requested.
TR-115  Every file in the folder looks password-protected.
TR-120  TPS structures could not be read from the program file.
TR-121  Several tables in the program could match. Select a more specific source.
TR-122  That .CLW file could not be read as a TPS structure.
TR-130  Unknown option, or an unusable report format. Run TpsRep.exe --help.
TR-131  An option was missing its value, or the value could not be used.
TR-132  Two options were used together that contradict each other.
TR-200  The damaged file could not be read.
TR-201  The repaired file failed its own check. Nothing was replaced.
TR-202  The file is password-protected and no supplied password opened it.
TR-203  A record is larger than the 32,767 bytes a TPS file can hold.
TR-204  The repaired file could not be created or written.
TR-205  A field cannot be converted to the type the new structure gives it.
TR-206  The TPS Repair work folder could not be created or removed.
TR-301  Another program is using the file.
TR-302  The repaired file could not be put in place of the original.
TR-303  The repaired file could not be renamed. It is complete, at the path given.
TR-304  A folder replacement failed. Check whether a rollback succeeded.
TR-310  The backup ZIP could not be created.
TR-311  The backup ZIP could not be written.
TR-312  The backup ZIP failed its own check.
TR-401  Windows encryption is unavailable, so saved passwords cannot be used.
TR-402  The settings file location could not be determined.
TR-403  The saved password list is damaged and was ignored.
TR-404  Some saved passwords could not be read and were skipped.
TR-405  Saved passwords could not be read.
TR-406  The password list could not be saved.
TR-407  The repair finished but its report could not be written.
TR-408  The chosen language could not be saved. It still applies to this session.
TR-500  This is an evaluation copy. Nothing was written in place.
TR-501  The license in this copy could not be read. It ran as an evaluation copy.
TR-9xx  Internal error. Contact support.

Getting help

Press About, then Copy details. Send those product, version and license details with:

  • your Windows version and architecture;
  • the exact error message and TR-nnn code, if the repair stopped;
  • your order or delivery reference, for a delivery question.

Do not send TPS files, recovered output, reports or attachments. Support does not inspect customer data.

TPS Repair is published by Sistemas de Computación Accesibles del Noroeste, S.C., at https://tpsrep.com.

Third-party software

TPS Repair includes the adapted tps-parse parser (Apache-2.0), zlib and minizip (zlib license), compiled into the application. Press About, then Open source licenses for the full notices.

License agreement

This is the English agreement supplied with TPS Repair.

TPS REPAIR: END USER LICENSE AGREEMENT
================================================================================
Version 1.4 · Effective 19 September 2026

Copyright © 2026 Sistemas de Computación Accesibles del Noroeste, S.C. All rights reserved.

TPS Repair is commercial software. It is licensed, not sold. This agreement
("EULA") is between Sistemas de Computación Accesibles del Noroeste, S.C.
("SCA", "Licensor", "we" or "us") and the person or legal entity identified
as the licensee ("you" or "Licensee"). Dodo Payments acts as merchant of
record for the purchase transaction; SCA grants and administers the software
license and the time-limited support-and-updates entitlement.

By affirmatively accepting this EULA during the applicable online checkout, or
by installing or using a licensed copy after receiving a durable copy of this
EULA, you agree to its terms. If an individual accepts for an organization,
that individual represents that they have authority to bind it. Mandatory
consumer rights that cannot be waived remain unaffected.


1. LICENSE GRANTED

Subject to successful payment, the applicable Terms of Sale, and this EULA, SCA
grants a perpetual, non-exclusive, non-transferable license for the tier shown
in the purchase record:

  COMPANY: INTERNAL USE
              One legal entity's internal data, with unlimited authorized
              personnel and machines. No client-service rights.

  SOLO CONSULTANT
              One designated operator acting for the named Licensee, on its
              own data and for unlimited clients, on unlimited machines.
              The operator's name is recorded in the license. A permanent
              replacement may be assigned through support; rotation among
              coworkers is not permitted. Additional operators require a
              Consultancy upgrade.

  CONSULTANCY One legal entity, with multiple authorized staff or contractors
              acting on its behalf, on its own data and for unlimited clients,
              on unlimited machines. Affiliates and subcontracting businesses
              receive no independent rights under this license.

All paid tiers have the same technical capabilities, without paid per-file or
per-record limits. A separate license is required for each legal entity.
Consultant licensees may operate TPS Repair on client machines and deliver
resulting data files. They must have authority to process the client's data.
They may not give clients the licensed executable for independent use.
Independent client use, vendor bundling, OEM distribution, and redistribution
require a separate license or written redistribution agreement. Contact
tpsrep@sca.mx for a custom redistribution licensing quote.

Upgrades for the same Licensee change usage rights only. They do not extend
support/update coverage or grant newer versions. The renewal reference price
becomes the destination tier's reference price accepted at upgrade. A refund
or reversal of an upgrade restores the prior rights and renewal basis; the
upgraded executable must no longer be used under the unwound rights.

SCA does not provide TPS-file repair, migration, recovery, or data-consulting
services through the website. The website and support process do not include a
customer-content upload function. The consultant tiers authorize the
Licensee's own services; it does not make SCA part of those services.


2. OFFLINE OPERATION; NO ACTIVATION

TPS Repair contains no product-activation requirement, does not contact an SCA
server in order to run, has no telemetry, and does not expire. Subject to this
EULA, a licensed version can continue to run without a network connection and
without contacting SCA. Expiration of a support-and-updates period does not by
itself remove hosted access to versions previously validly delivered. SCA may
withdraw a hosted artifact if the underlying license ends or when reasonably
necessary because of a refund or reversal, a security or integrity issue, a
legal requirement, a third-party-rights restriction, a buyer deletion request,
or discontinuation of the hosted redownload service. SCA cannot remotely
disable copies already installed.


3. SUPPORT AND UPDATES ENTITLEMENT

The initial license purchase includes product support and access to eligible
TPS Repair versions and updates during a twelve-month coverage period beginning
on the purchase date and ending on the calendar day immediately before the
first anniversary of that date. The last version validly obtained during the
coverage period remains licensed perpetually under this EULA.

A "TPS Repair Support & Updates Renewal" is an optional, separate, one-time
purchase that extends only the time-limited support-and-updates entitlement. It
is not a renewal, replacement, or extension of the perpetual software license;
it is not a subscription; and it does not renew automatically.

  • If a renewal is purchased while coverage remains active, the new
    twelve-month period is added after the existing coverage end date so paid
    time is not lost.
  • If a renewal is purchased after coverage has ended, the new period begins
    on the renewal purchase date. It includes the latest generally available
    TPS Repair version on that date and eligible versions and updates released
    through the end of the new twelve-month period.
  • Failure to renew does not disable TPS Repair, revoke an existing perpetual
    license, or prevent continued licensed use of the last version validly
    obtained.
  • While the related perpetual license remains valid and SCA continues
    operating the hosted redownload service, expiration of coverage does not by
    itself remove access to personalized builds previously validly delivered.
    This hosted archive is separate from support and eligibility for new
    versions and is subject to the applicable Terms of Sale.

Support during an active coverage period includes delivery, installation,
licensing, and ordinary product-operation questions. Support does not include
data repair, migration, forensic analysis, custom development, validation of
business data, or review of customer content. Support may request only
non-content diagnostic information such as the product version, public license
identifier, Windows version, exact on-screen error text, and a content-free
diagnostic code.

Mandatory security, conformity, update, and remedy obligations that applicable
law does not permit the parties to waive remain unaffected by expiration of a
commercial support-and-updates period.


4. LICENSEE IDENTIFICATION AND PERSONALIZATION

Each licensed build may display:

  • the Licensee's confirmed display name or organization/trading name;
  • the purchased tier; and
  • an SCA-generated public license identifier.

This information may appear in the title bar, About window, and report headers.
SCA does not embed the purchaser's email address, payment-card information, or
raw Dodo order/payment identifier in the executable or reports. You may not
remove, alter, obscure, or falsify the embedded license record.

You are responsible for confirming the spelling and suitability of the display
name before continuing to payment. The display name is not proof that the named
person or entity owns any data processed with the software.


5. RESTRICTIONS AND THIRD-PARTY COMPONENTS

Except where applicable law or an applicable third-party license expressly
allows otherwise, you may not:

  (a) redistribute, publish, sell, rent, lease, sublicense, lend, or share a
      licensed build or make it available outside the Licensee covered by the
      purchased tier;
  (b) use a Company-tier license to provide repair, recovery, migration, or
      similar services to third parties;
  (c) reverse engineer, decompile, or disassemble TPS Repair;
  (d) modify the program or embedded license record, or attempt to bypass,
      defeat, forge, or falsify license identification; or
  (e) use TPS Repair in violation of law or without authority to process the
      relevant data.

The third-party components identified in the version-specific third-party
notices section of the delivered "TpsRep-legal.txt" file, and in the Open
source licenses view in the program's About window, are governed by their own
licenses. Those licenses control to the extent they grant rights that differ
from this EULA.


6. EVALUATION MODE

An unlicensed copy may run in evaluation mode. Evaluation mode is intended to
help you assess compatibility and the data the software appears able to recover
before purchase. It does not overwrite or modify the original TPS file.
Evaluation results are not a guarantee that every record or field is complete,
correct, recoverable, or suitable for production use. You must inspect and
validate the results that matter to you.


7. DATA HANDLING AND USER RESPONSIBILITIES

TPS Repair processes selected files locally. It does not upload file contents
to SCA. You remain responsible for lawful access to the input data, maintaining
independent backups, preserving original files, selecting appropriate output
locations, testing recovered or migrated output, and deciding whether the
output is fit for use.

Never make TPS Repair, or any recovery tool, the only copy of important data.
Work from copies and preserve the original file and a separate backup until the
output has been independently validated.


8. FUNCTIONAL LIMITS AND MANDATORY RIGHTS

Damaged or structurally incompatible data can be incomplete, internally
inconsistent, or unrecoverable. SCA does not promise that TPS Repair will
recover every file, record, field, key, relationship, memo, blob, or other data
element, or that recovered data will satisfy a particular business, accounting,
regulatory, or evidentiary purpose.

Nothing in this EULA excludes, limits, or replaces any warranty, conformity
obligation, refund, repair, replacement, price reduction, damages remedy, or
other right that applicable law does not permit the parties to waive. Except for
those mandatory rights and the express commitments in this EULA and the Terms
of Sale, TPS Repair is supplied without additional voluntary warranties to the
maximum extent permitted by law.


9. LIMITATION OF LIABILITY

For a consumer, SCA's liability is not excluded or limited where applicable law
does not permit exclusion or limitation.

For a Licensee purchasing primarily for business or professional purposes, and
to the maximum extent permitted by law:

  (a) SCA is not liable for indirect, incidental, special, punitive, or
      consequential loss, or for loss of profits, revenue, business,
      opportunity, goodwill, or anticipated savings; and
  (b) SCA's aggregate liability arising from TPS Repair, this EULA, and the
      affected transaction is limited to the amount actually paid for the
      affected license or support-and-updates renewal, as applicable.

These business limitations do not apply to fraud, wilful misconduct, gross
negligence where it cannot lawfully be limited, death or personal injury where
it cannot lawfully be limited, breach of confidentiality or data-protection
obligations, infringement caused by SCA, or any other liability that applicable
law does not permit SCA to exclude or limit.


10. REFUNDS, REVERSALS, AND TERMINATION

There is no general voluntary fixed-period change-of-mind refund policy.
Refunds and other remedies are available where required by applicable law,
under Dodo Payments' applicable buyer terms, or where Dodo Payments and/or SCA
expressly approve a remedy for non-delivery, lack of conformity, duplicate
payment, or another substantiated issue. The Terms of Sale explain how to
request assistance.

A confirmed full refund, reversal, chargeback, cancellation, or other unwinding
of the original license transaction terminates the related software license and
its support-and-updates entitlement unless SCA confirms otherwise in writing.
SCA may disable the related private buyer page and hosted archives. After that
termination, you must stop using TPS Repair and delete or destroy all licensed
copies under your control.

A confirmed full refund, reversal, chargeback, cancellation, or other unwinding
of a Support & Updates Renewal affects only the renewed entitlement. It does
not terminate the pre-existing perpetual license or the right to continue using
the last version validly obtained before that renewal. To the extent permitted
by applicable law, you must stop using versions first supplied solely under the
unwound renewal. SCA may restore the prior coverage end date and remove hosted
access to versions first supplied solely under that renewal. Builds validly
obtained before the renewal remain governed by the redownload-archive policy.
SCA cannot remotely disable an installed copy.

A partial refund does not by itself terminate a license or entitlement. The
written refund decision and applicable law determine its effect.

The license also ends if you materially breach this EULA and, where cure is
appropriate, do not cure the breach within a reasonable period after notice.
Sections intended by their nature to survive (including restrictions,
responsibility for past use, liability provisions, and governing law) continue
to apply.


11. TRANSFER AND CORPORATE CHANGE

The license may not be transferred to another person or legal entity without
SCA's prior written approval. A merger, reorganization, or sale of substantially
all relevant business assets does not automatically terminate the license, but
the successor must notify SCA and accept this EULA; SCA may require reasonable
evidence of succession and issue a replacement personalized build.


12. LANGUAGE, GOVERNING LAW, AND FORUM

The English and Spanish versions of this EULA are intended to be substantively
equivalent and share the same version number and effective date. For a
transaction concluded in Mexico, the Spanish version governs to the extent of
an inconsistency. Elsewhere, the English version governs unless mandatory law
requires another result.

This EULA is governed by the laws of the United Mexican States, without regard
to conflict-of-law rules. This choice does not deprive a consumer of mandatory
protections or forums available under the law of the consumer's habitual
residence. For business Licensees, disputes are submitted to the competent
courts of Hermosillo, Sonora, Mexico, unless applicable law requires otherwise.


13. ENTIRE AGREEMENT; SEVERABILITY; CHANGES

This EULA, the version of the Terms of Sale accepted at checkout, and any
applicable third-party notices form the agreement concerning the licensed use of
TPS Repair. A purchase receipt or Dodo buyer term governs payment-processing
matters but does not expand the software license.

If a provision is unenforceable, it is modified only to the minimum extent
necessary and the remaining provisions continue in effect. A later EULA does
not retroactively replace the version accepted for an existing perpetual
license unless you affirmatively accept it or a change is required by law; a new
software version or a Support & Updates Renewal may be offered under new terms
disclosed before acceptance.


14. CONTACT

Licensor and product provider:
Sistemas de Computación Accesibles del Noroeste, S.C.
La Cieneguita 37, Col. Santa Fe, C.P. 83249
Hermosillo, Sonora, México
Product and order support: tpsrep@sca.mx

Standard support covers installation and operation assistance, without guaranteed emergency response.

TPS Repair recupera registros legibles de archivos Clarion TopSpeed (.TPS) dañados. También adapta archivos existentes a una nueva versión de su aplicación, incluso para resolver el Error 47 después de una actualización. Puede procesar un archivo o todos los archivos .TPS de una carpeta.

El programa crea y verifica un archivo nuevo antes de reemplazar el original. Una copia con licencia conserva un respaldo al reemplazar archivos. Una copia de evaluación guarda una muestra y deja intacto el original.

Antes de empezar

  • Cierre la aplicación que usa los archivos. TPS Repair necesita acceso exclusivo y permisos para leer, escribir y renombrar archivos en la carpeta de datos.
  • Tenga a la mano las contraseñas de propietario de los archivos protegidos.
  • Para recuperar archivos dañados, deje vacía la Estructura del archivo (opcional), salvo que TPS Repair le pida una. Para adaptar los archivos a una nueva versión de la aplicación, seleccione el .EXE o la .DLL de esa versión.

TPS Repair funciona sin instalación, activación ni acceso a la red. No puede recuperar registros eliminados.

Reparar un archivo

Abra TpsRep.exe:

TPS Repair con los selectores de archivos, la lista de contraseñas y el botón Reparar

  1. Presione Archivo... junto a Archivo o carpeta a procesar. Seleccione el archivo .TPS dañado, o arrástrelo desde el Explorador hasta ese cuadro.
  2. Deje vacía la Estructura del archivo (opcional). Si TPS Repair le pide una, consulte Si el archivo perdió su estructura.
  3. Si el archivo está protegido, escriba su contraseña en el cuadro debajo de la lista Contraseñas de propietario. Presione Agregar.
  4. Presione Reparar.

La parte inferior de la ventana muestra la etapa actual y el avance. Los archivos grandes pueden tardar varios minutos. Al terminar la reparación, el reporte se abre en su navegador. El panel central también muestra un resumen.

Con la configuración predeterminada, una copia con licencia reemplaza el original si la reparación no requiere confirmar pérdida de datos. Si hace falta esa confirmación, TPS Repair pregunta primero. Consulte Dónde quedaron sus archivos para localizar el resultado y el respaldo.

Reparar una carpeta

  1. Presione Carpeta... junto a Archivo o carpeta a procesar. Seleccione la carpeta de datos, o arrástrela desde el Explorador hasta ese cuadro.
  2. Deje vacía la Estructura del archivo, salvo que necesite una estructura externa. Puede seleccionar un archivo fuente o una carpeta con varios. Una sola fuente, como el .EXE o la .DLL de su aplicación, puede describir varios o todos los archivos dañados.
  3. Agregue las contraseñas de propietario necesarias y presione Reparar.

TPS Repair procesa los archivos .TPS que están directamente en la carpeta seleccionada. No busca en subcarpetas. Prepara y verifica los archivos reparados antes de reemplazar cualquier original.

Selección de archivos y casos excepcionales

Para reparar varios archivos, seleccione su carpeta. Si arrastra varios archivos de la misma carpeta, el programa ofrece seleccionar la carpeta completa, incluidos los archivos que no arrastró. No se pueden seleccionar juntos archivos de distintas carpetas.

Un archivo protegido se puede omitir si ninguna contraseña disponible lo abre. En la ventana, TPS Repair permite introducir una contraseña, omitir ese archivo, omitir todos los protegidos o detenerse. Las ejecuciones desatendidas omiten los archivos protegidos de forma predeterminada; use --stop-on-protected-files para detenerse en ese caso. Si se omiten todos los archivos, el código de salida es 10.

Los archivos ilegibles, dañados o en uso que no se puedan procesar hacen que falle la reparación de la carpeta. No se reemplaza ningún original. Un archivo TPS válido y vacío se reconstruye y verifica normalmente.

Resultados y respaldos de carpetas

Antes de reemplazar los archivos, TPS Repair crea y verifica un ZIP de respaldo con todos los .TPS originales encontrados en la carpeta, incluidos los protegidos que se omitieron. Después, los archivos reparados toman sus nombres originales. Los archivos omitidos quedan intactos.

Si rechaza el reemplazo o usa --no-replace, los archivos reparados se guardan en un ZIP separado con sus nombres originales. Los archivos omitidos no se incluyen.

Las fallas anteriores al reemplazo dejan intactos los originales. Si falla el reemplazo, TPS Repair intenta restaurarlos. Si la reversión queda incompleta, conserva el respaldo verificado e indica las rutas necesarias para la recuperación manual.

Resolver el Error 47 después de actualizar la aplicación

Una nueva versión de una aplicación Clarion puede mostrar Error 47: Invalid Record Declaration cuando la estructura que necesita no coincide con la de los archivos TPS existentes. Use TPS Repair para adaptar esos archivos a la estructura que requiere la nueva aplicación.

Cierre la aplicación y abra TpsRep.exe. Agregue las contraseñas de propietario que necesiten los archivos de datos y siga estos pasos:

  1. Presione Carpeta... junto a Archivo o carpeta a procesar y seleccione la carpeta de datos de la aplicación.
  2. Presione Archivo... junto a Estructura del archivo (opcional) y seleccione el .EXE o la .DLL de la nueva versión de la aplicación.
  3. Presione Reparar.

Seleccione el archivo que contiene las declaraciones de las tablas. Si están en una DLL, seleccione esa DLL. Un solo EXE o DLL puede describir todos los archivos TPS de la carpeta.

TPS Repair lee la estructura actual de cada archivo TPS y lo reconstruye con la estructura declarada por el nuevo programa. Convierte los registros y verifica que los archivos reconstruidos coincidan con la estructura seleccionada.

Con una copia con licencia y la configuración de reemplazo predeterminada, los archivos verificados reemplazan a los originales, que se conservan en un ZIP de respaldo. Si los cambios requieren confirmar pérdida de datos, el programa pregunta antes del reemplazo. Revise los cambios de campos y Resultado guardado en el reporte. Después, abra los archivos con la aplicación actualizada. Las copias de evaluación guardan muestras y dejan intactos los originales.

Para conocer las reglas de conversión y otras fuentes de estructura, consulte Reparar hacia una estructura más nueva. El artículo del sitio explica por qué ocurre el Error 47.

Dónde quedaron sus archivos

Revise primero Resultado guardado, cerca del principio del reporte HTML. Ahí se indica si los archivos reparados ya están en su lugar o si los originales siguen intactos. El reporte también muestra las rutas del resultado y del respaldo.

Los archivos se guardan junto al archivo de entrada. Los ZIP de una reparación de carpeta se guardan dentro de la carpeta seleccionada. Los nombres automáticos tienen estas formas:

<nombre>_repaired_yyyy-mm-dd_hh-mm.zip     ZIP del archivo reparado
<nombre>_original_yyyy-mm-dd_hh-mm.zip     ZIP de respaldo del original
<nombre>_evaluation_yyyy-mm-dd_hh-mm.zip   ZIP de muestra de evaluación
<nombre>_report_yyyy-mm-dd_hh-mm.html      Reporte de la reparación
<carpeta>_repaired_yyyy-mm-dd_hh-mm.zip    Archivos reparados por separado
<carpeta>_original_yyyy-mm-dd_hh-mm.zip    Respaldo de la carpeta
  • Reemplazo de un archivo: el archivo reparado toma el nombre del original. El original se conserva dentro del ZIP _original_ con su nombre original.
  • Reparación de un archivo sin reemplazo: el original sigue en su lugar. Extraiga el ZIP _repaired_ para usar el archivo recuperado con su nombre original.
  • Reemplazo de una carpeta: los archivos reparados toman sus nombres originales. Los originales se conservan en archivos ZIP _original_ verificados.
  • Reparación de una carpeta sin reemplazo: use los archivos del ZIP _repaired_.
  • Evaluación: las muestras de un solo archivo se guardan en un ZIP _evaluation_; las muestras de carpeta siguen siendo archivos TPS separados. Los originales quedan intactos. Consulte los límites de la muestra en Evaluación y licencia.

Los ZIP de respaldo de un solo archivo se verifican antes del reemplazo. Si el reemplazo falla, TPS Repair intenta restaurar el original y guarda el resultado reparado en un ZIP separado. Si falla el archivado o la restauración, el reporte identifica el ZIP o archivo de trabajo conservado para la recuperación.

Los nombres automáticos nunca sobrescriben archivos existentes. Si un nombre ya está en uso, se agrega _2, _3 y así sucesivamente. Las extensiones de los archivos generados conservan las mayúsculas o minúsculas de la entrada. Una ruta de reporte explícita, indicada con --report <ruta> o ReportPath, reemplaza cualquier archivo que ya exista en esa ruta.

Los nombres automáticos de los reportes usan la hora de inicio de la reparación. El pie del reporte HTML muestra el inicio, el fin y la duración en horas, minutos y segundos. Las horas corresponden a la hora local. La duración incluye la espera de confirmación del reemplazo y termina antes de generar el reporte. Guardar el reporte de nuevo conserva esas horas.

Cómo leer el reporte

Empiece por Resultado guardado. Después revise las cifras de registros y los Hallazgos de recuperación. En un reporte de carpeta, use el filtro para localizar un archivo. Expanda un archivo o una tabla para ver sus detalles.

Las cifras principales describen distintas partes de la reparación:

  • Registros recuperados: registros legibles reconstruidos a partir del archivo dañado.
  • Registros escritos: registros guardados correctamente en el archivo reparado.
  • Registros recuperados no escritos: registros recuperados que no se guardaron. Los reportes de evaluación distinguen el límite de la muestra de los registros rechazados durante la escritura.
  • Registros declarados no alcanzados: diferencia entre el conteo almacenado que todavía se puede leer en el original y los registros alcanzados por el análisis de recuperación.
  • Áreas dañadas: regiones ilegibles encontradas en el archivo. No es una cifra de registros perdidos.

Por ejemplo, recuperar y escribir 285 registros de un archivo cuyo conteo almacenado es 288 deja un faltante de tres. No significa que tres registros recuperados no se hayan podido guardar.

Los Hallazgos de recuperación explican problemas como duplicados rechazados, adjuntos dañados, estructuras ausentes y conversiones de campos. Haga clic en una cifra con enlace para ver los campos, índices o tablas afectados.

Un adjunto es el contenido de un campo memo o BLOB. Un adjunto dañado se deja vacío de forma predeterminada y se guarda el resto del registro. Con --skip-damaged, se omite el registro completo. Un registro rechazado por un índice único también queda recuperado pero no escrito. Ninguno de estos casos pertenece a Registros declarados no alcanzados.

Las cifras de adjuntos dañados cuentan cada campo afectado en cada registro. Las cifras de cambios de estructura cuentan campos o índices. Por eso, un mismo campo puede contribuir varias veces al total de adjuntos dañados.

Los ejemplos de antes y después muestran cambios observados en los valores, con hasta dos ejemplos por campo afectado. Una celda de ejemplo vacía significa que no se registró un ejemplo; no demuestra que todos los valores hayan quedado iguales. Los cambios en adjuntos muestran longitudes, no su contenido. Las listas de detalle muestran hasta 25 entradas por grupo; los totales siguen siendo completos.

Un conteo original sin confirmar significa que el controlador TopSpeed no pudo contar de forma independiente los registros de la tabla dañada. El conteo recuperado sigue siendo el del análisis de recuperación, pero se desconoce el total original.

Las muestras de evaluación muestran datos recuperados de la entrada. Una fila mostrada puede no estar en el archivo de muestra guardado. Las flechas indican valores asignados a un registro escrito. Los bytes de control aparecen como códigos decimales entre signos de menor y mayor que.

Presione Guardar reporte... para conservar el resultado que aparece en la ventana, incluido el error y el código de soporte de una reparación fallida. El navegador puede estar mostrando una vista previa temporal; guardar le permite elegir una ubicación permanente.

En scripts, use --report para un nombre automático o --report <ruta> para una ubicación específica. El formato predeterminado es HTML. Use --report-format text para texto sin formato. Una extensión .html, .htm, .txt o .log en la ruta tiene prioridad sobre la opción de formato. Los reportes HTML incluyen todo lo necesario para abrirlos sin conexión.

La ventana siempre abre un resultado HTML. Si pidió un reporte de texto, guarda ese archivo y abre una vista previa HTML aparte. Windows administra las vistas previas temporales. Para guardar un reporte en otro idioma, cambie el idioma y guarde otra copia.

Lo que le pregunta el programa

Las preguntas aparecen cuando la reparación necesita una decisión:

  • Pérdida de datos: elija entre reemplazar el original o guardar el resultado reparado por separado. El reporte describe la pérdida.
  • Adjuntos dañados: elija entre conservar cada registro afectado con su adjunto dañado vacío u omitir el registro completo. La respuesta se aplica al resto de la reparación, incluidos los demás archivos de una carpeta.
  • Contraseña faltante: escriba una contraseña o elija cómo tratar los archivos protegidos de la carpeta.
  • Estructura faltante: seleccione una fuente que describa el archivo dañado.

Use --no-replace para guardar siempre el resultado por separado. Si se necesita confirmar pérdida de datos, --yes permite el reemplazo y --no lo rechaza. Estas opciones no eliminan los límites de evaluación.

Las ejecuciones desatendidas usan --no-gui. Rechazan los reemplazos que requieren confirmación, salvo que se indique --yes. De forma predeterminada, conservan los registros con sus adjuntos dañados vacíos y omiten los archivos protegidos. Use --skip-damaged o --stop-on-protected-files para cambiar esas decisiones. Las políticas configuradas también suprimen las preguntas correspondientes en la ventana.

Si el archivo perdió su estructura

La estructura describe las tablas, los campos y los índices del archivo. TPS Repair normalmente la lee del archivo dañado. Si esa estructura no sirve, seleccione una de estas fuentes en Estructura del archivo y repare de nuevo:

  • una copia funcional del mismo .TPS, por ejemplo, un respaldo;
  • un archivo fuente .CLW que contenga su declaración;
  • el .EXE o la .DLL de Clarion que lo declare;
  • una carpeta que contenga cualquiera de estas fuentes.

Una fuente puede describir más de un archivo dañado. En las carpetas de estructuras solo se buscan archivos .TPS, .CLW, .EXE y .DLL del primer nivel. Cada archivo dañado debe coincidir con una fuente utilizable. Si ninguna coincide, o coinciden varias, TPS Repair intenta usar la estructura del archivo dañado e informa de ello en el reporte.

La misma lista de contraseñas de propietario se usa para los archivos dañados y para los archivos TPS que proporcionan estructuras.

Validar una estructura proporcionada

Si no se puede leer la estructura propia del archivo dañado, la estructura proporcionada debe coincidir con la versión que escribió sus registros. Una estructura más nueva no sustituye la original perdida.

TPS Repair comprueba cada registro recuperado con la estructura seleccionada antes de escribir el resultado. Una longitud, codificación de campo o referencia de adjunto incompatible detiene la reparación con TR-108. Esta comprobación no se puede omitir. Una vez seleccionada la estructura, un registro incompatible detiene la reparación; no se prueban otras fuentes.

Superar la comprobación no demuestra que los campos del mismo tamaño tengan el significado correcto. Revise los datos recuperados antes de aceptar el resultado. Los daños en el contenido de un adjunto declarado siguen la política normal de adjuntos.

Usar un archivo .CLW

Use declaraciones FILE de TopSpeed autocontenidas. Se admiten tamaños literales y de EQUATE locales, RECORD, GROUP anidados, DIM, OVER, KEY/INDEX, MEMO y BLOB.

El lector no expande includes. Ignora el contenido ajeno a las declaraciones y rechaza aquellas cuyo diseño no se puede resolver.

Usar un programa (.EXE o .DLL)

Seleccione el archivo que contiene las declaraciones. TPS Repair lo lee sin ejecutar el programa ni cargar sus DLL. Las DLL relacionadas no se abren automáticamente: seleccione la DLL directamente si contiene las declaraciones.

Se admiten los formatos FILE de Win32 verificados con muestras de Clarion 5.5, 6, 9, 11 y 11.1. La compatibilidad depende del formato real del archivo; no se garantiza que funcione cualquier compilación de Clarion. Se rechazan los formatos no compatibles, incluidos los programas de 64 bits, los empaquetados y los que no son de Clarion.

TPS Repair busca coincidencias por prefijos recuperados, identidades de tablas, nombres físicos de archivos y etiquetas FILE. Las declaraciones equivalentes se agrupan. Las coincidencias ambiguas detienen la reparación y se enumeran para su revisión. Se ignoran las contraseñas incluidas en el programa.

Reparar hacia una estructura más nueva

Para actualizar una carpeta, siga los pasos de Resolver el Error 47 después de actualizar la aplicación. Para actualizar un solo archivo, use Archivo... junto a Archivo o carpeta a procesar en lugar de seleccionar una carpeta.

También puede proporcionar un .TPS funcional o una declaración .CLW con la nueva estructura. Los archivos TPS existentes deben conservar una estructura legible para interpretar correctamente los registros anteriores. Use el modo de evaluación o --no-replace para revisar el resultado convertido antes de reemplazar los originales.

Reglas de coincidencia y conversión de campos

La estructura anterior se usa para leer los registros; la estructura seleccionada define el resultado. Los campos se emparejan primero por el NAME físico y después por su etiqueta, sin distinguir mayúsculas de minúsculas. Los campos reordenados conservan sus valores. Los nuevos se dejan vacíos y los eliminados se descartan.

Los valores se asignan con las conversiones de tipos de Clarion. Los archivos adjuntos solo pueden convertirse en archivos adjuntos. Una conversión requiere confirmar pérdida de datos si el tipo, tamaño, dimensión, rango o precisión nuevos no pueden representar todos los valores posibles del tipo anterior. Esto incluye las conversiones de texto a número, aunque los valores del archivo actual se conviertan exactamente.

Las estructuras deben contener el mismo número de tablas. En archivos de varias tablas, se emparejan por prefijo o identidad lógica; el resultado usa los nombres de tabla de la estructura seleccionada.

Contraseñas de propietario

Escriba una contraseña debajo de la lista Contraseñas de propietario y presione Agregar. Repita para las demás contraseñas. Seleccione una entrada y presione Quitar para eliminarla.

Presione Guardar contraseñas para conservarla en futuras ejecuciones. Agregar o quitar entradas no guarda la lista automáticamente. La lista guardada se carga tanto en la ventana como en ejecuciones por línea de comandos.

Las contraseñas se guardan cifradas en la sección [Owners] de TpsRep.ini, junto a TpsRep.exe. Al guardar se conservan las demás secciones. El cifrado impide la lectura casual, pero la clave está incluida en la aplicación para que la lista pueda usarse en otros equipos. Trate el INI como información confidencial: no es una bóveda de contraseñas. Las entradas inválidas o modificadas se omiten con una advertencia.

En scripts, repita --owner <contraseña> o --owner-file <ruta> en el orden en que deban probarse. Cada archivo de contraseñas aporta su primera línea no vacía. Las entradas de la línea de comandos se prueban antes que las guardadas. Se omiten los duplicados exactos de la lista guardada. Las contraseñas pasadas directamente en la línea de comandos pueden ser visibles para otros procesos locales.

Evaluación y licencia

Todas las licencias de pago usan el mismo software, sin límites por archivo ni por registro:

  • Empresa: uso interno: una empresa que trabaja con sus propios datos, con personas y equipos ilimitados. No cubre trabajos para clientes.
  • Consultor individual: un operador designado que trabaja con los datos del titular y para clientes y equipos ilimitados. Soporte puede asignar un operador sustituto permanente para el mismo titular; el puesto no se puede compartir ni rotar.
  • Consultoría: cualquier número de operadores autorizados de una consultoría, que trabajan con sus propios datos y para clientes y equipos ilimitados.

Los consultores pueden usar TPS Repair en equipos de sus clientes y entregar los archivos de datos resultantes, pero los clientes no pueden recibir el ejecutable con licencia para su propio uso. Escriba a tpsrep@sca.mx sobre redistribución, inclusión por proveedores o licencias OEM.

Todas las licencias incluyen doce meses de actualizaciones y soporte. Las versiones publicadas durante esa cobertura son suyas para siempre y funcionan sin conexión. El soporte cubre la instalación y el uso de TPS Repair. Excluye recuperación personalizada, análisis forense, revisión de datos de clientes, desarrollo a medida y respuesta de emergencia garantizada.

Los precios vigentes, las renovaciones y las ampliaciones están en https://tpsrep.com/es/buy. Su página privada de descarga muestra los precios de renovación y ampliación que corresponden a su licencia.

Una evaluación analiza todo el archivo dañado y mide los resultados de la recuperación. Crea y verifica archivos TPS de muestra que puede abrir con su propia aplicación.

Los límites son:

  • Cada tabla guarda la mitad de sus registros recuperables, redondeada hacia arriba, hasta un máximo de 500 registros. Se toman en el orden de recuperación. Se incluyen los datos legibles de memo y BLOB.
  • Las reparaciones de carpeta reportan todos los archivos elegibles, pero solo conservan las primeras tres muestras de evaluación.
  • Los originales nunca se reemplazan. Las opciones de reemplazo no tienen efecto.
  • Siempre se guarda un reporte, incluso sin --report.

El reporte distingue el límite de evaluación de los registros rechazados al escribir. Una licencia elimina los límites de la muestra; no garantiza que los registros rechazados se puedan guardar. Las evaluaciones devuelven el código de salida 4 y el código de soporte TR-500.

Compre una licencia en https://tpsrep.com/buy. Recibirá un TpsRep.exe firmado, personalizado con el nombre confirmado del titular, nivel de licencia e ID público de licencia. Sustituya el ejecutable de evaluación por esa copia. No requiere activación ni un archivo de licencia aparte. Las licencias no vencen ni requieren acceso a la red. El nombre del titular y el ID público de licencia aparecen en la aplicación y en los reportes.

Ejecutarlo desde un script

TpsRep.exe
TpsRep.exe --gui [archivo-o-carpeta [opciones]]
TpsRep.exe archivo-o-carpeta [opciones]

Sin argumentos se abre la ventana. --gui la abre con los valores indicados, lista para que presione Reparar.

Use --no-gui en ejecuciones desatendidas, o configure NoGui=true en el INI. De lo contrario, el programa muestra el avance y espera a que alguien cierre el diálogo de resultado. El programa no lee ni escribe en una consola. Los resultados desatendidos se obtienen mediante el código de salida y el reporte, si está habilitado.

Ejemplos:

TpsRep.exe C:\datos\pedidos.tps --no-gui --report
TpsRep.exe C:\datos --structure C:\app\miapp.exe --no-replace --no-gui --report
TpsRep.exe C:\datos\pedidos.tps --owner-file C:\llaves\owner.txt --yes --no-gui --report

Opciones:

--structure <ruta>          Fuente de estructura: .TPS, .CLW, .EXE, .DLL o carpeta.
--owner <contraseña>        Contraseña de propietario. Se puede repetir.
--owner-file <ruta>         Lee una contraseña de la primera línea no vacía.
--yes                      Permite reemplazar si se requiere confirmar pérdida de datos.
--no                       Rechaza reemplazar si se requiere confirmar pérdida de datos.
--no-replace               Guarda siempre el resultado reparado por separado.
--no-gui                   Ejecuta sin ventanas ni preguntas.
--skip-damaged             Omite registros con adjuntos dañados.
--stop-on-protected-files  Detiene la carpeta si no se puede abrir un archivo protegido.
--report [ruta]            Guarda un reporte; omita la ruta para un nombre automático.
--report-format <tipo>     html (predeterminado) o text; txt y log también son text.
--batch-size <número>       Registros por lote de escritura. Predeterminado: 10000.
--language <código>        auto (predeterminado), en o es.
--help | -h | /?           Muestra la ayuda en un diálogo de Windows.

Códigos de salida

0   Reparación terminada
2   Reparación terminada con pérdida de datos reportada
3   Reemplazo rechazado
4   Evaluación terminada; originales intactos
10  Argumentos inválidos, sin estructura utilizable o todos los archivos omitidos
20  Falló la reparación o su verificación
30  Falló el acceso, el reemplazo, el respaldo o la reversión

Configuración

Cree TpsRep.ini junto al TpsRep.exe que ejecuta. También puede crearlo con Guardar contraseñas y editarlo después. El programa siempre usa esa ubicación, aunque se ejecute desde otra carpeta.

Agregue una sección [Options] con los valores predeterminados que necesite:

[Options]
Structure=definiciones\miapp.exe
ReplacementPolicy=NeverReplace
Gui=false
NoGui=true
SkipDamaged=false
StopOnProtectedFiles=true
Report=true
ReportPath=reportes\ultimo.html
ReportFormat=html
BatchSize=10000

Todas las claves son opcionales y no distinguen mayúsculas de minúsculas. Los valores booleanos aceptan true/false, yes/no o 1/0. Las rutas relativas de Structure y ReportPath parten de la carpeta del INI.

ReplacementPolicy acepta:

  • AskOnLoss: pregunta antes de reemplazar si se requiere confirmar pérdida de datos. Es el valor predeterminado.
  • ReplaceOnLoss: permite ese reemplazo, como --yes.
  • KeepOnLoss: rechaza ese reemplazo, como --no.
  • NeverReplace: guarda siempre por separado, como --no-replace.

Gui y NoGui no pueden ser ambas verdaderas. ReportPath y ReportFormat requieren Report=true. Sin ReportPath, un reporte habilitado recibe un nombre automático. ReportFormat acepta html, text, txt o log.

Las opciones explícitas de la línea de comandos tienen prioridad sobre sus valores correspondientes del INI. Las opciones sin inverso en la línea de comandos, como Report=true, SkipDamaged=true y StopOnProtectedFiles=true, siguen activas hasta que se edite el INI.

Las claves desconocidas o duplicadas, los valores inválidos y las opciones incompatibles detienen la ejecución con el código de salida 10 y TR-130, TR-131 o TR-132. Un INI inválido puede producir un diálogo incluso con --no-gui, porque se lee antes de que se apliquen esas opciones.

Ejecutar sin argumentos siempre abre la ventana. Las políticas de reparación configuradas se aplican al presionar Reparar. Guarde las contraseñas con Guardar contraseñas, no en [Options].

La sección [Preferences]

El selector de idioma guarda su elección por separado:

[Preferences]
Language=auto

Use auto, en o es. Un valor no reconocido usa la configuración de idioma de Windows. Puede dejar este valor preparado para una instalación. Si no se puede escribir el INI, se muestra TR-408 y la elección dura solo durante la sesión actual.

Idioma

Elija English, Español o la opción automática en la esquina inferior izquierda de la ventana. La interfaz cambia de inmediato y los reportes posteriores usan el idioma seleccionado. Los reportes ya guardados conservan su idioma original.

El idioma se determina en este orden:

  1. --language para la ejecución actual.
  2. Language en la sección [Preferences] del INI.
  3. La configuración de idioma de Windows.

auto usa Windows. Elige español si el idioma de presentación o el regional es español; en cualquier otro caso, elige inglés.

Los códigos de soporte y las líneas de reporte legibles por máquina no cambian. El texto técnico de Details: no se traduce. Los diálogos de archivos y carpetas siguen a Windows. Use --language en si un script depende de la prosa en inglés del reporte.

Carpetas de trabajo y archivos de ejecución

TPS Repair escribe los datos recuperados en una carpeta de trabajo TPS-Repair junto al archivo de entrada, o dentro de la carpeta de datos seleccionada. Verifica la estructura del resultado y vuelve a abrir cada tabla con el controlador TopSpeed para confirmar los registros escritos antes del reemplazo.

Una carpeta de trabajo existente se reutiliza solo si está vacía y permite escribir. De lo contrario, se usa un nombre numerado, como TPS-Repair_1. El contenido existente queda intacto.

La carpeta de trabajo normalmente se elimina al terminar la ejecución. Si un archivo reparado y verificado no se puede mover a su ubicación final, o no se puede completar una reversión, TPS Repair conserva los archivos necesarios e indica sus rutas. Una falla del programa o un corte de energía también pueden dejar una carpeta de trabajo. Las ejecuciones posteriores respetan las carpetas de trabajo que contengan archivos.

Ejecutable y documentos incluidos

TpsRep.exe es una aplicación Win32 nativa. El equipo de destino no necesita compilador de Clarion ni entorno de ejecución .NET. Pruebe la evaluación en la versión de Windows y el equipo donde necesite usar el programa.

La aplicación y el soporte ZIP se enlazan dentro del ejecutable. Se ejecuta sin extraer DLL ni crear un caché de la aplicación. La configuración permanece junto al ejecutable que inicia.

Cada ZIP se limita a menos de 2 GiB y 65,535 entradas. Al reparar carpetas, se crean ZIP adicionales si se excede el límite conservador de tamaño o entradas. Los archivos múltiples terminan en .part001.zip, .part002.zip, etcétera; cada uno se abre por separado y contiene archivos TPS completos. El reporte indica todas las partes. Extraiga todas en el mismo destino para recuperar el conjunto completo. Todas se verifican antes de reemplazar cualquier original. Si no se puede completar una reversión, conserve todo el conjunto de respaldo indicado en el reporte. Cada archivo TPS todavía debe caber dentro del límite conservador de un ZIP. Si un archivo lo excede, se rechaza antes de crear ZIP o reemplazar originales.

Conserve este manual con el ejecutable. Las entregas con licencia también incluyen TpsRep-legal.txt.

Lo que un reporte contiene de sus datos

Los reportes pueden contener valores de índices duplicados, hasta dos pares de valores de antes y después por campo modificado, y filas de muestra de evaluación. Se excluye el contenido de los adjuntos; sus cambios se reportan por longitud. Se excluyen las contraseñas y los comandos equivalentes las sustituyen por [redacted].

Los reportes de texto de un solo archivo también incluyen una bitácora técnica para diagnóstico local. Puede contener valores recuperados. No envíe reportes ni bitácoras a soporte.

Códigos de soporte

Indique el código TR-nnn entre corchetes al pedir ayuda.

TR-100  El primer argumento no era un archivo ni una carpeta.
TR-101  El archivo dañado ya no describe su estructura. Proporcione una.
TR-102  El archivo o la carpeta de estructura no existe.
TR-103  Ese tipo de archivo no da una estructura. Use .TPS, .CLW, .EXE o .DLL.
TR-104  Ese archivo no describe ninguna tabla TPS.
TR-105  No se encontraron registros legibles. El archivo puede estar truncado.
TR-106  La estructura y el archivo dañado describen distinto número de tablas.
TR-107  La estructura no se pudo convertir en una tabla funcional.
TR-108  La estructura describe otra tabla o no puede interpretar con seguridad cada registro recuperado.
TR-110  No hay archivos .TPS directamente en la carpeta. No se buscan subcarpetas.
TR-111  No hay fuentes de estructura directamente en la carpeta de estructura.
TR-112  Más de una estructura de la carpeta coincide. Indique el archivo exacto.
TR-113  Nada en la carpeta de estructura coincide.
TR-114  No se pudo abrir un archivo protegido, y se pidió detenerse.
TR-115  Todos los archivos de la carpeta parecen protegidos con contraseña.
TR-120  Ese archivo de programa no se puede leer para estructuras TPS.
TR-121  Ese programa describe varias tablas que podrían coincidir. Seleccione una estructura más específica.
TR-122  Ese archivo .CLW no se pudo leer como estructura TPS.
TR-130  Opción o formato de reporte no válido. Use --help.
TR-131  A una opción le faltó su valor, o el valor no se pudo usar.
TR-132  Se usaron juntas dos opciones que se contradicen.
TR-200  No se pudo leer el archivo dañado.
TR-201  El archivo reparado no pasó su verificación. No se reemplazó nada.
TR-202  El archivo está protegido y ninguna contraseña lo abrió.
TR-203  Un registro supera los 32,767 bytes que puede tener un archivo TPS.
TR-204  El archivo reparado no se pudo crear ni escribir.
TR-205  Un campo no se puede convertir al tipo que le da la estructura nueva.
TR-206  No se pudo crear ni eliminar la carpeta de trabajo de TPS Repair.
TR-301  Otro programa está usando el archivo.
TR-302  El archivo reparado no se pudo poner en lugar del original.
TR-303  El archivo reparado no se pudo renombrar. Está completo, en la ruta indicada.
TR-304  Falló el reemplazo de una carpeta. Revise si la reversión tuvo éxito.
TR-310  No se pudo crear el ZIP de respaldo.
TR-311  No se pudo escribir el ZIP de respaldo.
TR-312  El ZIP de respaldo no pasó su propia verificación.
TR-401  El cifrado de Windows no está disponible; no se usan las contraseñas guardadas.
TR-402  No se pudo determinar la ubicación del archivo de configuración.
TR-403  La lista de contraseñas guardadas está dañada y se ignoró.
TR-404  Algunas contraseñas guardadas no se pudieron leer y se omitieron.
TR-405  No se pudieron leer las contraseñas guardadas.
TR-406  No se pudo guardar la lista de contraseñas.
TR-407  La reparación terminó pero su reporte no se pudo escribir.
TR-408  El idioma elegido no se pudo guardar. Sigue aplicando en esta sesión.
TR-500  Esta es una copia de evaluación. No se escribió nada en su lugar.
TR-501  No se pudo leer la licencia de esta copia. Se ejecutó en modo de evaluación.
TR-9xx  Error interno. Contacte a soporte.

Cómo pedir ayuda

Presione Acerca de y después Copiar detalles. Envíe esos datos del producto, versión y licencia junto con:

  • su versión y arquitectura de Windows;
  • el mensaje de error exacto y el código TR-nnn, si la reparación se detuvo;
  • su referencia de pedido o entrega, si la consulta es sobre una entrega.

No envíe archivos TPS, resultados recuperados, reportes ni adjuntos. Soporte no inspecciona datos de clientes.

TPS Repair es publicado por Sistemas de Computación Accesibles del Noroeste, S.C., en https://tpsrep.com.

Software de terceros

TPS Repair incluye el analizador tps-parse adaptado (Apache-2.0), zlib y minizip (licencia zlib), compilados dentro de la aplicación. Presione Acerca de y después Licencias de código abierto para consultar los avisos completos.

Contrato de licencia

Este es el contrato en español incluido con TPS Repair.

TPS REPAIR: CONTRATO DE LICENCIA DE USUARIO FINAL
================================================================================
Versión 1.4 · Vigente desde el 19 de septiembre de 2026

Copyright © 2026 Sistemas de Computación Accesibles del Noroeste, S.C. Todos los derechos reservados.

TPS Repair es software comercial. Se otorga bajo licencia y no se vende. Este
contrato ("CLUF") se celebra entre Sistemas de Computación Accesibles del
Noroeste, S.C. ("SCA", "Licenciante", "nosotros") y la persona física o moral
identificada como licenciataria ("usted" o "Licenciatario"). Dodo Payments
actúa como merchant of record de la transacción de compra; SCA otorga y
administra la licencia del software y el derecho temporal de soporte y
actualizaciones.

Al aceptar afirmativamente este CLUF durante el checkout en línea aplicable, o
al instalar o utilizar una copia licenciada después de recibir una copia
duradera de este CLUF, usted acepta sus términos. Si una persona acepta por una
organización, declara contar con facultades para obligarla. Permanecen intactos
los derechos obligatorios del consumidor que no puedan renunciarse.


1. LICENCIA OTORGADA

Sujeto al pago exitoso, los Términos de Venta aplicables y este CLUF, SCA otorga
una licencia perpetua, no exclusiva e intransferible para el nivel indicado en
el registro de compra:

  EMPRESA: USO INTERNO
              Datos internos de una persona moral, con personal autorizado
              y equipos ilimitados. No incluye servicios para clientes.

  CONSULTOR INDIVIDUAL
              Un operador designado que actúa por el Licenciatario, sobre sus
              propios datos y para clientes ilimitados, en equipos ilimitados.
              Su nombre se registra en la licencia. Soporte puede registrar
              un sustituto permanente; no se permite rotar entre compañeros.
              Los operadores adicionales requieren ampliar a Consultoría.

  CONSULTORÍA Una persona moral, con varios empleados o contratistas
              autorizados que actúen por ella, sobre sus propios datos y para
              clientes ilimitados, en equipos ilimitados. Las afiliadas y
              empresas subcontratistas no reciben derechos independientes.

Todos los niveles de pago tienen las mismas capacidades técnicas, sin límites
de pago por archivo ni por registro. Cada persona moral requiere su licencia.
Los titulares de Consultor individual o Consultoría pueden operar TPS Repair
en equipos de clientes y entregar los archivos de datos resultantes, con la
autorización necesaria para tratar esos datos. No pueden entregar el ejecutable
licenciado para uso independiente del cliente. El uso independiente, la
inclusión por proveedores, la distribución OEM y la redistribución requieren
otra licencia o un convenio escrito. Solicite una cotización de licencia de
redistribución a tpsrep@sca.mx.

Las ampliaciones para el mismo titular cambian solo los derechos de uso. No
extienden cobertura ni dan derecho a versiones nuevas. La base de renovación
pasa a ser el precio de referencia del nivel de destino aceptado al ampliar.
Un reembolso o reverso de la ampliación restaura los derechos y base anteriores;
el ejecutable ampliado ya no puede usarse bajo los derechos revertidos.

SCA no presta mediante el sitio servicios de reparación, migración,
recuperación ni consultoría sobre archivos TPS. El sitio y el proceso de soporte
no incluyen una función para cargar contenido del cliente. Los niveles de consultoría
autorizan los servicios propios del Licenciatario; no convierte a SCA en parte de
esos servicios.


2. OPERACIÓN SIN CONEXIÓN; SIN ACTIVACIÓN

TPS Repair no exige activación, no contacta un servidor de SCA para funcionar,
no tiene telemetría y no vence. Sujeto a este CLUF, una versión licenciada puede
continuar funcionando sin conexión de red y sin contactar a SCA. El vencimiento
de un periodo de soporte y actualizaciones no elimina por sí solo el acceso
alojado a versiones entregadas válidamente con anterioridad. SCA puede retirar
un archivo alojado si termina la licencia subyacente o cuando sea razonablemente
necesario por un reembolso o reverso, problema de seguridad o integridad,
requisito legal, restricción de derechos de terceros, solicitud de eliminación
del comprador o terminación del servicio de redescarga alojado. SCA no puede
desactivar a distancia copias ya instaladas.


3. DERECHO DE SOPORTE Y ACTUALIZACIONES

La compra inicial de la licencia incluye soporte del producto y acceso a
versiones y actualizaciones elegibles de TPS Repair durante un periodo de doce
meses que comienza en la fecha de compra y termina el día natural inmediatamente
anterior al primer aniversario de esa fecha. La última versión obtenida
válidamente durante ese periodo permanece licenciada de manera perpetua bajo
este CLUF.

Una "Renovación de soporte y actualizaciones de TPS Repair" es una compra
opcional, separada y de pago único que extiende únicamente el derecho temporal
de soporte y actualizaciones. No renueva, reemplaza ni extiende la licencia
perpetua del software; no es una suscripción; y no se renueva automáticamente.

  • Si se compra mientras la cobertura sigue vigente, el nuevo periodo de doce
    meses se agrega después de la fecha de terminación existente para no perder
    tiempo ya pagado.
  • Si se compra después de terminar la cobertura, el nuevo periodo comienza en
    la fecha de compra de la renovación. Incluye la versión más reciente de TPS
    Repair generalmente disponible en esa fecha y las versiones y
    actualizaciones elegibles publicadas hasta terminar el nuevo periodo de
    doce meses.
  • No renovar no desactiva TPS Repair, no revoca una licencia perpetua
    existente ni impide seguir usando lícitamente la última versión obtenida
    válidamente.
  • Mientras la licencia perpetua relacionada permanezca vigente y SCA continúe
    operando el servicio de redescarga alojado, el vencimiento de cobertura no
    elimina por sí solo el acceso a compilaciones personalizadas entregadas
    válidamente con anterioridad. Este archivo alojado es independiente del
    soporte y del derecho a versiones nuevas y se rige por los Términos de Venta
    aplicables.

El soporte durante un periodo vigente cubre entrega, instalación, licencia y
preguntas ordinarias sobre el funcionamiento del producto. No incluye
reparación de datos, migración, análisis forense, desarrollo a la medida,
validación de datos empresariales ni revisión de contenido del cliente. Soporte
puede solicitar únicamente información de diagnóstico sin contenido, como
versión del producto, identificador público de licencia, versión de Windows,
texto exacto del error en pantalla y un código de diagnóstico sin contenido.

El vencimiento de un periodo comercial de soporte y actualizaciones no afecta
obligaciones obligatorias de seguridad, conformidad, actualización o remedio
que la ley aplicable no permita renunciar.


4. IDENTIFICACIÓN Y PERSONALIZACIÓN DEL LICENCIATARIO

Cada compilación licenciada puede mostrar:

  • el nombre confirmado del Licenciatario o su nombre de organización/comercial;
  • el nivel adquirido; y
  • un identificador público de licencia generado por SCA.

Esta información puede aparecer en la barra de título, ventana Acerca de y
encabezados de reportes. SCA no incorpora el correo del comprador, datos de
tarjeta ni el identificador completo de orden/pago de Dodo en el ejecutable o
los reportes. Usted no puede eliminar, alterar, ocultar ni falsificar el registro
de licencia incorporado.

Usted es responsable de confirmar la ortografía e idoneidad del nombre antes de
continuar al pago. El nombre mostrado no prueba que la persona o entidad nombrada
sea propietaria de los datos tratados con el software.


5. RESTRICCIONES Y COMPONENTES DE TERCEROS

Salvo cuando la ley aplicable o una licencia de terceros lo permita
expresamente, usted no puede:

  (a) redistribuir, publicar, vender, rentar, arrendar, sublicenciar, prestar o
      compartir una compilación licenciada, ni ponerla a disposición fuera del
      Licenciatario cubierto por el nivel comprado;
  (b) usar una licencia Empresa para prestar a terceros servicios de reparación,
      recuperación, migración o similares;
  (c) aplicar ingeniería inversa, descompilar o desensamblar TPS Repair;
  (d) modificar el programa o registro de licencia incorporado, ni intentar
      eludir, vencer, falsificar o suplantar la identificación de licencia; o
  (e) usar TPS Repair contra la ley o sin autorización para tratar los datos
      correspondientes.

Los componentes de terceros identificados en la sección de avisos de terceros
específica de la versión del archivo entregado "TpsRep-legal.txt" y en la vista
Licencias de código abierto de la ventana Acerca de se rigen por sus propias
licencias. Esas licencias prevalecen en la medida en que otorguen derechos
distintos de este CLUF.


6. MODO DE EVALUACIÓN

Una copia sin licencia puede funcionar en modo de evaluación. Este modo ayuda a
evaluar compatibilidad y los datos que el software parece poder recuperar antes
de comprar. No sobrescribe ni modifica el archivo TPS original. Los resultados
de evaluación no garantizan que cada registro o campo sea completo, correcto,
recuperable o apto para producción. Usted debe revisar y validar los resultados
importantes.


7. TRATAMIENTO DE DATOS Y RESPONSABILIDADES DEL USUARIO

TPS Repair procesa localmente los archivos seleccionados. No transmite su
contenido a SCA. Usted conserva la responsabilidad de contar con acceso lícito a
los datos de entrada, mantener respaldos independientes, preservar originales,
elegir destinos adecuados, probar la salida recuperada o migrada y decidir si es
apta para uso.

Nunca haga de TPS Repair, ni de otra herramienta de recuperación, la única copia
de datos importantes. Trabaje sobre copias y conserve el original y un respaldo
separado hasta validar independientemente la salida.


8. LÍMITES FUNCIONALES Y DERECHOS OBLIGATORIOS

Los datos dañados o estructuralmente incompatibles pueden estar incompletos, ser
inconsistentes o resultar irrecuperables. SCA no promete que TPS Repair recupere
todo archivo, registro, campo, clave, relación, memo, blob u otro elemento, ni
que los datos recuperados satisfagan una finalidad empresarial, contable,
regulatoria o probatoria determinada.

Nada en este CLUF excluye, limita o sustituye garantía, obligación de
conformidad, reembolso, reparación, reemplazo, reducción de precio,
indemnización u otro derecho que la ley aplicable no permita renunciar. Salvo
esos derechos obligatorios y los compromisos expresos de este CLUF y los
Términos de Venta, TPS Repair se proporciona sin garantías voluntarias
adicionales en la máxima medida permitida.


9. LIMITACIÓN DE RESPONSABILIDAD

Respecto de un consumidor, la responsabilidad de SCA no se excluye ni limita
cuando la ley aplicable no lo permita.

Respecto de un Licenciatario que compra principalmente con fines empresariales
o profesionales, y en la máxima medida permitida:

  (a) SCA no responde por pérdida indirecta, incidental, especial, punitiva o
      consecuencial, ni por pérdida de utilidades, ingresos, negocio,
      oportunidad, prestigio o ahorros previstos; y
  (b) la responsabilidad agregada de SCA derivada de TPS Repair, este CLUF y la
      transacción afectada se limita a la cantidad efectivamente pagada por la
      licencia o renovación de soporte y actualizaciones afectada, según
      corresponda.

Estas limitaciones empresariales no aplican a fraude, conducta dolosa,
negligencia grave cuando no pueda limitarse, muerte o lesiones cuando no puedan
limitarse, incumplimiento de confidencialidad o protección de datos, infracción
causada por SCA u otra responsabilidad que la ley no permita excluir o limitar.


10. REEMBOLSOS, REVERSOS Y TERMINACIÓN

No existe una política voluntaria general de reembolso por cambio de opinión
sujeta a un plazo fijo. Habrá reembolsos y otros remedios cuando los exija la ley
aplicable, conforme a los términos de comprador aplicables de Dodo Payments o
cuando Dodo Payments y/o SCA aprueben expresamente un remedio por falta de
entrega, falta de conformidad, pago duplicado u otro problema acreditado. Los
Términos de Venta explican cómo solicitar asistencia.

Un reembolso total confirmado, reverso, contracargo, cancelación u otra
anulación de la transacción original de licencia termina la licencia de software
y su derecho de soporte y actualizaciones, salvo confirmación escrita de SCA en
otro sentido. SCA puede deshabilitar la página privada y los archivos alojados
relacionados. Después de terminar, usted debe dejar de usar TPS Repair y eliminar
o destruir todas las copias licenciadas bajo su control.

Un reembolso total confirmado, reverso, contracargo, cancelación u otra
anulación de una Renovación de soporte y actualizaciones afecta únicamente el
derecho renovado. No termina la licencia perpetua preexistente ni el derecho de
seguir usando la última versión obtenida válidamente antes de esa renovación.
En la medida permitida por la ley aplicable, usted debe dejar de usar las
versiones suministradas por primera vez únicamente bajo la renovación anulada.
SCA puede restaurar la fecha de terminación anterior y retirar el acceso alojado
a versiones suministradas por primera vez únicamente bajo esa renovación. Las
compilaciones obtenidas válidamente antes de la renovación siguen sujetas a la
política del archivo de redescarga. SCA no puede desactivar a distancia una
copia instalada.

Un reembolso parcial no termina por sí solo una licencia o derecho. Su efecto lo
determinan la decisión escrita de reembolso y la ley aplicable.

La licencia también termina si usted incumple materialmente este CLUF y, cuando
proceda subsanar, no lo hace dentro de un plazo razonable después de recibir
aviso. Continúan vigentes las secciones que por su naturaleza deban sobrevivir,
incluidas restricciones, responsabilidad por uso anterior, limitaciones y ley
aplicable.


11. TRANSFERENCIA Y CAMBIO CORPORATIVO

La licencia no puede transferirse a otra persona física o moral sin aprobación
previa escrita de SCA. Una fusión, reorganización o venta de prácticamente todos
los activos relevantes no termina automáticamente la licencia, pero el sucesor
debe notificar a SCA y aceptar este CLUF; SCA puede pedir evidencia razonable de
sucesión y emitir una compilación personalizada de reemplazo.


12. IDIOMA, LEY APLICABLE Y FORO

Las versiones en español e inglés pretenden ser sustancialmente equivalentes y
comparten número de versión y fecha de vigencia. Para una transacción celebrada
en México, prevalece la versión en español en caso de inconsistencia. En otros
lugares prevalece la versión en inglés salvo que una norma obligatoria exija
otro resultado.

Este CLUF se rige por las leyes de los Estados Unidos Mexicanos, sin atender a
reglas de conflicto. Esta elección no priva a un consumidor de protecciones o
foros obligatorios disponibles bajo la ley de su residencia habitual. Para
Licenciatarios empresariales, las controversias se someten a tribunales
competentes de Hermosillo, Sonora, México, salvo disposición obligatoria en
otro sentido.


13. ACUERDO ÍNTEGRO; DIVISIBILIDAD; CAMBIOS

Este CLUF, la versión de los Términos de Venta aceptada en checkout y los avisos
de terceros aplicables forman el acuerdo sobre el uso licenciado de TPS Repair.
Un recibo o término de comprador de Dodo rige cuestiones de procesamiento de
pago, pero no amplía la licencia del software.

Si una disposición no es exigible, se modifica únicamente en la medida mínima
necesaria y las demás continúan vigentes. Un CLUF posterior no sustituye
retroactivamente la versión aceptada para una licencia perpetua existente salvo
aceptación afirmativa o exigencia legal; una versión nueva o una Renovación de
soporte y actualizaciones puede ofrecerse bajo términos nuevos revelados antes
de su aceptación.


14. CONTACTO

Licenciante y proveedor del producto:
Sistemas de Computación Accesibles del Noroeste, S.C.
La Cieneguita 37, Col. Santa Fe, C.P. 83249
Hermosillo, Sonora, México
Soporte del producto y órdenes: tpsrep@sca.mx

El soporte estándar cubre asistencia de instalación y operación, sin respuesta de emergencia garantizada.