Как получить имена столбцов в заказе на продажу из Quickbooks с помощью QBXML

Я новичок в Quickbooks и Web Connector и использую PHP SDK для Quickbooks.

Я знаю, как получить Sales Orders из Quickbooks, используя QBXML request.

Но я хочу получить имена столбцов в заказе на продажу из Quickbooks.

Есть ли какой-либо способ или есть ли какие-либо QBXML request, с помощью которых я могу получить эти имена столбцов из Заказа на продажу?

Спасибо


person Pratik    schedule 07.03.2013    source источник


Ответы (3)


Большинство версий QuickBooks вообще НЕ основаны на SQL. Кроме того, НЕТ версий QuickBooks, которые позволяют вам напрямую обращаться к таблицам SQL.

Вместо этого все API QuickBooks основаны на XML.

XML не имеет «столбцов».

Оооо... ваш вопрос:

Но я хочу получить имена столбцов в заказе на продажу от Quickbooks.

На самом деле не имеет никакого смысла / не подлежит ответу.

QuickBooks не имеет столбцов. Заказы на продажу не имеют столбцов.

Если вы просто пытаетесь выяснить, какие данные доступны, вам следует использовать Документация QuickBooks OSR.

Вот ссылка на вики по интеграции QuickBooks о том, как ее использовать.

Вот доступные поля XML:

<SalesOrderRet> <!-- optional, may repeat -->
 <TxnID >IDTYPE</TxnID> <!-- required -->
 <TimeCreated >DATETIMETYPE</TimeCreated> <!-- required -->
 <TimeModified >DATETIMETYPE</TimeModified> <!-- required -->
 <EditSequence >STRTYPE</EditSequence> <!-- required -->
 <TxnNumber >INTTYPE</TxnNumber> <!-- optional -->
 <CustomerRef> <!-- required -->
  <ListID >IDTYPE</ListID> <!-- optional -->
  <FullName >STRTYPE</FullName> <!-- optional -->
 </CustomerRef>
 <ClassRef> <!-- optional -->
  <ListID >IDTYPE</ListID> <!-- optional -->
  <FullName >STRTYPE</FullName> <!-- optional -->
 </ClassRef>
 <TemplateRef> <!-- optional -->
  <ListID >IDTYPE</ListID> <!-- optional -->
  <FullName >STRTYPE</FullName> <!-- optional -->
 </TemplateRef>
 <TxnDate >DATETYPE</TxnDate> <!-- required -->
 <RefNumber >STRTYPE</RefNumber> <!-- optional -->
 <BillAddress> <!-- optional -->
  <Addr1 >STRTYPE</Addr1> <!-- optional -->
  <Addr2 >STRTYPE</Addr2> <!-- optional -->
  <Addr3 >STRTYPE</Addr3> <!-- optional -->
  <Addr4 >STRTYPE</Addr4> <!-- optional -->
  <Addr5 >STRTYPE</Addr5> <!-- optional -->
  <City >STRTYPE</City> <!-- optional -->
  <State >STRTYPE</State> <!-- optional -->
  <PostalCode >STRTYPE</PostalCode> <!-- optional -->
  <Country >STRTYPE</Country> <!-- optional -->
  <Note >STRTYPE</Note> <!-- optional -->
 </BillAddress>
 <BillAddressBlock> <!-- optional -->
  <Addr1 >STRTYPE</Addr1> <!-- optional -->
  <Addr2 >STRTYPE</Addr2> <!-- optional -->
  <Addr3 >STRTYPE</Addr3> <!-- optional -->
  <Addr4 >STRTYPE</Addr4> <!-- optional -->
  <Addr5 >STRTYPE</Addr5> <!-- optional -->
 </BillAddressBlock>
 <ShipAddress> <!-- optional -->
  <Addr1 >STRTYPE</Addr1> <!-- optional -->
  <Addr2 >STRTYPE</Addr2> <!-- optional -->
  <Addr3 >STRTYPE</Addr3> <!-- optional -->
  <Addr4 >STRTYPE</Addr4> <!-- optional -->
  <Addr5 >STRTYPE</Addr5> <!-- optional -->
  <City >STRTYPE</City> <!-- optional -->
  <State >STRTYPE</State> <!-- optional -->
  <PostalCode >STRTYPE</PostalCode> <!-- optional -->
  <Country >STRTYPE</Country> <!-- optional -->
  <Note >STRTYPE</Note> <!-- optional -->
 </ShipAddress>
 <ShipAddressBlock> <!-- optional -->
  <Addr1 >STRTYPE</Addr1> <!-- optional -->
  <Addr2 >STRTYPE</Addr2> <!-- optional -->
  <Addr3 >STRTYPE</Addr3> <!-- optional -->
  <Addr4 >STRTYPE</Addr4> <!-- optional -->
  <Addr5 >STRTYPE</Addr5> <!-- optional -->
 </ShipAddressBlock>
 <PONumber >STRTYPE</PONumber> <!-- optional -->
 <TermsRef> <!-- optional -->
  <ListID >IDTYPE</ListID> <!-- optional -->
  <FullName >STRTYPE</FullName> <!-- optional -->
 </TermsRef>
 <DueDate >DATETYPE</DueDate> <!-- optional -->
 <SalesRepRef> <!-- optional -->
  <ListID >IDTYPE</ListID> <!-- optional -->
  <FullName >STRTYPE</FullName> <!-- optional -->
 </SalesRepRef>
 <FOB >STRTYPE</FOB> <!-- optional -->
 <ShipDate >DATETYPE</ShipDate> <!-- optional -->
 <ShipMethodRef> <!-- optional -->
  <ListID >IDTYPE</ListID> <!-- optional -->
  <FullName >STRTYPE</FullName> <!-- optional -->
 </ShipMethodRef>
 <Subtotal >AMTTYPE</Subtotal> <!-- optional -->
 <ItemSalesTaxRef> <!-- optional -->
  <ListID >IDTYPE</ListID> <!-- optional -->
  <FullName >STRTYPE</FullName> <!-- optional -->
 </ItemSalesTaxRef>
 <SalesTaxPercentage >PERCENTTYPE</SalesTaxPercentage> <!-- optional -->
 <SalesTaxTotal >AMTTYPE</SalesTaxTotal> <!-- optional -->
 <TotalAmount >AMTTYPE</TotalAmount> <!-- optional -->
<CurrencyRef> <!-- optional -->
<ListID >IDTYPE</ListID> <!-- optional -->
<FullName >STRTYPE</FullName> <!-- optional -->
</CurrencyRef>
<ExchangeRate >FLOATTYPE</ExchangeRate> <!-- optional -->
<TotalAmountInHomeCurrency >AMTTYPE</TotalAmountInHomeCurrency> <!-- optional -->
<IsManuallyClosed >BOOLTYPE</IsManuallyClosed> <!-- optional -->
<IsFullyInvoiced >BOOLTYPE</IsFullyInvoiced> <!-- optional -->
<Memo >STRTYPE</Memo> <!-- optional -->
<CustomerMsgRef> <!-- optional -->
<ListID >IDTYPE</ListID> <!-- optional -->
<FullName >STRTYPE</FullName> <!-- optional -->
</CustomerMsgRef>
<IsToBePrinted >BOOLTYPE</IsToBePrinted> <!-- optional -->
<IsToBeEmailed >BOOLTYPE</IsToBeEmailed> <!-- optional -->
<CustomerSalesTaxCodeRef> <!-- optional -->
<ListID >IDTYPE</ListID> <!-- optional -->
<FullName >STRTYPE</FullName> <!-- optional -->
</CustomerSalesTaxCodeRef>
<Other >STRTYPE</Other> <!-- optional -->
<ExternalGUID >GUIDTYPE</ExternalGUID> <!-- optional -->
<LinkedTxn> <!-- optional, may repeat -->
<TxnID >IDTYPE</TxnID> <!-- required -->
<!-- TxnType may have one of the following values: ARRefundCreditCard, Bill, BillPaymentCheck, BillPaymentCreditCard, BuildAssembly, Charge, Check, CreditCardCharge, CreditCardCredit, CreditMemo, Deposit, Estimate, InventoryAdjustment, Invoice, ItemReceipt, JournalEntry, LiabilityAdjustment, Paycheck, PayrollLiabilityCheck, PurchaseOrder, ReceivePayment, SalesOrder, SalesReceipt, SalesTaxPaymentCheck, Transfer, VendorCredit, YTDAdjustment -->
<TxnType >ENUMTYPE</TxnType> <!-- required -->
<TxnDate >DATETYPE</TxnDate> <!-- required -->
<RefNumber >STRTYPE</RefNumber> <!-- optional -->
<!-- LinkType may have one of the following values: AMTTYPE, QUANTYPE -->
<LinkType >ENUMTYPE</LinkType> <!-- optional -->
<Amount >AMTTYPE</Amount> <!-- required -->
</LinkedTxn>
<!-- BEGIN OR -->
<SalesOrderLineRet> <!-- optional -->
<TxnLineID >IDTYPE</TxnLineID> <!-- required -->
<ItemRef> <!-- optional -->
<ListID >IDTYPE</ListID> <!-- optional -->
<FullName >STRTYPE</FullName> <!-- optional -->
</ItemRef>
<Desc >STRTYPE</Desc> <!-- optional -->
<Quantity >QUANTYPE</Quantity> <!-- optional -->
<UnitOfMeasure >STRTYPE</UnitOfMeasure> <!-- optional -->
<OverrideUOMSetRef> <!-- optional -->
<ListID >IDTYPE</ListID> <!-- optional -->
<FullName >STRTYPE</FullName> <!-- optional -->
</OverrideUOMSetRef>
<!-- BEGIN OR -->
<Rate >PRICETYPE</Rate> <!-- optional -->
<!-- OR -->
<RatePercent >PERCENTTYPE</RatePercent> <!-- optional -->
<!-- END OR -->
<ClassRef> <!-- optional -->
<ListID >IDTYPE</ListID> <!-- optional -->
<FullName >STRTYPE</FullName> <!-- optional -->
</ClassRef>
<Amount >AMTTYPE</Amount> <!-- optional -->
<InventorySiteRef> <!-- optional -->
<ListID >IDTYPE</ListID> <!-- optional -->
<FullName >STRTYPE</FullName> <!-- optional -->
</InventorySiteRef>
<InventorySiteLocationRef> <!-- optional -->
<ListID >IDTYPE</ListID> <!-- optional -->
<FullName >STRTYPE</FullName> <!-- optional -->
</InventorySiteLocationRef>
<!-- BEGIN OR -->
<SerialNumber >STRTYPE</SerialNumber> <!-- optional -->
<!-- OR -->
<LotNumber >STRTYPE</LotNumber> <!-- optional -->
<!-- END OR -->
<SalesTaxCodeRef> <!-- optional -->
<ListID >IDTYPE</ListID> <!-- optional -->
<FullName >STRTYPE</FullName> <!-- optional -->
</SalesTaxCodeRef>
<Invoiced >QUANTYPE</Invoiced> <!-- optional -->
<IsManuallyClosed >BOOLTYPE</IsManuallyClosed> <!-- optional -->
<Other1 >STRTYPE</Other1> <!-- optional -->
<Other2 >STRTYPE</Other2> <!-- optional -->
<DataExtRet> <!-- optional, may repeat -->
<OwnerID >GUIDTYPE</OwnerID> <!-- optional -->
<DataExtName >STRTYPE</DataExtName> <!-- required -->
<!-- DataExtType may have one of the following values: AMTTYPE, DATETIMETYPE, INTTYPE, PERCENTTYPE, PRICETYPE, QUANTYPE, STR1024TYPE, STR255TYPE -->
<DataExtType >ENUMTYPE</DataExtType> <!-- required -->
<DataExtValue >STRTYPE</DataExtValue> <!-- required -->
</DataExtRet>
</SalesOrderLineRet>
<!-- OR -->
<SalesOrderLineGroupRet> <!-- optional -->
<TxnLineID >IDTYPE</TxnLineID> <!-- required -->
<ItemGroupRef> <!-- required -->
<ListID >IDTYPE</ListID> <!-- optional -->
<FullName >STRTYPE</FullName> <!-- optional -->
</ItemGroupRef>
<Desc >STRTYPE</Desc> <!-- optional -->
<Quantity >QUANTYPE</Quantity> <!-- optional -->
<UnitOfMeasure >STRTYPE</UnitOfMeasure> <!-- optional -->
<OverrideUOMSetRef> <!-- optional -->
<ListID >IDTYPE</ListID> <!-- optional -->
<FullName >STRTYPE</FullName> <!-- optional -->
</OverrideUOMSetRef>
<IsPrintItemsInGroup >BOOLTYPE</IsPrintItemsInGroup> <!-- required -->
<TotalAmount >AMTTYPE</TotalAmount> <!-- required -->
<SalesOrderLineRet> <!-- optional, may repeat -->
<TxnLineID >IDTYPE</TxnLineID> <!-- required -->
<ItemRef> <!-- optional -->
<ListID >IDTYPE</ListID> <!-- optional -->
<FullName >STRTYPE</FullName> <!-- optional -->
</ItemRef>
<Desc >STRTYPE</Desc> <!-- optional -->
<Quantity >QUANTYPE</Quantity> <!-- optional -->
<UnitOfMeasure >STRTYPE</UnitOfMeasure> <!-- optional -->
<OverrideUOMSetRef> <!-- optional -->
<ListID >IDTYPE</ListID> <!-- optional -->
<FullName >STRTYPE</FullName> <!-- optional -->
</OverrideUOMSetRef>
<!-- BEGIN OR -->
<Rate >PRICETYPE</Rate> <!-- optional -->
<!-- OR -->
<RatePercent >PERCENTTYPE</RatePercent> <!-- optional -->
<!-- END OR -->
<ClassRef> <!-- optional -->
<ListID >IDTYPE</ListID> <!-- optional -->
<FullName >STRTYPE</FullName> <!-- optional -->
</ClassRef>
<Amount >AMTTYPE</Amount> <!-- optional -->
<InventorySiteRef> <!-- optional -->
<ListID >IDTYPE</ListID> <!-- optional -->
<FullName >STRTYPE</FullName> <!-- optional -->
</InventorySiteRef>
<InventorySiteLocationRef> <!-- optional -->
<ListID >IDTYPE</ListID> <!-- optional -->
<FullName >STRTYPE</FullName> <!-- optional -->
</InventorySiteLocationRef>
<!-- BEGIN OR -->
<SerialNumber >STRTYPE</SerialNumber> <!-- optional -->
<!-- OR -->
<LotNumber >STRTYPE</LotNumber> <!-- optional -->
<!-- END OR -->
<SalesTaxCodeRef> <!-- optional -->
<ListID >IDTYPE</ListID> <!-- optional -->
<FullName >STRTYPE</FullName> <!-- optional -->
</SalesTaxCodeRef>
<Invoiced >QUANTYPE</Invoiced> <!-- optional -->
<IsManuallyClosed >BOOLTYPE</IsManuallyClosed> <!-- optional -->
<Other1 >STRTYPE</Other1> <!-- optional -->
<Other2 >STRTYPE</Other2> <!-- optional -->
<DataExtRet> <!-- optional, may repeat -->
<OwnerID >GUIDTYPE</OwnerID> <!-- optional -->
<DataExtName >STRTYPE</DataExtName> <!-- required -->
<!-- DataExtType may have one of the following values: AMTTYPE, DATETIMETYPE, INTTYPE, PERCENTTYPE, PRICETYPE, QUANTYPE, STR1024TYPE, STR255TYPE -->
<DataExtType >ENUMTYPE</DataExtType> <!-- required -->
<DataExtValue >STRTYPE</DataExtValue> <!-- required -->
</DataExtRet>
</SalesOrderLineRet>
<DataExtRet> <!-- optional, may repeat -->
<OwnerID >GUIDTYPE</OwnerID> <!-- optional -->
<DataExtName >STRTYPE</DataExtName> <!-- required -->
<!-- DataExtType may have one of the following values: AMTTYPE, DATETIMETYPE, INTTYPE, PERCENTTYPE, PRICETYPE, QUANTYPE, STR1024TYPE, STR255TYPE -->
<DataExtType >ENUMTYPE</DataExtType> <!-- required -->
<DataExtValue >STRTYPE</DataExtValue> <!-- required -->
</DataExtRet>
</SalesOrderLineGroupRet>
<!-- END OR -->
<DataExtRet> <!-- optional, may repeat -->
<OwnerID >GUIDTYPE</OwnerID> <!-- optional -->
<DataExtName >STRTYPE</DataExtName> <!-- required -->
<!-- DataExtType may have one of the following values: AMTTYPE, DATETIMETYPE, INTTYPE, PERCENTTYPE, PRICETYPE, QUANTYPE, STR1024TYPE, STR255TYPE -->
<DataExtType >ENUMTYPE</DataExtType> <!-- required -->
<DataExtValue >STRTYPE</DataExtValue> <!-- required -->
</DataExtRet>
</SalesOrderRet>
person Keith Palmer Jr.    schedule 07.03.2013
comment
Что ж... говоря о столбцах заказа на продажу, я имею в виду название столбца, которое мы видели в программном обеспечении Quickbooks, таком как «Товар», «Магазин», «Цена» и т. д. неужели нельзя это получить? - person Pratik; 07.03.2013
comment
@Pratik Невозможно получить метки из шаблона, нет. - person Keith Palmer Jr.; 07.03.2013
comment
@Pratik Стоит также отметить, что настраиваемые поля полностью отделены от меток в шаблоне. Имена настраиваемых полей БУДУТ возвращены в элементах DataExt. Метки шаблона не будут возвращены. - person Keith Palmer Jr.; 07.03.2013

Недавно я наткнулся на QODBC и OpenSync. Оба переводят модель данных QB в модель таблицы/столбца SQL.

QODBC реализует драйвер ODBC и преобразует ваши запросы в вызовы QB API в режиме реального времени. Он также имеет возможности кэширования для ускорения запросов. Я понимаю, что некоторые варианты драйвера можно запускать под Linux. Драйвер поставляется в двух основных вариантах: локальный драйвер, который позволяет вам подключаться к локальному экземпляру QB и запрашивать его, и удаленный сервер/драйвер для запросов к базам данных QB, размещенным в другом месте (для 64-разрядной разработки рекомендуется использовать удаленный драйвер, даже если вы зациклите его на той же системе). Его версия только для чтения включена в QB Enterprise. Дополнительная информация на Как использовать QODBC с PHP.

OpenSync работает более автономно: вы делаете копию базы данных QB в предпочитаемый механизм базы данных/ сервер, поэтому вы можете сразу запросить данные и отправить изменения, установив поля управления в своей копии и повторно запустив синхронизацию. Хотя вы не можете запрашивать оперативные данные, его очень легко использовать и начать работу (включая получение определения данных, чтобы получить представление о структуре данных, которая отражает XML). У компании есть и другие продукты, которые могут помочь вам в работе с QB API.

Обе версии доступны для ознакомления, и вы также можете загрузить пример OpenSync Access MDB.

person Gabriel Garza    schedule 29.07.2016

Я думаю, вам стоит взглянуть на https://developer.intuit.com/docs/0025_quickbooksapi/0050_data_services Вам понадобится вход в систему Intuit (бесплатно), но на самом деле это, похоже, самое близкое, что я могу найти, к истинным столбцам в их таблицах. Прокрутите вниз до объектов транзакций и объектов списка имен и вспомогательных объектов.

person Jason D    schedule 14.07.2014