Comment obtenir les informations de connexion OData avec JavaScript via C++
Contents
[
Hide
]
Obtenir les informations de connexion OData
Il peut arriver que les développeurs aient besoin d’extraire des informations OData du fichier Excel. Aspose.Cells for JavaScript via C++ fournit la propriété Workbook.dataMashup 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é DataMashup.powerQueryFormulas qui retourne la collection PowerQueryFormulaCollection. À partir de 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.
Code d’exemple
<!DOCTYPE html>
<html>
<head>
<title>Aspose.Cells Example - Read Power Query Formulas</title>
</head>
<body>
<h1>Read Power Query Formulas Example</h1>
<input type="file" id="fileInput" accept=".xls,.xlsx,.csv" />
<button id="runExample">Run Example</button>
<a id="downloadLink" style="display: none;">Download Result</a>
<div id="result"></div>
</body>
<script src="aspose.cells.js.min.js"></script>
<script type="text/javascript">
const { Workbook, SaveFormat, Utils } = AsposeCells;
AsposeCells.onReady({
license: "/lic/aspose.cells.enc",
fontPath: "/fonts/",
fontList: [
"arial.ttf",
"NotoSansSC-Regular.ttf"
]
}).then(() => {
console.log("Aspose.Cells initialized");
});
document.getElementById('runExample').addEventListener('click', async () => {
const fileInput = document.getElementById('fileInput');
if (!fileInput.files.length) {
document.getElementById('result').innerHTML = '<p style="color: red;">Please select an Excel file.</p>';
return;
}
const file = fileInput.files[0];
const arrayBuffer = await file.arrayBuffer();
// Instantiating a Workbook object by loading the uploaded file
const workbook = new Workbook(new Uint8Array(arrayBuffer));
// Access DataMashup and its PowerQueryFormulas collection
const PQFcoll = workbook.dataMashup.powerQueryFormulas;
let html = '<h2>Power Query Formulas</h2>';
if (!PQFcoll || PQFcoll.count === 0) {
html += '<p>No Power Query formulas found.</p>';
} else {
for (let i = 0; i < PQFcoll.count; i++) {
const PQF = PQFcoll.get(i);
html += `<h3>Connection Name: ${PQF.name}</h3>`;
const PQFIcoll = PQF.powerQueryFormulaItems;
if (!PQFIcoll || PQFIcoll.count === 0) {
html += '<p>No items found for this connection.</p>';
} else {
html += '<ul>';
for (let j = 0; j < PQFIcoll.count; j++) {
const PQFI = PQFIcoll.get(j);
html += `<li><strong>Name:</strong> ${PQFI.name} <br/><strong>Value:</strong> ${PQFI.value}</li>`;
}
html += '</ul>';
}
}
}
document.getElementById('result').innerHTML = html;
});
</script>
</html>
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]