Modul
Indhold
Indholdsfortegnelse 🔎︎

# Data

Fanebladet Data giver dig mulighed for at tildele en datakilde til det valgte kontrolelement.

For at tilgå denne kommando...

Åbn genvejsmenuen for et valgt formularelement - vælg Kontrolelement - Data

Åbn værktøjslinjen Formularfunktioner eller værktøjslinjen Formulardesign, klik på ikonet Kontrolelement - fanebladet Data

For formularer med databasereferencer, er de tilknyttede databaser defineret i Formularegenskaber. Du finder funktionerne for dette på fanebladetData.

De mulige indstillinger for fanebladet Data for et kontrolelement afhænger af det pågældende kontrolelement. Du ser kun de indstillinger, der er tilgængelige for det nuværende kontrolelement og indhold. De følgende felter er tilgængelige:

## Bundet felt

Hvis du sletter indholdet af Bundet felt-cellen i egenskabsbrowseren, bruges det første felt af resultatsættet til visning og udveksling af data.

Denne egenskab for rullelister definerer hvilket datafelt fra en kædet tabel, der vises i formularen.

Hvis en rulleliste i formularen skal vise indholdet af en tabel kædet til formulartabellen, så angiv i feltet Listeindholdstype, om visningen er bestemt af en SQL-kommando eller om den kædede tabel tilgås. Med Bundet felt-egenskaben kan du bruge et indeks til at angive hvilket datafelt fra forespørgslen eller tabellen listefeltet er kædet.

Egenskaben Bundet felt er kun til formularer som bruges til at få adgang til mere end én tabel. Hvis formularen er baseret på kun én tabel, er feltet som bliver vist i formularen specificeret direkte under Datafelt. Dog, hvis du ønsker at rullelisten skal vise data fra en tabel der er kædet til den aktuelle tabel over et fælles datafelt, defineres det forbundne datafelt ved egenskaben Bundet felt.

Hvis du valgte "SQL" under Listeindholdstype, bestemmer SQL-kommandoen indekset som skal specificeres. Eksempel: Hvis du angiver en SQL kommando såsom "SELECT Felt1, Felt2 FROM tabelnavn" under Listeindhold, henvises til den følgende tabel:

Bundet felt | Kæde
-1 | Indekset for den valgte række er kædet til feltet angivet under Datafelt.
{tom} eller 0 | Databasefeltet "Felt1" er kædet til feltet angivet under Datafelt.
1 | Databasefeltet "Felt2" er forbundet til feltet angivet under Datafelt.

Hvis du valgte "Tabel" under Listeindholdstype, angiver tabelstrukturen indekset som skal specificeres. Eksempel: Hvis en databasetabel er valgt under Listeindhold, se den følgende tabel:

Bundet felt | Kæde
-1 | Indekset for den valgte række i listen er kædet til feltet angivet under Datafelt.
{tom} eller 0 | Den 1. kolonne i tabellen er kædet til feltet, der er angivet under Datafelt.
1 | Den 2. kolonne i tabellen er kædet til feltet, der er angivet under Datafelt.
2 | Den 3. kolonne i tabellen er kædet til feltet, der er angivet under Datafelt.

## Datafelt

Med databaseformularer kan du kæde kontrolelementer sammen med datafelterne.

Du har flere muligheder:

1. Første tilfælde: Der er kun én tabel i formularen.

   Under Datafelt angives det felt i datakildetabellen hvis indhold, som du ønsker vist.

2. Andet tilfælde: Kontrolelementet tilhører en underformular, der er oprettet med en SQL-forespørgsel.

   Under Datafelt angives det felt i SQL-sætningen hvis indhold, som du ønsker vist.

1. Tredje tilfælde:Kombinationsfelter

   For kombinationsfelter er feltet i datakildetabellen, hvori brugerens indtastede eller valgte værdier gemmes, angivet under Datafelt. Værdierne vist på listen i kombinationsfeltet er baseret på en SQL-sætning, som er indtastet under Listeindhold.

2. Fjerde tilfælde:Rullelister

   Her er det ikke datakildetabellen, der indeholder data, som skal vises, men en tabel sammenkædet med datakildetabellen gennem et fælles datafelt.

   Hvis du vil vise en rulleliste med data fra en tabel, der er kædet til den aktuelle datakildetabel, skal du under Datafelt angive feltet i datakildetabellen, hvortil indholdet af rullelisten refererer. Du kan også angive databasefeltet, der kontrollerer visningen af data i formularen. Dette datafelt angiver kæden til den anden tabel, hvis begge tabeller kan sammenkædes gennem et fælles datafelt. Det er sædvanligvis et datafelt, hvor unikke nøgler er lagret. Datafeltet, hvis indhold vises i formularen, er specificeret med en SQL-sætning under Listeindhold.

Rullelister arbejder med referencer. De kan enten være implementeret med kædede tabeller via SQL-sætninger (fjerde tilfælde) eller gennem værdilister:

Referencer gennem kædede tabeller (SQL-sætninger)

Hvis du vil have en rulleliste til at vise data fra en databasetabel, som er kædet via et fælles datafelt, til den tabel, som formularen er baseret på, er forbindelsesfeltet til formulartabellen angivet under Datafelt.

Kæden bliver oprettet med en SQL Select-sætning, som, hvis du valgte "SQL" eller "Native SQL", er angivet under Listeindholdstype i feltet Listeindhold. Som et eksempel er en tabel "Ordrer" kædet til den aktuelle formulars kontrolelement, og i databasen er en tabel "Kunder" kædet til "Ordrer"-tabellen. Du kan bruge en SQL-sætning som følger:

SELECT KundeNavn, KundeNr FROM Kunder

hvor "KundeNavn" er datafeltet fra den sammenkædede tabel "Kunder", og "KundeNr" er feltet med tabellen "Kunder", som er kædet til et felt på formulartabellen "Ordrer" specificeret under Datafelt.

Referencer ved brug af værdilister

Med rullelister kan du bruge værdilister. Værdilister er lister, som angiver referenceværdier. På denne måde vil kontrolelementet i formularen ikke direkte vise indholdet af et databasefelt, men i stedet værdier tildelt i værdilisten.

Hvis du arbejder med referenceværdier på en værdiliste, er indholdet af datafeltet som du specificerede under Datafelt i formularen ikke synlige, men det er derimod de tilknyttede værdier. Hvis du vælger "Værdiliste" på fanebladet Data under Listeindholdstype og tildeler en referenceværdi til de synlige punkter på listen i formularen under Listeelementer (indtastet i fanebladet Generelt), sammenlignes referenceværdierne med dataindholdet af det givne datafelt. Hvis en referenceværdi svarer til indholdet af et datafelt, vises de tilknyttede listeelementer i formularen.

## Filterforslag

Mens du designer din formular, kan du sætte egenskaben "Filterforslag" for hver tekstfelt i fanebladet Data for den koresponderende Egenskaber-dialog. I efterfølgende søgninger i filtreret tilstand kan du vælge blandt alle informationer indeholdt i disse felter. Feltets indhold kan så udfyldes ved hjælp af automatisk fuldførelsesfunktionen. Bemærk dog at denne funktion kræver en større mængde hukommelse og tid, specielt når den bruges i store databaser, og at den derfor skal bruges med varsomhed.

## Indhold af den kædede celle

Marker metoden til at kæde en rulleliste til en celle til et regneark.

1. Kædet indhold: Synkroniser tekstindhold af det valgte rullelisteelement med celleindholdet. Marker "Den valgte indtastning"

2. Lænkede valg position: placeringen af det enkelte valgte element i rullelisten synkroniseres med den numeriske værdi i cellen. Marker "Placering for den valgte indtastning"

## Kildecelleområde

Indtast et celleområde, som indeholder elementerne for en rulleliste eller kombinationsfelt til et regneark. Hvis du indtaster et flerkolonnet område, vil kun indholdet af kolonnen yderst til venstre blive brugt til at fylde kontrolelementet.

## Kædet celle

specificerer referencen til en kædet celle til et regneark. Kontrolelementets tilstand er forbundet med celleindholdet. De følgende tabeller viser kontrolelementerne og deres tilsvarende kædetype:

### Afkrydsningsfelt med kædet celle

Handling | Resultat
Marker afkrydsningsfeltet | Værdien i den kædede celle bliver sat til SAND
Afmarker afkrydsningsfeltet | Værdien i den kædede celle bliver sat til FALSK
Sæt tretilstands-afkrydsningsfelt til "ubestemt" | Værdien i den kædede celle bliver sat til #N/A
Indtast et tal eller en formel som returnerer et tal i den kædede celle | Hvis den indtastede værdi er SAND eller ikke 0: afkrydsningsfelt bliver markeret Hvis den indtastede værdi er FALSK eller 0: afkrydsningsfeltet bliver afmarkeret
Ryd den kædede celle eller indtast tekst eller indtast en formel, som returnerer tekst eller en fejl | Afkrydsningsfelt bliver sat til "ubestemt" hvis det er en tretilstands-afkrydsningsfelt, ellers bliver afkrydsningsfeltet afmarkeret.
Marker afkrydsningsfeltet. Egenskaben "Referenceværdi (til)" indeholder tekst. | Teksten fra "Referenceværdi (til)" kopieres til cellen.
Afmarker afkrydsningsfeltet. Egenskaben "Referenceværdi (fra)" indeholder tekst. | En tom streng bliver kopieret til cellen.
Egenskaben "Referenceværdi (til)" indeholder tekst. Indtast den samme tekst i cellen. | Afkrydsningsfeltet bliver markeret.
Egenskaben "Referenceværdi (til)" indeholder tekst. Indtast en anden tekst i cellen. | Afkrydsningsfeltet bliver afmarkeret.

### Alternativknap med kædet celle

Handling | Resultat
Marker alternativknappen | Værdien i den kædede celle bliver sat til SAND
Afmarker alternativknappen ved at markere en anden alternativknap | Værdien i den kædede celle bliver sat til FALSK
Indtast et tal eller en formel som returnerer et tal i den kædede celle | Hvis den indgivne værdi er SAND eller ikke 0, bliver alternativknappen markeret Hvis den indtastede værdi er FALSK eller 0, bliver alternativknappen afmarkeret
Ryd den kædede celle eller indtast tekst eller indtast en formel, som returnerer tekst eller en fejl | Alternativknap afmarkeres
Marker alternativknappen. Egenskaben "Referenceværdi (til)" indeholder tekst. | Teksten fra "Referenceværdi (til)" kopieres til cellen.
Marker en anden alternativknap i samme gruppe. Egenskaben "Referenceværdi (fra)" indeholder tekst. | En tom streng bliver kopieret til cellen.
Egenskaben "Referenceværdi (til)" indeholder tekst. Indtast den samme tekst i cellen. | Alternativknappen bliver markeret.
Egenskaben "Referenceværdi (til)" indeholder tekst. Indtast en anden tekst i cellen. | Alternativknappen bliver afmarkeret.

### Tekstfelt med kædet celle

Handling | Resultat
Indtast tekst i tekstfeltet | Tekst kopieres til den kædede celle
Ryd tekstfeltet | Den kædede celle bliver ryddet
Indtast tekst eller et tal i den kædede celle | Tekst eller tal kopieres til tekstfeltet
Indtast en formel i den kædede celle | Formelresultatet kopieres til tekstfeltet
Nulstil den kædede celle | Tekstfeltet nustilles

### Numerisk felt og formateret felt med kædet celle

Handling | Resultat
Indtast et tal i feltet | Tallet kopieres til den kædede celle
Ryd feltet | Værdien 0 bliver sat i den kædede celle
Indtast et tal eller en formel som returnerer et tal i den kædede celle | Teksten fra "Referenceværdi (fra)" kopieres til cellen.
Ryd den kædede celle eller indtast tekst eller indtast en formel, som returnerer tekst eller en fejl | Værdien 0 bliver sat i feltet

### Rulleliste med kædet celle

Rullelister understøtter to forskellige kædemetoder, se egenskaben "Indhold af den kædede celle".

1. Den valgte indtastning: Synkroniserer tekstindholdet af det valgte rullelisteelement med celleindholdet.

2. Placering for den valgte indtastning: Placeringen af det enkelte valgte element i rullelisten er synkroniseret med den numeriske værdi i cellen.

Handling | Resultat
Marker et enkelt element i listen | Indhold er kædet: Elementets tekstindhold kopieres til den kædede celle. Position er kædet: Positionen for det valgte element kopieres til den kædede celle. For eksempel, hvis det tredje element er valgt, vil tallet 3 blive kopieret.
Marker flere listepunkter | Værdien i den kædede celle bliver sat til #N/A
Afmarker alle listepunkter | Indhold er kædet: Kædet celle ryddes Position er kædet: Værdien 0 indsættes i den kædede celle
Indtast tekst eller et tal i den kædede celle | Indhold er kædet: Find og marker et tilsvarende listeelement Position er kædet: Listeelementet på den angivne position (startende med 1 for det første element) er valgt. Hvis elementet ikke findes er alle punkter afmarkeret.
Indtast en formel i den kædede celle | Der markeres et listeelement som svarer til formelresultatet og den valgte kædemetode.
Nulstil den kædede celle | Afmarkerer alle punkter i rullelisten
Skift indholdet af listens kildeområde | Rullelistepunkter opdateres i henhold til ændringen. Det markerede bevares. Dette kan forårsage en opdatering af den kædede celle.

### Kombinationsfelt med kædet celle

Handling | Resultat
Indtast tekst i kombinationsfeltets redigeringsfelt eller vælg et element fra rullegardinmenuen | Tekst kopieres til den kædede celle
Ryd kombinationsfeltets redigeringsfeltet | Den kædede celle bliver ryddet
Indtast tekst eller et tal i den kædede celle | Tekst eller tal kopieres til kombinationsfeltets redigeringsfelt
Indtast en formel i den kædede celle | Formelresultatet kopieres til kombinationsboksens redigeringsfelt
Nulstil den kædede celle | Kombinationsfeltets redigeringsfelt bliver ryddet
Skift indholdet af listens kildeområde | Rullegardinmenuens punkter opdateres i henhold til ændringen. Kombinationsfeltets redigeringsfelt og den forbundne celle bliver ikke ændret.

## Listeindhold

Ved databaseformularer: Specificerer datakilden for listeindholdet af formularelement. For dokumenter uden databaseforbindelse kan dette felt bruges til at angive en værdiliste.

Ved databaseformularer bestemmer datakilden elementerne på rullelisten eller kombinationsfeltet. Afhængigt af den valgte type har du et valg mellem forskellige datakilder under Listeindhold, under forudsætning af at disse objekter findes i din database. Alle tilgængelige databaseobjekter af typen som er valgt under Listeindholdstype tilbydes her. Hvis du har valgt "Værdiliste"-indstillingen som typen, kan du bruge referencer til databaseformularer. Hvis fremvisningen af kontrolelementet er kontrolleret med en SQL-kommando, er SQL-sætningen indtastet her.

Eksempler på SQL-sætninger:

For rullelister kan en SQL-sætning have følgende form:

SELECT felt1, felt2 FROM tabel

Her er "tabel" tabellen hvis data bliver vist på kontrolelementets liste (Listetabel). "felt1" er datafeltet som definerer de synlige punkter i formularen; dets indhold bliver vist på rullelisten. "felt2" er feltet på listetabellen, der er kædet til formulartabellen (værditabel) gennem feltet angivet under Datafelt hvis der er valgt Bundet felt= 1.

For kombinationsfelter kan en SQL-sætning have følgende form:

SELECT DISTINCT felt FROM tabel

Her er "felt" et datafelt fra listetabellen "tabel" hvis indhold bliver vist på kombinationsfeltets liste.

Værdilister for HTML-dokumenter

For HTML-formularer kan du indtaste en værdiliste under Listeindhold. Vælg indstillingen "Værdiliste" under Listeindholdstype. Værdier indtastet her vil ikke være synlige i formularen, og bruges til at tildele værdier til de synlige punkter. Elementerne skabt under Listeindhold korresponderer med HTMLmærket <OPTION VALUE=...>.

I dataoverførslen for et valgt element fra en rulleliste eller et kombinationsfelt bliver BÅDE listen af værdier vist i formularen som blev indtastet på fanebladet Generelt under Listeelementer OG værdilisten som er indtastet på fanebladet Data under Listeindholdtaget i betragtning. Hvis en (ikke-tom) tekst er ved den valgte placering i værdilisten (<option value=...>), bliver den overført. Ellers bliver den tekst som vises i (<indstilling>)-kontrolelement sendt.

Hvis værdilisten skal indeholde en tom streng, indtast værdien "$$$empty$$$" under Listeindhold ved den tilsvarende placering (bemærk store/små bogstaver). LibreOffice fortolker denne indtastning som en tom streng og tildeler det til det respektive punkt på listen.

Følgende tabel viser forbindelserne mellem HTML, JavaScript og LibreOffice-feltet Listeindhold eksemplificeret ved en rulleliste kaldet "ListBox1". I dette tilfælde betegner "Element" et punkt på listen som er synligt i formularen:

HTML-mærke | JavaScript | Element i Værdiliste på kontrolelementet (listeindhold) | overførte data
<option>Element | ikke mulig | "" | det synlige punkt på listen ("ListBox1=Element")
<OPTION VALUE="Value">Element | ListBox1.options[0].value="Værdi" | "Værdi" | Værdien tildelt til listeelementet ("ListBox1=Værdi")
<OPTION VALUE="">Element | ListBox1.options[0].value="" | "$$$empty$$$" | En tom streng ("ListBox1=")

## Listeindholdstype

Afgør hvilke data, der skal udfylde listerne i rullelister og kombinationsfelter.

Med "Værdiliste"-indstillingen vises alle elementer som indtastes i Listeelementer-feltet på fanebladet Generelt i kontrolelementet. For databaseformularer kan du bruge referenceværdier (se Henvisninger ved hjælp af Værdilister Sektionen).

Hvis indholdet af kontrolelementet skal læses fra en database, kan du bestemme typen af datakilden med de øvrige indstillinger. For eksempel kan du vælge imellem tabeller og forespørgsler.

## Referenceværdi (fra)

Afkrydsningsfelter og alternativknapper i regneark kan være bundet til celler i det aktuelle dokument. Hvis kontrolelementet er aktiveret, kopieres værdien, som du indtaster i Referenceværdi (til), til cellen. Hvis kontrolelementet er deaktiveret, kopieres værdien fra Referenceværdi (fra) til cellen.

## Referenceværdi (til)

Du kan tildele en referenceværdi til alternativknapper og afkrydsningsfelter. Referenceværdien bliver tilbagesendt til en server, når du sender webformularen. Med databaseformularer vil værdien indtastet her blive skrevet i databasen tildelt til kontrolelementetfeltet.

Referenceværdier for webformularer

Referenceværdier er nyttige, hvis du designer en webformular, og kontrolelementets statusinformation skal overføres til en server. Hvis brugeren klikker på kontrolelementet, bliver den tilsvarende referenceværdi sendt til serveren.

For eksempel, hvis du har to kontrolfelter for alternativerne "Kvinde" og "Mand" og tildeler en referenceværdi 1 til feltet "Kvinde" og værdien 2 til feltet "Mand", bliver værdien 1 transmitteret til serveren, hvis en bruger klikker "Kvinde"-feltet og værdien 2, hvis "Mand"-feltet bliver klikket.

Referenceværdier for databaseformularer

For databaseformularer kan du også karakterisere status for en alternativknap eller et afkrydsningsfelt med en referenceværdi ved at lagre den i databasen. Hvis du har et sæt af tre alternativer, for eksempel "undervejs", "færdige" og "genindsendte" med de tilsvarende referenceværdier "SU", "OK" og "IGEN", vises disse referenceværdier i databasen, hvis der bliver klikket på det tilsvarende alternativ.

## Tom streng er NULL

Definerer hvordan en tom streng i inddata skal håndteres. Hvis sat til Ja, vil en streng af længden nul vil blive behandlet som værdien NULL. Hvis sat til Nej, vil et hvilket som helst inddata vil blive behandlet som det er uden nogen konvertering.

En tom streng er en streng af længde nul (""). Normalt vil værdien NULL ikke være det samme som en tom streng. I almindelighed bruges udtrykket NULL til at betegne en udefineret værdi, en ukendt værdi eller "ingen værdi er indtastet endnu."

Databasesystemer er forskellige, og de kan håndtere NULL-værdier forskelligt. Se dokumentationen til den database, du bruger.