예제 #1
0
        //---------------------------------------------------------------
        // Metodos publicos
        //---------------------------------------------------------------

        /// <summary>
        /// Devuelve la lista entidad tipada como una LE: ControlesRepa
        /// </summary>
        /// <returns>Lista Entidad</returns>
        public LEControlesRepa GetAsLE()
        {
            // Llenamos la lista
            LEControlesRepa l_lentRet = LEControlesRepa.NewEmpty();

            foreach (EControlRepa l_entItem in this)
            {
                l_lentRet.AddEntity(l_entItem);
            }

            return(l_lentRet);
        }
예제 #2
0
        /// <summary>
        /// Construye una entidad desde un XML: Control
        /// </summary>
        /// <param name="p_strXML">Datos en XML</param>
        public EControl(string p_strXML,
                        bool p_bEsNueva,
                        bool p_bInitChilds = false)
        {
            // Fijamos la condicion de entidad nueva
            base.m_bNew = p_bEsNueva;

            // Obtenemos el Nodo de datos del XML
            XmlDocument l_xdocData = new XmlDocument();

            l_xdocData.InnerXml = p_strXML;
            XmlNode l_xndData = l_xdocData.ChildNodes[0];

            // Creamos una tabla compatible con la entidad
            DataTable l_dtTemp = new DataTable();

            l_dtTemp.Columns.AddRange(EControl.Struct);

            // Creamos una row a partir de la tabla creada y la
            // llenamos con los valores iniciales
            DataRow l_drTemp = l_dtTemp.NewRow();

            l_drTemp["ctl_cod_cod"]  = XMLRuts.ExtractXAttr(l_xndData, "ctl_cod_cod");
            l_drTemp["ctl_des_des"]  = XMLRuts.ExtractXAttr(l_xndData, "ctl_des_des");
            l_drTemp["ctl_cd1_crit"] = XMLRuts.ExtractXAttr(l_xndData, "ctl_cd1_crit");

            // Llenamos los campos fijos
            XML2FixedFields(ref l_drTemp, l_xndData);

            // Llamamos al metodo fijo
            fNewFromXML(ref l_drTemp, l_xndData);

            // Agregamos la Row creada a la tabla creada y creamos
            // una entidad a partir de los datos
            l_dtTemp.Rows.Add(l_drTemp);
            SetInternalData(l_dtTemp, l_dtTemp.Rows[0]);

            if (!p_bInitChilds)
            {
                return;
            }

            // Creamos las listas-entidad hijas vacias
            m_lentControlesRepa = LEControlesRepa.NewEmpty();
        }
예제 #3
0
 /// <summary>
 /// Constructor
 /// Privado para crear clases vacias
 /// </summary>
 /// <param name="p_dtDatos">DataTable con 1 registro con los datos de la entidad</param>
 private EControl(DataTable p_dtDatos) :
     base(p_dtDatos)
 {
     // Creamos las listas-entidad hijas vacias
     m_lentControlesRepa = LEControlesRepa.NewEmpty();
 }
예제 #4
0
 /// <summary>
 /// Construye una entidad desde un XML: Control
 /// </summary>
 /// <param name="p_strXML">Datos en XML</param>
 /// <param name="p_bEsNueva">T- La Entidad es Nueva / F- No</param>
 public EControl(string p_strXML) :
     this(p_strXML, false)
 {
     // Creamos las listas-entidad hijas vacias
     m_lentControlesRepa = LEControlesRepa.NewEmpty();
 }