GetRecordIDsFromFoundSet

Retourneert record-ID's van de huidige gevonden set als een lijst of een JSON-array. Als u ID's voor gerelateerde records wilt ophalen, geeft u de naam op van een tabelvermelding of portaal.

Opmaak 

GetRecordIDsFromFoundSet ( type { ; tabelVermeldingOfPortal } )

Parameters 

Type - een numerieke expressie die de indeling van de geretourneerde record-ID's specificeert. Zie Beschrijving.

Table OccurrenceOrPortal - een tekstexpressie die de naam van een gerelateerde tabel of de objectnaam van een portaal in de huidige lay-out specificeert.

Parameters tussen accolades { } zijn optioneel.

Resulterend gegevenstype 

tekst

Afkomstig uit versie 

22.0

Beschrijving 

Deze functie retourneert de record-ID's van alle records in de huidige gevonden reeks in de huidige volgorde, of de record-ID's van alle records die zijn gerelateerd aan de huidige record door de opgegeven tabel of portal. Record-ID's zijn unieke ID's die een FileMaker-client aan elke record in een tabel toewijst wanneer de record wordt gemaakt en deze kunnen niet worden gewijzigd.

De parameter type bepaalt de indeling van de geretourneerde gegevens. Gebruik de constante naam of de numerieke waarde om type op te geven.

type parameter Retourneert record-ID's als Voorbeelden

Waardengetal (0)

Lijst met waarden gescheiden door harde return

Kopiëren
1
5
21
22
23
7

JSONString (1)

JSON-matrix met waarden als tekenreeksen

Kopiëren
["1","5","21","22","23","7"]

JSONNumber (2)

JSON-matrix van waarden als getallen
Kopiëren
[1,5,21,22,23,7]

WaardengetalRanges (3)

Lijst met waarden met bereiken1

Kopiëren
1
5
21-23
7

JSONStringRanges (4)

JSON-array als tekenreeksen met bereiken1

Kopiëren
["1","5","21-23","7"]
  1. Voor ValueNumberRanges en JSONStringRanges worden opeenvolgende record-ID's gecomprimeerd in bereiken om de grootte van de geretourneerde gegevens te verkleinen.

Als u de ID's van gerelateerde records in een tabel wilt ophalen, gebruikt u de parameter tableOccurrenceOrPortal om de naam van een gerelateerde tabel op te geven. De gerelateerde record-ID's worden geretourneerd in de sorteervolgorde die is opgegeven door de relatie. Raadpleeg Relaties maken en wijzigen.

Als u de ID's van gerelateerde records in een portaal in de huidige lay-out wilt ophalen, gebruikt u de parameter tableOccurrenceOrPortal om de objectnaam van de portal op te geven (zie Objecten benoemen). De geretourneerde record-ID's worden gefilterd en gesorteerd volgens de instellingen van de portal in het dialoogvenster Portaalinstelling. Raadpleeg Portalen maken om gerelateerde records weer te geven.

Opmerkingen 

  • De geretourneerde record-ID's kunnen worden gebruikt met de Ga naar lijst met records scriptstap om dezelfde gevonden reeks opnieuw te maken wanneer u een lay-out opgeeft op basis van dezelfde tabel.

  • Als er geen records worden gevonden, retourneert deze functie een leeg resultaat in de opgegeven indeling. Voor een lege lijst met waarden wordt een lege tekenreeks ('') geretourneerd. Voor een lege JSON-array wordt "[]" geretourneerd.

  • Als de parameter tableOccurrenceOrPortal is opgegeven, probeert deze functie eerst de waarde ervan te vergelijken met de naam van een tabel. Als dat niet lukt, probeert het de waarde te koppelen aan de objectnaam van een portaal. Als er geen overeenkomst wordt gevonden, retourneert deze functie '?'.

Voorbeeld 1 - Ontvang record ID's als een lijst met waarden

Hiermee worden record-ID's geretourneerd als een gescheiden lijst met harde return.

Kopiëren
GetRecordIDsFromFoundSet ( ValueNumber )

Als de huidige gevonden reeks records bevat met de ID's 101, 102 en 105, wordt in dit voorbeeld het volgende geretourneerd:

Kopiëren
101
102
105

Voorbeeld 2 - Haal gerelateerde record ID's van een portaal als een JSON-array van nummers

Retourneert gerelateerde record-ID's als een JSON-matrix met getallen uit het portaalobject ContactsPortal.

Kopiëren
GetRecordIDsFromFoundSet ( JSONNumber ; "ContactsPortal" )

Als de portaal in de huidige record drie gerelateerde records heeft die de portaal sorteert en filtert om de ID's 1101, 702 en 1015 te hebben, wordt in dit voorbeeld het volgende geretourneerd:

Kopiëren
[1101,702,1015]

Voorbeeld 3 - Gevonden reeks opslaan om later opnieuw te maken

Slaat een JSON-object op in een globaalveld met de record-ID's van de huidige gevonden reeks en de huidige lay-outnaam.

Kopiëren
Variabele instellen [ $recordIDs ; Waarde: GetRecordIDsFromFoundSet ( JSONStringRanges ) ]
Variabele instellen [ $currentLayout ; Waarde: Get ( LayoutName ) ]

Variabele instellen [ $foundSetInfo ; Waarde: 
  JSONSetElement ( "{}" ; 
    [ "recordIDs" ; $recordIDs ; JSONArray ] ; 
    [ "layout" ; $currentLayout ; JSONString ] 
  )
]

Veld instellen [ Global::LastFind ; $foundSetInfo ]

Voor een gevonden reeks in de lay-out Contactpersonen kan het JSON-object dat is opgeslagen in Global::LastFind er als volgt uitzien:

Kopiëren
{
  "recordIDs": ["1-3", "5", "7-9"],
  "layout": "Contactpersonen"
}

Later kan een ander script naar dezelfde lay-out gaan en ingesteld worden gevonden met de Ga naar lijst met records scriptstap.

Kopiëren
Variabele instellen [ $foundSetInfo ; Waarde: Global::LastFind ]
Variabele instellen [ $recordIDs ; Waarde: JSONGetElement ( $foundSetInfo ; "recordIDs" ) ]
Variabele instellen [ $layoutName ; Waarde: JSONGetElement ( $foundSetInfo ; "layout" ) ]

Ga naar lijst met records [ Lijst met record-ID's: $recordIDs ; Met lay-out: $layoutName ; Animatie: Geen ]