KELL

On neid, kes loevad seda uudist enne sind.
Tellige uusimate artiklite saamiseks.
Meil
Nimi
Perekonnanimi
Kuidas teile meeldiks Kellukest lugeda
Rämpsposti pole

Selles artiklis tutvume hallatava vormiga töötamise peamiste aspektidega 1C 8.3. Mis on vorm ja miks seda vaja on? Vorm on peamine objekt, mille kaudu kasutaja programmiga suhtleb. See tähendab, et vormi kasutades sisestab kasutaja infot programmi, samuti kuvatakse vormile kasutajale vajalik info.

Mis tahes vormis (hallatud või tavapärase) arendaja peamine ülesanne on pakkuda kasutajale programmiga suhtlemiseks mugavat mehhanismi.

1C platvormil on võimalus genereerida mis tahes vormis objekti, kuid tavaliselt konfigureerivad programmeerijad rakenduslahenduste väljatöötamisel vormid ise.

Eelkõige hallatavate vormidega ja hallatud rakendusega töötamise küsimusi käsitletakse üksikasjalikult raamatus „1C arendamise alused: takso. Hallatava rakenduse arendamine 12 sammuga. See raamat on tõeliseks abiks neile, kes alles alustavad hallatud rakenduste arendamisega.

Raamat "1C: Takso arendamise põhialused" sobib suurepäraselt neile, kes on programmeerimisega juba alustanud ja kellel on selle teemaga teatud raskusi ning neile, kes on programmeerimisega tegelenud pikka aega, kuid pole kunagi 1C hallatavate vormidega töötanud.

  1. Ei mingeid keerulisi tehnilisi termineid;
  2. Üle 600 lehekülje praktilist materjali;
  3. Iga näitega on kaasas pilt (ekraanitõmmis);

Sooduskood 15% allahindluseks - 48PVXHeYu

Mõnikord tundub, et programmeerimiskeele õppimine 1C-s on keeruline ja raske. Tegelikult on 1C programmeerimine lihtne. Minu raamatud aitavad teil hõlpsalt ja kiiresti omandada programmeerimise 1C: ja "1C: Takso arendamise alused"

Õppige programmeerimist 1C-s minu raamatu "Programmeerimine 1C-s 11 sammuga" abil

  1. Ei mingeid keerulisi tehnilisi termineid.
  2. Üle 700 lehekülje praktilist materjali.
  3. Iga ülesandega on kaasas pilt (ekraanitõmmis).
  4. Koduõppe ülesannete kogu.
  5. Raamat on kirjutatud selges ja lihtsas keeles – algajale.
  6. Raamat saadetakse e-postiga PDF-vormingus. Saab avada igas seadmes!


Kui see õppetund aitas teil mõnda probleemi lahendada, meeldis või oli kasulik, saate minu projekti toetada mis tahes summa ülekandmisega:

saab maksta käsitsi:

Yandex.Money — 410012882996301
Veebiraha - R955262494655

Liituge minu rühmadega.

Vormid 1C: Enterprise'is on loodud andmebaasis sisalduva teabe kuvamiseks ja redigeerimiseks. Vormid võivad kuuluda kindlatesse konfiguratsiooniobjektidesse või eksisteerida neist eraldi ning neid kasutab kogu rakenduslahendus tervikuna.

Näiteks juhend Nomenklatuur võib olla mitu vormi, mida kasutatakse konkreetsetel eesmärkidel - kataloogielemendi redigeerimine, loendi kuvamine jne:

Koos sellega võivad esineda üldvormid, mis ei kuulu konkreetsete konfiguratsiooniobjektide hulka – üldvormid.

Põhivormid

Iga konfiguratsiooniobjekti saab kasutada teatud standardtoimingute tegemiseks. Näiteks mis tahes kataloogi puhul peate võib-olla kuvama selle elementide loendi, kuvama kataloogi üksikud elemendid, kuvama kataloogirühma, valima kataloogist elemendid ja elementide rühmad. Iga dokumendi puhul on selliste toimingute loend palju väiksem: dokumentide loendi vaatamine, dokumentide loendist valimine ja ühe dokumendi vaatamine.

Tagamaks selliste tüüptoimingute sooritamist rakendatud lahenduse objektide andmetega, on igaühe jaoks olemas põhivormide komplekt, mida vastavate toimingute sooritamisel kasutatakse. Peamise saab määrata mis tahes sellele objektile alluvale vormile. Näiteks kataloog Nomenklatuur võivad esineda järgmised põhivormid:

Ja dokument Kaupade ja teenuste vastuvõtt põhivormide koostis on erinev:

Seega, kui kasutaja soovib näha kataloogide loendit Nomenklatuur või dokumentide loetelu Kaupade ja teenuste vastuvõtt, avab süsteem vastava vormi, mis on määratud nende objektide loendivormiks.

Automaatselt genereeritud vormid

1C:Enterprise 8 süsteemi oluline omadus on automaatselt genereeritud vormide mehhanism. See mehhanism vabastab arendaja vajadusest luua iga konfiguratsiooniobjekti jaoks kõik võimalikud vormid. Piisab, kui arendaja lisab uue konfiguratsiooniobjekti ja süsteem ise genereerib kasutaja õigetel tööhetkedel vajalikud vormid selles objektis sisalduva teabe kuvamiseks.

Seega on arendajal vaja luua oma vormid rakenduslahenduse objektidest ainult siis, kui need peavad erinema (erinev disain või konkreetne käitumine) süsteemi poolt automaatselt genereeritavatest vormidest.

Vormi linkimine andmetega

Asjaolu, et vorm kuulub ühte või teise konfiguratsiooniobjekti, ei määra vormil kuvatavate andmete koostist. Et vorm kuulub näiteks kataloogi Nomenklatuur, võimaldab määrata selle ühele selle kataloogi põhivormidest, kuid ei määra mingil viisil, milliseid andmeid see vorm kuvab ja kuidas see käitub.

Vormi seostamiseks andmetega kasutatakse vormi atribuute, mis näitavad vormi poolt kuvatavate andmete loendit. Kõigil vormidel on iseenesest sama käitumine, olenemata sellest, milliseid andmeid nad kuvavad. Ühe vormiatribuudi saab aga määrata esmaseks vormiatribuudiks (see on paksus kirjas esile tõstetud), sel juhul täiendatakse vormi standardset käitumist ja selle atribuute olenevalt esmase vormiatribuudi tüübist:

Näiteks kui vormi peamiseks atribuudiks on määratud dokument Kaupade ja teenuste vastuvõtt, siis kui vorm suletakse, küsib süsteem selle dokumendi salvestamise ja postitamise kinnitust. Kui vormi peamiseks atribuudiks on näiteks teatmeteos Nomenklatuur, siis vormi sulgemisel sellist kinnitustaotlust ei esitata.

Vormi struktuur

Vormide peamine omadus on see, et arendaja ei joonista neid üksikasjalikult, “pikslite kaupa”. Vorm konfiguratsioonis on vormi koostise loogiline kirjeldus. Ja elementide konkreetse paigutuse teostab süsteem vormi kuvamisel automaatselt.

Kuvatavat (kasutajale nähtavat) vormi osa kirjeldatakse vormielemente sisaldava puuna.

Elemendid võivad olla sisestusväljad, märkeruudud, raadionupud, nupud jne. Lisaks võib element olla rühm muid elemente. Gruppi saab kujutada paneelina raamiga, paneelina lehtedega (vahelehtedega), lehe endana, käsupaneelina. Lisaks võib elemendiks olla tabel, mis sisaldab ka elemente (veerge). Elemendi struktuur kirjeldab, kuidas vorm välja näeb.

Kõik vormi funktsioonid on kirjeldatud detailide ja käskude kujul. Üksikasjad on andmed, millega vorm töötab, ja käsud on tehtud toimingud. Seega peab arendaja vormiredaktoris kaasama vormile vajalikud detailid ja käsud, looma neid kuvavad vormielemendid ning vajadusel elemendid rühmadesse paigutama.

Selle loogilise kirjelduse alusel genereerib süsteem kasutajale kuvamiseks automaatselt vormi välimuse. Samas võtab süsteem arvesse kuvatavate andmete erinevaid omadusi (näiteks tüüp), et vormielemendid kasutajale võimalikult mugavalt järjestada.

Arendaja saab elementide paigutust erinevate seadistustega mõjutada. See võib määrata elementide järjekorra, näidata soovitud laiust ja kõrgust. See on aga vaid lisateave, mis aitab süsteemil vormi kuvada.

Vormides saab arendaja kasutada mitte ainult vormi enda käske, vaid ka globaalseid käske, mida kasutatakse kogu konfiguratsiooni käsuliideses. Lisaks on juurutatud võimalus luua parameetrilisi käske, mis avavad muid vorme, võttes arvesse praeguse vormi spetsiifilisi andmeid. Näiteks võib see olla laos olevate saldode aruande kõne, mis on hetkel valitud arve vormis.

Viimases tunnis arvestasime tava(paksu)kliendiga. Platvormi versioonis 1C 8.2. Nad kasutavad uusi ekraanivorme 1C 8.2. Neid nimetatakse hallatud vormideks 1C 8.2.

Hallatavad vormid 1C 8.2 on 1C tulevik. Need erinevad tavalistest 1C 8.2 vormidest selle poolest, et süsteem genereerib need automaatselt spetsiaalsete sätete alusel (“tavalised” vormid joonistab programmeerija lihtsalt oma äranägemise järgi).

Hallatavate vormide 1C 8.2 arengu erinevused tavapärastest on märkimisväärsed. Seetõttu oleme täna kogunenud, et arutada eraldi hallatavate vormide 1C 8.2 loomist ja muutmist.

Hallatavad vormid 1C 8.2

Kui olete varem 1C konfiguratsioone arendanud, siis 1C 8.2 hallatud vormiredaktorit avades ajab teid kohe segadusse tõsiasi, et 1C 8.2 vormi pole üldse võimalik hiirega mõjutada.

Te ei saa muuta vormi 1C 8.2, te ei saa elementi liigutada, te ei saa isegi vaadata välja omadusi nagu varem - topeltklõpsates vormi 1C 8.2 väljal.

Nüüd ei ole vormi 1C 8.2 väljatöötamise aluseks vormi koordinaatidega väljade sidumine, vaid spetsiaalsed seaded. Süsteem loob nende sätete alusel automaatselt hallatava vormi 1C 8.2.

Seadistused koosnevad 1C 8.2 vormielementide loendist, mis asuvad redaktoris vasakus ülanurgas. Vormi 1C 8.2 elemendid hõlmavad järgmist:

  • Rekvisiidid
  • Käsud (uus kontseptsioon 1C 8.2, võivad välja näha nagu nupud või menüüelemendid)
  • Grupid (detailide ja käskude kombineerimiseks).

Vastavalt sellele ei ole nende elementide sätted väljade atribuutides, vaid nende seadete elementide atribuutides (paremklõpsu menüü, üksus Properties).

Kuidas hallatavad vormid 1C 8.2 töötavad

Hallatud vormidega 1C 8.2 töötamine on kasutaja jaoks erinev. Neil on rohkem funktsioone, kuid need on ebatavalised neile, kes on 1C-ga pikka aega töötanud.

Esiteks erineb tavaliste elementide asukoht vormil 1C 8.2. Käsuriba on alati ülaosas.

Käsuriba vasak pool on kohandatav. Tavaliselt sisaldab see selliseid tüüpilisi nuppe nagu Salvesta ja Postita.

Käsupaneeli paremal pool on vormi 1C uus standardmenüü Kõik toimingud. See menüü võimaldab hallata vormi 1C 8.2 vastavalt soovile, sarnaselt sellele, kuidas ACS-aruande sätted võimaldavad aruande välimust oluliselt muuta.

Suvalised menüüelemendid 1C Kõik toimingud

Sõltuvalt sellest, kas see vorm 1C 8.1 kuulub ühele või teisele, on menüü täidetud üksustega, mis võimaldavad teil seda objekti hallata. Näiteks kui see on kataloogiloendi vorm, siis on käsud nagu Loo või Redigeeri.

Üksus Kohanda menüüloendit 1C Kõik toimingud

Kui vormil 1C 8.2 on loend olemas, on menüüs käsk Set up list and Display list.
Kui käsk Output List on teile juba tuttav - see võimaldab teil Excelis 1C-sse salvestada / printida mis tahes loendi, siis on teine ​​käsk uus.

Nagu olete juba märganud, pole loendite käsuribal enam valikunuppe. Selle asemel ilmus nupp Otsi, mis töötab (nagu ka nüüd blokeeritud kursori positsioneerimine loendis tippimisel) - on kaebusi.

Otsi nupu funktsionaalsus pole muidugi võrreldav valikutega, aga kuhugi pole need kadunud!
Need on nüüd menüükäsu Kohanda loendi all. Valimist saab nüüd teha mis tahes välja järgi ning lisaks sellele saab sortimist ja tingimuslikku vormindamist teha samamoodi nagu SKD aruannetes.

Üksus Muuda menüüvormi 1C Kõik toimingud

Üksus Muuda vormi võimaldab teil sarnaselt muuta mitte ainult vormi 1C 8.2 loendit, vaid ka vormi 1C 8.2 ennast.

Kasutaja saab iseseisvalt lubada või keelata vormi 1C 8.2 väljade nähtavuse, laiuse ja kõrguse, avamisel vaikevälja aktiveerimise jne.

Hallatavate vormide 1C 8.2 ja tavavormide 1C kasutamine

Vaikimisi kasutatakse paksu (tavalise) 1C kliendi konfiguratsioonides tavalisi 1C vorme ja õhukese ja veebipõhise 1C kliendi konfiguratsioonides hallatud vorme. Siiski saab 1C mõlemat vormi kasutada mis tahes konfiguratsioonis, sealhulgas samaaegselt.

Selleks tuleb sisestada ka konfiguratsiooni omadused (konfiguratsiooniakna ülemine element).

1C 8.2 konfiguratsiooniatribuutides on ilmunud kaks uut märkeruutu, mis võimaldavad lubada 1C vormide mittestandardset kasutamist.

Hallatavate vormide loomine 8.2

Uue vormi 1C 8.2 lisamine toimub samamoodi nagu varem – kasutades klaviatuuril nuppu Ins või nuppu Lisa. Olemasoleva sisestamiseks topeltklõpsake sellel hiirega.

Vaikimisi luuakse konfiguratsioonis määratud vorm (tavaline või hallatav) (vt konfiguratsiooni atribuutide atribuuti Põhikäivitusrežiim).

Konstruktor palub teil valida vormi tüübi - elemendi vorm, loend. Siin saate vormi käsuribasid lisada või eemaldada. Enamasti jäetakse need sätted vaikimisi samaks.

Avaneb vaikimisi täidetud vorm - kõik sellele lisatud 1C objekti üksikasjad. Konstruktori teisel vahekaardil saate märgistada konkreetse kohustuslike väljade loendi.

Vormiredaktor koosneb kolmest jaotisest.

  • Ülemises vasakus nurgas on vormielementide loend. See koosneb väljadest, käskudest ja rühmadest, mis võimaldavad teil üksusi kombineerida. Käskude loendit saab eraldi vaadata vahekaardil Käsuliides.
  • Paremas ülanurgas on saadaolevate vormiatribuutide ja objektiatribuutide loend (ava rist atribuudi Object kõrval).
  • Allpool on saadud vormi eelvaade.

Saate lohistada saadaolevad üksikasjad vasakule ja sellest saab vormielement (väli vormil).

Kui teil on vaja lisada nuppu või menüüelementi, peate vahekaardi Käsud paremas servas looma uue käsu. See on vormimooduli funktsiooni ümbris. Lisaks sellele, et määrata, millist funktsiooni tegelikult kutsutakse, saate määrata esituse – näiteks pildi, aga ka nähtavuse sõltuvuse funktsionaalsest valikust.

Ka käsklusi lohistatakse vasakule. Kui vanem on käsuriba, siis on see käsuriba nupp - muidu lihtsalt nupp.

Vormi elementide (väljade) loendis saab objekti/vormi atribuuti mitte ainult lohistada, vaid ka lihtsalt lisada (nupp Add või Ins). Eelkõige saate luua uue vormiobjekti - rühma.

Grupp võib olla käsupaneel (kursor peab asuma real Vorm). Seejärel lohistad sellesse käsud ja need muutuvad nuppudeks.

Rühm võib olla "tavaline". Siis on see viis väljade rühmitamiseks nii vertikaalselt kui ka horisontaalselt. Grupi nime saab atribuutides eemaldada.

Rühm võib olla paneel (leheküljed). Ülemine lisatud rühm on paneel ja seda tüüpi pesastatud rühmad on lehed. Väljad juba lohistatakse lehtedele.

Mittevajalikud vormielemendid eemaldatakse, kustutades loendist vormielemendid.
Välja asukoht vormil määratakse elementide loendis oleva järjekorra järgi (vertikaalne) või rühmade kaupa (horisontaalne). Laius ja kõrgus määratakse vormielemendi atribuutides.

Vormielemendi atribuute on oluliselt laiendatud ja need sisaldavad palju kasulikku – nii välimuse juhtimist (valiku- ja tühjendusnupud) kui ka vaikeväärtuste kontrollimist.

Vormi enda omadused, sealhulgas selle mõõtmed, määratakse sama nimega vormi juurelemendis Vorm.

Sündmuste töötlejad (vastus kasutaja toimingutele) on nüüd jagatud kahte tüüpi. Vanad - nagu varemgi, on need määratud vormi ja väljade atribuutides (näiteks OnChange ja OnOpening vormi). Uus - on muutunud käskudeks ja neid kasutatakse menüüüksuste ja nuppude jaoks.

Klyuev V.V.

http://prof1c.kklab.ru

TÖÖ LÜLITITEGA

Palun teil arvestada kõigi saiditeenuse kasutajatega - paigutan materjalid jaotisesse Algajad !!!

8.2 Hallatavad vormid

Hallatavate vormide käitumist uurides seisavad programmeerijad või liidese arendajad silmitsi küsimusega – kus on hallatavatel vormidel lülitid ja kuidas neid vormile lisada. Pisiasi, aga sellistele pisiasjadele kulub ebameeldivalt palju aega, kuigi selle aja võiks kuluda pigem algoritmi väljatöötamisele ja optimeerimisele, mitte vormi kujundamisele.

Loome probleemi mõistmiseks tühja konfiguratsiooni või valime mõne tüüpilise konfiguratsiooni.
Minge katalooge sisaldavasse rühma ja lisage katse jaoks uus kataloog. Tahan märkida, et konfiguratsioonil peab olema peamine käivitusrežiim - Hallatud rakendus.

Loome siis uue kataloogi ja lisame rekvisiidid "Props1" tüübiga "Boolean"

Nüüd minge vahekaardile Vormid ja lisage uus vorm.

Niisiis, hallatav vorm on loodud, nüüd töötame vormiga ja otsime sama, kus lüliti asub.
Siin on meie vorm ja sellel näeme oma rekvisiite, kuid märkeruudu kujul

Mida me siis valesti tegime?
Vaatame rekvisiitide omadustest, kas seal on lüliti juhtseadme vaatele.
Ja me näeme, et Switch Field pole siin! (Kus me valesti läksime?

Ilmselt sõltub juhtelemendi välimus vormil andmetüübist, pöördume tagasi vormi atribuutide, nimelt detailide vahekaardi juurde ja muudame oma atribuudi atribuudid - nimelt selle tüübi "Boolean" tüübiks "Number".

Nüüd läheme tagasi juhtelemendi atribuutide juurde ja kontrollime, kas selle atribuutidesse on lisatud juhtelemendi vaade - - - Ja urra, seal näeme vaadet - Vaheta väli.

Nüüd vaadake vormi, mida me näeme:

Näeme - 3 vaikeväärtust, 3 raadionuppu, kuid vajame neist kahte, minge uuesti rekvisiitide atribuutide juurde ja vaadake seal atribuute "Veergude arv"

2 jaoks – veergude arv – 2.

See võib väsinud programmeerijat pisut peatada)), kuid nüüd teame seda nii tema kui ka meie!

8.2 Levinud vormid.

Närvilisus lülititega tavalistes vormides.
Selliseid hetki on ja neid juhtub), kui peate muutma mõnda valmisvormi, milles on juba mõned lülitid, ja peate sellele vormile lisama veel ühe lüliti. Siin tekib mingi tüütus, mis võtab palju aega ja mitte aega koodi programmeerimiseks – vaid ajaraiskamine, et neid lüliteid kasutajale kuvada.

Nii et vaatame näidet. 1C SCP-s kviitungite korrigeerimiseks on selline dokument olemas - see on kindlasti olemas. Kunagi oli meil vaja sinna lisada lülitid, et joonistuksid raamatupidamise jaoks veidi teistsugused kirjed. Milles probleem, tunduks vajalik, siis on vaja, teeme ära. Kuid sellel vormil on juba 2 raadionuppu.

Nii näeb välja vorm, millesse peame kinnitama rohkem lüliteid


Vahekaardile Täpsemalt soovime paigutada veel kaks raadionuppu. Nii et esimene toiming on julgelt uue juhtelemendi lisamine kohta, kuhu me selle sisestame.

Näib, et kõik on lihtne. Loome uue atribuudi tüübiga "Number" ja sisestame 2 lülitit, millest üks saab atribuudile andmeid kirjutada ja teine ​​mitte.

Lisa uus juhtelement - Switch, tabelisse lülitite arvu ja kirjeldusega lisa Switch2, määra Switch1 grupi esimeseks ja vajuta ok. Loodud juhtelemendid asetame vormile. Värskendage andmebaasi konfiguratsiooni (F7) ja käivitage silumiseks.

Käivitamisel (uue dokumendi loomisel režiimis 1C:Enterprise) näeme, et ükskõik kui kõvasti me ka ei prooviks Switch2 klõpsata, ei juhtu midagi. Elemendid ei tööta nii nagu peaksid. Siin on üks omadus.
Naaske konfiguraatorisse. Valige menüüst Vorm -> Läbimise järjekorra määramine ... (oluline, et vorm oleks ekraanil avatud)


Selleks, et meie lülitid töötaksid, peate katkestama automaatse tellimuse ja nõustuma manuaalse tellimusega. Ja pange vormi nii, et meie lülitid läheksid - üksteise järel järjekorras.

OKEI. Värskendage konfiguratsiooni ja proovige käivitada.
Suurepärane. Kõik toimis.

Valikuline – video (heli puudub, nii et kõik on selge)


Platvorm 1C:Enterprise võimaldab hallatava vormi elemente programmiliselt lisada ja muuta. Vaatame, miks seda vaja võib minna.

Vormi programmiline muutmine võib olla vajalik mitmel juhul:

  • Tüüpiliste konfiguratsioonide lõpuleviimisel, et hõlbustada järgnevat värskendusprotseduuri. Sel juhul muudetakse ainult vormimoodulit. Moodulid on palju lihtsam värskendada kui vormi.
  • Mõne üldalgoritmi rakendamisel. Näiteks allsüsteemis "Objektide detailide redigeerimise keeld" luuakse kõikidele allsüsteemiga ühendatud objektidele programmiliselt nupp, mis võimaldab detailide redigeerimise võimalust.
  • Mõne konkreetse algoritmi rakendamisel. Näiteks luuakse nomenklatuuri teatmeteoses väljad täiendavate üksikasjade redigeerimiseks.

Hallatud vormis saate programmiliselt lisada, muuta ja eemaldada:

  • rekvisiidid;
  • kohalikud käsud;
  • elemendid.

Kõik need toimingud on võimalikud ainult serveris.

Programmilisel ümberkujundamisel on piirangud:

  • Kustutada saab ainult programmiliselt lisatud atribuute/käske/elemente. Konfiguraatoris loodud objekte ei saa programmiliselt kustutada.
  • Atribuuti ei saa peamiseks määrata.

Vormi käskude muutmine

Objekti käskude koostise haldamiseks Hallatud vorm omama kollektsiooni Meeskonnad

    Lisama (< ИмяКоманды >)

    Kogus ()

    Otsi (< ИмяКоманды >)

    Kustuta (< Команда >)

Käskude kogu on saadaval nii kliendis kui ka serveris. Kogu muutmine (meetodid Lisa () ja Eemalda () ) on võimalik ainult serveris. Saate otsida ja hankida elementide arvu (meetodid Find () ja Quantity () ) nii kliendis kui ka serveris.

Vormikäskudega töötamise näitena loome uue ChangeHistory käsu pealkirjaga "Muudatuste ajalugu ...", mis kutsub välja töötleja DisplayHistory() . Loomine toimub vormi avamisel.

&Serveris
Menetlus OnCreateOnServer (tõrge, standardtöötlus)
Meeskond = Käsud. Lisama( "Muutuste ajalugu");
Meeskond . Tegevus = ;
Meeskond . Pealkiri = "Muudatuste ajalugu...";
Lõppprotseduur
&AtClient
Menetlus Connected_DisplayHistory(käsk)
// käsutoimingud
Lõppprotseduur

Käsutöötleja peab asuma vormis ja sellel peab olema kompileerimisdirektiiv &AtClient .

Vormi üksikasjade muutmine

Vormi atribuutide koostise lugemist teostab funktsioon Hankige üksikasju(< Путь >), mis tagastab FormAttributes tüüpi massiivi. Funktsiooni parameeter määrab tee emaatribuudini (stringina). Kui parameeter jäetakse välja või määratakse tühi string, tagastatakse ülataseme mandaat.

Detailide muutmine toimub meetodil Redigeeri Nõuded(<Lisatud üksikasjad>, <Eemaldatavad detailid>) objektiks Hallatud vorm. Valikud Lisatud üksikasjad Ja Eemaldatavad detailid massiivid vorminõude tüüpi elementidega läbitakse.

Tähelepanu!

Detailide koostise muutmise protsess on üsna ressursimahukas. Tegelikult luuakse vorm uuesti. Sellega seoses tehakse tööd vormi üksikasjadega partiirežiimis.

Loome uue vormiatribuudi nimega Ostja:


AddedAttributes = Uus massiiv;
Lisatud üksikasjad. Lisa (uus vormi atribuut("Ostja", New TypeDescription ("DirectoryReference.Counterparties"), "Klient");

// Muutused atribuutide koostises
);

Vormi elementide muutmine

Objekti elementide koostise haldamiseks Hallatud vorm omama kollektsiooni Elemendid. Kogumisel on mitu meetodit:

    Sisestage (< Имя>, < ТипЭлемента>, < Родитель>, < Элемент >)

    Lisama (< Имя>, < ТипЭлемента>, < Родитель >)

    Kogus ()

    Otsi (< Имя >)

    Move(< Элемент>, < Родитель>, < МестоРасположения >)

    Kustuta (< Элемент >)

Elementide kollektsioon on saadaval nii kliendis kui ka serveris. Muuda kogu (sisesta meetodid () , Lisa () , Teisalda () ja Kustuta () ) on saadaval ainult serveris. Saate otsida ja hankida elementide arvu (meetodid Find () ja Quantity () ) nii kliendis kui ka serveris. Kollektsiooni elemendid võivad olla:

  • rühmavorm;
  • Tabelivormid;
  • FormField;
  • ButtonForms.

Saate programmiliselt määrata vormielementidele sündmuste töötlejad. Sel eesmärgil meetod SetAction(< ИмяСобытия>, < Действие >) .

Vaatame mõningaid levinumaid praktilisi näiteid käskude, atribuutide ja vormielementidega töötamise kohta.

Käsu ja sellega seotud nupu lisamine:

// Looge meeskond
Meeskond = Käsud. Lisama( "Muutuste ajalugu");
Meeskond . Tegevus = "Connected_DisplayHistory"; // Vorm peab sisaldama määratud nimega protseduuri
Meeskond . päis = "Muudatuste ajalugu...";
// Looge nupp ja seostage see käsuga
Element = esemed. Lisama( "Muutuste ajalugu", Type("Vorminupp" ));
Element.CommandName = "Muutuste ajalugu";

Atribuudi ja sellega seotud sisestusvälja lisamine:

// Lisatud üksikasjade kirjeldus
AddedAttributes = Uus massiiv;
Lisatud üksikasjad. Lisama(Uue vormi atribuut ("Ostja", uue tüübi kirjeldus ( "Viitelink. Osapooled"), "Klient" ));
// Atribuutide koostise muutmine
Redigeeri atribuute (lisatud atribuudid);
// Sisestusvälja loomine ja atribuudiga linkimine
Element = esemed. Add("Klient" , Type("Vormiväli" ));
Element . Vaade = ViewFormFields. Sisestusväli;
Element . PathToData= "Ostja" ;

Sündmuste töötleja määramine vormielemendile:

Kaubaostja. SetAction("Kui see muutub", "Plug-in_BuyerOnChange");

&AtClient
Menetlus Plugin_BuyerOnChange(Element )
// Sündmuste toimingud
Lõppprotseduur

Tähelepanu!

Protseduurid, mis installitakse meetodi abil koodist sündmuste töötlejatena SetAction(), on soovitatav kasutada eesliidet Connected_.

Tähelepanu!

Töötlemise saate alla laadida programmilise otsingu näidetega ning hallatava vormi üksikasjade, käskude ja elementide muutmise näidetega.

KELL

On neid, kes loevad seda uudist enne sind.
Tellige uusimate artiklite saamiseks.
Meil
Nimi
Perekonnanimi
Kuidas teile meeldiks Kellukest lugeda
Rämpsposti pole