Exemplo n.º 1
0
        public static string SELECT_BUILDER(SelectCaller local_caller, Common.QueryConditions conditions)
        {
            string query = string.Empty;
            string union = " UNION ";
            string copy  = string.Empty;

            foreach (KeyValuePair <ETipoEntidad, TEntidadRegistroBase> entity in ModuleController.Instance.ActiveEntidades)
            {
                if (!entity.Value.Active)
                {
                    continue;
                }

                copy = query;
                conditions.TipoEntidad = entity.Key;
                query += union + local_caller(conditions);

                if (query == (copy + union))
                {
                    query = copy;
                }
            }

            query = query.Substring(union.Length);

            return(query);
        }
Exemplo n.º 2
0
        public static string SELECT_BUILDER(SelectCaller local_caller, ETipoEntidad[] list, Common.QueryConditions conditions)
        {
            string query = string.Empty;
            string union = @" 
				UNION "                ;
            string copy  = string.Empty;

            /*foreach (KeyValuePair<ETipoEntidad, TEntidadRegistroBase> entity in ModuleController.Instance.ActiveEntidades)
             *      if (entity.Value.Active)
             *      {
             *              foreach (ETipoEntidad item in list)
             *                      if (item == entity.Value.ETipoEntidad)
             *                      {
             *                              copy = query;
             *                              conditions.TipoEntidad = item;
             *                              query += union + local_caller(conditions);
             *
             *                              if (query == (copy + union)) query = copy;
             *                      }
             *      }*/

            TEntidadRegistroBase entity;

            foreach (ETipoEntidad item in list)
            {
                if (!ModuleController.Instance.ActiveEntidades.ContainsKey(item))
                {
                    continue;
                }

                entity = ModuleController.Instance.ActiveEntidades[item];

                if (!entity.Active)
                {
                    continue;
                }

                copy = query;
                conditions.TipoEntidad = item;
                query += union + local_caller(conditions);

                if (query == (copy + union))
                {
                    query = copy;
                }
            }

            query = query.Substring(union.Length);

            return(query);
        }