Herramienta de Archivado Automático

por Raul araya V.2019.12.23

Esta herramienta esta pensada para movilizar información entre dos bases de datos, siendo una la base de producción y la otra la base histórica, hay varios criterios que deben de considerarse para su correcto funcionamiento y se explica en este documento.

La base de datos para registrar los históricos puede o no estar en el mismo servidor, es decir, puede estar ubicada en otro servidor siempre y cuando este vinculada por medio de linked servers.

Las configuraciones necesarias a ser consideradas son:

GPBackupDB.exe.config
Configuración Ejemplo Explicación
DBFrom Bento Nombre de la base Origen
DBTo Bento_Historica Nombre de la base Destino
intKeepDays 30 Cantidad de días que deben de mantenerse en la base de producción
intMinRefresh 1 Cantidad de minutos entre verificaciones
intTop 128 Cantidad de registros a ser procesados por vez para cada tabla

El nombre de la base de datos se refiere al nombre registrado en la tabla de conexiones en la plataforma, sin embargo, cuando el acceso a la plataforma esta limitado por cualquiera sea el motivo, los archivos involucrados son:

  • From-CnxConfig.xml
  • To-CnxConfig.xml

Para que el proceso se ejecute ambas bases deben ser de la misma versión, en caso contrario la herramienta no se ejecutará.

Las tablas actualmente validas

Tabla Descripción
AgEvent Eventos de la agenda
AgEventUsr
ArcArchivo
BodPro Productos por ubicación
BPMField Campos personalizados de las tareas
BPMValor Valor de los campos personalizados de las tareas
Caja
CoD Detalle de compras
CoDI Impuestos de compras
CoE Encabezado de compras
DMSTrack
DMSTray
DoXField Campos personalizados de los documentos
DoXValor Valor de los campos personalizados de los documentos
EDIDocD
EDIDocDD
EDIDocDE
EDIDocDI
EDIDocE
EDIDocEF
EDIDocER
EDIDocL
EDIDocO
EDIDocR
EDIDocRB
EDIDocRD
EDIDocRE
EDIDocRI
EDIDocRR
EmailInbox
LogField Bitácora de valores de los campos personalizados
MovC
MovD Detalle de movimientos
MovE Encabezado de movimientos
PerField Campos personalizados de los contactos
PerValor Valor de los campos personalizado de los contactos
ProdLog
PubliPer
PubliTrk
ReD
ReE Encabezado de recibos
SGUser Usuarios (Se saco de la lista)
SGUserLog Bitácora de acciones del usuario
SurveyCF Campos personalizados
SurveyVD
SurveyVE
UserLog
VeD Detalle de ventas
VeDI Impuestos de ventas
VeE Encabezado de ventas

Para que una tabla sea parte del proceso de archivado debe de tener los campos [strDate], [strDateArc] y tener llaves primarias.

Cuando el proceso está en ejecución el campo [BaseOrigen].[Tabla].[strDateArc], se usa para marcar los registros que están siendo parte del proceso, y al registrarse en la base destino este campo [BaseDestino].[Tabla].[strDateArc] que es el mismo, registrará el fecha y hora del proceso de archivado para estas tablas.

Cuando la inserción falla, es decir, cuando no se puede hacer tal inserción en la base destino el registro de la tabla origen no es eliminado.

Es importante saber que la herramienta no hace procesos de compactación ya que estos podrían interferir con tareas de mantenimiento automáticas.