Comment obtenir les informations de connexion OData avec C++

Obtenir les informations de connexion OData

Il peut y avoir des cas où les développeurs ont besoin d’extraire des informations OData du fichier Excel. Aspose.Cells fournit la propriété Workbook.GetDataMashup() qui retourne les informations DataMashup présentes dans le fichier Excel. Ces informations sont représentées par la classe DataMashup. La classe DataMashup fournit la propriété GetPowerQueryFormulas() qui retourne la collection PowerQueryFormulaCollection. Depuis PowerQueryFormulaCollection, vous pouvez accéder à PowerQueryFormula et PowerQueryFormulaItem.

Le code suivant illustre l’utilisation de ces classes pour récupérer les informations OData.

Le fichier source utilisé dans l’extrait de code suivant est joint à titre de référence.

Fichier source

Code d’exemple

#include <iostream>
#include "Aspose.Cells.h"
using namespace Aspose::Cells;

int main()
{
    Aspose::Cells::Startup();

    // Source directory path
    U16String srcDir(u"..\\Data\\01_SourceDirectory\\");

    // Create workbook
    Workbook workbook(srcDir + u"ODataSample.xlsx");

    // Get PowerQueryFormulaCollection from DataMashup
    PowerQueryFormulaCollection PQFcoll = workbook.GetDataMashup().GetPowerQueryFormulas();

    // Iterate through each PowerQueryFormula in the collection
    for (int i = 0; i < PQFcoll.GetCount(); ++i)
    {
        PowerQueryFormula PQF = PQFcoll.Get(i);
        std::cout << "Connection Name: " << PQF.GetName().ToUtf8() << std::endl;

        // Get PowerQueryFormulaItemCollection from PowerQueryFormula
        PowerQueryFormulaItemCollection PQFIcoll = PQF.GetPowerQueryFormulaItems();

        // Iterate through each PowerQueryFormulaItem in the collection
        for (int j = 0; j < PQFIcoll.GetCount(); ++j)
        {
            PowerQueryFormulaItem PQFI = PQFIcoll.Get(j);
            std::cout << "Name: " << PQFI.GetName().ToUtf8() << std::endl;
            std::cout << "Value: " << PQFI.GetValue().ToUtf8() << std::endl;
        }
    }

    Aspose::Cells::Cleanup();
    return 0;
}

Sortie console

Connection Name: Orders

Name: Source

Value: OData.Feed("https://services.odata.org/V3/Northwind/Northwind.svc/", null, [Implementation="2.0"])

Name: Orders_table

Value: Source{[Name="Orders",Signature="table"]}[Data]