You are viewing limited content. For full access, please sign in.

Question

Question

RA Breifcase export

asked on July 2, 2015

I am trying to export a document to LF Briefcase using RA 9.2.  I tried to use the code sample from the SDK 9.2 documentation.

                // Create BriefcaseExporter object
                BriefcaseExporter be = new BriefcaseExporter(CurrentSession);
                // Create a Laserfiche 8 briefcase.
                be.Version = BriefcaseFormat.Version_8_0;
                // Keep path data
                be.PreserveFolderStructure = true;
                // Add the Entry
                be.AddEntry(iEntryID);
                // Export
                be.Export(System.IO.Path.Combine(sWinPath, sEntryName + ".lfb"));
                // Close BriefcaseExporter
                be.Close();

The Briefcase (.lfb) file gets created and the size grows during the export process and my code completes without errors.  But the Briefcase (.lfb) will not import.  When I go to the LF Server and look at the application event viewer, I see a warning related to the export which directs me to look in the logs folder.  Logged to file on the LF server is the following:

Server version: Laserfiche Content Repository Server 9.2.1 build 562
Client: RA_ExportToLFB_VCS_2010.vshost.exe (LFRA/9.2.0.315)
Briefcase name:
User: Bert

2015-07-02 09:26:35.953 Error: (0xC005041A) There was an error adding the image of a page to the briefcase.
  ID in repository: 2103904
  Name: "Roll 020"
  Page number: 360
  Transport Error Code: 65544
  Encoder Error Code #1: -1
  Encoder Error Code #2:

Then if I try to export the same document through the client, the resulting Briefcase is about 3 times bigger and will reimport.

What is wrong with my code and why does it fail to complete the export every time?

0 0

Answer

SELECTED ANSWER
replied on July 6, 2015

This appears to be a bug in RA briefcase export, it happens when exporting a large briefcase (>4GB). A bug report has been filed (SCR 129735). The workaround is to export the briefcase using LFSO.

1 0

Replies

replied on July 6, 2015

Thank you so much for all your help and assistence with this.

0 0
replied on October 26, 2015

I am having the same problem using Workflow to replicate an entry (very large) into another repository (which uses the briefcase function).  The file also fails trying to use Quickfields to copy the files between repositories.  This is supposed to be an automated process with thousands of files, so one off solutions won't work.  Any suggestions how to handle that or when a fix will be available?

0 0
replied on October 26, 2015

Quick Fields does not use RA or export briefcases. What exactly is the error there?

0 0
replied on October 26, 2015

Are you trying to set up QF with Repository A as the source for LF Capture and Repository B as Document destination and just processing with no briefcasing?

0 0
replied on October 26, 2015

Correct, QF is using repository A as the source and B as the target (no briefcasing).  QF doesn't actually throw an error, it just stops working.  Usually we have to use the taskmgr to close the session, then re-open and it will pick up and run for a while until it stops again.  We may get anywhere from 24-80 pages in before it stops.  Sometimes it runs all the way through.  These are very large files, so a document can be 5GB or more.  We can nurse it through, but it flaky.

0 0
replied on October 26, 2015 Show version history

You can use the COM (LFSO) DLL instead of .NET (RA).

Here is a sample LFSO function to export a LF Entry as a LF Briefcase

        private Boolean BriefcaseEntry(int iEntryID, String sWinPath)
        {
            Boolean bReturn = false;
            try
            {
                String sEntryName = null;
                ILFEntry CurrentEntry = LFDB.GetEntryByID(iEntryID);
                sEntryName = CurrentEntry.Name;
                CurrentEntry.Dispose();
                sEntryName = sEntryName.Replace(@"<", "_");
                sEntryName = sEntryName.Replace(@">", "_");
                sEntryName = sEntryName.Replace(@":", "_");
                sEntryName = sEntryName.Replace(@"""", "_");
                sEntryName = sEntryName.Replace(@"/", "_");
                sEntryName = sEntryName.Replace(@"\", "_");
                sEntryName = sEntryName.Replace(@"|", "_");
                sEntryName = sEntryName.Replace(@"?", "_");
                sEntryName = sEntryName.Replace(@"*", "_");
                // Create BriefcaseExporter object
                LFBriefcaseExporter exporter = LFDB.GetBriefcaseExporter();
                // Add the Entry
                exporter.AddEntry(LFDB.GetEntryByID(iEntryID));
                // Export
                exporter.Export(System.IO.Path.Combine(sWinPath, sEntryName + ".lfb"));
                // Clean up
                exporter.Close();
                exporter.Dispose();
                // Set return value = True
                bReturn = true;
            }
            catch (Exception ex)
            {
                // Log Error here.
                MyLogger.pLogWrite(ex.Message);
                // Set return value = False
                bReturn = false;
            }
            return bReturn;
        }

 

0 0
You are not allowed to follow up in this post.

Sign in to reply to this post.