#c# #quickbooks
#c# #quickbooks
Вопрос:
Я хотел бы запустить отчет JobProfitabilityDetail для заданного диапазона дат для всех клиентов. Согласно документации, для запуска этого отчета требуется фильтр сущностей, но я не вижу способа настроить его, чтобы все клиенты попадали в диапазон дат.
Моя первая попытка — получить все диапазоны дат от примерной компании, чтобы вернуть отчет. Вот код, который я использовал для создания объекта запроса:
IJobReportQuery JobReportQueryRq = requestMsgSet.AppendJobReportQueryRq();
JobReportQueryRq.JobReportType.SetValue(ENJobReportType.jrtJobProfitabilityDetail);
JobReportQueryRq.ORReportPeriod.ReportDateMacro.SetValue(ENReportDateMacro.rdmAll);
JobReportQueryRq.ORReportModifiedDate.ReportModifiedDateRangeMacro.SetValue(ENReportModifiedDateRangeMacro.rmdrmAll);
Если я выполняю этот запрос, он возвращает сообщение о состоянии:
"There is a missing element: "ReportEntityFilter"."
Что имеет смысл, потому что в документации говорится, что мне нужен фильтр сущностей. Итак, я могу добавить фильтр. Четыре варианта: Клиент, Сотрудник, другое имя, Поставщик. Единственный, который имеет смысл, — это клиент, который я добавляю как:
JobReportQueryRq.ReportEntityFilter.ORReportEntityFilter.EntityTypeFilter.SetValue(ENEntityTypeFilter.etfCustomer);
Добавив это в запрос, я получаю сообщение о состоянии:
"There is a missing element: "ListID, FullName, FullNameWithChildren, or ListIDWithChildren"."
Я не вижу возможности получить всех клиентов. Я попробовал одного клиента, чтобы узнать, смогу ли я вернуть результаты, добавив:
JobReportQueryRq.ReportItemFilter.ORReportItemFilter.FullNameList.Add("Abercrombie, Kristy");
Я получил ту же ошибку о том, что отсутствует элемент ListID, полное имя и т. Д.
Есть идеи о том, как запустить этот отчет для всех клиентов в диапазоне дат?