Reputation: 1
This is the code I have:
ISalesOrderQuery salesOrdersQueryRq = requestMsgSet.AppendSalesOrderQueryRq();
salesOrdersQueryRq.IncludeLineItems.SetValue(true);
IMsgSetResponse responseMsgSet = sessionManager.DoRequests(requestMsgSet);
IResponse response = responseMsgSet.ResponseList.GetAt(0);
ISalesOrderRetList salesOrderRetList = (ISalesOrderRetList)response.Detail;
the code above get all sales orders but i just need get sales orders from "date" to "date" or the sales order has SO number = "SOnumber", any suggestions?
Upvotes: 0
Views: 587
Reputation: 1319
You can set a TxnFilter when doing queries to limit the response. Each transaction type has different filters that can be set, though a lot use similar filters. The OSR shows which filters are available for each transaction type: https://developer-static.intuit.com/qbSDK-current/Common/newOSR/index.html
ISalesOrderQuery salesOrdersQueryRq = reqeustMsgSet.AppendSalesOrderQueryRq();
salesOrderQueryRq.IncludeLineItems.SetValue(true);
// Use these lines for date range filter
salesOrdersQueryRq.ORTxnNoAccountQuery.TxnFilterNoAccount.ORDateRangeFilter.TxnDateRangeFilter.ORTxnDateRangeFilter.TxnDateFilter.FromTxnDate.SetValue(fromDate);
salesOrdersQueryRq.ORTxnNoAccountQuery.TxnFilterNoAccount.ORDateRangeFilter.TxnDateRangeFilter.ORTxnDateRangeFilter.TxnDateFilter.ToTxnDate.SetValue(toDate);
// Use these lines for reference number query
salesOrdersQueryRq.ORTxnNoAccountQuery.RefNumberList.Add(soNumber);
IMsgSetResponse responseMsgSet = SessionManager.DoRequests(requestMsgSet);
Upvotes: 1