Documente Academic
Documente Profesional
Documente Cultură
Este documento tiene como objetivo servir de gua para las entidades del sector financiero respecto a las validaciones implementadas en el Sistema de Reporte en Lnea de la UIAF, para el cargue de los archivos planos segn las especificaciones de la CE 003-2009 de la Superintendencia Financiera de Colombia. IMPORTANTE: Este documento es una ayuda y no representa ninguna obligacin para la entidad reportante. La implementacin de las validaciones expuestas en este documento dependen totalmente de la entidad que desee adoptarlas y no garantizan que el reporte cargue satisfactoriamente en el Sistema de Reporte en Lnea de la UIAF. El lenguaje utilizado en las validaciones est basado en algoritmos estndar , la UIAF no recomienda ningn lenguaje de programacin o software determinado para la implementacin Este documento est sujeto a modificaciones sin previo aviso
VALIDACION Convert.ToInt32(@Consecutivo@) !=0 ENTIDADES WHERE sector = @SECTOR@ and tipo_entidad = @TIPOENTIDAD@ and codigo_entidad = @CODIGOENTIDAD@
OBSERVACION Valida que el campo consecutivo de la cabecera sea siempre igual a cero (0) Valida que el cdigo de la entidad se encuentre dentro de la tabla de entidades validas para el sistema
TE26
Cabecera
Fecha de corte
Convert.ToDateTime(@Fecha de corte@) != Valida que la fecha de corte de la cabecera LibraryConfiguration.LastDayXSD("@@FechaCorteFinal") corresponda al ltimo da del mes seleccionado en el sistema Convert.ToInt32(@Numero de registros@) != @Detalle.@@Count(*) Valida que el numero de registros de la cabecera corresponda a la cantidad exacta de lneas de detalle en el archivo
TE26
Cabecera
Numero de registros
TE26 TE26
Cabecera Detalle
Fin de Registro Consecutivo Convert.ToInt32(@id@) != Convert.ToInt32(@Consecutivo@) Valida que el consecutivo este ordenado y no existan saltos de valores comparndolo con el Id del registro
TE26
Detalle
Fecha de la transaccion
Convert.ToDateTime(@Fecha de la transaccion@) < LibraryConfiguration.FirstDayXSD("@Cabecera.Fecha de corte") || Convert.ToDateTime(@Fecha de la transaccion@) > LibraryConfiguration.LastDayXSD("@Cabecera.Fecha de corte") Convert.ToDecimal(@Valor de la transaccin@) <= 0;@Valor de la transaccin@.IndexOf(".") >= 0 T_MONEDA WHERE id_moneda = @MONEDA@
TE26 TE26
Detalle Detalle
Valida que el valor de la transaccin sea mayor a cero y no tenga punto decimal Valida que el cdigo de moneda se encuentre dentro de la tabla de monedas validas para el sistema Valida que el tipo de producto se encuentre dentro de la tabla de tipos de productos validos para el sistema Valida que el tipo de transaccin se encuentre dentro de la tabla de tipos de transaccin validas para el sistema Valida que el tipo de identificacin se encuentre dentro de la tabla de tipos de identificacin validas para el sistema Valida que el nmero de identificacin no sea nulo y contenga por lo menos un digito Valida que el cdigo de dpto/mpio se encuentre dentro de la tabla de cdigos DANE validas para el sistema
TE26 TE26
Detalle Detalle
TE26
Detalle
Tipo Transaccin
TE26 TE26
Detalle Detalle
Nmero de la cuenta Tipo de Identificacin T_IDENTIFICACION WHERE tipoId = @TIPOID@ del titular Nmero Identificacin del titular Cdigo del Departamento / Municipio @Nmero Identificacin del titular@.Trim().Length <= 1
TE26
Detalle
TE26
Detalle
Primer Apellido Titular Segundo Apellido Titular Primer Nombre Titular Otros Nombres Titular Razon Social Tipo Identificacion (Realiza)
Valida que el tipo de identificacin se encuentre dentro de la tabla de tipos de identificacin validas para el sistema Valida que el nmero de identificacin no sea nulo y contenga por lo menos un digito
Numero @Nmero Identificacin del titular@.Trim().Length <= 1 identificacion (realiza) Primer Apellido (Realiza) Segundo Apellido (Realiza) Primer Nombre (Realiza) Otros Nombres (Realiza) Actividad Economica Titular Ingresos Mensuales Consecutivo
Convert.ToInt32(@Consecutivo@) !=0
Valida que el campo consecutivo de la cola sea siempre igual a cero (0)
TE26
Cola
Cdigo de entidad
ENTIDADES WHERE sector = @SECTOR@ and tipo_entidad = @TIPOENTIDAD@ and codigo_entidad = @CODIGOENTIDAD@ Convert.ToInt32(@Numero de registros@) != @Detalle.@@Count(*)
Valida que el cdigo de la entidad se encuentre dentro de la tabla de entidades validas para el sistema Valida que el total de registros de la cola corresponda a la cantidad exacta de lneas de detalle en el archivo
TE26
Cola
Cantidad Registros
TE26
Cola
Fin de Registro
TE26
TODAS
Longitud de registro
Convert.ToInt32(@SumatoriaLongitudCampos@) !=548
Valida que la longitud de todos los registros sea igual a la definida en el anexo tcnico: 548
SIGLA TC26
SECCION Cabecera
OBSERVACION Valida que el campo consecutivo de la cabecera sea siempre igual a cero (0) Valida que el cdigo de la entidad se encuentre dentro de la tabla de entidades validas para el sistema
TC26
Cabecera
Cdigo Entidad
ENTIDADES WHERE sector = @SECTOR@ and tipo_entidad = @TIPOENTIDAD@ and codigo_entidad = @CODIGOENTIDAD@
TC26
Cabecera
Convert.ToDateTime(@Fecha corte inicial@) != Valida que la fecha de corte inicial de la LibraryConfiguration.FirstDayXSD("@@FechaCargueInici cabecera corresponda al primer da del mes al") seleccionado en el sistema
TC26
Cabecera
Convert.ToDateTime(@Fecha corte final@) != Valida que la fecha de corte final de la cabecera LibraryConfiguration.LastDayXSD("@@FechaCargueFinal corresponda al ltimo da del mes seleccionado ") en el sistema
TC26
Cabecera
Total de registros
Valida que el total de registros de la cabecera corresponda a la cantidad exacta de lneas de detalle en el archivo
TC26 TC26
Cabecera Detalle
Convert.ToInt32(@id@) != Convert.ToInt32(@Consecutivo@)
Valida que el consecutivo este ordenado y no existan saltos de valores comparndolo con el Id del registro
TC26 TC26
Detalle Detalle
Convert.ToDateTime(@Fecha transaccin@) < LibraryConfiguration.FirstDayXSD("@Cabecera.Fecha corte inicial") || Convert.ToDateTime(@Fecha transaccin@) > LibraryConfiguration.LastDayXSD("@Cabecera.Fecha corte final") (@Valor transaccin original@.Length >= 4 && @Valor transaccin original@.Substring(@Valor transaccin original@.Length - 3, 1) != "." ) || (@Valor transaccin original@.Length < 4);Convert.ToDecimal(@Valor transaccin original@)<=0
TC26
Detalle
Valida que el valor de la transaccin sea mayor a cero, contenga mas de 4 dgitos y tenga punto decimal
TC26
Detalle
(@Valor transaccin en pesos@.Length >= 4 && @Valor Valida que el valor de la transaccin sea mayor transaccin en pesos@.Substring(@Valor transaccin en a cero, contenga mas de 4 dgitos y tenga punto pesos@.Length - 3, 1) != "." ) || (@Valor transaccin en decimal pesos@.Length < 4);Convert.ToDecimal(@Valor transaccin en pesos@)<=0 T_MONEDA WHERE id_moneda = @MONEDA@ Valida que el cdigo de moneda se encuentre dentro de la tabla de monedas validas para el sistema
TC26
Detalle
Tipo moneda
TC26
Detalle
Forma de Pago
Valida que el cdigo del tipo de pago se encuentre dentro de la tabla de tipos de pago validas para el sistema
TC26
Detalle
Tipo identificacin
Valida que el tipo de identificacin se encuentre dentro de la tabla de tipos de identificacin validas para el sistema
TC26
Detalle
Nro Identificacin
Valida que el nmero de identificacin no sea nulo y contenga por lo menos un digito
1er.Apellido 2do.Apellido 1er.Nombre Otros nombres Razn Social Direccin Cdigo Departamento DEPARTAMENTOS WHERE cod_Dpto = @CODDPTO@
Valida que el cdigo de dpto se encuentre dentro de la tabla de cdigos de departamentos validos para el sistema
TC26
Detalle
Cdigo Ciudad
Valida que el cdigo de municipio se encuentre dentro de la tabla de cdigos de municipios validos para el sistema
Valida que el cdigo del tipo de transaccin se encuentre dentro de la tabla de tipos de transaccin (Numerales Cambiarios) validos para el sistema
TC26
Detalle
Tipo de identificacin Remitente Nmero de identificacin Remitente Primer Apellido Remitente Segundo Apellido Remitente Primer Nombre Remitente
TC26
Detalle
Otros Nombres Remitente Razn Social Remitente Pais Origen / Destino PAISES WHERE cod_pais = @CODPAIS@ Valida que el cdigo del pas se encuentre dentro de la tabla de cdigos de pases validos para el sistema
Ciudad Origen / Destino Money Remitter Nmero de Cuenta Actividad econmica Ingreso mensual Consecutivo
Convert.ToInt32(@Consecutivo@) !=0
Valida que el campo consecutivo de la cola sea siempre igual a cero (0) Valida que el cdigo de la entidad se encuentre dentro de la tabla de entidades validas para el sistema
TE26
Cola
Cdigo de entidad
ENTIDADES WHERE sector = @SECTOR@ and tipo_entidad = @TIPOENTIDAD@ and codigo_entidad = @CODIGOENTIDAD@
TC26
Cola
Total de registros
Valida que el total de registros de la cola corresponda a la cantidad exacta de lneas de detalle en el archivo
TC26
Cola
Fin de Registro
TC26
TODAS
Longitud de registro
Convert.ToInt32(@SumatoriaLongitudCampos@) !=819
Valida que la longitud de todos los registros sea igual a la definida en el anexo tcnico: 819
SIGLA PR
SECCION Cabecera
OBSERVACION Valida que el campo consecutivo de la cabecera sea siempre igual a cero (0) Valida que el cdigo de la entidad se encuentre dentro de la tabla de entidades validas para el sistema
PR
Cabecera
Codigo Entidad
ENTIDADES WHERE sector = @SECTOR@ and tipo_entidad = @TIPOENTIDAD@ and codigo_entidad = @CODIGOENTIDAD@
PR
Cabecera
Fecha Inicial
Convert.ToDateTime(@Fecha Inicial@) != Valida que la fecha de corte inicial de la LibraryConfiguration.FirstDayXSD("@@FechaCargueInici cabecera corresponda al primer da del mes al") seleccionado en el sistema Convert.ToDateTime(@Fecha Final@) != Valida que la fecha de corte final de la LibraryConfiguration.LastDayXSD("@@FechaCargueFinal cabecera corresponda al ltimo da del mes ") seleccionado en el sistema Convert.ToInt32(@Total Productos@) != @Detalle.@@Count(*) Valida que el total de registros de la cabecera corresponda a la cantidad exacta de lneas de detalle en el archivo
PR
Cabecera
Fecha Final
PR
Cabecera
Total Productos
PR
Cabecera
Fin Registro
PR
Detalle
Consecutivo
Convert.ToInt32(@id@) != Convert.ToInt32(@Consecutivo@)
Valida que el consecutivo este ordenado y no existan saltos de valores comparndolo con el Id del registro Valida que el numero de producto no sea nulo y contenga por lo menos un digito
PR
Detalle
Numero de Producto
PR
Detalle
Fecha de Vinculacion
Convert.ToDateTime(@Fecha de Vinculacion@) > LibraryConfiguration.LastDayXSD("@Cabecera.Fecha Final") T_PRODUCTO WHERE id_tproducto = @TIPOPRODUCTO@ Valida que el tipo de producto se encuentre dentro de la tabla de tipos de productos validos para el sistema Valida que el cdigo de dpto/mpio se encuentre dentro de la tabla de cdigos DANE validas para el sistema Valida que el tipo de identificacin se encuentre dentro de la tabla de tipos de identificacin validas para el sistema Valida que el nmero de identificacin no sea nulo y contenga por lo menos un digito
PR
Detalle
Tipo de Producto
PR
Detalle
Codigo Municipio
PR
Detalle
PR
Detalle
Numero @Numero Identificacion Titular1@.Trim().Length < 1 Identificacion Titular1 Primer Apellido Titular1 Segundo Apellido
PR PR
Detalle Detalle
PR PR PR PR PR PR PR PR PR PR PR PR
Detalle Detalle Detalle Detalle Detalle Detalle Detalle Detalle Detalle Detalle Cola Cola
Titular1 Primer Nombre Titular1 Otros Nombres Titular1 Razon Social Titular1 Tipo Identificacion Titular2 Numero Identificacion Titular2 Primer Apellido Titular2 Segundo Apellido Titular2 Primer Nombre Titular2 Otros Nombres Titular2 Razon Social Titular2 Consecutivo Codigo Entidad
Convert.ToInt32(@Consecutivo@) !=0 ENTIDADES WHERE sector = @SECTOR@ and tipo_entidad = @TIPOENTIDAD@ and codigo_entidad = @CODIGOENTIDAD@ Convert.ToInt32(@Total de registros@) != @Detalle.@@Count(*)
Valida que el campo consecutivo de la cola sea siempre igual a cero (0) Valida que el cdigo de la entidad se encuentre dentro de la tabla de entidades validas para el sistema Valida que el total de registros de la cola corresponda a la cantidad exacta de lneas de detalle en el archivo
PR
Cola
Numero Registros
PR
Cola
Fin de Registro
PR
TODAS
Longitud de registro
Convert.ToInt32(@SumatoriaLongitudCampos@) !=531
Valida que la longitud de todos los registros sea igual a la definida en el anexo tcnico: 531