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_name
innehåller layoutens namn. -
Objektet
fields
innehå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
(number
om fältets datatyp är tal, i annat fallstring
). -
Den valfria nyckeln
description
ingå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