EditForm-, NewForm-, SubmitForm-, ResetForm- ja ViewForm-funktio
Koskee seuraavia: pohjaan perustuvat sovellukset
Tarkastele ja muokkaa kohdetta, luo kohde, tallenna sisältö ja palauta ohjausobjektit Edit form -ohjausobjektissa.
Yleiskatsaus
Nämä funktiot muuttavat Edit form -ohjausobjektin tilaa. Lomakeohjausobjekti on jossain seuraavista tiloista:
Tila | Kuvaus |
---|---|
FormMode.Edit | Lomake on täytetty olemassa olevalla tietueella ja käyttäjä voi muokata kenttien arvoja. Kun käyttäjä on valmis, hän voi tallentaa muutokset tietueeseen. |
FormMode.Uusi | Lomake täytetään oletusarvoilla ja käyttäjä voi muokata kenttien arvoja. Kun käyttäjä on valmis, hän voi lisätä tietueen tietolähteeseen. |
FormMode.View | Lomake on täytetty olemassa olevalla tietueella, mutta käyttäjä ei voi muokata kenttien arvoja. |
Kuvaus
Nämä funktiot käynnistetään usein Button- tai Image-ohjausobjektin OnSelect-kaavalla, jolloin käyttäjä voi tallentaa tai hylätä muutokset tai luoda tietueen. Voit myös luoda kokonaisvaltaisen ratkaisun käyttämällä ohjausobjekteja ja funktioita yhdessä.
Nämä funktiot eivät palauta arvoja.
Näitä funktioita voidaan käyttää vain toimintakaavoissa.
SubmitForm
Tallenna Form-ohjausobjektiin tehdyt muutokset tietolähteeseen käyttämällä SubmitForm-funktiota Button-ohjausobjektin OnSelect-ominaisuudessa.
Ennen kuin funktio lähettää muutokset, se tarkistaa mahdolliset vahvistusongelmat pakolliseksi merkityissä kentissä ja kentissä, joiden arvolla on vähintään yksi rajoitus. Toiminta vastaa Validate-funktiota.
SubmitForm tarkistaa myös lomakkeen Valid kortti ominaisuuden, joka on kooste kaikista lomakkeen ohjausobjektin sisältämien ohjausobjektien Validominaisuuksista . Jos ongelma ilmenee, tietoja ei lähetetä ja Form-ohjausobjektin Error- ja ErrorKind-ominaisuudet määritetään vastaavasti.
Jos vahvistus menee läpi, SubmitForm lähettää muutoksen tietolähteeseen.
- Jos tämä onnistuu, lomakkeen OnSuccess-toiminta suoritetaan ja Error- sekä ErrorKind-ominaisuudet tyhjennetään. Jos lomake oli FormMode.New-tilassa, se palautetaan FormMode.Edit-tilaan.
- Jos muutoksen tallentaminen ei onnistu, lomakkeen OnFailure-toiminta suoritetaan ja Error- sekä ErrorKind-ominaisuudet määritetään vastaavasti. Lomakkeen tila ei muutu.
EditForm
EditForm-funktio muuttaa Form-ohjausobjektin tilaksi FormMode.Edit. Tässä tilassa lomake täytetään Form-ohjausobjektin Item-ominaisuuden sisällöllä. Jos SubmitForm-funktio suoritetaan, kun lomake on tässä tilassa, tietuetta muutetaan, ei luoda. FormMode.Edit on lomakeohjausobjektin oletusasetus.
Muistiinpano
Kun lomake on muokkaustilassa ja kohde on tyhjä, tietokorttiominaisuuksia ei arvioida ja ne palauttavat oletusarvot.
NewForm
NewForm-funktio muuttaa Form-ohjausobjektin tilaksi FormMode.New. Tässä tilassa Form-ohjausobjektin Item-ominaisuuden sisältö ohitetaan. Lomake täytetään sen DataSource-ominaisuuden oletusarvoilla. Jos SubmitForm-funktio suoritetaan, kun lomake on tässä tilassa, tietue luodaan, sitä ei muuteta.
ResetForm
ResetForm-funktio palauttaa lomakkeen sisällön sen alkuarvoihin, jotka edelsivät käyttäjän tekemiä muutoksia. Jos lomake on FormMode.New-tilassa, se palautetaan FormMode.Edit-tilaan. Myös Form-ohjausobjektin OnReset-toiminta suoritetaan. Voit myös palauttaa yksittäisiä ohjausobjekteja Reset-funktiolla, mutta vain lomakkeen kautta.
ViewForm
ViewForm-funktio muuttaa Form-ohjausobjektin tilaksi FormMode.View. Tässä tilassa lomake täytetään Form-ohjausobjektin Item-ominaisuuden sisällöllä. SubmitForm- ja ResetForm-funktioilla ei ole tässä tilassa vaikutusta.
DisplayMode-ominaisuus
Nykyinen tila voidaan lukea Mode-ominaisuuden kautta. Tila myös määrittää DisplayMode-ominaisuuden arvon, jota tietokortit ja ohjausobjektit voivat käyttää Form-ohjausobjektissa. Usein tietokortin DisplayMode-ominaisuuden arvoksi määritetään Parent.DisplayMode (viittaa lomakkeeseen), samoin kuin ohjausobjektin DisplayMode-ominaisuus (viittaa tietokorttiin):
Tila | DisplayMode | Kuvaus |
---|---|---|
FormMode.Edit | DisplayMode.Edit | Tietokortit ja ohjausobjektit ovat muokattavissa ja valmiit hyväksymään muutoksia tietueeseen. |
FormMode.Uusi | DisplayMode.Edit | Tietokortit ja ohjausobjektit ovat muokattavissa ja valmiit hyväksymään uuden tietueen. |
FormMode.View | DisplayMode.View | Tietokortit ja ohjausobjektit eivät ole muokattavissa vaan optimoituja tarkastelemista varten. |
Syntaksi
SubmitForm( FormName )
- FormName - pakollinen. Form-ohjausobjekti tietolähteeseen lähettämiseen.
EditForm( FormName )
- FormName - pakollinen. Form-ohjausobjekti FormMode.Edit-tilaan vaihtamiseen.
NewForm( FormName )
- FormName - pakollinen. Form-ohjausobjekti FormMode.New-tilaan vaihtamiseen.
ResetForm( FormName )
- FormName - pakollinen. Form-ohjausobjekti alkuarvojen palauttamiseen. Vaihtaa myös lomakkeen FormMode.New-tilasta FormMode.Edit-tilaan.
ViewForm( FormName )
- FormName - pakollinen. Form-ohjausobjekti FormMode.View-tilaan vaihtamiseen.
Esimerkit
Täydellisiä esimerkkejä löytyy kohdasta Tutustu tietolomakkeisiin.
Lisää Button-ohjausobjekti, määritä sen Text-ominaisuus näyttämään Tallenna ja määritä sen OnSelect-ominaisuudeksi tämä kaava:
SubmitForm( EditForm )
Määritä Form-ohjausobjektin OnFailure-ominaisuudeksi tyhjä ja sen OnSuccess -ominaisuudeksi tämä kaava:
Takaisin()
Nimeä Label-ohjausobjektin ErrorText ja määritä sen Text-ominaisuudeksi tämä kaava:
EditForm.Error
Kun käyttäjä valitsee Tallenna-painikkeen, kaikki Form-ohjausobjektiin tehdyt muutokset lähetetään pohjana olevaan tietolähteeseen.
- Jos lähetys onnistuu, muutokset tallentuvat, mutta jos Form-ohjausobjekti on Uusi-tilassa, luodaan tietue. ErrorText on tyhjä ja edellinen näyttö tulee uudelleen näkyviin.
- Jos lähetys epäonnistuu, ErrorText näyttää käyttäjäystävällisen virhesanoman. Nykyinen näyttö pysyy näkyvissä, jotta käyttäjä voi korjata ongelman ja yrittää uudelleen.
Lisää Button-ohjausobjekti, määritä sen Text-ominaisuus näyttämään Peruuta ja määritä sen OnSelect-ominaisuudeksi tämä kaava:
ResetForm (EditForm); Takaisin()
Kun käyttäjä valitsee Peruuta-painikkeen, Form-ohjausobjektin arvot palautetaan muokkausta edeltävään tilaan. Edellinen näyttö tulee näkyviin uudelleen ja Form-ohjausobjekti palautetaan Muokkaa-tilaan, jos se oli Uusi-tilassa.
Lisää Button-ohjausobjekti, määritä sen Text-ominaisuus näyttämään Uusi ja määritä sen OnSelect-ominaisuudeksi tämä kaava:
NewForm( EditForm ); Navigate( EditScreen, None )
Kun käyttäjä valitsee Uusi-painikkeen, Form-ohjausobjekti vaihtuu Uusi-tilaan. Form-ohjausobjekti täytetään sen tietolähteen oletusarvoilla, ja näkyviin tulee näyttö, joka sisältää Form-ohjausobjektin. Kun SubmitForm-funktio suoritetaan, tietue luodaan päivittämisen sijaan.