|
Как передать параметры в метод битрикса? |
☑ |
0
OldCondom
04.03.19
✎
14:53
|
Допустим метод task.elapseditem.getlist
FILTER Массив вида {"фильтруемое_поле": "значение фильтра" [, ...]}. Фильтруемое поле может принимать значения: CREATED_DATE - дата создания записи;
Как этот массив передать? Пробую, все ругается и ругается.
К примеру пытался так: "order[USER_ID]=asc&filter[>=CREATED_DATE]=2019-02-01 00:00:00"
Ответ: Param #2 (filter) for method ctaskelapseditem::getlist() expected to be of type \u0022array\u0022, but given something else.;
Потом так: "order[USER_ID]=asc&filter[>=CREATED_DATE][0]=2019-02-01 00:00:00"
Ответ: Param #2 (filter) for method ctaskelapseditem::getlist() expected to be of type \u0022array\u0022, but given something else.;
И еще так: "order[USER_ID]=asc&filter[0][CREATED_DATE]=2019-02-01 00:00:00
Ответ: (filter) for method ctaskelapseditem::getlist() must not contain key \u00220\u0022.;
Последний видимо проглотил как массив? Только что значит \u00220\u0022? Пустая строка?
|
|
1
OldCondom
04.03.19
✎
15:01
|
Такая строка проходит без ошибок:
"order[USER_ID]=asc&filter[CREATED_DATE][]=2019-02-01 00:00:00"
Но мне нужен фильтр дат ОТ и ДО, а тут только на определенную дату. Если делаю:
"order[USER_ID]=asc&filter[>=CREATED_DATE][]=2019-02-01 00:00:00" снова ругается, что передан не массив.
|
|
2
OldCondom
04.03.19
✎
15:08
|
Разобрался, так работает:
"order[USER_ID]=asc&filter[>CREATED_DATE]=2019-01-31T00:00:00&filter[<CREATED_DATE]=2019-02-28T23:59:59"
часовой пояс забыли, или ">=" не отрабатывает, проверять уже лень.
|
|
3
OldCondom
04.03.19
✎
15:32
|
Короче документация битрикса недоделана по ходу. В тех методах, что использовал, нигде не работает сравнение >=, только >. Причем возвращает ошибку "это не массив, а хз что".
|
|
4
Sysanin_1ц
04.03.19
✎
23:45
|
(3) Документация Битрикса еще то г..но. Объемы описания API битрикса больше чем у PHP на котором оно написано и большинство из этого глючное.
Давно бросил это чудо в пользу opensource CMS
|
|