Tablas y suscriptores
Esta sección pretende detallar la extensibilidad de la solución.
Se indicarán las tablas y los suscritores del sistema para facilitar la creación de extensiones que pueden utilizarse para adecuar la solución a las necesidades del cliente.
Tablas
Las tablas del sistema que almacenan los datos de Captio y permiten el registro de gasto se describen en los siguientes apartados.
Anticipos
Nombre de la tabla: INNCAPCoAdvanceCaption: AnticipoClave primaria: INNCAPCoNo
Gastos
Nombre de la tabla: INNCAPCoExpenseCaption: GastoClave primaria: INNCAPCoNo
Informes de gastos
Nombre de la tabla: INNCAPCoExpensesReportCaption: Informe de gastosClave primaria: INNCAPCoNo
Ejes analíticos
Nombre de la tabla: INNCAPCoAssignmentObjectCaption: Eje analíticoClave primaria: INNCAPCoCaptioId
Valores de ejes analíticos
Nombre de la tabla: INNCAPCoAssignmentObjectValueCaption: Valores eje analíticoClave primaria: INNCAPCoAssigObjectId, INNCAPCoCaptioId
Categorías
Nombre de la tabla: INNCAPCoCategoryCaption: CategoríaClave primaria: INNCAPCoCaptioId
Campos personalizados
Nombre de la tabla: INNCAPCoCustomFieldCaption: Campo personalizadoClave primaria: INNCAPCoCaptioId
Valores de campos personalizados
Nombre de la tabla: INNCAPCoCustomFieldValueCaption: Valores campo personalizadoClave primaria: INNCAPCoCustomFieldId, INNCAPCoCaptioId
Métodos de pago
Nombre de la tabla: INNCAPCoPaymentMethodCaption: Formas de pagoClave primaria: INNCAPCoCaptioId
Usuarios
Nombre de la tabla: INNCAPCoUserCaption: UsuarioClave primaria: INNCAPCoUserNo
Flujos de trabajo
Nombre de la tabla: INNCAPCoWorkflowCaption: WorkflowClave primaria: INNCAPCoCaptioId
Suscriptores
Los suscriptores del sistema permiten modificar los siguientes flujos de trabajo:
- Procesamiento de Anticipos
- Procesamiento de Gastos
- Procesamiento de Informes de gastos
- Procesamiento de Ejes analíticos
- Procesamiento de Campos personalizados
- Procesamiento de Categorías
- Procesamiento de Métodos de pago
- Procesamiento de Usuarios
- Procesamiento de Flujos de trabajo
Suscriptores Anticipos
OnBeforePostAdvance
INNCAPCoAdvancePost.OnBeforePostAdvance(var Advance: Record INNCAPCoAdvance; var IsHandled: Boolean)
Se ejecuta antes de registrar Anticipo.
Cuando se registra un anticipo, se resgistra a través de líneas de diario. Este Publisher permite omitir está acción. Para ello, es necesario que la variable IsHandled tenga el valor true.
OnBeforeInsertAdvanceGenJnlLine
INNCAPCoExpensePost.OnBeforeInsertAdvanceGenJnlLine(Expense: Record INNCAPCoExpense; var GenJnlLine: Record "Gen. Journal Line")
Se ejecuta antes del Insert de una Línea de diario al registrar un Gasto con anticipos.
Cuando se registra un gasto por línea de diario y tiene anticipos, este Publisher permite añadir acciones para que se ejecuten antes de este proceso.
OnAfterProcessAdvance
INNCAPCoProcessAdvance.OnAfterProcessAdvance(var Advance: Record INNCAPCoAdvance)
Se ejecuta después del Insert o el Modify de un anticipo al importar la información de Captio.
Cuando se importan anticipos, este Publisher permite añadir acciones para que se ejecuten después de este proceso.
OnAfterProcessAdvanceJson
INNCAPCoProcessAdvance.OnAfterProcessAdvanceJson(JsObject: JsonObject; CaptioId: Integer)
Se ejecuta después del Insert o el Modify de un anticipo al importar la información de Captio.
Cuando se importan anticipos, este Publisher permite añadir acciones para que se ejecuten después de este proceso. Además se tiene la información del JsObject importado.
Suscriptores Gastos
OnBeforePostExpense
INNCAPCoExpensePost.OnBeforePostExpense(var Expense: Record INNCAPCoExpense; var IsHandled: Boolean)
Se ejecuta antes de registrar Gasto.
Cuando se registra un gasto, se resgistra a través de líneas de diario. Este Publisher permite omitir está acción. Para ello, es necesario que la variable IsHandled tenga el valor true.
OnAfterPostExpense
INNCAPCoExpensePost.OnAfterPostExpense(var Expense: Record INNCAPCoExpense)
Se ejecuta después de registrar Gasto.
Cuando se registra un gasto, se resgistra a través de líneas de diario. Este Publisher permite añadir acciones para que se ejecuten despés de este proceso.
OnBeforePostExpenseGenJnlLine
INNCAPCoExpensePost.OnBeforePostExpenseGenJnlLine(var Expense: Record INNCAPCoExpense; var IsHandled: Boolean)
Se ejecuta antes de registrar Gasto por línea de diario.
Cuando se registra un gasto por línea de diario, este Publisher permite omitir la acción o añadir acciones para que se ejecuten antes de este proceso. Para omitirlo, es necesario que la variable IsHandled tenga el valor true.
OnBeforeCreateInvoice
INNCAPCoExpensePost.OnBeforeCreateInvoice(var Expense: Record INNCAPCoExpense; var IsHandled: Boolean)
Se ejecuta antes de registrar una factura de un Gasto.
Cuando se registra un gasto por en forma de factura, este Publisher permite omitir la acción o añadir acciones para que se ejecuten antes de este proceso. Para omitirlo, es necesario que la variable IsHandled tenga el valor true.
OnBeforeInsertExpenseGenJnlLine
INNCAPCoExpensePost.OnBeforeInsertExpenseGenJnlLine(Expense: Record INNCAPCoExpense; var GenJnlLine: Record "Gen. Journal Line")
Se ejecuta antes del Insert de una Línea de diario al registrar un Gasto.
Cuando se registra un gasto por línea de diario, este Publisher permite añadir acciones para que se ejecuten antes de este proceso.
OnBeforeInsertReimbursableGenJnlLine
INNCAPCoExpensePost.OnBeforeInsertReimbursableGenJnlLine(Expense: Record INNCAPCoExpense; var GenJnlLine: Record "Gen. Journal Line")
Se ejecuta antes del Insert de una Línea de diario al registrar un Gasto reembolsable.
Cuando se registra un gasto reembolsable por línea de diario, este Publisher permite añadir acciones para que se ejecuten antes de este proceso.
OnBeforeInsertLines
INNCAPCoExpensePost.OnBeforeInsertLines(Expense: Record INNCAPCoExpense; var PurchHeader: Record "Purchase Header")
Se ejecuta antes del Insert de una Línea factura de compra al registrar un Gasto por factura.
Cuando se registra un gasto por factura, este Publisher permite añadir acciones para que se ejecuten antes de crear las líneas de la factura.
OnAfterInsertPurchLine
INNCAPCoExpensePost.OnAfterInsertPurchLine(Expense: Record INNCAPCoExpense; var PurchLine: Record "Purchase Line")
Se ejecuta después de registrar una Línea factura de compra al registrar un Gasto por factura.
Cuando se registra un gasto por factura, este Publisher permite añadir acciones para que se ejecuten despés de este proceso.
OnAfterPostExpensePurchPost
INNCAPCoExpensePost.OnAfterPostExpensePurchPost(Expense: Record INNCAPCoExpense; var ArchiveReport: Boolean)
Se ejecuta después de registrar una Factura compra al registrar un Gasto por factura.
Cuando se registra un gasto por factura, este Publisher permite añadir acciones para que se ejecuten despés de este proceso o para omitir el registro del Informe de gastos completo. Entonces, es necesario que la variable ArchiveReport tenga el valor true.
OnAfterProcessExpense
INNCAPCoProcessExpense.OnAfterProcessExpense(var Expense: Record INNCAPCoExpense)
Se ejecuta después del Insert o el Modify de un gasto al importar la información de Captio.
OnBeforeUpdateSystemFields
INNCAPCoProcessExpense.OnBeforeUpdateSystemFields(ExpenseCustomField: Record INNCAPCoExpenseCustomField; var IsHandled: Boolean)
Se ejecuta después de importar un Gasto, antes de añadir el campo personalizado ExpenseCustomField como dimensión de este.
Cuando se registra un gasto, este Publisher permite omitir está acción. Para ello, es necesario que la variable IsHandled tenga el valor true.
OnAfterProcessExpenseJson
INNCAPCoProcessExpense.OnAfterProcessExpenseJson(JsObject: JsonObject; CaptioId: Integer)
Se ejecuta después del Insert o el Modify de un gasto al importar la información de Captio.
Cuando se importan gastos, este Publisher permite añadir acciones para que se ejecuten después de este proceso. Además se tiene la información del JsObject importado.
OnAfterProcessExpenseCustomFieldJson
INNCAPCoProcessExpense.OnAfterProcessExpenseCustomFieldJson(JsObject: JsonObject; CaptioId: Integer)
Se ejecuta después del Insert o el Modify de un campo personalizado de un gasto al importar la información de Captio.
Cuando se importan campos personalizados de gastos, este Publisher permite añadir acciones para que se ejecuten después de este proceso. Además se tiene la información del JsObject importado.
OnAfterProcessAttachmentsJson
INNCAPCoProcessExpense.OnAfterProcessAttachmentsJson(JsObject: JsonObject; No: Code[20])
Se ejecuta después del Insert o el Modify de añadir adjuntos de un gasto al importar la información de Captio.
Cuando se importan gastos con adjuntos, este Publisher permite añadir acciones para que se ejecuten después de este proceso. Además se tiene la información del JsObject importado.
OnBeforeProcessExpenseModifyExpenseCustomField
INNCAPCoProcessExpense.OnBeforeProcessExpenseModifyExpenseCustomField(var ExpenseCustomField: Record INNCAPCoExpenseCustomField; var CaptioId: Integer; var CustomFieldCaptioId: Integer; var CaptioName: Text; var CaptioCode: Text; var CaptioDetail: Text; var CaptioValue: Text)
Se ejecuta después de importar un Gasto, antes de modificar el campo personalizado ExpenseCustomField.
OnBeforeValidateShortcutDimCode (tabla Gasto)
INNCAPCoExpense.OnBeforeValidateShortcutDimCode(var Expense: Record INNCAPCoExpense; var xExpense: Record INNCAPCoExpense; FieldNumber: Integer; var ShortcutDimCode: Code[20])
Se ejecuta antes de validar los cambios de dimensiones en los gastos.
OnAfterValidateShortcutDimCode (tabla Gasto)
INNCAPCoExpense.OnAfterValidateShortcutDimCode(var Expense: Record INNCAPCoExpense; var xExpense: Record INNCAPCoExpense; FieldNumber: Integer; var ShortcutDimCode: Code[20])
Se ejecuta después de validar los cambios de dimensiones en los gastos.
OnBeforeCreateDim (tabla Gasto)
INNCAPCoExpense.OnBeforeCreateDim(var Expense: Record INNCAPCoExpense; var IsHandled: boolean)
Se ejecuta antes de crear dimensiones en los gastos al validar el campo INNCAPCoJobNo.
OnAfterCreateDim (tabla Gasto)
INNCAPCoExpense.OnAfterCreateDim(var Expense: Record INNCAPCoExpense; CallingFieldNo: Integer)
Se ejecuta después de crear dimensiones en los gastos al validar el campo INNCAPCoJobNo.
Suscriptores Informes de Gastos
OnBeforePostExpReport
INNCAPCoExpReportPost.OnBeforePostExpReport(var ExpReport: Record INNCAPCoExpensesReport; var IsHandled: Boolean)
Se ejecuta antes de registrar los Gastos de un Informe de gastos.
Cuando se registra un informe de gastos, este Publisher permite omitir está acción. Para ello, es necesario que la variable IsHandled tenga el valor true.
OnBeforeInsertReimbursableGenJnlLine
INNCAPCoExpReportPost.OnBeforeInsertReimbursableGenJnlLine(var GenJnlLine: Record "Gen. Journal Line"; ExpReport: Record INNCAPCoExpensesReport)
Se ejecuta antes de registrar los Gastos reembolsables de un Informe de gastos.
Cuando se registra un informe de gastos reembolsables, este Publisher permite añadir acciones antes del Insert.
OnBeforeInsertExpenseGenJnlLine
INNCAPCoExpReportPost.OnBeforeInsertExpenseGenJnlLine(Expense: Record INNCAPCoExpense; var GenJnlLine: Record "Gen. Journal Line")
Se ejecuta antes de registrar los Gastos por Línea diario de un Informe de gastos.
Cuando se registra un informe de gastos por diario, este Publisher permite añadir acciones antes del Insert.
OnBeforeInsertAdvanceGenJnlLine
INNCAPCoExpReportPost.OnBeforeInsertAdvanceGenJnlLine(Expense: Record INNCAPCoExpense; Advance: Record INNCAPCoAdvance; var GenJnlLine: Record "Gen. Journal Line"; ReportExpense: Record INNCAPCoExpensesReport)
Se ejecuta antes del Insert de una Línea de diario al registrar un Gasto con anticipos.
Cuando se registra un gasto por línea de diario y tiene anticipos, este Publisher permite añadir acciones para que se ejecuten antes de este proceso.
OnAfterProcessExpReport
INNCAPCoProcessExpReport.OnAfterProcessExpReport(var ExpReport: Record INNCAPCoExpensesReport)
Se ejecuta después del Insert o el Modify de un informe de gastos al importar la información de Captio.
OnSkipProcessReport
INNCAPCoProcessExpReport.OnSkipProcessReport(UserId: Integer; var TempReportCustomField: Record INNCAPCoReportCustomField temporary; var SkipProcess: Boolean)
Se ejecuta antes de procesar el JsonObject con la información de Informe de gastos.
Cuando se importan informes, este Publisher permite omitir está acción. Para ello, es necesario que la variable SkipProcess tenga el valor true.
OnBeforeSetMethodFilter
INNCAPCoProcessExpReport.OnBeforeSetMethodFilter(var StatusFilter: Text; LastSyncDate: DateTime)
Se ejecuta antes hacer la llamada a la API de Captio para importar informes.
Sirve para modificar el filtro de estados que se le pasa a la llamada.
OnAfterProcessAssignmentObjectJson
INNCAPCoProcessExpReport.OnAfterProcessReportJson(JsObject: JsonObject; CaptioId: Integer)
Se ejecuta después del Insert o el Modify de un eje informe de gastos al importar la información de Captio.
Cuando se importan informes de gastos, este Publisher permite añadir acciones para que se ejecuten después de este proceso. Además se tiene la información del JsObject importado.
OnBeforeProcessExpenseModifyExpenseCustomField
INNCAPCoProcessExpReport.OnBeforeProcessExpReportModifyReportCustomField(var ReportCustomField: Record INNCAPCoReportCustomField; var TempReportCustomField: Record INNCAPCoReportCustomField temporary)
Se ejecuta después de importar un Informe de gastos, antes de modificar el campo personalizado ReportCustomField.
Suscriptores Ejes analíticos
OnAfterProcessAssignmentObjectJson
INNCAPCoProcessAssigObject.OnAfterProcessAssignmentObjectJson(JsObjectData: JsonObject; CaptioId: Integer)
Se ejecuta después del Insert o el Modify de un eje analítico al importar la información de Captio.
Cuando se importan ejes analíticos, este Publisher permite añadir acciones para que se ejecuten después de este proceso. Además se tiene la información del JsObject importado.
OnAfterProcessAssigObjectValueJson
INNCAPCoProcessAssigObjValue.OnAfterProcessAssigObjectValueJson(JsObjectData: JsonObject; CaptioId: Integer)
Se ejecuta después del Insert o el Modify de un valor de eje analítico al importar la información de Captio.
Cuando se importan valores de ejes analíticos, este Publisher permite añadir acciones para que se ejecuten después de este proceso. Además se tiene la información del JsObject importado.
OnBeforeAssignValueGetParamPostJsonJob
INNCAPCoProcessAssigObjValue.OnBeforeAssignValueGetParamPostJsonJob(Job: Record Job; var ValueText: Text)
Se ejecuta antes añadir los valores del Job en el Json que se envía a Captio para crear un valor de eje analítico.
Este Publisher permite añadir acciones para que se ejecuten antes de este proceso. Además, permite modificar la información que se envía a Captio sobre la descripción del Job cambiando la información a ValueText.
OnBeforeAssignCodeGetParamPostJsonJob
INNCAPCoProcessAssigObjValue.OnBeforeAssignCodeGetParamPostJsonJob(Job: Record Job; var CodeText: Text)
Se ejecuta antes añadir los valores del Job en el Json que se envía a Captio para crear un valor de eje analítico.
Este Publisher permite añadir acciones para que se ejecuten antes de este proceso. Además, permite modificar la información que se envía a Captio sobre el código del Job cambiando la información a CodeText.
Suscriptores Categorías
OnAfterProcessCategory
INNCAPCoProcessCategory.OnAfterProcessCategory(var Category: Record INNCAPCoCategory)
Se ejecuta después de sincronizar las Categorías.
Cuando se importan categorías, este Publisher permite añadir acciones para que se ejecuten después de este proceso.
OnAfterProcessCategoryJson
INNCAPCoProcessCategory.OnAfterProcessCategoryJson(JsObject: JsonObject; CaptioId: Integer; ParentId: Integer)
Se ejecuta después de sincronizar las Categorías.
Cuando se importan categorías, este Publisher permite añadir acciones para que se ejecuten después de este proceso. Además se tiene la información del JsObject importado.
Suscriptores Campos personalizados
OnBeforeAddJobNameGetParamJsonJob
INNCAPCoProcessCustFieldValue.OnBeforeAddJobNameGetParamJsonJob(Job: Record Job; var JobName: Text)
Se ejecuta antes añadir Campos personalizados en el Json que se envía a Captio para crearlos.
Este Publisher permite añadir acciones para que se ejecuten antes de este proceso. Además, permite modificar la información que se envía a Captio sobre el nombre del Job cambiando la información a JobName.
OnAfterProcessCustomFieldValueJson
INNCAPCoProcessCustFieldValue.OnAfterProcessCustomFieldValueJson(JsObject: JsonObject; CaptioId: Integer)
Se ejecuta después de sincronizar los valores deCampos personalizados.
Cuando se importan valores de campos personalizados, este Publisher permite añadir acciones para que se ejecuten después de este proceso. Además se tiene la información del JsObject importado.
OnAfterProcessCustomFieldJson
INNCAPCoProcessCustomField.OnAfterProcessCustomFieldJson(JsObject: JsonObject; CaptioId: Integer)
Se ejecuta después de sincronizar los Campos personalizados.
Cuando se importan campos personalizados, este Publisher permite añadir acciones para que se ejecuten después de este proceso. Además se tiene la información del JsObject importado.
Suscriptores Métodos pago
OnAfterProcessPaymentMethod
INNCAPCoProcessPaymentMethod.OnAfterProcessPaymentMethod(var PaymentMethod: Record INNCAPCoPaymentMethod)
Se ejecuta después del Insert o el Modify de un método de pago al importar la información de Captio.
OnAfterProcessPaymentMethodJson
INNCAPCoProcessPaymentMethod.OnAfterProcessPaymentMethodJson(JsObject: JsonObject; CaptioId: Integer)
Se ejecuta después del Insert o el Modify de un método de pago al importar la información de Captio.
Cuando se importan métodos de pago, este Publisher permite añadir acciones para que se ejecuten después de este proceso. Además se tiene la información del JsObject importado.
Suscriptores SII
OnAfterProcessReportJson
INNCAPCoProcessSII.OnAfterProcessReportJson(JsObject: JsonObject; ReportId: Integer)
Se ejecuta después de actualizar la información del SII de un informe.
Cuando se actualiza el SII, este Publisher permite añadir acciones para que se ejecuten después de este proceso. Además se tiene la información del JsObject importado.
OnAfterProcessVatDetailJson
INNCAPCoProcessSII.OnAfterProcessVatDetailJson(JsObject: JsonObject; ReportId: Integer; CaptioId: Integer)
Se ejecuta después de actualizar la información del detalle de IVA.
Cuando se actualiza el detalle de IVA, este Publisher permite añadir acciones para que se ejecuten después de este proceso. Además se tiene la información del JsObject importado.
OnAfterProcessSIIDataJson
INNCAPCoProcessSII.OnAfterProcessSIIDataJson(JsObject: JsonObject; CaptioId: Integer)
Se ejecuta después de actualizar la información de los datos SII.
Cuando se actualiza datos SII, este Publisher permite añadir acciones para que se ejecuten después de este proceso. Además se tiene la información del JsObject importado.
Suscriptores Usuarios
OnAfterProcessUser
INNCAPCoProcessUser.OnAfterProcessUser(var User: Record INNCAPCoUser)
Se ejecuta después del Insert o el Modify de un usuario al importar la información de Captio.
OnAfterProcessUserJson
INNCAPCoProcessUser.OnAfterProcessUserJson(JsObject: JsonObject; UserId: Integer)
Se ejecuta después del Insert o el Modify de un usuario al importar la información de Captio.
Cuando se importan usuarios, este Publisher permite añadir acciones para que se ejecuten después de este proceso. Además se tiene la información del JsObject importado.
OnSkipProcessUser
INNCAPCoProcessUser.OnSkipProcessUser(var SkipProcess: Boolean; CompanyCode: Text; EmployeeCode: Text; CostCentre: Text)
Se ejecuta antes de insertar el Usuario.
Cuando se importan usuarios, este Publisher permite omitir está acción. Para ello, es necesario que la variable SkipProcess tenga el valor true.
Suscriptores Flujos de trabajo
OnAfterProcessWorkflow
INNCAPCoProcessUser.OnAfterProcessWorkflow(var Workflow: Record INNCAPCoWorkflow)
Se ejecuta después del Insert o el Modify de un flujo de trabajo al importar la información de Captio.
OnAfterProcessWorkflowJson
INNCAPCoProcessUser.OnAfterProcessWorkflowJson(JsObject: JsonObject; CaptioId: Integer)
Se ejecuta después del Insert o el Modify de un flujo de trabajo al importar la información de Captio.
Cuando se importan flujos de trabajo, este Publisher permite añadir acciones para que se ejecuten después de este proceso. Además se tiene la información del JsObject importado.
Suscriptores sincronización completa
OnBeforeRunSync
INNCAPCoSynchronize.OnBeforeRunSync(var IsHandled: Boolean)
Se ejecuta antes de lanzar todos los procesos de sincronización.
Este Publisher permite omitir está acción, para ello, es necesario que la variable IsHandled tenga el valor true.
OnAfterRunSync
INNCAPCoSynchronize.OnAfterRunSync()
Se ejecuta después de lanzar todos los procesos de sincronización.
Idiomas
Este documento está disponible en los siguientes idiomas: