Delen via


Gatewayondersteuning verwerken

Verbinding testen

Aangepaste Verbinding maken or ondersteuning is beschikbaar in zowel persoonlijke als standaardmodi van de on-premises gegevensgateway. Beide gatewaymodi ondersteunen Importeren. Direct Query wordt alleen ondersteund in de standaardmodus. OAuth voor aangepaste connectors via gateways wordt momenteel alleen ondersteund voor gatewaybeheerders, maar niet voor andere gegevensbrongebruikers.

De methode voor het implementeren van test Verbinding maken ionfunctionaliteit verandert waarschijnlijk terwijl de Verbinding maken or-functionaliteit van Power BI in preview is.

Als u geplande vernieuwing wilt ondersteunen via de on-premises gegevensgateway, moet uw connector een Test Verbinding maken ion-handler implementeren. De functie wordt aangeroepen wanneer de gebruiker referenties voor uw bron configureert en wordt gebruikt om ervoor te zorgen dat deze geldig zijn. De handler Test Verbinding maken ion is ingesteld in de record Soort gegevensbron en heeft de volgende handtekening:

(dataSourcePath) as list => ...

Waar dataSourcePath is de waarde van het gegevensbronpad voor uw functie en de retourwaarde bestaat uit een lijst met:

  • De naam van de functie die moet worden aangeroepen (deze functie moet worden gemarkeerd als #shareden is meestal uw primaire gegevensbronfunctie).
  • Een of meer argumenten die u aan uw functie wilt doorgeven.

Als de aanroep van de functie resulteert in een fout, wordt test Verbinding maken ion beschouwd als mislukt en wordt de referentie niet behouden.

Notitie

Zoals hierboven vermeld, moet de functienaam van Test Verbinding maken ion lid shared zijn.

Voorbeeld: Verbinding maken or zonder vereiste argumenten

In het onderstaande codefragment wordt Test Verbinding maken ion geïmplementeerd voor een gegevensbron zonder vereiste parameters (zoals de parameter in de TripPin-zelfstudie). Verbinding maken oren zonder vereiste parameters (ook wel Singletons genoemd) hebben geen invoer van de gebruiker nodig om een verbinding te testen (met uitzondering van referenties). In dit geval is de dataSourcePath waarde gelijk aan de naam van het gegevensbrontype en kan deze worden genegeerd. De TripPin.Contents functie wordt aangeroepen zonder extra parameters.

TripPin = [
    TestConnection = (dataSourcePath) => { "TripPin.Contents" },
    Authentication = [
        Anonymous = []
    ],
    Label = "TripPin"
];

Voorbeeld: Verbinding maken or met een URL-parameter

Als uw gegevensbronfunctie één vereiste parameter van het type Uri.Typeheeft, dataSourcePath is deze gelijk aan de URL van de gebruiker. In het onderstaande fragment ziet u de implementatie test Verbinding maken ion uit het Github-voorbeeld.

GithubSample = [
    TestConnection = (dataSourcePath) => {"GithubSample.Contents", dataSourcePath},
    Authentication = [
        OAuth = [
            StartLogin = StartLogin,
            FinishLogin = FinishLogin,
            Label = Extension.LoadString("AuthenticationLabel")
        ]
    ]
];

Voorbeeld: Verbinding maken or met vereiste parameters

Als uw gegevensbronfunctie meerdere parameters of één niet-URL-parameter heeft, is de dataSourcePath waarde een JSON-tekenreeks met de parameters. Het onderstaande fragment is afkomstig uit het DirectQueryForSQL-voorbeeld .

DirectSQL = [
    TestConnection = (dataSourcePath) =>
        let
            json = Json.Document(dataSourcePath),
            server = json[server],
            database = json[database]
        in
            { "DirectSQL.Database", server, database },
    Authentication = [
        Windows = [],
        UsernamePassword = []
    ],
    Label = "Direct Query for SQL"
];