مشاركة عبر


نسخ البيانات من QuickBooks Online باستخدام Azure Data Factory أو Azure Synapse Analytics

ينطبق على: Azure Data Factory Azure Synapse Analytics

Tip

جرب Data Factory في Microsoft Fabric، وهو حل تحليلي متكامل للمؤسسات. يغطي Microsoft Fabric كل شيء بدءا من حركة البيانات إلى علم البيانات والتحليلات في الوقت الحقيقي والمعلومات المهنية وإعداد التقارير. تعرف على كيفية بدء إصدار تجريبي جديد مجانا!

توضح هذه المقالة كيفية استخدام نشاط النسخ في مسار Azure Data Factory أو Azure Synapse Analytics لنسخ البيانات من QuickBooks Online. يعتمد على مقالة نظرة عامة حول نشاط النسخ.

هام

الإصدار 1.0 من موصل QuickBooks في مرحلة الإزالة. يوصى بترقية موصل QuickBooks من الإصدار 1.0 إلى 2.0.

القدرات المدعومة

يتم دعم موصل QuickBooks للإمكانات التالية:

القدرات المدعومة IR
نشاط النسخ (مصدر/-) (1) (2)
نشاط البحث (1) (2)

① وقت تشغيل تكامل Azure ② وقت تشغيل التكامل المستضاف ذاتيًا

للحصول على قائمة بمخازن البيانات المدعومة كمصادر أو متلقي، راجع مخازن البيانات المدعومة.

يدعم الموصل مصادقة QuickBooks OAuth 2.0.

الشروع

لتنفيذ نشاط النسخ باستخدام خط أنابيب ، يمكنك استخدام إحدى الأدوات أو مجموعات SDK التالية:

إنشاء خدمة مرتبطة ب QuickBooks باستخدام واجهة المستخدم

  1. في مدخل Microsoft Azure، انتقل إلى Azure Data Factory أو مساحة عمل Azure Synapse.

  2. انتقل إلى علامة التبويب إدارة ، وحدد الخدمات المرتبطة، ثم حدد جديد.

  3. ابحث عن QuickBooks، ثم حدد موصل QuickBooks.

    لقطة شاشة لنتائج البحث لموصل QuickBooks.

  4. قم بتكوين تفاصيل الخدمة، واختبر الاتصال، وأنشئ الخدمة المرتبطة الجديدة.

    لقطة شاشة لجزء تكوين الخدمة المرتبطة ل QuickBooks.

تفاصيل تكوين الموصل

يمكنك استخدام الخصائص لتعريف كيانات Data Factory الخاصة بموصل QuickBooks.

خصائص الخدمة المرتبطة

يدعم موصل QuickBooks الآن الإصدار 2.0. لترقية موصل QuickBooks من الإصدار 1.0 إلى الإصدار 2.0، ارجع إلى الإجراء لاحقا في هذه المقالة. تصف الأقسام التالية تفاصيل الخاصية للنسختين.

الإصدار 2.0

تدعم الخدمة المرتبطة ب QuickBooks الخصائص التالية للإصدار 2.0 من الموصل:

Property Description Required
type نوع الخدمة المرتبطة. يجب ضبطه على QuickBooks. Yes
version الإصدار الذي تحدده. القيمة هي 2.0. Yes
endpoint نقطة نهاية خادم QuickBooks عبر الإنترنت. القيمة هي quickbooks.api.intuit.com. Yes
companyId معرّف شركة QuickBooks المطلوب ترخيصها. للحصول على معلومات حول كيفية العثور على معرف الشركة، راجع موضوع تعليمات QuickBooks Online. Yes
consumerKey معرّف العميل لتطبيق QuickBooks عبر الإنترنت لمصادقة OAuth 2.0. معرفة المزيد. Yes
consumerSecret سر العميل لتطبيق QuickBooks عبر الإنترنت لمصادقة OAuth 2.0. ضع علامة على هذا الحقل لتخزينه SecureString بشكل آمن، أو الرجوع إلى سر مخزن في Azure Key Vault. Yes
refreshToken رمز تحديث OAuth 2.0 المرتبط بتطبيق QuickBooks. معرفة المزيد. ضع علامة على هذا الحقل لتخزينه SecureString بشكل آمن، أو الرجوع إلى سر مخزن في Azure Key Vault.

تنتهي صلاحية رمز التحديث المميز بعد 180 يوما، لذلك يحتاج العملاء إلى تحديثه بانتظام.
Yes

إليك مثال:

{
    "name": "QuickBooksLinkedService",
    "properties": {
        "type": "QuickBooks",
        "version": "2.0",
        "typeProperties": {
            "endpoint": "quickbooks.api.intuit.com",
            "companyId": "<company id>",
            "consumerKey": "<consumer key>", 
            "consumerSecret": {
                 "type": "SecureString",
                 "value": "<clientSecret>"
            },
            "refreshToken": {
                "type": "SecureString",
                "value": "<refresh token>"
            }
        }
    }
}

الإصدار 1.0

تدعم الخدمة المرتبطة ب QuickBooks الخصائص التالية لإصدار الموصل 1.0:

Property Description Required
type نوع الخدمة المرتبطة. يجب ضبطه على QuickBooks. Yes
connectionProperties مجموعة من الخصائص التي تحدد كيفية الاتصال ب QuickBooks. Yes
تحت connectionProperties:
endpoint نقطة نهاية خادم QuickBooks عبر الإنترنت. القيمة هي quickbooks.api.intuit.com. Yes
companyId معرّف شركة QuickBooks المطلوب ترخيصها. للحصول على معلومات حول كيفية العثور على معرف الشركة، راجع موضوع تعليمات QuickBooks Online. Yes
consumerKey معرّف العميل لتطبيق QuickBooks عبر الإنترنت لمصادقة OAuth 2.0. معرفة المزيد. Yes
consumerSecret سر العميل لتطبيق QuickBooks عبر الإنترنت لمصادقة OAuth 2.0. ضع علامة على هذا الحقل لتخزينه SecureString بشكل آمن، أو الرجوع إلى سر مخزن في Azure Key Vault. Yes
refreshToken رمز تحديث OAuth 2.0 المرتبط بتطبيق QuickBooks. معرفة المزيد. ضع علامة على هذا الحقل لتخزينه SecureString بشكل آمن، أو الرجوع إلى سر مخزن في Azure Key Vault.

تنتهي صلاحية رمز التحديث المميز بعد 180 يوما، لذلك يحتاج العملاء إلى تحديثه بانتظام.
Yes
useEncryptedEndpoints يحدد ما إذا كانت نقاط نهاية مصدر البيانات مشفرة عبر HTTPS. القيمة الافتراضية هي true. No

إليك مثال:

{
    "name": "QuickBooksLinkedService",
    "properties": {
        "type": "QuickBooks",
        "typeProperties": {
            "connectionProperties": {
                "endpoint": "quickbooks.api.intuit.com",
                "companyId": "<company id>",
                "consumerKey": "<consumer key>", 
                "consumerSecret": {
                     "type": "SecureString",
                     "value": "<clientSecret>"
              },
                "refreshToken": {
                     "type": "SecureString",
                     "value": "<refresh token>"
              },
                "useEncryptedEndpoints": true
            }
        }
    }
}

معالجة رموز التحديث المميزة للخدمة المرتبطة

عند استخدام موصل QuickBooks Online في خدمة مرتبطة، من المهم إدارة رموز تحديث OAuth 2.0 المميزة من QuickBooks بشكل صحيح.

تستخدم الخدمة المرتبطة رمز تحديث مميز للحصول على رموز وصول جديدة. ومع ذلك ، يقوم QuickBooks Online بتحديث رمز التحديث بشكل دوري. يؤدي هذا الإجراء إلى إبطال الرمز المميز السابق.

لا تقوم الخدمة المرتبطة تلقائيا بتحديث الرمز المميز للتحديث في Azure Key Vault، لذلك تحتاج إلى إدارة تحديث الرمز المميز للتحديث لضمان الاتصال دون انقطاع. وإلا، قد تواجه حالات فشل في المصادقة بعد انتهاء صلاحية الرمز المميز للتحديث.

يمكنك تحديث الرمز المميز للتحديث يدويا في Azure Key Vault استنادا إلى نهج QuickBooks Online لانتهاء صلاحية الرموز المميزة للتحديث. هناك طريقة أخرى تتمثل في أتمتة التحديثات باستخدام مهمة مجدولة أو وظيفة Azure التي تتحقق من وجود رمز مميز جديد للتحديث وتحديثه في Azure Key Vault.

خصائص مجموعة البيانات

للحصول على قائمة كاملة بالأقسام والخصائص المتوفرة لتعريف مجموعات البيانات، راجع مجموعات البيانات في Azure Data Factory وAzure Synapse Analytics.

لنسخ البيانات من QuickBooks Online، قم بتعيين type خاصية مجموعة البيانات إلى QuickBooksObject. تدعم مجموعة بيانات QuickBooks الخصائص التالية:

Property Description Required
type نوع مجموعة البيانات. يجب ضبطه على QuickBooksObject. Yes
tableName ضع اسمًا للجدول. لا (إذا query تم تحديد مصدر النشاط في النشاط)

إليك مثال:

{
    "name": "QuickBooksDataset",
    "properties": {
        "type": "QuickBooksObject",
        "typeProperties": {},
        "schema": [],
        "linkedServiceName": {
            "referenceName": "<QuickBooks linked service name>",
            "type": "LinkedServiceReference"
        }
    }
}

يدعم إصدار الموصل 2.0 جداول QuickBooks التالية:

  • العميل
  • الحاقه
  • Attachable_AttachableRef
  • Attachable_AttachableRef_CustomField
  • فاتورة
  • BillPayment_Line
  • BillPayment_Line_LinkedTxn
  • Bill_Account_Based_Expense_Line
  • Bill_Item_Based_Expense_Line
  • Bill_LinkedTxn
  • Bill_Payment
  • Bill_TxnTaxDetail_TaxLine
  • الموازنة
  • Budget_Detail
  • الفصل
  • CompanyCurrency_CustomField
  • CompanyInfo_NameValue
  • Company_Currency
  • Company_Info
  • بطاقة الائتمانالدفع
  • CreditMemo_CustomField
  • CreditMemo_Description_Line
  • CreditMemo_Discount_Line
  • CreditMemo_Group_Individual_Item_Line
  • CreditMemo_Group_Item_Line
  • CreditMemo_Sales_Item_Line
  • CreditMemo_Subtotal_Line
  • CreditMemo_TxnTaxDetail_TaxLine
  • Credit_Memo
  • العميل
  • نوع العميل
  • الإدارة
  • أودع
  • Deposit_CustomField
  • Deposit_Line
  • Deposit_Line_CustomField
  • Deposit_Linked_Transaction_Detail
  • Deposit_Linked_Transaction_Line
  • Deposit_TxnTaxDetail_TaxLine
  • الموظف
  • تقدير
  • Estimate_CustomField
  • Estimate_Description_Line
  • Estimate_Discount_Line
  • Estimate_Group_Individual_Item_Line
  • Estimate_Group_Item_Line
  • Estimate_LinkedTxn
  • Estimate_Sales_Item_Line
  • Estimate_Subtotal_Line
  • Estimate_TxnTaxDetail_TaxLine
  • فاتورة
  • Invoice_CustomField
  • Invoice_Description_Line
  • Invoice_Discount_Line
  • Invoice_Group_Individual_Item_Line
  • Invoice_Group_Item_Line
  • Invoice_LinkedTxn
  • Invoice_Sales_Item_Line
  • Invoice_Subtotal_Line
  • Invoice_TxnTaxDetail_TaxLine
  • عنصر
  • JournalCode_CustomField
  • JournalEntry_Description_Line
  • JournalEntry_Line
  • JournalEntry_TxnTaxDetail_TaxLine
  • Journal_Code
  • Journal_Entry
  • المدفوعات
  • Payment_Line
  • Payment_Line_LinkedTxn
  • Payment_Method
  • Preferences
  • Preferences_SalesFormsPrefs_CustomField
  • Preferences_OtherPrefs_NameValue
  • Preferences_VendorAndPurchasesPrefs_POCustomField
  • ابتاع
  • Purchase_Account_Based_Expense_Line
  • Purchase_Item_Based_Expense_Line
  • Purchase_TxnTaxDetail_TaxLine
  • Purchase_Order
  • PurchaseOrder_CustomField
  • PurchaseOrder_Account_Based_Expense_Line
  • PurchaseOrder_Item_Based_Expense_Line
  • PurchaseOrder_LinkedTxn
  • PurchaseOrder_TxnTaxDetail_TaxLine
  • المعاملة المتكررة
  • خطوط المعاملات المتكررة
  • RefundReceipt_CustomField
  • RefundReceipt_Description_Line
  • RefundReceipt_Discount_Line
  • RefundReceipt_Group_Individual_Item_Line
  • RefundReceipt_Group_Item_Line
  • RefundReceipt_Sales_Item_Line
  • RefundReceipt_Subtotal_Line
  • RefundReceipt_TxnTaxDetail_TaxLine
  • Refund_Receipt
  • السدادالرسوم
  • ReimburseCharge_Line
  • SalesReceipt_CustomField
  • SalesReceipt_Description_Line
  • SalesReceipt_Discount_Line
  • SalesReceipt_Group_Individual_Item_Line
  • SalesReceipt_Group_Item_Line
  • SalesReceipt_Sales_Item_Line
  • SalesReceipt_Subtotal_Line
  • SalesReceipt_TxnTaxDetail_TaxLine
  • Sales_Receipt
  • التصنيف الضريبي
  • TaxCode_PurchaseTaxRateList_TaxRateDetail
  • TaxCode_SalesTaxRateList_TaxRateDetail
  • Tax_Agency
  • Tax_Code
  • Tax_Rate
  • الشرط
  • Time_Activity
  • النقل
  • المورد
  • VendorCredit_Account_Based_Expense_Line
  • VendorCredit_Item_Based_Expense_Line
  • Vendor_Credit

انسخ خصائص النشاط

للحصول على قائمة كاملة بالأقسام والخصائص المتوفرة لتعريف الأنشطة، راجع المسارات والأنشطة في Azure Data Factory وAzure Synapse Analytics. يوفر هذا القسم قائمة بالخصائص التي يدعمها مصدر QuickBooks.

QuickBooks كمصدر

لنسخ البيانات من QuickBooks Online، قم بتعيين نوع المصدر في نشاط النسخ إلى QuickBooksSource. تدعم مجموعة بيانات QuickBooks الخصائص التالية في قسم نشاط source النسخ:

Property Description Required
type نوع مصدر نشاط النسخ. يجب ضبطه على QuickBooksSource. Yes
query استخدم استعلام SQL المخصص لقراءة البيانات.

بالنسبة للإصدار 2.0 من موصل QuickBooks، يمكنك استخدام استعلام QuickBooks الأصلي فقط، مع وجود قيود. لمزيد من المعلومات، راجع عمليات الاستعلام وبناء الجملة على موقع Intuit Developer.

بالنسبة للإصدار 1.0 من موصل QuickBooks، يمكنك استخدام استعلام SQL-92. على سبيل المثال: "SELECT * FROM "Bill" WHERE Id = '123'".
لا (إذا tableName تم تحديد مجموعة البيانات)

إليك مثال:

"activities":[
    {
        "name": "CopyFromQuickBooks",
        "type": "Copy",
        "inputs": [
            {
                "referenceName": "<QuickBooks input dataset name>",
                "type": "DatasetReference"
            }
        ],
        "outputs": [
            {
                "referenceName": "<output dataset name>",
                "type": "DatasetReference"
            }
        ],
        "typeProperties": {
            "source": {
                "type": "QuickBooksSource",
                "query": "SELECT * FROM \"Bill\" WHERE Id = '123' "
            },
            "sink": {
                "type": "<sink type>"
            }
        }
    }
]

للحصول على قائمة كاملة بالأقسام والخصائص المتوفرة لتعريف الأنشطة، راجع المسارات والأنشطة في Azure Data Factory وAzure Synapse Analytics.

نسخ البيانات من QuickBooks Desktop

لا يمكن لنشاط النسخ في الخدمة نسخ البيانات مباشرة من QuickBooks Desktop. لنسخ البيانات من QuickBooks Desktop، قم بتصدير بيانات QuickBooks إلى ملف قيم مفصولة بفواصل (CSV) ثم قم بتحميل الملف إلى Azure Blob Storage. من هناك، يمكنك استخدام الخدمة لنسخ البيانات إلى المتلقي الذي تختاره.

تعيين نوع البيانات ل Quickbooks

عند نسخ البيانات من QuickBooks، يتم تطبيق التعيينات التالية من أنواع بيانات QuickBooks إلى أنواع البيانات الداخلية التي تستخدمها الخدمة. للتعرف على كيفية قيام نشاط النسخ بتعيين مخطط المصدر ونوع البيانات إلى المتلقي، راجع تعيين المخطط ونوع البيانات في نشاط النسخ.

نوع بيانات QuickBooks نوع بيانات الخدمة المؤقتة (للإصدار 2.0) نوع بيانات الخدمة المؤقتة (للإصدار 1.0)
String string string
Boolean bool bool
DateTime datetime datetime
Decimal decimal (15,2) decimal (15, 2)
Enum string string 
Date datetime datetime
BigDecimal  decimal (15,2) decimal (15, 2)
Integer int int

بحث عن خصائص النشاط

للحصول على تفاصيل حول خصائص نشاط البحث، راجع نشاط البحث في Azure Data Factory وAzure Synapse Analytics.

دورة حياة موصل Quickbooks والترقية

يلخص الجدول التالي معلومات حول إصدارات موصل QuickBooks:

Version مرحلة الإصدار سجل التغيير
1.0 تمت الإزالة غير قابل للتطبيق.
2.0 التوفر العام يتم دعم استعلام QuickBooks الأصلي ، مع قيود. GROUP BY العبارات والعبارات JOIN ووظائف التجميع (Avg، Max، Sum) غير مدعومة. لمزيد من المعلومات، راجع عمليات الاستعلام وبناء الجملة على موقع Intuit Developer.

استعلام SQL-92 غير مدعوم.

مكان الإقامة useEncryptedEndpoints غير مدعوم.

دعم جداول Quickbooks محددة. للحصول على قائمة الجداول المدعومة، انتقل إلى خصائص مجموعة البيانات.

ترقية موصل Quickbooks من الإصدار 1.0 إلى الإصدار 2.0

  1. في مدخل Microsoft Azure، انتقل إلى Azure Data Factory أو مساحة عمل Azure Synapse.

  2. انتقل إلى علامة التبويب إدارة ، وحدد الخدمات المرتبطة، ثم حدد تحرير للخدمة المرتبطة.

  3. في جزء تحرير الخدمة المرتبطة ، حدد 2.0 للإصدار. لمزيد من المعلومات، راجع خصائص الخدمة المرتبطة للإصدار 2.0 سابقا في هذه المقالة.

  4. إذا كنت تستخدم استعلام SQL في مصدر نشاط النسخ أو نشاط البحث الذي يشير إلى الخدمة المرتبطة بالإصدار 1.0، فستحتاج إلى تحويله إلى استعلام QuickBooks الأصلي. تعرف على المزيد حول الاستعلام الأصلي من خصائص نشاط النسخ سابقا في هذه المقالة ومن عمليات الاستعلام وبناء الجملة على موقع Intuit Developer.

  5. لاحظ أن الإصدار 2.0 يدعم جداول Quickbooks محددة. للحصول على قائمة الجداول المدعومة، انتقل إلى خصائص مجموعة البيانات.