2014-02-20 2 views
1

Я использую QBO .Net SDK v3.0, и я пытаюсь получить последний бит данных, который мне нужен от покупок.Intuit IPP QBO - Получить покупку

Я могу получить все данные, которые мне нужны от покупки, и большую часть того, что мне нужно от позиции покупки. Дело в том, что я не могу получить информацию о расходах (диаграмму учетной записи). Вот ответ XML от проводника api для позиции под покупкой. Он показывает, что мне нужно, в основном «Office Expense».

<Line> 

    <Id>1</Id> 

    <Amount>74.97</Amount> 

    <DetailType>AccountBasedExpenseLineDetail</DetailType> 

    <AccountBasedExpenseLineDetail> 

     <AccountRef name="Office Expense">52</AccountRef> 

     <BillableStatus>NotBillable</BillableStatus> 

     <TaxCodeRef>NON</TaxCodeRef> 

    </AccountBasedExpenseLineDetail> 

    </Line> 

я могу получить данные не, содержащиеся в разделе AccountBasedExpenseLineDetail с чем-то вроде следующего кода (отредактированные для краткости):

// getting list of purchases.... 
    string pQuery = string.Format("Select * FROM Purchase", startDate); 
    IEnumerable<Purchase> purchases = purchaseQueryService.ExecuteIdsQuery(pQuery).ToList(); 

    // then loop through each line item of each purchase using an iterator 
    for (int lineItem = 0; lineItem < numLines; lineItem++) 

    // then get some data... 
    lineAmount = purchaseInfo.Line[lineItem].Amount.ToString(); 

Любые идеи?

+0

Можете ли вы уточнить ваш вопрос? Вы не получаете AccountBasedExpenseLineDetail? –

+1

D Вы используете подписку Plus или Essentials? –

+0

Используя SDK, я не могу найти способ получить данные о расходах на основе учетной записи, которые заданы пользователем в QBO, чтобы обеспечить способ классификации каждой покупки (расходы на офис, путешествия и т. Д.). Я вижу данные I когда я использую API-обозреватель, поэтому я знаю, что он доступен. Информация, которую я пытаюсь извлечь в моем примере, - это 52. Мне нужны «52» и «Office Expense». Я использую стартовую версию QBO, хотя есть возможность классифицировать расходы. – user3204191

ответ

1

Прикрепление пример кода, используемого для invoice..similarly вы можете написать для

купли
foreach (Line invoiceLine in x.Line) 
       { 
        itm = new LineItem(); 

        if (invoiceLine.Amount != 0) 
        { 
         itm.Description = invoiceLine.Description; 
         itm.Description = String.IsNullOrEmpty(itm.Description) ? "n/a" : itm.Description; 

if (invoiceLine.DetailType == LineDetailTypeEnum.AccountBasedExpenseLineDetail) 
         { 
          AccountBasedExpenseLineDetail itemLineDetail = 
           invoiceLine.AnyIntuitObject as AccountBasedExpenseLineDetail; 

          itm.Quantity = 1; 
          itm.UnitAmount = invoiceLine.Amount; 
          itm.AccountCode = itemLineDetail.AccountRef.Value; 
         } 
+1

Отлично. Эта процедура работала точно так, как мне нужно. Благодаря! – user3204191

Смежные вопросы