ItemInventoryQuery не возвращает все доступные поля.

Мы используем Web Connector на том конце, где установлен QBPOS 10.0.

На стороне сервера мы выдаем запрос ItemInventoryQuery, используя QBPOSFC3.0 (основные классы QB POS).

Ответ, который мы получаем от Quickbooks, содержит большинство полей, доступных в элементе инвентаризации, но есть некоторые поля, которые не возвращаются, в частности, «Единица измерения» не возвращается в XML, который мы получаем от Quickbooks.

Согласно экранной ссылке, «UnitOfMeasure» — это поле, доступное в ответе ItemInventoryQuery https://member.developer.intuit.com/qbsdk-current/Common/newOSR/index.html

Тем не менее, я не могу получить эти значения, узлы «UnitOfMeasure» даже не существуют в ответе XML, который мы получаем от Quickbooks, все остальное в ответе хорошо (например, элемент ListID, имя, поставщик и т. д.)

Что мне здесь не хватает?

Вот пример ответа в формате XML, который мы получаем: http://pastebin.com/pA6KDr0k


person Agustin Garzon    schedule 27.06.2013    source источник


Ответы (3)


Я только что проверил часть своего старого исходного кода и обнаружил, что явно указываю, какие поля возвращать. Например:

query.IncludeRetElementList.Add("UnitOfMeasure1");
query.IncludeRetElementList.Add("UnitOfMeasure2");
query.IncludeRetElementList.Add("UnitOfMeasure3");

Я не помню, сделал ли я это из-за той же проблемы, что и у вас, но я знаю, что получил поля UOM в ответе. Надеюсь это поможет!

person MikeBr59    schedule 27.06.2013
comment
Я обязательно попробую это и вернусь с результатами. - person Agustin Garzon; 28.06.2013
comment
Это сработало для меня! Использование этого списка создает ответ XML точно с полями, запрошенными в этом списке (остальные исключены), поэтому, если вы не используете список, вы также должны включить все предыдущие поля, на которые вы полагались. Так что это сработало для меня. Также для записей UnitOfMeasure доступен только в QBXML 2.0 и выше. - person Agustin Garzon; 03.07.2013

Проверьте, включена ли единица измерения для файла компании в настройках -> товары и инвентарь -> вкладка настроек компании. В новых компаниях он по умолчанию отключен.

person Magicianeer    schedule 27.06.2013
comment
Хотя я вижу некоторые параметры единиц измерения в настройках, я не вижу ничего, что могло бы включать отправку этой информации в интегрированные приложения или что-то в этом роде. - person Agustin Garzon; 28.06.2013
comment
@AgustinGarzon В интегрированных приложениях нет отдельного элемента управления для UofM. Скорее, включение/отключение UofM определяет, появляются ли поля UofM где-либо в QB (включая интеграции) для этого файла компании. - person Magicianeer; 28.06.2013

Вам также не хватает других полей, таких как время создания.

Если вы включили какие-либо строки IncludeRetElementList в свой запрос, это ограничит ваши результаты. Поэтому вам придется добавить IncludeRetElements для UOM, как предложил Майк.

Если это не сработает, я предлагаю опубликовать ваш запрос.

person Comivan    schedule 28.06.2013