Koti / Asetus / 1c välitä parametrit valintalomakkeeseen. Parametrien välittäminen hallituille ja tavallisille lomakkeille. Kuinka avata valintalomake ja sitten saada valittu arvo

1c välitä parametrit valintalomakkeeseen. Parametrien välittäminen hallituille ja tavallisille lomakkeille. Kuinka avata valintalomake ja sitten saada valittu arvo

Tulosta (Ctrl+P)

Lomakkeen asetukset

1. Yleistä tietoa

Lomakeparametreilla (välilehti Parametrit) on kaksi tarkoitusta:
● Kuvaile tietojoukko, joka vaikuttaa lomakkeen avaamiseen (lomakkeen parametrointi). Tätä varten sinun on lueteltava kaikki tarvittavat parametrit ja määritettävä niiden tyypit.
● Määritä parametrit, jotka vaikuttavat muodon yksilöllisyysavaimeen. Tätä varten sinun on määritettävä ominaisuus Avainparametri ne parametrit, joiden pitäisi osallistua lomakkeen yksilöllisyysavaimen muodostukseen. Kun yrität avata lomakkeen, järjestelmä etsii olemassa olevaa lomaketta käyttämällä luodun lomakkeen yksilöllisyysavainta. Jos järjestelmässä on lomake, jossa on vastaanotettu avain
ainutlaatuisuus, tämä lomake palautetaan; jos ei, luodaan uusi lomake.
Kun lomaketta kutsutaan, kehittäjän luomat parametriarvot voidaan määrittää parametrirakenteessa lomakejärjestelmän parametrien kanssa (jos sellaisia ​​on).
Lomakeparametrit voidaan välittää lomakkeeseen sen luomisen yhteydessä. Läpivientien parametrien analyysi voidaan suorittaa tapahtumassa OnCreateOnServer() (Parametrikokoelma on objektin ominaisuus ManagedForm):

// Puhelupaikalla.
// Muodosta lomakeparametri.
Parametrit = Uusi rakenne();
Asetukset.Liitä("Merkitys", PredefinedValue("Enumeration.Importance.Important");
// Avaa lomake parametreilla.
OpenForm("GeneralForm.ViewForm", Parametrit);

// Lomakemoduulissa.
&Palvelimella
Menettely OnCreateOnServer (virhe, vakiokäsittely)
Jos Parametrit. Tärkeys = Enums.Importance.Important Voi sitten

Loppu Jos;
EndProcedure

HUOMIO! Soitettuaan tapahtumankäsittelijälle OnCreateOnServer kaikki ei-avainlomakkeen parametrit poistetaan Parametrit-kokoelmasta.
Neuvoja. Lomaketietoihin tulee tallentaa ei-avainparametrit, jotka ovat tarpeen jatkotyössä.

2. Vakiolomakevaihtoehdot

Lomakkeiden automaattisen vuorovaikutuksen tukemiseksi järjestelmä tarjoaa useita vakiovaihtoehtoja, joita käytetään lomakkeiden ohjaamiseen niitä avattaessa. Näiden parametrien avulla järjestelmä toteuttaa lomakekentissä valinnan valintalomakkeista, objektilomakkeiden avaamisen, vakiokomentojen toiminnan jne. Eli ne tarjoavat erilaisia ​​käyttöliittymän toimintaskenaarioita järjestelmään upotettuina.
Mutta kehittäjä voi myös käyttää näitä parametreja 1C:Enterprise-kielellä välittämällä ne kutsuessaan OpenForm()-metodia.
Luettelo vakiolomakeparametreista lomakkeen laajennuksen tyypistä riippuen löytyy osioista Embedded Language - käyttöliittymä
(hallittu) - Hallittu lomake - Laajennus...inline viittauksia.

3. Esimerkki lomakeparametrien käsittelystä

Havainnollistaaksesi, miten lomakeparametrit toimivat, tarkastellaan elementin valintaa syöttökentässä. Esimerkin ydin on mekanismin toteuttaminen elementin valitsemiseksi luettelosta sisäänrakennetulla kielellä.
Kun alat työskennellä esimerkin kanssa, sinulla on oltava kokoonpano, jolla on seuraavat ominaisuudet:
● on tavarahakemisto, jossa on ryhmien ja elementtien hierarkia;
● on hakemisto Analogues, jonka attribuutti on SelectedProduct tyyppi DirectoryLink.Products;
● Molemmissa hakuteoksissa on kohtalomakkeita.
Nyt toteutamme tässä kokoonpanossa kaikki mekanismit, joita alusta käyttää elementin valitsemiseen luettelosta sisäänrakennetulla kielellä. Näin tehdessämme näemme:
● kuinka vakiomuotoparametreja käytetään;
● kuinka järjestelmä käyttää niitä;
● kuinka kehittäjä voi käyttää niitä.
Lisätään lisäparametri Tämä ohjaa valintalomakkeen sulkemista, kun kohde on valittu. Kutsutaan tätä parametria CloseAfterSelection(boolen tyyppi). Lisätään se Tavarahakemiston lomakkeen Valintalomake parametriksi.
Elementin valintalomakkeen avaamiseksi on tarpeen luoda SelectStart-tapahtuman tapahtumakäsittelijä SelectedItem-lomakeelementtiin Analogues-hakemistoelementin muodossa.

&AtClient
Menettely SelectedItemSelectionStart (tuote, vakiokäsittely)
Vakiokäsittely= epätosi ;
Valintavaihtoehdot= Uusi rakenne ;
SelectionParameters.Insert("Valintatila", tosi);
SelectionParameters.Insert("SelectGroupsAndItems", UsingGroupsAndItems.Items);
SelectionParameters.Insert("AllowRootSelection", False);
SelectionParameters.Insert("CurrentLine", Object.SelectedItem);
SelectionParameters.Insert("CloseAfterSelection", False);
OpenForm("Catalog.Products.ChoiceForm", Valintavaihtoehdot, Items.SelectedProduct);
EndProcedure
Meidän tulisi tarkastella erikseen OpenForm()-metodin kolmatta parametria. Tämä parametri määrittää, kuka on valintalomakkeen omistaja ja kenelle ilmoitetaan tehdystä valinnasta. AT Tämä tapaus olemme määrittäneet itse lomakeelementin valintalomakkeen omistajaksi, mutta voimme myös määrittää itse lomakkeen tällä parametrilla. Tässä tapauksessa käsittelijä on otettava käyttöön HandlingChoice lomakemoduuli ja päätä siinä, mihin lomakemääritteeseen valitut tiedot sijoitetaan.
HUOMAUTUS. Jos emme ota käyttöön tapahtumakäsittelijää StartChoice , järjestelmä suorittaa itse toimintonsa. Tämä koskee kaikkia muita esimerkissä käytettyjä käsittelijöitä.
Nyt meidän on käsiteltävä hyväksytyt parametrit valintalomakkeessa. Tehdään se ohjaajassa OnCreateOnServer() valintalomakemoduulista.

&Palvelimella
Menettely OnCreateOnServer(virhe, StandardProcessing)
Vakiokäsittely= epätosi ;
Elements.List.SelectGroupsAndItems = Parameters.SelectGroupsAndItems;
Elements.List.AllowSelectRoot = Parameters.AllowSelectRoot;
Items.List.CurrentRow = Parameters.CurrentRow;
CloseOnSelection = Parameters.CloseAfterSelection;
EndProcedure
Tarkistaaksemme asettamamme lomakeparametrien suorituskyvyn asetamme konfiguraattorin avulla valintalomaketaulukon List-ominaisuuden. Valitse GroupsAndItems Ryhmät-arvoon (ilman parametrin käyttöä sanakirjaelementtien valinta ei ole käytettävissä).
HUOMAUTUS. Jos luettelotaulukossa, joka näyttää tuoteluettelon, SelectionMode-ominaisuuden arvoksi ei ole asetettu True , tuotevalikoima ei ole käytettävissä.
Nyt meidän on käsiteltävä halutun kohteen valinta valintalomakkeessa. Tätä varten sinun on määritettävä tapahtumakäsittelijä lomaketaulukon SelectValues-tapahtumalle.

&AtClient
Menettely ListSelectionValues ​​(tuote, vakiokäsittely, arvo)
Vakiokäsittely= epätosi ;
NotifySelection(Arvo);
EndProcedure
Meidän tehtävämme on toteuttaa elementin valintaprosessi itse syöttökentässä. Tätä varten sinun on käsiteltävä tapahtuma HandlingChoice syöttökenttään SelectedProduct.

&AtClient
Menettely SelectedItemProcessingChoice(nimike, SelectedValue, StandardProcessing)
Vakiokäsittely= epätosi ;
Object.SelectedItem = SelectedValue;
EndProcedure
Totesimme itsenäisesti järjestelmämekanismin arvon valitsemiseksi lomakkeen syöttökentässä.
HUOMIO! Tämä esimerkki ei ole täydellinen. Sen ainoa tarkoitus on esitellä lomakeparametrien kanssa työskentelyn mekaniikka.
Jos parametreja luotaessa (käsittelijä SelectedItemSelectionStart()) vaihda rivi:

SelectionParameters.Insert("CloseAfterSelection", True );
riville:
SelectionParameters.Insert("CloseAfterSelection", False) ;
sitten valintalomake lakkaa sulkemasta valinnan jälkeen. Tätä voidaan käyttää esimerkiksi valintalomakkeen toteuttamiseen (usean tuotteen valinta sulkematta valintalomaketta).

Lomakkeiden automaattisen vuorovaikutuksen tukemiseksi järjestelmä tarjoaa useita vakiovaihtoehtoja, joita käytetään lomakkeiden ohjaamiseen niitä avattaessa. Näiden parametrien avulla järjestelmä toteuttaa lomakekentissä valinnan valintalomakkeista, objektilomakkeiden avaamisen, vakiokomentojen toiminnan jne. Eli ne tarjoavat erilaisia ​​käyttöliittymän toimintaskenaarioita järjestelmään upotettuina. Mutta kehittäjä voi myös käyttää näitä parametreja 1C:Enterprise-kielellä välittämällä ne kutsuessaan OpenForm()-metodia.

Listaamme järjestelmän tarjoamat parametrit ja niiden tarkoituksen:

  • Valintatila– lomake avautuu valintatilassa. Toimitetaan laajennuksella hallitulla lomakkeella dynaaminen luettelo.
  • CurrentLine– merkkijono, joka aktivoituu luettelossa, kun se avataan. Välitetään arvo, joka identifioi merkkijonon. Tarjoaa dynaamisen luettelon hallitun lomakkeen laajennuksen.
  • Valitse GroupsAndItems– Tämä parametri määrittää lomakkeen päämääritteen taulukon SelectGroupAndItems-ominaisuuden. Tarjoaa dynaamisen luettelon hallitun lomakkeen laajennuksen.
  • AllowSelectionRoot– määrittää, voidaanko juuri valita lomakkeessa, jossa dynaaminen luettelo näytetään puuna. Tarjoaa puuna näytettävän dynaamisen luettelon hallitun lomakkeen laajennus.
  • Valinta– valinta asetettu dynaamiseen luetteloon. Edustaa rakennetta. Elementtien nimet vastaavat niiden kenttien nimiä, joilla valinta tehdään, ja arvot sisältävät valinnan arvot. Tarjoaa dynaamisen luettelon hallitun lomakkeen laajennuksen.
  • Avain– arvo, joka tunnistaa lomakkeessa muokattavan objektin. Jos arvo puuttuu tai se on virheellinen, uusi objekti luodaan käyttämällä jäljellä olevia parametreja. Tarjoaa kohdelomakkeita ja tietorekisterin tietueenhallintalaajennuksia.
  • ValueCopy– arvo, joka identifioi objektin, jota käytetään kopioitaessa uutta objektia luotaessa. Tarjoaa kohdelomakkeita ja tietorekisterin tietueenhallintalaajennuksia.
  • Täytä arvot– arvot uuden objektin tietojen täyttämiseen. Edustaa rakennetta. Elementtien nimet vastaavat attribuuttien nimiä, ja arvot sisältävät tiedot, joita käytetään määritettyjen attribuuttien täyttämiseen. Tarjoaa kohdelomakkeita ja tietorekisterin tietueenhallintalaajennuksia.
  • Pohja– arvo, joka identifioi objektin, jota käytetään perustana luotaessa uutta objektia syöttämällä pohjalta. Tarjoaa objektilomakkeen laajennukset.
  • Tämä ryhmä– määrittää uuden objektin tyypin: ryhmä tai elementti. Tarjoaa objektilomakkeen laajennukset.

Esimerkki lomakeparametrien käsittelystä

Havainnollistaaksesi, miten lomakeparametrit toimivat, tarkastellaan elementin valintaa syöttökentässä. Esimerkin ydin on mekanismin toteuttaminen elementin valitsemiseksi luettelosta sisäänrakennetulla kielellä.

Kun alat työskennellä esimerkin kanssa, sinulla on oltava kokoonpano, jolla on seuraavat ominaisuudet:

  • Pääkäynnistystila on Managed Application;
  • on tavarahakemisto, jossa on ryhmien ja elementtien hierarkia;
  • on hakemisto Analogues, jonka attribuutti SelectedItem on DirectoryReference.Goods;
  • molemmissa hakuteoksissa on hallitut nimikelomakkeet.

Nyt toteutamme tässä kokoonpanossa kaikki mekanismit, joita alusta käyttää elementin valitsemiseen luettelosta sisäänrakennetulla kielellä. Näin tehdessämme näemme, kuinka vakiomuotoisia parametreja käytetään; miten järjestelmä itse käyttää niitä; kuinka kehittäjä voi käyttää niitä.

Lisätään ylimääräinen lippu, joka ohjaa valintalomakkeen sulkemista elementin valinnan jälkeen. Kutsutaan tätä lippua CloseAfterSelectioniksi (boolen tyyppi). Lisätään se Tavarahakemiston valintalomakkeen lomakeparametriksi.

Elementtivalintalomakkeen avaamiseksi on Analogues-luetteloelementtilomakkeessa luotava SelectStart-tapahtuman tapahtumakäsittelijä SelectedItem-lomakeelementille:

&AtClient

Toimenpide SelectedItemSelectionStart (tuote, vakiokäsittely)

StandardProcessing = False;

ChoiceParameters = Uusi rakenne; SelectionParameters.Insert("SelectionMode", True); SelectionParameters.Insert("SelectGroupsAndItems", UseGroupsAndItems.Elements); SelectionParameters.Insert("AllowRootSelection", False); ChoiceParameters.Insert("Nykyinen rivi", Object.SelectedItem); SelectionParameters.Insert("CloseAfterSelection", False); OpenForm("Katalogi.Tuotteet.Valintalomake", valintaparametrit, elementit.valittu tuote);

EndProcedure

Meidän tulisi tarkastella erikseen OpenForm()-metodin kolmatta parametria. Tämä parametri määrittää, kuka on valintalomakkeen omistaja ja kenelle ilmoitetaan tehdystä valinnasta. Tässä tapauksessa määritimme itse lomakeelementin valintalomakkeen omistajaksi, mutta voimme myös määrittää itse lomakkeen tällä parametrilla. Tässä tapauksessa on tarpeen toteuttaa lomakemoduulin SelectProcess-käsittelijä ja päättää siinä, mihin lomakeattribuuttiin valitut tiedot sijoitetaan.

Lomakkeiden avaaminen ohjelmallisesti hallitussa 1C-sovelluksessa eroaa merkittävästi niiden avaamisesta tavallisessa sovelluksessa. Aloitetaan vanhasta menetelmästä. Se koostuu lomakkeen vastaanottamisesta ja sen myöhemmästä avaamisesta normaalissa tai modaalisessa tilassa (modaalisessa tilassa avattaessa lomake estää ohjelman).

GetForm() . Avata()

Tämä on hitain tapa avata lomakkeita. Sen avulla voit kuitenkin käsitellä lomaketta ohjelmallisesti ennen sen avaamista. Käsittelyä varten koodia on muutettava hieman:

Form= GetForm( "Asiakirja. Tavaroiden ja palvelujen vastaanotto. Asiakirjalomake") ;
//Tässä suoritamme toimintoja lomakkeella
Lomake. Open() ;

On syytä muistaa, että kun lomake vastaanotetaan, suoritetaan toinen tapahtumamenettely OnCreateOnServer.

Harkitse muita menetelmiä, joiden avulla voit avata lomakkeita hallitussa 1C-sovelluksessa nopeammin ja kätevämmin. Erilaisia ​​menetelmiä voidaan käyttää tilanteesta riippuen.

1. Kuinka avata objektin muoto hallitussa sovelluksessa, jos siihen on linkki.

Tässä tapauksessa kaikki on erittäin yksinkertaista.

RefReference= Viitteet. Nimikkeistö. FindByCode("000000001" );
OpenValue(ReferenceReference) ;

2. Kuinka avata valintalomake ja sitten saada valittu arvo.

Tätä varten on toiminto EnterValue(). Funktiolla on 3 parametria:

  • Muuttuja, johon valittu arvo kirjoitetaan;
  • Vihje, joka näytetään valintaikkunassa;
  • Kuvaus valittujen arvojen tyypeistä. Tyyppejä voi olla useita, joten ennen tietyn arvon valitsemista sinua pyydetään valitsemaan tyyppi.

Toiminnon suorittamisen seurauksena määritetyn tyypin objektin oletusvalintalomake avautuu.

Muuttuva arvo;
Array= uusi taulukko;
Array. Add(Type( "DirectoryLink.Nomenclature") ) ;
Array. Add(Type( "DirectoryLink. Vastapuolet") ) ;

TypeDescription= new TypeDescription(Array) ;

Res= EnterArvo(Arvo, "Vihje" , TypeDescription) ;

Aiemmat menetelmät sallivat oletusarvoisesti vain objekteille asetettujen lomakkeiden avaamisen (objektilomake tai valintalomake). Jos haluat avata mielivaltaisen lomakkeen, voit käyttää toimintoa OpenForm().

Tällä toiminnolla on useita parametreja. Tarkastellaanpa joitain niistä:

  • Lomakkeen nimi- tästä voit valita jonkin objektin vakiomuodoista, esim. FormSelect tai FormList. Tai kehittäjien luoma tietty lomake.
  • Vaihtoehdot- voit siirtää lomakkeen lomakkeeseen rakenteet joitakin parametreja ennen sen avaamista, mikä määrittää lähtötiedot. Parametrit voivat olla mitä tahansa dataa, joka voidaan välittää asiakkaalta palvelimelle. Lomaketta avattaessa siirretyt parametrit voidaan käsitellä proseduurissa OnCreateOnServer() avatussa lomakkeessa.
  • Lomakkeen avaustila- on 3 vaihtoehtoa: riippumaton, estää koko käyttöliittymän, estää omistajan lomakkeen.

Katsotaan kuinka funktiota käytetään OpenForm() erilaisissa tilanteissa.

3. Kuinka avata olemassa olevan objektin muoto

Jokaisella lomakkeella on yksi avainattribuutti. Se on korostettu lihavoituna lomakemääritteiden luettelossa ja sitä kutsutaan yleensä Esine hakemistojen, asiakirjojen elementtien muodoissa. Muilla objekteilla voi olla eri nimi. Jos haluat avata olemassa olevan objektin lomakkeen, sinun on välitettävä parametri avautuvaan lomakkeeseen Avain arvolla objektiviittauksena.

&AtClient
Toimenpidekomento1 (komento)
Parametri = uusi rakenne;
Parametri. Insert("Avain" , FindC() );
OpenForm(, Parametri) ;
EndProcedure

&Palvelimella
FindC()-funktio;
Palauta käsikirjat. Vastapuolet. FindByAttribute ("TIN", "745107734623")
EndFunctions

4. Kuinka avata uuden objektin muoto

Tämä on vain toiminto OpenForm() ilman mitään parametreja.

&AtClient
Toimenpidekomento1 (komento)
OpenForm( "Viitekirja. Vastapuolet. Objektilomake") ;
EndProcedure

5. Kuinka avata uusi objektilomake ja täyttää se jonkin perusteella

On välitettävä parametri Pohja, jonka arvo on viittaus täyttöpohjaobjektiin. Tämä aloittaa menettelyn HandleFill().

&AtClient
Toimenpidekomento1 (komento)
Parametri = uusi rakenne;
Parametri. Insert("Syy" , LinkToAccountToBuyer) ;
OpenForm( "Asiakirja. Tavaroiden ja palvelujen toteutus. Objektilomake", Parametri);
EndProcedure

Tämä esimerkki luo asiakirjan Tavaroiden ja palveluiden myynti ja täytetään ostajalle maksettavan laskun perusteella, johon linkki siirrettiin.

6. Lomakkeen avaaminen ja valinnan asettaminen sille

Valinta 1C-lomakkeilla voi olla yksinkertaista ja monimutkaista. Yksinkertainen valinta sisältää ilmaisuja, kuten Organisaatio = Horns and Hooves LLC. Monimutkainen valinta sisältää muunlaisia ​​vertailuja, esim. Listattu. Tässä artikkelissa tarkastelemme yksinkertaisen valinnan järjestämistä, ja erillinen artikkeli on omistettu monimutkaiselle.

Yksinkertaisen valinnan järjestämiseksi sinun on välitettävä parametri avaimella avautuvaan lomakkeeseen Valinta, arvo on rakenne, jossa avain on dynaamisen luettelokentän nimi ja arvo on haettava tieto.

Avataan esimerkiksi hakuluettelolomake Ei-GTE ja teemme siellä valinnan omistajan toimesta - hakemiston elementin Nimikkeistö.

&AtClient
Toimenpidekomento1 (komento)
Parametri = uusi rakenne;

Valinta = uusi rakenne;
Valinta. Insert("Omistaja", Linkkinimikkeistö) ;

Parametri. Insert("Valinta", Valinta) ;

OpenForm( "Hakemisto.GTE-numerot.luettelolomake", Parametri);
EndProcedure

7. Tietorekisterin ilmoittautumislomakkeen avaaminen

Tätä varten tarvitset tietorekisterin tallennusavaimen.

Äänitysavain ovat kaikkien mittausten ja jakson arvot (jos rekisteri on jaksollinen). Toisin sanoen tietueen avain on parametrit, joilla tietue voidaan yksilöidä.

Avausalgoritmi on seuraava:

  1. Syötämme tietueavaintiedot tarvittavin arvoineen rakenteeseen.
  2. Sijoitamme tuloksena olevan rakenteen taulukkoon.
  3. Luomme taulukosta tallennusavaimen.
  4. Parametrin välittäminen avautuvaan lomakkeeseen Avain arvona kohdan 3 tallennusavain.

&AtClient
Toimenpidekomento1 (komento)
Parametri = uusi rakenne;

KeyParameters= uusi rakenne;
KeyParameters. Insert("Nimikkeistö", Linkkinimikkeistö) ;
KeyParameters. Insert("Hintatyyppi" , LinkToPriceType) ;
KeyParameters. Insert("Jakso", Päivämäärä) ;

ArrayKey = Uusi taulukko;
ArrayKey. Add(KeyParameters) ;

RecordKey = Uusi( "Information RegisterRecordKey.NomenclaturePrices", ArrayKey) ;

Parametri. Insert("Avain", RecordKey) ;

OpenForm( "Tietorekisteri. Nimikkeistön hinnat. Tietuelomake", Parametri);
EndProcedure

Tässä artikkelissa kuvataan, kuinka arvo välitetään parametrina parametrina avattaessa hallittu lomake 8.2 verrattuna siihen, miten vastaava toiminto voitaisiin toteuttaa tavallisissa lomakkeissa.

Kuinka parametrit välitetään normaaleissa muodoissa

Normaalimuodoissa parametrin välittämiseen oli kaksi mahdollisuutta:
1) vähemmän yleinen menetelmä: "Tiedot"-välilehden objektin muodossa lisättiin rekvisiitta, tarvittaessa pääsy määritettiin visuaalisesti
2) yleisempi tapa: vientimuuttuja ilmoitettiin lomakemoduulissa ja arvo käsiteltiin "BeforeOpening" -käsittelijässä

molemmissa tapauksissa lomakekutsu näytti tältä:

Lomake = Object.GetForm("ChoiceForm",FormOwner,UniqueKey);
Form.Parameter = ParameterValue;
Form.Open();

Kuinka parametrit välitetään hallinnoiduissa muodoissa

Hallitut lomakkeet voivat nyt välittää parametreja välittömästi, kun lomake vastaanotetaan. Parametrit välitetään rakenteena:

Parametrit = Uusi rakenne("Nykyinen arvo",Viimeinen kohde);
ChoiceForm = GetForm("Katalogi.Nimikkeistö.ChoiceForm",Parametrit);
FoundItem = ChoiceForm.OpenModal();

Hallitussa lomakkeessa on myös "lomakepäätteet" (objekti, hakemisto, asiakirja, raportti). Käytettävissä olevien parametrien luettelo määritetään objektityypin mukaan. Jos esimerkiksi haluat paikantaa tietyn elementin sanakirjan valintalomakkeessa, käytetään "CurrentValue"-parametria. Suuri plussa on, että itse muodossa ei vaadita käsittelijöiden kirjoittamista ennalta määritetyille parametreille, mikä vähentää koodin määrää.

Lisäksi kehittäjällä on mahdollisuus määritellä omat parametrinsa (hallitun lomakkeen suunnittelijassa "Parametrit"-välilehti). OnCreateOnServer-käsittelijä rajoittaa parametrien käyttöikää, mikä on loogista, koska parametreja tarvitaan vain lomaketta luotaessa, mutta jos tämä parametri määrittää lomakkeen ainutlaatuisuuden (parametrin ominaisuuksissa on "avainparametri" -lippu), se on käytettävissä muissa käsittelijöissä.

Tietyn manipulointiparametrin välittämiseksi sinun on tehtävä hieman enemmän:

1) Määritä parametri hallitussa muodossa.
Määritä OnCreateAtServer-käsittelijässä tämän parametrin käsittely (käyttämällä välitettyjä parametreja FormDataStructure-tyypin "Parameters"-ominaisuuden kautta)
2) Kuvaa lomakkeen vastaanotto ja välitä uuden parametrin arvo GetForm-funktion parametreihin.
Joten koodi näyttää tältä:
- Lomakkeen vastaanottopaikassa

Parametrit = Uusi rakenne("NewParameter",LastElement);
ChoiceForm = GetForm("Katalogi.Nimikkeistö.ChoiceForm",Parametrit);

Hallitun lomakkeen moduulissa

&Palvelimella
CreationOnServerin menettely (virhe, vakiokäsittely)
Jos Parameters.Property("NewParameter") Sitten
// parametrin käsittelykoodi täällä
Loppu Jos;
EndProcedure

Johtopäätös

Ehkä tämä artikkeli on hyödyllinen jollekin, se säästää aikaa ja säästää sinut tarpeettomalta koodilta. Tarkempia tietoja aiheesta täydellinen luettelo hallitun lomakkeen parametreja, on suositeltavaa katsoa "Hallinnoitu käyttöliittymä \ Hallittu lomake" -ohjetta.

[sinun täytyy rekisteröityä nähdäksesi linkin]