Сортировка информационных групп по значениям дополнительного свойства

Модератор
#
Сортировка информационных групп по значениям дополнительного свойства
Для сортировки информационных групп по значению доп. свойства
перед вызовом метода ShowInformationSystem вставьте код  следующего содержания:


// Фильтруем группы по тому дополнительному свойству, по значениям которого требуется их отсортировать
$element['type'] = 1;
$element['prefix'] = 'and';
$element['property_id'] = 4; // Идентификатор доп. свойства, по значениям которого необходимо отсортировать группы
$element['if'] = '!=';
$element['value'] = '';
$element['sufix']='';
$property['select_groups'][] = $element;
      
/* Сортруем по возрастанию значений доп. свойства
Для сортировки по убыванию значений доп. свойства $property['OrderGroup'] = 'DESC';*/
$property['OrderGroup'] = 'ASC';

/*ВНИМАНИЕ!  В зависимости от ТИПА дополнительного свойства 2-й параметр функции convert должен принимать разные значения:
Тип дополнительного свойства | Значение параметра
---------------------------------------------------
Дата                        |  DATE
---------------------------------------------------
ДатаВремя                   |  DATETIME
---------------------------------------------------
Число или Строка(если нужно |
отсортировать значения как  |  SIGNED или UNSIGNED
числа, а не как строки)     |  
*/

// Строковые значения сортируются как числа      
$property['OrderGroupField'] =  ' convert(`information_propertys_groups_value_value` , SIGNED) ';
/*
Если тип доп. свойства "Строка" и значения данного доп. свойства необходимо отсортировать как строковые, то вместо
$property['OrderGroupField'] =  ' convert(`information_propertys_groups_value_value` , ...) ';
используйте  
$property['OrderGroupField'] =  'information_propertys_groups_value_value';

*/
#
Re: Сортировка информационных групп по значениям дополнительного свойства
Урра, я так долго этого ждала!
Огромное спасибо, обязательно попробуем!
А выборку групп по значению доп. свойства можно?
http://superweb.pro/ — сайты на HostCMS под ключ
Модератор
#
Re: Сортировка информационных групп по значениям дополнительного свойства
Для выборки групп по значению доп. свойства используйте код типа

$element['type'] = 1;
$element['prefix'] = 'and';
/* Идентификатор доп. свойства, по значениям которого необходимо отфильтровать информациолнные группы */
$element['property_id'] = 4;
$element['if'] = '!='; // Условие фильтрации
$element['value'] = ''; // Значение доп. свойства
$element['sufix']='';
$property['select_groups'][] = $element;
#
Re: Сортировка информационных групп по значениям дополнительного свойства
А можно пример для нескольких доп. свойств? Есть пять доп.свойств типа ИС, нужно вывести группу, если хотя бы одно из этих пяти доп.свойств равно заданному ID. То есть логика "если значение доп.свойства 1 = ID или значение доп.свойства 2 = ID или значение доп.свойства 3 = ID или значение доп.свойства 4 = ID или значение доп.свойства 5 = ID, то выводим группу".

P.S. Так не хватает привязок "группа к группе" и "группа к элементу" Стольких извращений можно было бы избежать...
http://superweb.pro/ — сайты на HostCMS под ключ
#
Re: Сортировка информационных групп по значениям дополнительного свойства
Ау... помогите, пожалуйста...

plasmamedia писал(а):
Есть пять доп.свойств типа ИС, нужно вывести группу, если хотя бы одно из этих пяти доп.свойств равно заданному ID. То есть логика «если значение доп.свойства 1 = ID или значение доп.свойства 2 = ID или значение доп.свойства 3 = ID или значение доп.свойства 4 = ID или значение доп.свойства 5 = ID, то выводим группу».
http://superweb.pro/ — сайты на HostCMS под ключ
#
Re: Сортировка информационных групп по значениям дополнительного свойства
Так и нет ответа
Невозможно что ли сделать выборку таким способом?
http://superweb.pro/ — сайты на HostCMS под ключ
Модератор
#
Re: Сортировка информационных групп по значениям дополнительного свойства
Для решения следующей задачи
plasmamedia писал(а):
Есть пять доп.свойств типа ИС, нужно вывести группу, если хотя бы одно из этих пяти доп.свойств равно заданному ID. То есть логика «если значение доп.свойства 1 = ID или значение доп.свойства 2 = ID или значение доп.свойства 3 = ID или значение доп.свойства 4 = ID или значение доп.свойства 5 = ID, то выводим группу».

код будет выглядеть примерно так

$element['type'] = 1;
$element['prefix'] = 'and (';
/* Идентификатор доп. свойства, по значениям которого необходимо отфильтровать информационные группы */
$element['property_id'] = 1; // Идентификатор доп. свойства
$element['if'] = '='; // Условие фильтрации
$element['value'] = ID; // Значение доп. свойства
$element['sufix']='';
$property['select_groups'][] = $element;

$element['type'] = 1;
$element['prefix'] = 'OR';
/* Идентификатор доп. свойства, по значениям которого необходимо отфильтровать информационные группы */
$element['property_id'] = 2; // Идентификатор доп. свойства
$element['if'] = '='; // Условие фильтрации
$element['value'] = ID; // Значение доп. свойства
$element['sufix']='';
$property['select_groups'][] = $element;

$element['type'] = 1;
$element['prefix'] = 'OR';
/* Идентификатор доп. свойства, по значениям которого необходимо отфильтровать информационные группы */
$element['property_id'] = 3; // Идентификатор доп. свойства
$element['if'] = '='; // Условие фильтрации
$element['value'] = ID; // Значение доп. свойства
$element['sufix']='';
$property['select_groups'][] = $element;

$element['type'] = 1;
$element['prefix'] = 'OR';
/* Идентификатор доп. свойства, по значениям которого необходимо отфильтровать информационные группы */
$element['property_id'] = 4; // Идентификатор доп. свойства
$element['if'] = '='; // Условие фильтрации
$element['value'] = ID; // Значение доп. свойства
$element['sufix']='';
$property['select_groups'][] = $element;


$element['type'] = 1;
$element['prefix'] = 'OR';
/* Идентификатор доп. свойства, по значениям которого необходимо отфильтровать информационные группы */
$element['property_id'] = 5; // Идентификатор доп. свойства
$element['if'] = '='; // Условие фильтрации
$element['value'] = ID; // Значение доп. свойства
$element['sufix']=')';
$property['select_groups'][] = $element;
#
Re: Сортировка информационных групп по значениям дополнительного свойства
Ivanov, огромное спасибо, попробую!
Есть возможность с вами связаться лично? E-mail, ICQ?
Моя ICQ 38732959 - стукнитесь, пожалуйста.
http://superweb.pro/ — сайты на HostCMS под ключ
Модератор
#
Re: Сортировка информационных групп по значениям дополнительного свойства
Пожалуйста! У нас вся связь осуществляется через систему поддержки (helpdesk).
#
Re: Сортировка информационных групп по значениям дополнительного свойства
Сортирую группы по доп. свойству тип DATE.
Сортирует не корректно видимо по тому что в БД
Таблица : information_propertys_groups_value_table
Поле: information_propertys_groups_value_value
указан тип MEDIUMTEXT

в этой таблице указаны значения тип 01.04.2011,
Оно сортирует по дням недели, а не по полной дате, т.е. получается
01.04.2011
02.03.2011
05.04.2011
...

Я так понял при создании доп.свойства ему не верно назначился тип поля?
Авторизация