Зарегистрироваться | Поиск |
Результаты опроса: Используете ли CrmRestKit.js ? | |||
Использую CrmRestKit без изменений |
![]() ![]() ![]() ![]() |
0 | 0% |
Использую CrmRestKit с изменениями или мне нужны дополнения |
![]() ![]() ![]() ![]() |
1 | 33.33% |
Использую свою библиотеку |
![]() ![]() ![]() ![]() |
2 | 66.67% |
Использую урывки кода с SDK |
![]() ![]() ![]() ![]() |
0 | 0% |
Голосовавшие: 3. Вы ещё не голосовали в этом опросе |
|
Опции темы |
|
![]() |
#1 |
Чайный пьяница
|
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|
![]() |
#2 |
Участник
|
Ни в первом ни в втором нет возможности.
Сделать запрос retrieveMultiple получить первую страницу и линк на вторую. Оно забирает все или только $top причем в втором XrmSvcToolkit.js если retrieveMultiple async == false то он вернет только первую страницу: Код: var retrieveMultiple = function (opts) { if (!isNonEmptyString(opts.entityName)) { throw new Error("entityName parameter was not provided. "); } var odataQuery = ""; if (opts.odataQuery != null) { if (!isString(opts.odataQuery)) { throw new Error("odataQuery parameter must be a string. "); } if (opts.odataQuery.charAt(0) != "?") { odataQuery = "?" + opts.odataQuery; } else { odataQuery = opts.odataQuery; } } var restReq = { url: clientUrl + odataEndpoint + "/" + opts.entityName + "Set" + odataQuery, type: "GET", async: !!opts.async }; return doRestRequest(restReq, function (result) { if (isFunction(opts.successCallback)) { opts.successCallback(result.results); } if (!opts.async) { return result.results; } if (result.__next != null) { opts.odataQuery = result.__next.substring((clientUrl + odataEndpoint + "/" + opts.entityName + "Set").length); retrieveMultiple(opts); } else { if (isFunction(opts.completionCallback)) { opts.completionCallback(); } } }, function (err) { if (isFunction(opts.errorCallback)) { opts.errorCallback(err); } else { throw err; } }); }; |
|
![]() |
#3 |
Чайный пьяница
|
Что же тогда делают следующие строки из кода, который вы вставили? Код: opts.odataQuery = result.__next.substring((clientUrl + odataEndpoint + "/" + opts.entityName + "Set").length); retrieveMultiple(opts);
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit Последний раз редактировалось a33ik; 05.11.2013 в 19:02. |
|
![]() |
#4 |
Участник
|
Выполняю retrieveMultiple для получения следующей страницы.
Просто не могу вам объяснить ![]() Попробую на пальцах: Мне нужно вывести первую страницу данных в область просмотра а ссылку и запуск запроса на вторую страницу повесить на кнопку и только после нажания этой кнопки достать вторую страницу. Или еще пример такой. Мне нужно получить по 50 записей которые собрать в пакет и отправить, если пакет ушел и вернулся ответ забрать еще 50 записей и отправить. Ну как то так. Они не дают возможности вернуть первую страницу и ссылку на вторую. Они сразу забирают вторую страницу если она есть. |
|
![]() |
#5 |
Чайный пьяница
|
Цитата:
Но имхо это экзотика. Я чуть-чуть пописАл под 2011, но задачи, чтобы было необходим такой подход - у меня не было...
__________________
Эмо разработчик, сначала пишу код, потом плачу над его несовершенством. Подписывайтесь на мой блог, twitter и YouTube канал. Пользуйтесь моим Ultimate Workflow Toolkit |
|