Mooduli struktuur

1C: Enterprise 8.2 /
Arendajatele /
Koodikonventsioonid

Sisukord

1.1. Programmimoodulis (üldmoodulid, objektide moodulid, objektihaldurite moodulid, vormide, käskude jne moodulid) üldjuhul võivad järgnevad lõigud olla järgmised: järjestused :

Mõned sektsioonid võivad esineda ainult teatud tüüpi moodulites. Näiteks võivad vormielementide sündmuskäitlejad esineda ainult vormimoodulites ning muutujate kirjelduse sektsiooni ja initsialiseerimise sektsiooni ei saa määratleda mitte-globaalsetes üldmoodulites, objektihalduri moodulites, salvestuskomplektides, konstantsetes väärtustes ja seansi moodulites.

Nõue mooduli koodide jagamiseks jagudeks on mõeldud koodide loetavuse suurendamiseks ja koodide muudatuste lihtsustamiseks erinevate autorite poolt ( arendajad ) nagu kollektiivses arengus ja konkreetsete rakenduste rakenduste lahenduste täiustamisel.

1.2. Ühiste moodulite sektsioon (kopeerimiseks tühi):

///////////////////////////////////////////////////////////////////////////////////////-13 /////////////////////////////// // // ///////////// ///////////////////////////////////////////////////////////////////////////////////////-13 ////////////////////////////////////////////////// /////////////////////////////////////////// // // TARKVARA INTERFACE // ///////////////////////////////////////////////////////////////////////////////////////-13 //////////////////////////// // TEENUSTE MENETLUSED JA FUNKTSIOONID

  • Jaotis "Programmi liides" sisaldab ekspordiprotseduure ja funktsioone, mis on mõeldud kasutamiseks muudes konfiguratsiooniobjektides või muudes programmides (näiteks välise ühenduse kaudu).
  • Jaotis "Utility Procedures and Functions" sisaldab protseduure ja funktsioone, mis moodustavad ühise mooduli sisemise rakendamise. Juhul, kui ühine moodul on osa mõnest funktsionaalne allsüsteemid, mis sisaldavad mitut metaandmeobjekti, võivad selles osas sisaldada ka teenuste ekspordi protseduure ja funktsioone, mis on mõeldud ainult selle allsüsteemi teistest objektidest.
    Ühismoodulite puhul on soovitav jagada see osa allsektsioonidesse vastavalt funktsionaalsele atribuudile. Alamrubriikidele eelneb kommentaar, mida soovitatakse väljastada sarnasel viisil. Näiteks:

///////////////////////////////////////////////////////////////////////////////////////-13 ////////////////////////////// // Teabe baasi uuendamine

1.3. Objektimoodulite, haldurite, salvestuskomplektide, töötluste, aruannete jms kujunduse mall:

///////////////////////////////////////////////////////////////////////////////////////-13 //////////////////////////////// // TARKVARA INTERFACE ////////////// // ///////////////////////////////////////////////////////////////////////////////////////-13 ////////////// // SÜNDMUSTE TÖÖTAJAD //////////////////////////////// ///////////////////////////////// //// TEENUSTE MENETLUSED JA FUNKTSIOONID

  • Jaotis "Programmi liides" sisaldab ekspordiprotseduure ja funktsioone, mis on mõeldud kasutamiseks muudes konfiguratsioonimoodulites või muudes programmides (näiteks välise ühenduse kaudu). Sellesse sektsiooni ei ole vaja eksportida funktsioone ja protseduure, mis on mõeldud ainult objekti enda moodulitest, vormidest ja käskudest. Näiteks dokumendi tabeliosa kogumise protseduurid, mida kutsutakse täitmisprotsessist objektimoodulis ja vormi käsu käitleja dokumendivormis, ei ole objekti mooduli programmiliides, kuna neid kutsutakse ainult moodulis ja sama objekti vormidest. Nad tuleks paigutada jaotises "Utiliidiprotseduurid ja -funktsioonid."
  • Jaotises "Sündmuste käitlejad" on objekti mooduli sündmuste käitlejad ( Prizavisi , PRO jne)
  • Jaosel "Kasulikud protseduurid ja funktsioonid" on sama eesmärk nagu üldmoodulites.

1.4. Vormimoodulite jaotise kujunduse mall:

///////////////////////////////////////////////////////////////////////////////////////-13 /////////////////////////// // VORMI ÜLEVAADE KÄSITLEV ///////////// ///////////////////////////////////////////////////////////////////////////////////////-13 /////////////// // VORMI HÜVITISTE KÄSITLEVAD VORMID //////////////////////////// ///////////////////////////////////////////////////////////////////////////////////////-13 // // SÜNDMUSTE TÖÖTAJAD VORMID TABELID ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// /////////////////////////////////// / // VORMI TEEMADE TÖÖTLEJAD /////// ///////////////////////////////////////////////////////////////////////////////////////-13 /////////////////////// // TEENUSTE MENETLUSED JA FUNKTSIOONID

  • Jaotises „Vormide sündmuste käitlejad” on vormide sündmuste käitleja protseduurid: serveri loomine , avamine jne.
  • Jaotis "Vormielemendi käitlejad" sisaldab vormi põhiosas asuvate elementide töötlemise protseduure (kõik, mis ei ole seotud vormil olevate tabelitega).
  • Jaotistes “Vormitabeli sündmuste käitlejad <vormitabeli nimi>” on vormi tabeli ja tabeli elementide käitlejatele protseduurid. Käitlejaprotseduuride puhul peab igal tabelil olema oma partitsioon.
  • Jaotises „Vormide käskude töötlejad” on vormi käskude käitlejate protseduurid (mille nimed on määratud vormi käskude tegevusvõimaluses).
  • Jaosel "Kasulikud protseduurid ja funktsioonid" on sama eesmärk nagu üldmoodulites.

Vaadake ka: Vormimoodulite loomise reeglid

2. Tarkvaramoodulite osade üldnõuded.

2.1. Mooduli päis on kommentaar mooduli alguses. Mooduli pealkiri annab lühikese kirjelduse ja rakendustingimused.
Näiteks:

///////////////////////////////////////////////////////////////////////////////////////-13 //////////////////////////// // // Üldotstarbelised kliendi protseduurid ja funktsioonid: // - vormide nimekirjadega töötamiseks; // - töötada logiga; // - töötlemiseks kasutaja käimas redigeerimine // mitmerealine teksti , näiteks kommentaarid dokumentides; // - muu. // ///////////////////////////////////////////////////////////////////////////////////////////-13 ////////////////////////////////

Vormimoodulite puhul on soovitatav vormi parameetrite kirjeldus panna päisesse.

2.2. Muutuva kirjelduse osa . Muutuvad nimed on määratud vastavalt üldisele muutuja nime reeglid ja nende kasutamist on kirjeldatud artiklis. Kasutades globaalseid muutujaid tarkvaramoodulites .

Kõigile moodulite muutujaile tuleks anda piisav kommentaar nende eesmärgi mõistmiseks. Kommentaari soovitatakse paigutada samasse rida, kus muutuja on deklareeritud.
Näide:

Pem CurrencyAccounting Export; // Valuuta, milles raamatupidamist hoitakse. Aadress toetab eksportimist; // E-posti aadress, kuhu saadetakse veateated

2.3. Tarkvara kasutajaliides Ekspordiprotseduurid ja funktsioonid, mis moodustavad selle programmeerimisliidese, asetatakse vahetult pärast muutujate kirjeldust. Sellised protseduurid ja funktsioonid on mõeldud kasutamiseks muudes konfiguratsiooniobjektides või muudes programmides (näiteks välise ühenduse kaudu), mistõttu need peaksid paiknema moodulis „nähtavas kohas”.

Vaata ka: Protseduuride ja funktsioonide kirjeldus.

2.4.1 Sündmusjuhtide, käskude ja vormielementide vormimine . Enne hooldusprotseduure ja vormi mooduli funktsioone, asuvad vormi sündmuste käitlejad, samuti käskude ja vormielementide sündmuste käitlejad.

Metoodiline soovitus (kasulikud nõuanded)

Soovitatav on paigutada ühe vormielemendi käitlejad koos, järgides vormi redaktori omaduste paneelis nende järjekorda. konfiguratsiooniseadmes .

2.4.2. Igal üritusel peab olema oma käitlejaprotseduur. Kui samu toiminguid tuleb teha juhul, kui sündmused esinevad vormi erinevates elementides:

  • luua eraldi toiming (funktsioon), mis täidab vajalikud toimingud

  • looge iga vormielemendi jaoks eraldi nimi, millel on vaikenimi

  • helistage igalt käitlejalt nõutav protseduur (funktsioon).

Näiteks vale:

Rakenduse (element) valiku parameetrite teostamise & OnClient kord = uus vastavus (); Valikute valik: Kleebi ("Autoril", Autor); Valikute valimine Paste ("Executive", kommentaar); Set List Selection (loend, valikuvõimalused); Endprotsess & Kliendi protseduur autoriseerimisele muutmisega (element), muutes (määratlemata); Endprotsess

õige:

& OnClient'i protseduur, et täita indikaator (element) SetSelection (); Lõppprotseduur ja kliendi protseduur Autorite vahetamine (element) Paigalda valik (); EndProcedures & OnServer Protseduur SetSelection () valiku parameetrid = New Compliance (Uus vastavus) (); Valikute valik: Kleebi ("Autoril", Autor); Valikute valimine Paste ("Executive", kommentaar); Set List Selection (loend, valikuvõimalused); Endprotsess

See nõue tuleneb asjaolust, et sündmuste käitleja protseduuride loogika ei ole mõeldud mooduli koodis kasutamiseks, vaid platvormi poolt otse kutsutud. Nende kahe stsenaariumi segamine ühes protseduuris raskendab asjatult selle loogikat ja vähendab selle usaldusväärsust (ühe kavandatud kõne stsenaariumi asemel - platvormilt sündmuse korral - protseduurikood peab arvestama teiste otseste kõnedega koodist).

2.5. Objekti moodulite ja objektihalduri sündmuste käitlejad paigutatakse pärast eksporti, kuid enne kasuliku protseduuri ja mooduli funktsioone.

Metoodiline soovitus (kasulikud nõuanded)

Manustatud keele kirjelduses on soovitatav paigutada käitlejad, järgides nende järjekorda.

2.6. Utiliidiprotseduurid ja mooduli funktsioonid, mis ei ole sündmuste käitlejad, vaid mooduli sisemine rakendamine, paigutatakse mooduli kõrval sündmuskäitlejate kõrvale.

Juhul, kui ühine moodul on osa funktsionaalsest allsüsteemist, mis sisaldab mitut metaandmeobjekti, võib see osa sisaldada ka teenuste ekspordi protseduure ja funktsioone, mis on mõeldud ainult selle allsüsteemi teistest objektidest.

Tööde laadi või loogika järgi üksteisega seotud protseduure ja funktsioone soovitatakse paigutada kokku. Mooduli protseduure ja funktsioone ei ole ilma kontekstita selgesõnaliselt rühmitatud serverisse, klienti ja funktsioone, sest selline „tehnoloogiline” tellimine raskendab mooduli loogika mõistmist, suunates arendaja tähelepanu selle rakendamise üksikasjadele.

2.7. Initsialiseerimise sektsioon sisaldab avaldusi, mis vormindavad mooduli või objekti (vormi) muutujad. Näiteks:

Toetuse aadress = "v8@1c.ru"; // Aadress, millega pöörduda tehnilise toe poole.

Teised teema materjalid:
värskenduste andmebaas , sündmuste käitlejad , tarkvara liides , käitlejad , menetlused , muster , pealkiri , menetluse lõppemist , funktsioone , liides , kirjeldus , lõikelauale , kopeerida , lõik , vahetada , vormid , objekt , element , seadistamine , konfiguratsioonid , dokument

Jaotise materjalid: 1C: Enterprise 8.2 / arendajad / kokkulepped koodi kirjutamisel

Teised teema materjalid:

Menetluste ja funktsioonide kirjeldus

Valitud objekti skaleerimise omadused

Konfiguratsioonide ülekandmine 1C: Enterprise 8.2 platvormile platvormile 1C: Enterprise 8.3 ilma ühilduvusrežiimita versiooniga 8.2

Menetluste ja funktsioonide nimed

Eelisrežiimi kasutamine


Leiame: mooduli 1c struktuur , teenindusprotseduurid ja -funktsioonid , moodul, juhtmooduli kõne protseduur 1c 8 2, kuidas kutsuda protseduuri teisest moodulist 1c, inglise mooduli päisest, 1c töötlusvormi kõne mooduliprotseduurist, 1c 8 2 helistada protseduurile juhtmoodulilt, 1


1C: Enterprise 8