Introducción
La funcionalidad del Migrador es permitir importar cualquier tipo de objetos en Calipso, como: cliente, proveedores, transacciones, etc.
Ubicación
La configuración del Migrador las encontramos en el árbol del sistema.
En modelo web:
Por el momento, desde la versión web solo está disponible la configuración del Migrador, aunque aún no es posible ejecutar la migración desde allí.
En modelos "más viejos", esta herramienta aparece como Configuradores de Migración. Si bien pueden variar el orden o tipo de campos, la lógica de configuración se mantiene.
Acciones
Migrador
AutoConfigurar - Cuentas Contables
AutoConfigurar - Tipos de Clasificadores
AutoConfigurar - Agregar Atributos de Extensión
AutoConfigurar - Impuestos
Migradores - Exportar Configurador
Migradores - Importar Configurador
Migradores - Exportar Configurador Json
Atributos
Candidatos - Crear Candidatos Impuesto
Candidatos - Crear de Tipo Clasif -Nombre
Candidatos - Crear de Tipo Clasif -Código
Compañía
Crear un migrador nuevo
Cabecera
Es para especificar los datos generales el objeto a importar y la misma cuenta con los siguientes campos:
1- Nombre del Configuración: es a modo informativo y para poderlo identificar
2- Solapa de Excel: es el Nombre de la Página en el excel
3- Nombre de Objeto: es el classname del objeto que vamos a crear
4-Permite Crear: este campo es para especificar si solo queremos actualizar o si también queremos que cree nuevos objetos
5- Dentro de Lista: este valor es solo requeridos para los objetos que requieran una lista (ejemplo cliente, proveedores, cuentas contables)
6- Unidad Operativa: este valor solo es requerido si el objeto necesita una lista
7- Oculto: es para ocultarlo de la lista de los candidatos a importar (ejemplo ítems de transacción, en este caso el migrador está oculto porque los ítem se migran con el migrador de la transacción a la cual pertenecen )
8 - Código de OTE u Objeto estático: esto es para en caso que se migre una transacción o tipo de objeto estático especificar el código
Atributos
en esta lista especificamos todos los atributos que queremos que se puedan importar
los atributos cuentan con todos los campos necesarios para poder informarle a Calipso que es lo que debe de hacer en cada caso
Cabecera
Tipo de Datos: es donde especificamos que tipo de datos es al que corresponde
Boolean (Si/No)
Fecha
Float (Números con decimales)
Integer ( Números enteros, sin decimales)
Lista
Lista de Contención
Memo (Texto sin limites)
Objeto
String (Textos cortos, o con límites)
Etiqueta:Lo que el usuario va a ver en el excel
Orden: es el orden en que se van a leer los datos del excel y en el orden en que se crearan las columnas en el mismo
Nombre de Campo en Excel: es nuestro “ID” en el excel este campo va a estar oculto y es lo que calipso va a machear entre el excel y el configurador, el valor de este campo tiene que ser único por cada hoja y recomiendo no usar espacios ni caracteres especiales en la nomenclatura del mismo
Nombre de campo en tabla:
Es el nombre del campo en el classname, ejemplo si estamos migrando personas el campo “Codigo” en tabla se llama EXTERNAL_ID y ese debería ser el valor del nombre de campo en tabla
también podemos especificar rutas de campos como es por ejemplo esquema operativo(que se encuentra en una tabla dependiente), ejemplo estamos migrando transacciones y sabemos que el esquema operativo se encuentra en una tabla secundaria (trextension) a la que accedemos con como trextension.esquemaoperativo , (lo mismo podemos aplicar a los campos de extensión poniendo la composición de boextension.nombredelcampo aunque para algunos de estos valores compuestos nos podemos ayudar de otras configuraciones ver más adelante )
Hay también casos especiales como son EsImpuesto o EsDatoComplenetario(ver más adelante configuracion especifica )
Campo de Búsqueda:
se usa para los atributos de tipo Objetos o listas y es para especificar porqué campo se va a buscar el objeto seleccionado (recomiendo que siempre que se pueda se busque por código)
También puede ser un campo de forma compuesta (ejemplo estamos migrando transacciones y queremos buscar al cliente por el código de la persona en lugar del código del cliente nuestro campo de búsqueda sería “[persona]enteasociado.external_id”)
Configuraciones especiales EsImpuesto (siempre nombre), EsDatoComplementario(dejar vacío o colocar mismo nombre del dato comp) ver más adelante configuraciones específicas
Setea Valor por Default: es para especificar valores específicos en nuestro migrador (por lo general va acompañado de “Oculta campo en excel”)
Valor Default: siempre que se use “Setea Valor por defecto” este campo se debe de especificar un valor que es el que se va a asignar, son valores fijos para que el usuario no tenga que completar en el excel , este campo solo se lee si
Oculta Campo en Excel: si este valor está en SI no se exporta esta columna al excel, por lo general siempre que se pone en si es porque se usan valores por defecto
Instructivo: es para especificar información adicional en la plantilla de excel, hacer aclaraciones y ese tipo de cosas, No está disponible esta opción en la versión WEB
Configuración específica
Es Extensión?: si está en SI busca el campo en la tabla de extensión del objeto, se antepone al nombre de campo en tabla el boextension es decir que el nombre de campo en tabla solo ponemos el nombre del campo de la extensión
para configurar un campo de extensión tenemos dos opciones
1ra: marcamos EsExtensión en SÍ y nombre de campo en tabla nuestrocampo
2da:marcamos EsExtensión en NO y nombre de campo en tabla boextension.nuestrocampo
Es Cuenta Contable?: si está en SÍ (similar al anterior) solo que en este caso asigna el campo en el grupo 1 de cuentas contables
Para configurar más grupos de cuentas contables ( en casos que se usen los grupos del 2 al 10 ) deben de dejar “Es cuenta contable” en NO y en nombre de campo en tabla especificar el grupo y la cuenta/esquema
Ejemplo de Configuración
Caso 1: CtaCble 1 del grupo 1
Opción 1: “Es cuenta Contable”:SI y “Nombre Campo en tabla”: “CuentaContable1”
Opción 2: “Es cuenta Contable”:NO y “Nombre de Campo en tabla”: “CuentasContables.CuentaContable1”
Caso 2: CtaCble 1 del Grupo 2
Opción 1: “Es cuenta Contable”: NO y “Nombre de Campo en tabla”: “CuentasContables2.CuentaContable1”
Es Clasificador?: idem a los anteriores si está en SI asigna el valor en la tabla segmento del objeto y solo especificados en el nombre de campo en tabla segmento y el número (ejemplo segmento1)
como anteriormente podemos prescindir de este campo y solo usar “Nombre de campo en tabla” especificando segmento y el nombre del segmento (ejemplo “Es Clasificador” = No y nombre de Campo en tabla = “segmento.segmento1” o “Es Clasificador”=SI y “Nombre de Campo en tabla segmento1” )
Es Impuesto?: (Conf especifica) Es para especificar que lo que queremos migrar es un ítem posicionador de impuesto si este Campo está en SI el nombre de campo en tabla Tiene ser el Código del Impuesto y el campo de búsqueda tiene que ser “Nombre”
Es Dato Complementario?: (Conf especifica) es para especificar que lo que estamos migrando es un dato complementario, la configuración correcta sería si este campo está en SI , nombre de campo en tabla tiene que coincidir con el nombre exacto del nombre del dato complementario
ejemplo
Permite Crear : se especifica si lo que se está migrando solo se actualiza o se pueden crear nuevos objetos (sólo es válido para tipos de datos Objetos, lista o Lista de contención) hay que tener en cuenta que siempre que esté en SÍ hay que especificar que configurador se utilizará para crear dicho objeto en campo “Migrador de Atributos”
Migrador de Atributos: solo se usa si el tipo de datos es lista o lista de contención o en los casos que Permite crear está en SI y el tipo de dato es Objeto, y es el configurador auxiliar que se va a usar para migrar estas listas u objetos (ejemplo ítems de transacción)
Lista de Objeto: se usa para especificar si el objeto que vamos a migrar corresponde a una lista específica ejemplo clasificadores de objetos (el objeto es Ítem Tipo Clasificador ) pero en este caso hay que especificar a qué clasificador corresponde para que no tome cualquier item con el código especificado
Atributo del cual depende: es similar a lista de objeto pero en este caso la lista seria una lista propia del objeto ,( un ejemplo: típico aca seria el domicilio principal en este caso el atributo del cual depende es DOMICLIOS, es decir que el sistema va a buscar X domicilio pero solo dentro de la lista de domicilios de esa persona )
Tipo de Objetos Candidatos
En esta lista especificaremos los diferentes clases de objetos candidatos y el orden en que se buscarán
ejemplo
si queremos que el orden sea producto, concepto, servicios crearemos 3 ítem con ese mismo orden
también podemos valernos de las vistas en lugar de poner cada clase por separado especificamos la vista que los agrupa (ejemplo en lugar de poner producto, concepto y servicio podemos poner CONCEPTOCOMERCIAL) estos valores solo se especifican si el tipo de datos es Objeto
Candidatos
Esta lista se usa cuando queremos tener candidatos pre definidos para el usuario en el momento de generar el excel ( No habilitado si la plantilla se genera desde WEB), es muy usado por ejemplo con los candidatos de los impuestos
para generar los candidatos podemos ayudarnos de las acciones
Crear Candidatos de Impuesto (para que se creen los candidatos primero debe de especificar que el campo es Impuesto y configurar el Nombre de Campo en tabla con el impuesto que corresponde )
Crear de tipo Clasificador por código o por nombre: en estos casos se le pregunta al usuario qué tipo de clasificador quiere usar para generar los candidatos
siempre que usemos candidatos recomiendo que antes de generar el excel se ejecute la acción de generación de candidatos para actualizar esta lista y mandar los candidatos actualizador, porque si se envían candidatos que ya no existan el migrador lo dejará reflejado en el log en el momento que se migra que no se encontró ese candidato
Lugar de Uso
Por defecto se puede migrar desde los métodos que encontramos en la compañía dentro del grupo Migradores
Migraciones - Generar Excel
solicita que configurador es al que se le quiere generar el excel , como candidatos están todos los configuradores que tengan “Oculto” = NO y genera una plantilla vacía para luego ser importada
Migraciones - Importar
Importa desde excel el migrador seleccionado
hay que tener en cuenta que se debe de usar la misma plantilla para la cual está configurado,
a este excel se le pueden eliminar todas las columnas que no necesitemos
en el momento de importar se leen las filas desde la fila especificada (por defecto 3 ) hasta la primera de las celdas de la columna A que se encuentre vacía
se leen todas las columnas del excel hasta la columna en que la celda de la fila 2 está vacía
NOTA: hay que tener en cuenta que la fila 2 es la fila de donde calipso toma las configuraciones del excel(por eso se genera la planilla con dicha fila oculta) si esta fila fue eliminada o alterada por el usuario la lectura del excel va a ser errónea por no coincidir con la configuración esperada en el migrador
Migraciones - Exportar
solicita que configurador que se le quiere exportar a excel , como candidatos están todos los configuradores que tengan “Oculto” = NO y se exportan a excel todos los datos del configurador seleccionado
Log de Errores
El log de errores se va a generar siempre en el mismo directorio de donde se importo el archivo de excel
la estructura del mismo es la siguiente
LINEA; TIPO DE ERROR; CODIGO; CAMPO ERROR; DESCRIPCIÓN DEL ERROR
LINEA: es el numero de linea del excel
TIPO DE ERROR
ERROR: indica que el objeto no fue creado
WARNING: indica que el objeto fue creado/actualizado pero no en la totalidad, es decir que faltó actualizar o completar según lo que se describa en este error
CODIGO: en este campo se pueden encontrar dos tipos de valores
error numérico: si el error que se describe tiene número dentro del sistema o corresponde a un error de err ejemplo err.number
Valor del excel: en caso que el error que se describa no tenga un valor numérico en este campo se guardará el valor de lo que se leyó del excel
o el famoso “NO TIENE CODIGO POR NO INGRESAR AL SISTEMA” este se indica cuando es un error de Neuronal y se descartaron todos los cambios
CAMPO ERROR
Tipo de error es warning: en este campo tenemos la Etiqueta del Campo del migrador que causó esta alerta
Tipo de Error Error: se muestra leyenda fija “INDICADO EN ERROR” informando que el error es del objeto y que hay que leer la descripción del mismo para saber qué es lo que ocurrió
DESCRIPCIÓN DEL ERROR: es la descripción ampliada del error propiamente dicho
Cosas a Considerar
Si todo está correcto y como debería este log no debería de contener ningún tipo de error (ni ERROR ni WARNING)
Todos los valores son separados por “;” para luego ser importado en el excel como si fuera un csv para clasificar los errores
los WARNING tambien hay que prestarle especial atención por que indica que “algo” no se hizo
Configuración de excel
El sistema funciona tanto con Microsoft Excel como con OpenOffice, para eso debemos de indicarle al sistema con que aplicación vamos a usar para eso vamos a Parámetros de Ejecución ‘EXCEL’ y definir el valor del parámetro
IMPERIO: para Microsoft Excel
LIBRE: para OpenOffice
Exportar e Importar Configurador
Migradores - Exportar Configurador
Esta acción sirve para exportar un configurador de un modelo a otro,
cuando se exportar un configurador que anida varios configuradores el sistema de forma automática exporta esos configuradores hijos
Migradores - Importar Configurador
Permite importar la configuración de migrador previamente exportada
hay que considerar el orden en que se importan los migradores, dado que se se va a importar un migrador que tiene varios hijos deben de importarse primeros los hijos y luego el padre para que se configure correctamente
Algunos ejemplos de configuraciones
Ayuda para configurar
El migrador cuenta con algunas acciones para ayudarnos a configurarlo
estas acciones están dentro del grupo de AutoConfigurar
AutoConfigurar - Agregar Atributos de Extensión
Agrega de forma automática todos los campos de extensión , hay que tener en cuenta que estas son acciones de ayuda puede que en algunos casos (como son las lista) tengan que terminar la configuración de forma manual
AutoConfigurar - Cuentas Contables
Busca la configuración contable del objeto en la compañía y agrega dicha configuración (solo el grupo 1)
AutoConfigurar - Tipos de Clasificadores
Busca la configuración de los clasificadores del objeto y configura todos los segmentos que este tenga configurado en dicha configuración
Algunos Campos
ya el modelo viene con casi todos los migradores creados y podemos encontrar infinidad de ejemplo
pero les dejo algunos ejemplos de campos
Esquema Operativo
ejemplo de ítems de transacción
Nombre de Campo en tabla itemstransaccion
Permite Crear SI
Migrador de Atributos: (Migrador previamente creado ) Items de xxxxxxxxx
Campo de Busqueda: “transaccion” es el campo con el que calipso va a machear las hojas del excel , este campo es obligatorio y calipso lo agregara solo en la hoja correspondiente al configurador auxiliar
en el configurador auxiliar tenemos que especificar que permite crear
Errores Frecuentes
El objeto que está intentando migrar necesita tener asignada una unidad operativa
Algunos Objetos necesitan tener una unidad operativa, si en el configurador no tiene la unidad operativa le va a pedir que complete dicho campo, se completa en la cabecera del configurador
El objeto que está intentando migrar NECESITA TENER asignada una LISTA
Algunos Objetos necesitan tener una Lista, en el caso que falte la lista y sea necesaria deben de configurar la Lista en la cabecera del configurador
El objeto que está intentando migrar NO PUEDE tener asignada una LISTA
Es lo contrario al punto anterior, el objeto no puede tener lista y deben de quitarle la lista al configurador del objeto
Falta Completar en el Campo 'Código OTE u Objeto Estático' el tipo de transacción contable que quiere generar, por lo general CON02 si es Asiento Manual
Este es solo para los configuradores de transacciones contables y es que falta completar el campo Código de OTE , hay que ver cual es el código de OTE que se quiere crear
Se detectó el Atributo 'Tipo de Transacción' y para las TRCONTABLE no corresponde, debe de ingresar el código del tipo de transacción en el campo 'Código OTE u Objeto Estatico'
si es una transacción contable no puede tener el campo Tipo de Transacción este valor se completaría en el campo Codigo de OTE
Se NO SE ENCONTRO el Atributo 'FECHAAPLICACION' y para las TRCONTABLE este atributo es requerido
si es una transacción contable necesita tener el campo Fecha de Aplicacion
¿Le ha sido útil este artículo?
¡Qué bien!
Gracias por sus comentarios
¡Sentimos mucho no haber sido de ayuda!
Gracias por sus comentarios
Sus comentarios se han enviado
Agradecemos su esfuerzo e intentaremos corregir el artículo