Kako podesiti pametne telefone i računare. Informativni portal
  • Dom
  • Sigurnost
  • 1c kako proslijediti parametar u upravljani obrazac. Opcije obrasca

1c kako proslijediti parametar u upravljani obrazac. Opcije obrasca

Ispis (Ctrl+P)

Opcije obrasca

1. Opće informacije

Parametri obrasca (kartica Opcije) služe u dvije svrhe:
● Opišite skup podataka koji će uticati na otvaranje obrasca (parametarizacija obrasca). Da biste to učinili, morate navesti sve potrebne parametre i navesti njihove vrste.
● Odredite parametre koji će uticati na ključ jedinstvenosti obrasca. Da biste to učinili, morate postaviti svojstvo Ključni parametar oni parametri koji treba da učestvuju u formiranju ključa jedinstvenosti forme. Kada pokušate da otvorite obrazac, sistem traži postojeći obrazac koristeći generisani ključ jedinstvenosti obrasca. Ako obrazac sa primljenim ključem postoji u sistemu
jedinstvenost, ta forma se vraća; ako nije, kreira se novi obrazac.
Prilikom pozivanja obrasca, vrijednosti parametara koje je kreirao programer mogu se navesti u strukturi parametara zajedno sa sistemskim parametrima obrazaca (ako ih ima).
Parametri obrasca se mogu proslijediti obrascu u trenutku njegovog kreiranja. U događaju se može izvršiti analiza proslijeđenih parametara WhenCreatingOnServer() (Zbirka parametara je svojstvo objekta ManagedForm):

// Na lokaciji poziva.
// Kreirajte parametar obrasca.
Parametri = nova struktura();
Options.Insert("Važnost", PredefinedValue(“Enumeration.Importance.Important”));
// Otvaranje obrasca sa parametrima.
OpenForm (“GeneralForm.ViewForm”, Parametri);

// U modulu forme.
&Na serveru
Procedura WhenCreatingOnServer(Failure, StandardProcessing)
Ako Parameters.Importance = Enumerations.Importance.Important o Onda

endIf;
EndProcedure

PAŽNJA! Nakon pozivanja obrađivača događaja Kada je CreatedOnServer svi parametri obrasca koji nisu ključni se uklanjaju iz kolekcije Parameters.
Savjet. Ne-ključni parametri obrasca potrebni za dalji rad moraju biti sačuvani u podacima obrasca.

2. Standardni parametri obrasca

Da bi podržao automatsku interakciju između obrazaca, sistem obezbeđuje niz standardnih parametara koji se koriste za kontrolu obrazaca kada se otvore. Koristeći ove parametre, sistem implementira u polja obrasca izbor iz izbornih obrazaca, otvaranje obrazaca objekata, rad standardnih naredbi itd. Odnosno, pružaju različite scenarije rada interfejsa ugrađene u sistem.
Ali programer takođe može koristiti ove parametre u ugrađenom jeziku, prosleđujući ih prilikom pozivanja metode OpenForm().
Lista standardnih parametara obrasca u zavisnosti od tipa ekstenzije obrasca može se naći u odjeljcima Ugrađeni jezik - Interfejs
(upravljano) – Upravljani oblik – Proširivanje... ugrađeno certifikati

3. Primjer rada sa parametrima forme

Da biste pokazali kako funkcionišu parametri obrasca, razmotrite implementaciju odabira elementa u polju za unos. Suština primjera bit će implementacija mehanizma za odabir elementa sa liste na ugrađenom jeziku.
Do trenutka kada počnete raditi s primjerom, morate imati konfiguraciju sa sljedećim svojstvima:
● postoji direktorij Proizvodi sa hijerarhijom grupa i elemenata;
● postoji direktorij Analogi sa detaljima SelectedProduct type DirectoryLink.Products;
● oba direktorija imaju forme elemenata.
Sada implementirajmo u ovoj konfiguraciji sve mehanizme koje platforma koristi za odabir elementa sa liste na ugrađenom jeziku. U ovom slučaju ćemo vidjeti:
● kako se koriste standardni parametri obrasca;
● kako ih sam sistem koristi;
● kako ih programer može koristiti.
Dodajmo dodatni parametar koji će kontrolirati zatvaranje obrasca za odabir nakon odabira elementa. Nazovimo ovaj parametar CloseAfterSelection(Boolean tip). Dodajmo ga kao parametar obrasca Obrazac za odabir direktorija Proizvodi.
Da biste otvorili obrazac za odabir elementa, potrebno je da kreirate rukovalac događaja za događaj Početak odabira u elementu obrasca elementa obrasca Izabrani proizvod.

&OnClient
Procedura SelectedProductStartSelection(stavka, standardna obrada)
StandardProcessing= False;
Opcije izbora= Nova struktura;
Izbor Options.Insert(“SelectionMode”, True);
Izbor Options.Insert(“Odabir grupa i elemenata”, Korištenje GroupsAndElements.Elements);
Izbor Options.Insert(“AllowRootSelection”, False);
Izbor Options.Insert(“Trenutna linija”, Object.SelectedProduct);
Izbor Options.Insert(“CloseAfterSelection”, False);
OpenForm(“Directory.Products.SelectionForm”, Opcije izbora, Items.SelectedItem);
EndProcedure
Potrebno se posebno zadržati na trećem parametru metode OpenForm(). Ovaj parametar određuje ko će biti vlasnik obrasca za odabir i ko će biti obaviješten o izvršenom odabiru. U ovom slučaju smo naveli sam element forme kao vlasnika obrasca za odabir, ali možemo specificirati i samu formu ovim parametrom. U ovom slučaju će biti potrebno implementirati rukovalac ProcessingSelection modul forme i u njemu odlučite u koji atribut forme želite smjestiti odabrane podatke.
BILJEŠKA. Ako ne implementiramo obrađivač događaja StartSelection, tada će njegove radnje izvršiti sam sistem. To vrijedi i za sve daljnje rukovaoce koji se koriste u primjeru.
Sada morate obraditi proslijeđene parametre u obrascu za odabir. Uradimo ovo u rukovaocu Kada je CreatedOnServer() modula obrasca za odabir.

&Na serveru
Procedura WhenCreatingOnServer(Neuspjeh, Standardna obrada)
StandardProcessing= False;
Elements.List.SelectingGroupsAndElements = Parameters.SelectingGroupsAndElements;
Elements.List.AllowRootSelection = Parametri.AllowRootSelection;
Elements.List.CurrentRow = Parameters.CurrentRow;
CloseOnSelection = Opcije.CloseAfterSelection;
EndProcedure
Kako bismo provjerili funkcionalnost parametara obrasca koje smo postavili, pomoću konfiguratora ćemo postaviti svojstvo List za tabelu obrasca za odabir Odabir grupa i elemenata na vrijednost Grupe (bez korištenja parametra, izbor elemenata direktorija neće biti dostupan).
BILJEŠKA. Ako tabela Lista koja prikazuje listu proizvoda nema svojstvo SelectionMode postavljeno na Tačno, tada izbor proizvoda neće biti dostupan.
Sada trebamo rukovati odabirom željenog elementa u obrascu za odabir. Da biste to učinili, morate definirati rukovatelja za događaj SelectValue tabele obrasca.

&OnClient
Procedura ListValueSelection (element, standardna obrada, vrijednost)
StandardProcessing= False;
NotifyOfSelection(Vrijednost);
EndProcedure
Sve što treba da uradimo je da implementiramo obradu selekcije elemenata u samo polje za unos. Da biste to učinili, morate upravljati događajem ProcessingSelection naše polje za unos SelectedProduct.

&OnClient
Procedura SelectedItemSelectionProcessing(Item, SelectedValue, StandardProcessing)
StandardProcessing= False;
Object.SelectedProduct = SelectedValue;
EndProcedure
Nezavisno smo implementirali sistemski mehanizam za odabir vrijednosti u polju za unos na obrascu.
PAŽNJA! Ovaj primjer nije potpun. Njegova jedina svrha je da demonstrira mehanizme za rad sa parametrima forme.
Ako prilikom kreiranja parametara (handler SelectedProductStartSelection()) zamijeni red:

Izbor Options.Insert(“CloseAfterSelection”, Tačno);
po redu:
Izbor Options.Insert(“CloseAfterSelection”, False) ;
tada se obrazac za odabir više neće zatvoriti nakon što se izvrši odabir. Ovo se može koristiti, na primjer, za implementaciju obrasca za odabir (odabir nekoliko proizvoda bez zatvaranja obrasca za odabir).

Programsko otvaranje obrazaca u upravljanoj 1C aplikaciji značajno se razlikuje od otvaranja u običnoj aplikaciji. Pogledajmo prvo staru metodu. Sastoji se od primanja obrasca, a zatim ga otvaranja u normalnom ili modalnom režimu (kada se otvori u modalnom režimu, obrazac blokira program).

GetForm() . otvori()

Ovo je najsporiji način otvaranja formulara. Međutim, omogućava vam da programski obradite obrazac prije nego što ga otvorite. Za obradu koda potrebno je malo promijeniti:

Forma = GetForm( "Dokument. Prijem robe i usluga. Obrazac dokumenta") ;
//Ovdje izvodimo radnje sa formom
Forma. Open();

Treba uzeti u obzir da će se prilikom prijema obrasca izvršiti još jedna procedura događaja WhenCreatedOnServer.

Pogledajmo druge metode koje vam omogućuju brže i praktičnije otvaranje obrazaca u upravljanoj 1C aplikaciji. U zavisnosti od specifične situacije, mogu se koristiti različite metode.

1. Kako otvoriti obrazac objekta u upravljanoj aplikaciji ako postoji veza do njega.

U ovom slučaju sve je krajnje jednostavno.

RefLink = Direktoriji. Nomenklatura. FindByCode("000000001" ) ;
OpenValue(RefLink) ;

2. Kako otvoriti obrazac za odabir i zatim dobiti odabranu vrijednost.

Za to postoji funkcija UnesiteVrijednost(). Funkcija ima 3 parametra:

  • Varijabla u koju će odabrana vrijednost biti upisana;
  • Savjet koji će biti prikazan u prozoru za odabir;
  • Opis tipova odabranih vrijednosti. Može biti nekoliko tipova, a u tom slučaju od vas će biti zatraženo da odaberete tip prije odabira određene vrijednosti.

Kao rezultat izvršavanja funkcije, otvorit će se zadani obrazac za odabir objekta navedenog tipa.

Varijabilna vrijednost;
Niz= novi niz;
Niz. Dodaj (Tip( "DirectoryLink.Nomenklatura") ) ;
Niz. Dodaj (Tip( "DirectoryLink. Counterparties") ) ;

TypeDescription= new TypeDescription(Niz) ;

Res = EnterValue(Vrijednost, "Hint" , TypeDescription) ;

Prethodne metode su vam dozvoljavale samo da otvorite zadane obrasce za objekte (objekti ili obrazac za odabir). Ako trebate otvoriti prilagođeni obrazac, možete koristiti funkciju OpenForm().

Ova funkcija ima dosta parametara. Pogledajmo neke od njih:

  • Ime obrasca— ovdje možete odabrati bilo koji od standardnih oblika objekta, na primjer, Obrazac za odabir ili List Form. Ili određeni obrazac kreiran od strane programera.
  • Opcije— omogućava vam da ga prenesete u obrazac u obrascu strukture neke parametre prije otvaranja, čime se određuju izlazni podaci. Parametri mogu biti bilo koji podatak koji se može proslijediti od klijenta do servera. Parametri proslijeđeni prilikom otvaranja obrasca mogu se obraditi u proceduri WhenCreatingOnServer() na obrascu koji se otvara.
  • Način otvaranja obrasca— ima 3 opcije: nezavisno, blokiranje celog interfejsa, blokiranje obrasca vlasnika.

Pogledajmo kako se funkcija koristi OpenForm() u raznim situacijama.

3. Kako otvoriti formu postojećeg objekta

Svaki obrazac ima jedan ključni atribut. Istaknut je podebljanim slovima na listi detalja obrasca i obično se zove Objekt u obliku elemenata priručnika i dokumenata. Drugi objekti mogu imati drugačije ime. Da biste otvorili obrazac postojećeg objekta, potrebno je da prosledite parametar obrascu koji se otvara Ključ sa vrijednošću kao referencom na objekt.

&OnClient
Procedura Naredba 1 (Naredba)
Parametar= nova struktura;
Parametar. Insert("Key" , FindC() ) ;
OpenForm(, Parametar) ;
EndProcedure

&Na serveru
Funkcija FindC();
Vrati imenike. Counterparties. FindByRequisites ("TIN", "745107734623")
EndFunction

4. Kako otvoriti novi obrazac za objekt

Ovdje će poslužiti jednostavna funkcija OpenForm() bez ikakvih parametara.

&OnClient
Procedura Naredba 1 (Naredba)
OpenForm( "Imenik. Ugovorne strane. Obrazac objekta") ;
EndProcedure

5. Kako otvoriti obrazac za novi objekt i ispuniti ga na osnovu nečega

Morate proslijediti parametar Baza, čija će vrijednost biti referenca na osnovni objekt punjenja. Ovo će započeti postupak ProcessFill().

&OnClient
Procedura Naredba 1 (Naredba)
Parametar= nova struktura;
Parametar. Insert("Baza", LinkToBuyerAccount) ;
OpenForm( "Dokument. Prodaja roba i usluga. Obrazac predmeta", Parametar) ;
EndProcedure

Ovaj primjer će kreirati dokument Prodaja robe i usluga i popunjena na osnovu fakture za plaćanje kupcu, link na koji je proslijeđen.

6. Kako otvoriti obrazac i postaviti odabir na njemu

Izbor na 1C obrascima može biti jednostavan ili složen. Jednostavan odabir uključuje izraze poput Organizacija = Horns and Hooves LLC. Složena selekcija uključuje druge vrste poređenja, npr. Na listi. U ovom članku ćemo razmotriti organizaciju jednostavne selekcije, a poseban članak će biti posvećen složenoj selekciji.

Da biste organizirali jednostavnu selekciju, trebate proslijediti parametar s ključem u obrazac koji se otvara Odabir, vrijednost će biti struktura u kojoj je ključ ime polja dinamičke liste, a vrijednost su podaci koji se traže.

Na primjer, otvorimo obrazac za listu imenika GTD brojevi i napravite odabir tamo od strane vlasnika - elementa direktorija Nomenklatura.

&OnClient
Procedura Naredba 1 (Naredba)
Parametar= nova struktura;

izbor= nova struktura;
Odabir. Insert("Vlasnik", LinkToNomenclature) ;

Parametar. Insert("Izbor", Odabir) ;

OpenForm( "Imenik.GTD brojevi. Formular liste", Parametar) ;
EndProcedure

7. Kako otvoriti obrazac za unos u registar informacija

Da biste to učinili, trebat će vam ključ za unos u registar informacija.

Ključ za snimanje— ovo su vrijednosti svih mjerenja i perioda (ako je registar periodičan). Odnosno, ključ zapisa je parametri pomoću kojih se zapis može jedinstveno identificirati.

Algoritam otvaranja je sljedeći:

  1. U strukturu unosimo podatke ključa zapisa sa potrebnim vrijednostima.
  2. Dobivenu strukturu postavljamo u niz.
  3. Kreiramo ključ zapisa iz niza.
  4. Prosljeđujemo parametar u obrazac koji se otvara Ključ sa ključem za snimanje iz koraka 3 kao vrijednosti.

&OnClient
Procedura Naredba 1 (Naredba)
Parametar= nova struktura;

KeyParameters= nova struktura;
Ključni parametri. Insert("Nomenklatura", LinkToNomenklatura) ;
Ključni parametri. Insert("PriceType", LinkToPriceType) ;
Ključni parametri. Insert("Period", Datum) ;

KeyArray = Novi niz;
KeyArray. Add(KeyParameters) ;

EntryKey = Novo( "Registar informacija Ključ za evidenciju. CijeneNomenklatura", KeyArray) ;

Parametar. Insert("Key", RecordKey) ;

OpenForm( "Registar informacija. Cijene nomenklature. Obrazac evidencije", Parametar) ;
EndProcedure

Imamo obradu sa ovim osnovnim oblikom:

Iz ovog obrasca trebamo otvoriti neki dodatni obrazac, a tekst iz polja obrasca moramo prenijeti u otvorenu formu. Dodatni obrazac je sljedeći:

Dakle, kada kliknete na dugme „Pokreni“, otvara se dodatni obrazac sa tekstom koji je već unesen u polje:

Razmotrimo način rješavanja takvog problema.

Rješenje

Za prijenos parametara između regularnih obrazaca, možete koristiti globalnu varijablu za izvoz modula obrasca ili kreirati atribut obrasca. Razmotrimo obje metode za naš zadatak.

1. Upotreba globalne varijable izvoza modula obrasca.

Dodajte sljedeći kod u glavni obrazac za proceduru rukovanja gumbom "Pokreni":

Procedura ButtonExecutePress(Button)Form = GetForm(" AdditionalForm" ) ; // "Tekst" je globalna izvozna varijabla modula obrasca koji se otvara Forma. Tekst = Elementi forme. Tekst. Značenje;

Forma. Open(); EndProcedure

Varijabla teksta dodata je modulu obrasca koji se otvara zajedno sa rukovaocem događaja "BeforeOpen": Izvoz varijabilnog teksta ;// Varijabla kojoj se prosljeđuje vrijednost iz drugog obrasca

Procedura prije otvaranja(Failure, StandardProcessing)FormElements. TransmittedText. Vrijednost = Tekst; EndProcedure

Problem je riješen, i to vrlo jednostavno!

2. Korištenje detalja obrasca.

Za drugu metodu, ne moramo čak ni da prepisujemo rukovaoce dugmadi „Run“ i „BeforeOpen“. Sve što je potrebno je dodati atribut “Text” sa vrstom stringa u otvoren obrazac.

zaključci

U upravljanim oblicima, prenošenje parametara je mnogo lakše. U konvencionalnim oblicima, opisani pristup se koristi u većini slučajeva. Možete obraditi primjer iz članka.

Da bi podržao automatsku interakciju između obrazaca, sistem obezbeđuje niz standardnih parametara koji se koriste za kontrolu obrazaca kada se otvore. Koristeći ove parametre, sistem implementira u polja obrasca izbor iz izbornih obrazaca, otvaranje obrazaca objekata, rad standardnih naredbi itd. Odnosno, pružaju različite scenarije rada interfejsa ugrađene u sistem. Ali programer takođe može koristiti ove parametre u ugrađenom jeziku, prosleđujući ih prilikom pozivanja metode OpenForm().

Navodimo parametre koje pruža sistem i njihovu svrhu:

  • Režim odabira– obrazac se otvara u načinu odabira. Obezbeđuje ekstenzija obrasca za upravljanje dinamičkom listom.
  • CurrentRow– niz koji će se aktivirati u listi kada se otvori. Prosljeđuje se vrijednost koja identificira string. Obezbeđuje ekstenzija obrasca za upravljanje dinamičkom listom.
  • Odabir grupa i elemenata– ovaj parametar postavlja svojstvo Izbor grupa i elemenata tabele glavnog atributa obrasca. Obezbeđuje ekstenzija obrasca za upravljanje dinamičkom listom.
  • AllowSelectRoot– definira mogućnost odabira korijena u obrascu s dinamičkom listom prikazanom kao stablo. Obezbeđuje ekstenzija upravljanog obrasca za dinamičku listu prikazanu kao stablo.
  • Odabir– odabir postavljen u dinamičkoj listi. Predstavlja strukturu. Imena elemenata odgovaraju nazivima polja po kojima se vrši selekcija, a vrijednosti sadrže vrijednosti odabira. Obezbeđuje ekstenzija obrasca za upravljanje dinamičkom listom.
  • Ključ– vrijednost koja identifikuje objekt koji se uređuje u obrascu. Ako vrijednost nedostaje ili je netočna, kreira se novi objekt koristeći preostale parametre. Obezbeđuje ekstenzije obrasca objekta i upravitelj zapisa registra informacija.
  • Vrijednost kopiranja– vrijednost koja identificira objekt koji će se koristiti za kopiranje prilikom kreiranja novog objekta. Obezbeđuje ekstenzije obrasca objekta i upravitelj zapisa registra informacija.
  • Vrijednosti popunjavanja– vrijednosti za popunjavanje detalja novog objekta. Predstavlja strukturu. Imena elemenata odgovaraju nazivima detalja, a vrijednosti sadrže podatke koji će se koristiti za popunjavanje navedenih detalja. Obezbeđuje ekstenzije obrasca objekta i upravitelj zapisa registra informacija.
  • Baza– vrijednost koja identificira objekt koji će se koristiti kao osnova prilikom kreiranja novog objekta unosom na osnovu. Omogućeno ekstenzijama obrasca objekta.
  • Ova grupa– definira tip novog objekta: grupa ili element. Omogućeno ekstenzijama obrasca objekta.

Primjer rada sa parametrima obrasca

Da biste pokazali kako funkcionišu parametri obrasca, razmotrite implementaciju odabira elementa u polju za unos. Suština primjera bit će implementacija mehanizma za odabir elementa sa liste na ugrađenom jeziku.

Do trenutka kada počnete raditi s primjerom, morate imati konfiguraciju sa sljedećim svojstvima:

  • Glavni način pokretanja – Upravljana aplikacija;
  • postoji direktorij Proizvodi sa hijerarhijom grupa i elemenata;
  • postoji direktorij Analogi sa atributom SelectedProduct tipa DirectoryLink.Products;
  • oba direktorija imaju forme upravljanih elemenata.

Sada implementirajmo u ovoj konfiguraciji sve mehanizme koje platforma koristi za odabir elementa sa liste na ugrađenom jeziku. Pritom ćemo vidjeti kako se koriste standardni parametri forme; kako ih sam sistem koristi; kako ih programer može koristiti.

Dodajmo dodatnu zastavicu koja će kontrolirati zatvaranje obrasca za odabir nakon odabira elementa. Nazovimo ovu zastavicu CloseAfterSelection (tip Boolean). Dodajmo ga kao parametar obrasca Obrazac za odabir direktorija proizvoda.

Da biste otvorili obrazac za odabir elemenata, potrebno je da kreirate rukovalac događaja za događaj Početak odabira za element obrasca Izabrani proizvod u obliku elementa direktorija Analogi:

&OnClient

Procedura SelectedProductStartSelection(Item, StandardProcessing)

StandardProcessing = False;

SelectionParameters = Nova struktura; SelectionParameters.Insert("SelectionMode", True); SelectionParameters.Insert("SelectingGroupsAndElements", UsingGroupsAndElements.Elements); SelectionParameters.Insert("AllowRootSelection", False); SelectionParameters.Insert("CurrentRow", Object.SelectedProduct); SelectionParameters.Insert("CloseAfterSelection", False); OpenForm("Directory.Products.SelectionForm", SelectionParameters, Elements.SelectedProduct);

EndProcedure

Potrebno se posebno zadržati na trećem parametru metode OpenForm(). Ovaj parametar određuje ko će biti vlasnik obrasca za odabir i ko će biti obaviješten o izvršenom odabiru. U ovom slučaju smo naveli sam element forme kao vlasnika obrasca za odabir, ali možemo specificirati i samu formu ovim parametrom. U ovom slučaju će biti potrebno implementirati obrađivač obrade odabira modula obrasca iu njemu odlučiti u koji atribut forme će se smjestiti odabrani podaci.

Ovaj članak opisuje kako koristiti standardna sredstva za prosljeđivanje vrijednosti kao parametra prilikom otvaranja upravljanog obrasca 8.2, u poređenju sa načinom na koji bi se slična operacija mogla implementirati u regularnim oblicima.

Kako se parametri prosljeđuju u regularnim oblicima

U običnim oblicima postojale su 2 opcije za prosljeđivanje parametra:
1) manje uobičajena metoda: u obrascu objekta na kartici "Detalji" dodani su atributi, ako je potrebno, pristup je određen vizualnim sredstvima
2) češći metod: izvozna varijabla je deklarirana u modulu obrasca, a vrijednost je obrađena u rukovaocu „Prije otvaranja“

u oba slučaja poziv obrasca izgledao je otprilike ovako:

Form = Object.GetForm("SelectionForm",FormOwner, UniquenessKey);
Form.Parameter = ParameterValue;
Form.Open();

Kako se parametri prosljeđuju u upravljanim oblicima

Upravljani obrasci sada imaju mogućnost da odmah proslijede parametre kada se obrazac primi. Parametri se prosljeđuju kao struktura:

Parametri = Nova struktura("CurrentValue", LastElement);
SelectionForm = GetForm("Directory. Nomenclature.SelectionForm", Parameters);
FoundItem = SelectionForm.OpenModal();

Također, upravljani obrazac sada ima „proširenja obrasca“ (objekat, referentna knjiga, dokument, izvještaj). Ovisno o vrsti objekta, određuje se sastav dostupnih parametara. Na primjer, ako u obrascu za odabir direktorija trebate pozicionirati na određeni element, tada se koristi parametar “CurrentValue”. Velika prednost je to što sam obrazac ne zahtijeva pisanje rukovatelja za unaprijed definirane parametre, što smanjuje količinu koda.

Programer također ima mogućnost definiranja vlastitih parametara (u dizajneru upravljanih oblika, kartica „Parametri“). Životni vijek parametara je ograničen rukovateljem OnCreationOnServer, što je logično jer parametri su potrebni samo prilikom kreiranja obrasca, ali ako ovaj parametar određuje jedinstvenost forme (zastavica „ključni parametar“ je postavljena u svojstvima parametra), biće dostupan u drugim rukovaocima.

Da biste proslijedili određeni parametar manipulacije, morate učiniti još malo:

1) Definirajte parametar u kontroliranom obliku.
U rukovatelju OnCreationOnServer definirajte obradu ovog parametra (pristup proslijeđenim parametrima kroz svojstvo “Parameters” koje ima tip FormDataStructure)
2) Opišite primanje obrasca i proslijedite vrijednost novog parametra u parametre funkcije GetForm.
Tako će kod izgledati ovako:
- Na mestu gde dobijate formular

Parametri = Nova struktura("NewParameter", LastElement);
SelectionForm = GetForm("Directory. Nomenclature.SelectionForm", Parameters);

U modulu upravljane forme

&Na serveru
Procedura prilikom kreiranja na serveru (neuspjeh, standardna obrada)
Ako Parameters.Property("NewParameter") Onda
// ovdje je kod za obradu parametara
endIf;
EndProcedure

Zaključak

Možda će ovaj članak nekome biti koristan, uštedjet će vrijeme i spasiti vas od nepotrebnog koda. Za detaljnije informacije o punoj listi parametara upravljanog obrasca, preporučuje se da pogledate pomoć “Upravljani interfejs\Upravljani obrazac”.

[morate se registrirati da vidite link]

Najbolji članci na ovu temu