> ## Documentation Index
> Fetch the complete documentation index at: https://docs.abbyy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Manejo de errores durante la exportación a PDF/XPS

> Gestione errores de exportación a PDF/XPS en ABBYY FineReader Engine (FREN_E_INVALID_CREATION_DATE_FORMAT, FREN_E_INVALID_MODIFICATION_DATE_FORMAT) causados por fechas de metadatos no compatibles con PDF 2.0.

Al exportar un documento a formato PDF o XPS, puede encontrarse con algunos errores específicos:

* FREN\_E\_INVALID\_CREATION\_DATE\_FORMAT;
* FREN\_E\_INVALID\_MODIFICATION\_DATE\_FORMAT.

Estos aparecen si la fecha de creación o de modificación especificada en los metadatos del documento no cumple con el estándar PDF 2.0. El formato de fecha correcto es D:YYYYMMDDHHmmSSOHH'mm, donde YYYY — el año, MM — el mes, DD — el día, HHmmSS — la hora, OHH'mm — el valor absoluto del desfase con respecto al Tiempo Universal.

Para gestionar errores de este tipo, puede cambiar la configuración de exportación de fechas o corregir la fecha para que se ajuste al formato.

Para cambiar la configuración de exportación de fechas:

1. Obtenga el subobjeto [DocumentContentInfoWritingParams](/es/fine-reader/engine/api-reference/parameter-objects/export-parameters/documentcontentinfowritingparams) del objeto de parámetros de exportación correspondiente a su formato de salida:
   * Para la exportación a PDF, puede usar la propiedad [PDFFeatures](/es/fine-reader/engine/api-reference/parameter-objects/export-parameters/pdfexportparams#pdffeatures) del objeto [PDFExportParams](/es/fine-reader/engine/api-reference/parameter-objects/export-parameters/pdfexportparams) para acceder al objeto [PDFExportFeatures](/es/fine-reader/engine/api-reference/parameter-objects/export-parameters/pdfexportfeatures) y, a continuación, usar su propiedad [MetaDataWritingParams](/es/fine-reader/engine/api-reference/parameter-objects/export-parameters/pdfexportfeatures#metadatawritingparams) para obtener el objeto [DocumentContentInfoWritingParams](/es/fine-reader/engine/api-reference/parameter-objects/export-parameters/documentcontentinfowritingparams).
   * Para la exportación a XPS, use la propiedad [MetaDataWritingParams](/es/fine-reader/engine/api-reference/parameter-objects/export-parameters/xpsexportparams#metadatawritingparams) del objeto [XPSExportParams](/es/fine-reader/engine/api-reference/parameter-objects/export-parameters/xpsexportparams).
2. Las propiedades [WriteCreationDate](/es/fine-reader/engine/api-reference/parameter-objects/export-parameters/documentcontentinfowritingparams#writecreationdate) y [WriteModificationDate](/es/fine-reader/engine/api-reference/parameter-objects/export-parameters/documentcontentinfowritingparams#writemodificationdate) del objeto DocumentContentInfoWritingParams especifican qué fechas deben guardarse en el documento de salida. En este caso, puede usar el valor WD\_No para deshabilitar el guardado de fechas y el valor WD\_Current para usar la fecha actual.
3. Vuelva a iniciar la exportación del documento usando, por ejemplo, el método [Export](/es/fine-reader/engine/api-reference/document-related-objects/frdocument/export-method) del objeto [FRDocument](/es/fine-reader/engine/api-reference/document-related-objects/frdocument), pasando como último parámetro de entrada el objeto de parámetros que acaba de configurar.

Para corregir la fecha:

1. Acceda al objeto [DocumentСontentInfo](/es/fine-reader/engine/api-reference/document-related-objects/documentcontentinfo) usando la propiedad [DocumentContentInfo](/es/fine-reader/engine/api-reference/document-related-objects/frdocument#documentcontentinfo) del objeto [FRDocument](/es/fine-reader/engine/api-reference/document-related-objects/frdocument).
2. Cambie la fecha en la propiedad [CreationDate](/es/fine-reader/engine/api-reference/document-related-objects/documentcontentinfo#creation_date) o [ModificationDate](/es/fine-reader/engine/api-reference/document-related-objects/documentcontentinfo#modification_date) del objeto DocumentСontentInfo.
3. Vuelva a iniciar la exportación del documento con el método [Export](/es/fine-reader/engine/api-reference/document-related-objects/frdocument/export-method) del objeto FRDocument.

<div id="samples">
  ## Ejemplos
</div>

<Note>
  Los ejemplos de código proporcionados en este tema son específicos de Windows.
</Note>

<Accordion title="Código C++">
  ```cpp theme={null}
  // Configure el objeto de parámetros de exportación para las fechas de creación y modificación
  FREngine::IPDFExportParamsPtr pdfExportParams = Engine->CreatePDFExportParams();
  pdfExportParams->PDFFeatures->MetaDataWritingParams->put_WriteCreationDate ( FREngine::WD_DocumentContentInfo );
  pdfExportParams->PDFFeatures->MetaDataWritingParams->put_WriteModificationDate ( FREngine::WD_DocumentContentInfo );
   
  // Corrija la fecha de creación o modificación y vuelva a exportar el documento
  const int numberOfExportAttempts = 3;
  for (int i = 0; i < numberOfExportAttempts; i++)
  {
    try
    {
       frDocument->Export( pdfExportPath, FREngine::FEF_PDF, pdfExportParams );
    }
    catch (_com_error & e)
    {
       if (e.Error() == (int) FREngine::FREN_E_INVALID_CREATION_DATE_FORMAT) {
           frDocument->DocumentContentInfo->put_CreationDate( L"D:20181011234506Z" );
       }
       else if (e.Error() == (int) FREngine::FREN_E_INVALID_MODIFICATION_DATE_FORMAT) {
           pdfExportParams->PDFFeatures->MetaDataWritingParams->put_WriteModificationDate ( FREngine::WD_Current );
       }
       else
       {
             // Restaure la excepción no controlada original y propáguela
             throw;
       }
    }
  }
  ```
</Accordion>

<Accordion title="Código C#">
  ```csharp theme={null}
  // Configure los parámetros de exportación para las fechas de creación y modificación
  FREngine.PDFExportParams pdfExportParams = engineLoader.Engine.CreatePDFExportParams();
  pdfExportParams.PDFFeatures.MetaDataWritingParams.WriteCreationDate = FREngine.WriteDateEnum.WD_DocumentContentInfo;
  pdfExportParams.PDFFeatures.MetaDataWritingParams.WriteModificationDate = FREngine.WriteDateEnum.WD_DocumentContentInfo;
   
  // Gestione dos tipos de errores de exportación, por lo que no debería haber más de 3 intentos de exportación
  const int numberOfExportAttempts = 3;
  for (int i = 0; i < numberOfExportAttempts; ++i)
  {
      try
      {
         document.Export( "D:\\Demo.pdf", FREngine.FileExportFormatEnum.FEF_PDF, pdfExportParams );
         break;
      }
      catch (COMException error)
      {
         if (error.ErrorCode == (int)FREngine.ErrorCodes.FREN_E_INVALID_CREATION_DATE_FORMAT)
         {
             // Corrija la fecha de creación
             document.DocumentContentInfo.CreationDate = "D:20181011234506Z";
         }
         else if (error.ErrorCode == (int)FREngine.ErrorCodes.FREN_E_INVALID_MODIFICATION_DATE_FORMAT)
         {
             // Cambie los parámetros de exportación de la fecha de modificación
             pdfExportParams.PDFFeatures.MetaDataWritingParams.WriteModificationDate = FREngine.WriteDateEnum.WD_Current;
         }
         else
         {
             // Restaure la excepción no controlada original y propáguela
             throw;
         }
      }
  }
  ```
</Accordion>

<div id="see-also">
  ## Consulte también
</div>

[DocumentСontentInfo](/es/fine-reader/engine/api-reference/document-related-objects/frdocument#documentcontentinfo)

[Códigos de retorno estándar](/es/fine-reader/engine/api-reference/return-codes)

[Ajuste de los parámetros de exportación](/es/fine-reader/engine/guided-tour/advanced-techniques/tuning-export-parameters)

[Gestión de errores](/es/fine-reader/engine/guided-tour/advanced-techniques/programming-aspects/error-handling)
