Del via


Opret forbindelse til Fabric-elementer fra dit Fabric Brugerdata-funktionselement

Funktioner til strukturbrugerdata giver forbindelser til understøttede strukturdatakilder og -elementer ved hjælp af funktionen Administrer forbindelser på Fabric-portalen. Denne funktion giver dig mulighed for at oprette forbindelse til dine Fabric-datakilder uden at skulle oprette forbindelsesstrenge eller administrere legitimationsoplysninger for adgang. For stofelementer, der ikke er en datakilde, kan du oprette sikker forbindelse til disse elementer i en funktion.

I denne artikel lærer du, hvordan du:

  • Opret en ny forbindelse til elementet med brugerdatafunktioner.
  • Brug din nye forbindelse i funktionskoden.
  • Rediger eller slet dataforbindelsen.

Understøttede elementer i Fabric Brugerdata-funktioner

Følgende elementer understøttes i øjeblikket for funktioner til stofbrugerdata:

Opret en ny dataforbindelse til elementet brugerdatafunktioner

Alle dataforbindelser, du tilføjer, er knyttet til elementet brugerdatafunktioner og kan refereres til i koden for alle dine funktioner. Hvis du vil følge denne vejledning, skal du bruge et eksisterende element med Fabric User-datafunktioner og en eksisterende Fabric-datakilde.

1. Få adgang til funktionen Administrer forbindelser fra funktionsportalen

I tilstanden Udvikling skal du finde og vælge Administrer forbindelser på båndet i Functions-portaleditoren.

Skærmbillede af funktionsportaleditor med knappen Administrer forbindelser fremhævet.

Den rude, der åbnes, indeholder alle dataforbindelser, du har oprettet. Vælg Tilføj dataforbindelse for at oprette en ny forbindelse.

Skærmbillede af sideruden, hvor fanen Forbindelser er valgt, og der ikke er angivet nogen forbindelser.

2. Vælg din dataforbindelse fra OneLake-kataloget

Når du vælger Tilføj dataforbindelse, åbnes OneLake-kataloget med en liste over alle de datakilder, din brugerkonto har adgang til. Listen er filtreret, så den kun indeholder understøttede datakilder, hvoraf nogle kan være i andre arbejdsområder.

Vælg din datakilde, og vælg derefter Opret forbindelse.

Skærmbillede af OneLake-datakataloget med en liste over datakilder.

Seddel

Hvis du ikke kan finde den datakilde, du leder efter, skal du sørge for, at du har de rette tilladelser til at oprette forbindelse til den. Du kan også sikre dig, at du bruger en understøttet datakilde, som vist i starten af denne artikel.

Når den nye forbindelse til den valgte datakilde er oprettet, vises den i sideruden på fanen Forbindelser. Når du ser forbindelsen, skal du notere dig feltet Alias, der blev genereret for den. Du skal bruge dette alias for at referere til forbindelsen fra en hvilken som helst funktion i elementet brugerdatafunktioner.

Skærmbillede af ruden forbindelser, hvor der er oprettet en ny datakildeforbindelse.

3. Brug dit forbindelsesalias i funktionskoden

Når du er tilbage i portaleditoren, skal du føje aliasset for den forbindelse, du oprettede under fanen Manage Connections, til din kode. Dette alias oprettes automatisk på baggrund af navnet på det stofelement, du opretter forbindelse til.

I dette tilfælde bruger vi et kodeeksempel kaldet "Læs data fra en tabel i SQL Database". Du kan finde dette eksempel ved at klikke på fanen Rediger og derefter klikke på knappen "Indsæt eksempel" og navigere til "SQL Database".

Skærmbillede af Indsæt eksempeldatakatalog med en liste over datakilder.

Dette er den eksempelkode, der blev indsat:

@udf.connection(argName="sqlDB",alias="<alias for sql database>")
@udf.function()
def read_from_sql_db(sqlDB: fn.FabricSqlConnection)-> list:
    # Replace with the query you want to run
    query = "SELECT * FROM (VALUES ('John Smith', 31), ('Kayla Jones', 33)) AS Employee(EmpName, DepID);"

    # Establish a connection to the SQL database
    connection = sqlDB.connect()
    cursor = connection.cursor()

    query.capitalize()

    # Execute the query
    cursor.execute(query)

    # Fetch all results
    results = []
    for row in cursor.fetchall():
        results.append(row)

    # Close the connection
    cursor.close()
    connection.close()
        
    return results

Seddel

Selvom dette eksempel opretter forbindelse til en SQL-database, behøver det ikke et skema eller data i databasen for at køre.

Hvis du vil bruge den dataforbindelse, du har oprettet, skal du ændre følgende linje i dette eksempel: @udf.connection(argName="sqlDB",alias="<alias for sql database>") ved at erstatte værdien af alias med den, du fik fra menuen Manage Connections. Følgende kode viser dette eksempel med værdien ContosoSalesDat:

@udf.connection(argName="sqlDB",alias="ContosoSalesDat")
@udf.function()
def read_from_sql_db(sqlDB: fn.FabricSqlConnection)-> list:
    [...]

Når du har ændret koden, kan du teste ændringerne ved hjælp af testfunktionen i udviklingstilstand. Når du er klar, kan du publicere din funktion ved hjælp af knappen Udgiv på værktøjslinjen. Denne handling kan tage nogle få minutter.

Skærmbillede af knappen 'Publicer'.

Når publiceringen er fuldført, kan du køre funktionen ved at holde markøren over dens navn på listen Functions Explorer og klikke på knappen "Kør" i sidepanelet. Bundpanelet "Output" viser resultatet af at køre funktionen.

Skærmbillede af det sidepanel, der bruges til at køre en funktion.

Og det er alt, hvad du behøver for at oprette forbindelse til en datakilde fra dine Fabric User Data Functions.

Hent variabler fra Fabric-variabelbiblioteker

Et Fabric Variable Library i Microsoft Fabric er et centraliseret lager til administration af variabler, der kan bruges på tværs af forskellige elementer i et arbejdsområde. Det giver udviklere mulighed for at tilpasse og dele varekonfigurationer effektivt. Følg disse trin for at bruge Variable Libraries i dine funktioner:

  1. Føj en forbindelse til et variabelbibliotek ved hjælp af Administrer forbindelser , og hent aliaset for det variable bibliotekselement.
  2. Tilføj en forbindelsesdekorator til det variable bibliotekselement. Du kan f.eks. @udf.connection(argName="varLib", alias="<My Variable Library Alias>") erstatte alias til den nyligt tilføjede forbindelse til det variable bibliotekselement.
  3. I funktionsdefinitionen skal du medtage et argument med typen fn.FabricVariablesClient. Denne klient indeholder de metoder, du skal bruge til at arbejde med variables library item.
  4. Brug getVariables() metoden til at hente alle variablerne fra variabelbiblioteket.
  5. For at læse værdierne for variablerne skal du bruge enten ["variable-name"] eller .get("variable-name").

Eksempel I dette eksempel simulerer vi et konfigurationsscenarie for et produktions- og udviklingsmiljø. Denne funktion indstiller en lagersti afhængigt af det valgte miljø ved hjælp af en værdi, der hentes fra variabelbiblioteket. Variabelbiblioteket indeholder en variabel, der hedder ENV , hvor brugere kan angive en værdi på dev eller prod.

@udf.connection(argName="varLib", alias="<My Variable Library Alias>")
@udf.function()
def get_storage_path(dataset: str, varLib: fn.FabricVariablesClient) -> str:
    """
    Description: Determine storage path for a dataset based on environment configuration from Variable Library.
    
    Args:
        dataset_name (str): Name of the dataset to store.
        varLib (fn.FabricVariablesClient): Fabric Variable Library connection.
    
    Returns:
        str: Full storage path for the dataset.
    """
    # Retrieve variables from Variable Library
    variables = varLib.getVariables()
    
    # Get environment and base paths
    env = variables.get("ENV")    
    dev_path = variables.get("DEV_FILE_PATH")
    prod_path = variables.get("PROD_FILE_PATH")
    
    # Apply environment-specific logic
    if env.lower() == "dev":
        return f"{dev_path}{dataset}/"
    elif env.lower() == "prod":
        return f"{prod_path}{dataset}/"
    else:
        return f"incorrect settings define for ENV variable"