When you open a partly translated file to continue translating it, you may encounter the error message “Dependency file not found” with the question “Would you like to browse for this [i.e. the original] file?”.
What to do:
If you have the original source file, the simplest solution is to answer Yes to the question in the error message and locate the source file. But if you are working on a project package, you will normally not have any source files included. Here are two ways to proceed:
- Close the project in Studio. Go to the project’s TM file (where all your translations so far are stored) and re-name it (or if you want to be really safe, copy it to another location). Open the original .sdlproj file again (i.e. re-create the project from scratch). Then change the project settings to use your “old” TM instead of the newly created one, and run the batch task Pre-translate Files. (Whatever you do, do not just re-open the project package without safeguarding your TM, since the TM which is generated will overwrite the existing TM with the same name and you will have lost all your work.)
- Another method in both cases (project package or not) is to skip the source file matter and answer No to the question in the error message. You can then continue translating as usual, but you cannot Save Target As, Finalize, Generate Target Translations or Preview. What you can do, however, is make sure that the TM you produce is complete; i.e. does not contain any unconfirmed or un-translated segments.
Once you have done this, you can start from scratch using the TM you have just produced. Or, in case of a project package, follow the procedure described above.
There are other solutions, mostly to do with restoring the dependency files or repairing the .sdlxliff files, but to me they seem unnecessary complicated and not completely reliable.
Why this happens:
According to Knowledge Base #3897 (see below), a dependency file is created “when the original file is too large to be embedded in the .sdlxliff file”, and a ‘dependency file’ is then created which contains a link to the original file. The dependency file is stored as a temporary (.temp) file. However, some computer tune-up/diagnostics software will delete all .temp files unless they are instructed not to (you need to find out for yourself how to do that). It could also happen that the Windows hibernation function is the cause, in which case that particular energy option needs to be disabled.
Furthermore, you can adjust the Studio settings which control the file size leading to the creation of dependency files. Go to Files > Options > File Types > SDLXLIFF – General and move the ruler under “Embedding” to its maximum (100 MB). Why is the default value 20 MB, and will this change have any negative effects? I don’t know. (Thanks to Walter Blaser for pointing to this solution.)
There are two entries in the SDL Knowledge Base dealing with this problem:
Article 3897 (for project packages), and
Article 4731 (for a corrupted .sdlxliff file)
The latter describes (under Resolution) how to recreate the .sdlxliff file, which could be a useful option. It is, however, not primarily intended for the case when the dependency file is lost but when the .sdlxliff file for some reason is corrupted.