GetFieldsOnLayout
Returnerar en lista över fälten i en layout som JSON-data.
Format
GetFieldsOnLayout( layoutnamn )
Parametrar
layoutnamn – ett textuttryck som representerar layoutens namn. Om layoutnamn är en tom sträng ("") används den aktuella layouten.
Returnerad datatyp
text
Ursprungsversion
22.0
Beskrivning
Den här funktionen returnerar ett JSON-objekt som innehåller information om fält i den angivna layouten som är tillgängliga för en sökning.
Fält som uppfyller något av följande kriterier är uteslutna:
- 
                                                Fältobjektet ligger utanför layoutområdet (mer information finns i Placera och radera fält i en layout). 
- 
                                                Villkoret Dölj objekt vid är uppfyllt och alternativet Utför i Sökläge är markerat (mer information finns i Dölja eller visa layoutobjekt). 
- 
                                                För Fältinmatning är Sökläge avmarkerat (mer information finns i Tillåta eller förhindra inmatning i fält). 
- 
                                                Inkludera fält för snabbsökning är avmarkerat (mer information finns i Konfigurera snabbsökning). 
- 
                                                De aktuella kontots behörighetsuppsättning saknar läsåtkomst (Ändra behörighet för poster). 
- 
                                                Fältet är ett statistikfält, ett fält som använder global lagring eller ett containerfält (mer information finns i Definiera statistikfält, Definiera fält som använder global lagring och Om containerfält). 
Det returnerade JSON-objektet har följande struktur:
{
    "layout_name": "Layoutnamn",
    "fields": {
        "TableOccurrence::Fältnamn1": {
            "type": "string",
            "description": "Fältkommentar (valfritt)"
        },
        "TableOccurrence::Fältnamn2": {
            "type": "number"
        }
    }
}- 
                                                Nyckeln layout_nameinnehåller layoutens namn.
- 
                                                Objektet fieldsinnehåller paret nyckel–värde för varje tillgängligt fält.
- 
                                                Varje fälts nyckel är det tillåtna namnet (till exempel TableOccurrence::Fältnamn). 
- 
                                                Varje fälts värde är ett objekt med nyckeln type(numberom fältets datatyp är tal, i annat fallstring).
- 
                                                Den valfria nyckeln descriptioningår om fältet har en kommentar i dialogrutan Hantera databas. Om någon fältkommentar i tabellen inleds med[LLM]visas endast de kommentarer som börjar med[LLM]. Prefixet[LLM]tas bort från värdetdescription.
Kommentarer
- 
                                                Den här funktionen använder samma kriterier för att fastställa vilka fält som är tillgängliga via en sökning och vilken fältinformation som ska returneras som i Scriptsteget Utför sökning med naturligt språk. 
Exempel 1
Returnerar ett JSON-objekt som beskriver de fält som är tillgängliga för en sökning i layouten Produkter.
JSONFormatElements ( GetFieldsOnLayout ( "Produkter" ) )Om layouten Produkter har följande fält:
| Fältnamn | Kommentar | 
|---|---|
| SkapatDatum | [LLM] Datum då produkten skapades | 
| Pris | [LLM] Produktens pris i SEK | 
| ProduktID | [LLM] Primär nyckel som unikt identifierar en produkt | 
| ProductName | [LLM] Beskrivande namn på produkten | 
| Status | Status för produkten i lager. Värdena är I lager, Beställt | 
| G_AnvändarensFavoriter | Fält som använder global lagring och som innehåller den aktuella användarens favoritprodukter | 
Funktionen returnerar:
{
    "fields" : 
    {
        "Produkter::SkapatDatum" : 
        {
            "description" : "Datum då produkten skapades",
            "type" : "string"
        },
        "Produkter::Pris" : 
        {
            "description" : "Produktens pris i SEK",
            "type" : "number"
        },
        "Produkter::ProduktID" : 
        {
            "description" : "Primär nyckel som unikt identifierar en produkt",
            "type" : "number"
        },
        "Produkter::Produktnamn" : 
        {
            "description" : "Beskrivande namn på produkten",
            "type" : "string"
        },
        "Produkter::Status" : 
        {
            "type" : "string"
        }
    },
    "layout_name" : "Produkter"
}Observera att eftersom minst en fältkommentar börjar med taggen [LLM] är det endast fält med taggen [LLM] som har en beskrivning. Fältet g_AnvändarensFavoriter utelämnas helt eftersom det är ett fält som som använder global lagring och alltså inte är tillgängligt för en sökning.
Exempel 2
Returnerar en lista över alla fält i den aktuella layouten och en lista över alla fält i den aktuella layouten som är tillgänglig i en sökning. Det här kan visa på fält som du inte visste var otillgängliga för en sökning.
Let (
[
    layoutFields = Fältnamn ( Get ( Filnamn ) ; Get ( Layoutnamn ) ) ;
    findFields = JSONListKeys ( GetFieldsOnLayout ( Get ( Layoutnamn ) ) ; "fält" ) ;
    sortedLayoutFields = SortValues ( layoutfält ; 1 ) ;
    sortedFindFields = SortValues ( sökfält ; 1 ) ;
    $$resultat = "Alla fält i den aktuella layouten:" & ¶ & sortedLayoutFields & ¶ & 
    "Av dessa är fälten som är tillgängliga för en sökning:" & ¶ & sortedFindFields
] ;
$$resultat
)Möjliga utdata lagras i $$resultat för layouten Produkter:
Alla fält i den aktuella layouten:
SkapatDatum
Foto
Pris
ProduktID
Produktnamn
Status
Av dessa är fälten som är tillgängliga för en sökning:
Produkter::SkapatDatum
Produkter::Pris
Produkter::ProduktID
Produkter::Produktnamn
Produkter::Status