Aus Microsoft Excel (nur Windows-Version) können Daten direkt von unserer OData v4 REST Schnittstelle verknüpft werden. Sie können so in Excel immer auf den aktuellen Datenbestand zugreifen ohne die Daten jeweils neu exportieren zu müssen.
Sie gehen dabei wie folgt vor:
Vorbereitung
- Fordern Sie bei uns die Zugangsdaten für Ihre Schnittstelle an.
- Ermitteln Sie in unserer Dokumentation, welche EntityType Sie in Excel abfragen wollen.
Vorgehen in der Arbeitsmappe
Öffnen Sie Excel und erstellen Sie eine neue leere Arbeitsmappe.
- Wechseln Sie in das Menü Data.
- Öffnen Sie die Liste Get Data.
- Wählen Sie From Other Services und dann Blank Query.
- Jetzt öffnet sich der Power Query Editor.
Vorgehen im Advanced Editor
- Wechseln Sie in das Menü View.
- Klicken Sie auf Advanced Editor.
- Ersetzen Sie den Inhalt des Textfeldes durch den von uns erhaltenen Code oder durch das untenstehende Beispiel.
- Ersetzen Sie auf Zeilen 2 -4 die Url, den Benutzernamen und das Passwort durch die von uns erhaltenen Werte.
- Ersetzen Sie auf Zeile 5 die abzufragende Query im OData-Syntax.
- Klicken Sie auf Done.
Vorgehen im Power Query Editor
- Sollten die Daten nicht angezeigt werden, klicken Sie auf Refresh Preview.
- Erweitern Sie die anzuzeigenden Spalten.
- Klicken Sie auf Close & Load.
- Sollten Sie der Dialog Privacy Level erscheinen, wählen Sie Organizational.
Zurück in der Arbeitsmappe
- Durch Klick auf Refresh All können Sie jederzeit die Daten aus der Schnittstelle aktualisieren lassen.
- Sie können jederzeit wieder in den Power Query Editor zurück wechseln, in dem Sie Queries & Connections einblenden
- und dann auf die betreffende Query doppelklicken.
Beispiel
Abfragen der Adressen mit Telefon und E-Mail-Adressen:
let
BaseUrl = "",
UserName = "",
Password = "",
Query = "Adressen?$expand=AdressenTelefone,AdressenEMails",
ApiKey = GetBearer(),
GetBearer = () =>
let
Url = BaseUrl & "Token",
RawData = Web.Contents(BaseUrl & "Token",
[
Headers = [#"Accept"="application/json",
#"Content-Type"="application/x-www-form-urlencoded;charset=UTF-8"],
Content = Text.ToBinary("username=" & UserName & "&password=" & Password & "&grant_type=password")
]),
Json = Json.Document(RawData),
AccessToken = Json[#"access_token"],
AccessTokenHeader = "Bearer " & AccessToken
in AccessTokenHeader,
GetJson = (Url) =>
let Options = [
Headers = [
#"accept" = "application/json",
#"Authorization"
= ApiKey
]
],
RawData = Web.Contents(Url, Options),
Json = Json.Document(RawData)
in Json,
Json = GetJson(BaseUrl & Query),
Value = Json[#"value"],
Table = Table.FromRecords(Value)
in
Table
Kommentare
Bitte melden Sie sich an, um einen Kommentar zu hinterlassen.