Modulszerkezet

1C: Vállalat 8.2 /
A fejlesztők számára /
Kódexek

Tartalomjegyzék

1.1. A programmodulban (általános modulok, objektummodulok, objektumkezelő modulok, űrlapok, parancsok stb.) A következő esetekben a következő részek jelen lehetnek: sorozat :

Néhány rész csak bizonyos típusú modulokban jelenhet meg. Például az űrlapelemek eseménykezelői csak űrlapmodulokban jelenhetnek meg, és a változó leíró rész és az inicializálási szakasz nem definiálható nem globális általános modulokban, objektumkezelő modulokban, rekordkészletekben, állandó értékekben és munkamodulban.

A modulkódok szekciókba történő felosztásának követelménye a kód olvashatóságának növelését és a különböző szerzők által a kód módosításának bevezetésének egyszerűsítését szolgálja. fejlesztők ), mint a kollektív fejlesztésben, és az alkalmazás-megoldások finomításában konkrét implementációkhoz.

1.2. A közös modulok sablonja (üres másoláshoz):

////////////////////////////////////////////////// /////////////////////////////// / // ///////////// ////////////////////////////////////////////////// ///////////// // ///////////////////////////////////// /////////////////////////////////////////////////////////////// // // SZOFTVER INTERFACE // ////////////////////////////////////////////////// //////////////////////////// // SZOLGÁLTATÁSI ELJÁRÁSOK ÉS FUNKCIÓK

  • A "Program interfész" szekció más konfigurációs objektumok vagy más programok (például külső kapcsolatok) által történő felhasználásra szánt exporteljárásokat és funkciókat tartalmaz.
  • A "Segédprogramok és funkciók" szakasz tartalmazza a közös modul belső megvalósítását alkotó eljárásokat és funkciókat. Abban az esetben, ha a közös modul néhány része funkcionális az olyan alrendszerek, amelyek több metaadat-objektumot tartalmaznak, ebben a szakaszban a szolgáltatás exportálási eljárásait és funkcióit is tartalmazhatják, amelyeket csak az alrendszer más objektumaiból kell hívni.
    A tömeges közös modulok esetében ajánlott, hogy ezt a szakaszt a funkcionális attribútumnak megfelelően az alfejezetekre bontjuk. Az alszakaszokat kommentár írja elő, amelyet hasonló módon ajánlunk kiadni. Például:

////////////////////////////////////////////////// ////////////////////////////// // Információs bázis frissítés

1.3. Objektum modulok, kezelők, rekordkészletek, kezelések, jelentések stb.

////////////////////////////////////////////////// //////////////////////////////// // SZOFTVER INTERFACE ////////////// // ////////////////////////////////////////////////// ////////////// // ESEMÉNYEK FELHASZNÁLÓI //////////////////////////////// ///////////////////////////////////////////////// //// SZOLGÁLTATÁSI ELJÁRÁSOK ÉS FUNKCIÓK

  • A "Program Interface" szakasz a más konfigurációs modulokban vagy más programokban (például külső kapcsolaton keresztül) történő felhasználásra szánt exporteljárásokat és funkciókat tartalmazza. Ebben a szakaszban nem szükséges olyan exportfunkciókat és eljárásokat elhelyezni, amelyeket kizárólag az objektum moduljaiból, formáiból és parancsaiból hívnak. Például a dokumentumok táblázatos részének a kitöltési feldolgozásból az objektummodulban és a formanyomtatvány-kezelőben lévő dokumentumformátumról való elhelyezésére vonatkozó eljárások nem az objektum modul programfelülete, mivel csak a modulban és ugyanazon objektum formáiban hívják. El kell helyezni őket a szakaszban "Segédprogramok és funkciók."
  • Az "Eseménykezelők" szakasz az objektum modul eseménykezelőit tartalmazza ( Prizavisi , PRO , stb.)
  • A "Segédprogramok és funkciók" részben ugyanaz a cél, mint az általános modulokban.

1.4. Szekciómodulok tervezési sablonja:

////////////////////////////////////////////////// ///////////////////////// / // // A FORMÁZÓ ESEMÉNYEK KEZELÉSE ///////////// ////////////////////////////////////////////////// / / / / / / / / / / /// / / / // // A FORMÁVAL KAPCSOLATOS ELEMEK VÉGREHAJTÁSAI //////////////////////////// ////////////////////////////////////////////////// // // ESEMÉNYEK FELHASZNÁLÓI FORMÁK TÁBLÁZATOK ///////////////////////////////////////////////////////////////////////////////////////////////////////////////// / /////////////////////////////////// / // A FORMÁK CSOPORTJAI / /////// ////////////////////////////////////////////////// /////////////////////// // SZOLGÁLTATÁSI ELJÁRÁSOK ÉS FUNKCIÓK

  • Az „Űrlap eseménykezelők” szakasz tartalmazza az űrlap eseménykezelői eljárásait: A kiszolgáló létrehozása , megnyitása stb.
  • A "Form elemkezelők" szakasz az űrlap fő részében található elemek feldolgozási eljárásait tartalmazza (minden, ami nem kapcsolódik az űrlapon lévő táblázatokhoz).
  • Az „űrlaptábla eseménykezelői <űrlaptábla neve>” c. Szakaszokban az űrlaptáblázat és az asztalelemek kezelői számára eljárásokat talál. A kezelői eljárások esetében minden táblázatnak saját partícióval kell rendelkeznie.
  • A „Form parancskezelők” szakasz az űrlapparancskezelők eljárásait tartalmazza (amelyek nevét az űrlapparancsok Művelet tulajdonságai tartalmazzák).
  • A "Segédprogramok és funkciók" részben ugyanaz a cél, mint az általános modulokban.

Lásd még: Űrlapmodulok létrehozásának szabályai

2. Általános követelmények a szoftver modulok szakaszaira.

2.1. A modulfejléc egy megjegyzést tartalmaz a modul elején. A modulfejléc rövid leírást és alkalmazási feltételeket tartalmaz.
Például:

////////////////////////////////////////////////// //////////////////////////// // // Általános célú kliens eljárások és funkciók: // - formákban lévő listákkal való együttműködéshez; // - a napló használatával; // - feldolgozási műveletekhez használó folyamatban van szerkesztés // többsoros szöveg , például megjegyzések dokumentumokban; // - egyéb. // /////////////////////////////////////////////////////////////////////////////////////////////// / ////////////////////////////////

Az űrlapmodulok esetében ajánlott a formázási paraméterek leírása a fejlécben.

2.2. Változó leírási szakasz . A változók nevei az általános szerint vannak hozzárendelve változó nevének szabályai , és használatukat a cikk ismerteti. Globális változók használata a szoftver modulokban .

Minden modulváltozót meg kell adni ahhoz, hogy megértsék a céljukat. A kommentár ajánlott ugyanabban a sorban elhelyezni, ahol a változót bejelentették.
például:

Pem CurrencyAccounting Export; // Pénznem, amelyben a számvitel megmarad Perem Address Támogatja az exportot; // E-mail cím, ahol hibaüzeneteket küldünk

2.3. Szoftver interfész A programozási felületet alkotó export eljárások és funkciók közvetlenül a változók leírása után helyezkednek el. Ezeket az eljárásokat és funkciókat más konfigurációs objektumok vagy más programok (pl. Külső kapcsolat) használhatják, ezért ezeket a modulban „látható helyen” kell elhelyezni.

Lásd még: Az eljárások és funkciók leírása.

2.4.1 Eseménykezelők, parancsok és űrlapelemek formázása . A szervizeljárások és az űrlapmodul funkciói előtt az űrlap eseménykezelői találhatók, valamint a parancsok és az űrlapelemek eseménykezelői.

Módszertani ajánlás (hasznos tanács)

Javasoljuk, hogy az egyik űrlapelem kezelőit egymásba helyezzék, és a formanyomtató tulajdonságpanelében tartsák be a következő sorrendet. a konfigurátorban .

2.4.2. Minden eseménynek saját kezelői eljárással kell rendelkeznie. Ha ugyanazokat a műveleteket kell végrehajtani az esemény különböző elemeiben bekövetkező események esetén:

  • hozzon létre egy külön eljárást (funkciót), amely elvégzi a szükséges intézkedéseket

  • minden egyes űrlapelemhez hozzon létre egy külön kezelőt az alapértelmezett névvel

  • minden egyes kezelőtől hívja a szükséges eljárást (funkciót).

Például rossz:

& OnClient eljárás az alkalmazás végrehajtásához (elem) kiválasztási paraméterek = Új megfelelőség (); Beállítások kiválasztása: Beillesztés ("Szerző szerint", Szerző szerint); Beállítások kiválasztása: Beillesztés ("Executive", Executive); Lista kiválasztása (lista, kiválasztási beállítások); KonetsProtsedury & Az Ügyfél eljárása a szerzők megváltoztatásával (elem) az ügyvezetőhöz változtatással (meghatározatlan); KonetsProtsedury

helyesen:

& OnClient eljárás az indikátor (elem) beállításához (); Végrehajtási eljárás & Ügyfél eljárás szerint Szerző módosítása (Elem) Telepítés kiválasztása (); EndProcedures és OnServer eljárás SetSelection () kiválasztási paraméterek = New Compliance (Új megfelelés) (); Beállítások kiválasztása: Beillesztés ("Szerző szerint", Szerző szerint); Beállítások kiválasztása: Beillesztés ("Executive", Executive); Lista kiválasztása (lista, kiválasztási beállítások); KonetsProtsedury

Ez a követelmény annak a ténynek köszönhető, hogy az eseménykezelői eljárások logikája nem használható a modulkódban, hanem közvetlenül a platform által hívják. E két forgatókönyv egy eljárásban történő összekeverése szükségtelenül bonyolítja annak logikáját, és csökkenti annak robusztusságát (egyetlen meghatározott hívási forgatókönyv helyett - a platformról történt esemény esetén - az eljárási kódnak számítania kell a közvetlen közvetlen hívásokra a kódból).

2.5. Az objektummodulok és az objektumkezelő eseménykezelői az export után kerülnek elhelyezésre, de a segédprogramok és a modul funkciók előtt.

Módszertani ajánlás (hasznos tanács)

A beágyazott nyelv leírásában ajánlatos a kezelőket a következő sorrendben tartani.

2.6. Az eseménykezelők mellett a modulban a segédprogramok és modul modulok , amelyek nem eseménykezelők, hanem egy modul belső megvalósítását képezik.

Abban az esetben, ha egy közös modul egy olyan funkcionális alrendszer részét képezi, amely több metaadat objektumot tartalmaz, ez a rész tartalmazhatja a szolgáltatás exportálási eljárásait és funkcióit is, amelyeket csak az alrendszer más objektumaiból hívnak.

A munka természetével vagy logikájával kapcsolatos egymással kapcsolatos eljárásokat és funkciókat együttesen javasoljuk. Nem javasoljuk, hogy a modul eljárásait és funkcióit kontextus nélkül kifejezetten szerverre, ügyfélre és funkciókra csoportosítsuk, mivel az ilyen „technológiai” megrendelés megnehezíti a modul logikájának megértését, és a fejlesztő figyelmét a megvalósítás részletei felé irányítja.

2.7. Az inicializálási szakasz olyan utasításokat tartalmaz, amelyek inicializálják a modul vagy az objektum (űrlap) változóit. Például:

Támogatás címe = "[email protected]"; // Cím, amellyel kapcsolatba léphet a technikai támogatással Kezdeményezés kezdeményezése ();

Egyéb témakörök:
frissítési adatbázis . eseménykezelők . szoftver interfész . rakodók . eljárások . sablon . header . az eljárás befejezése . funkciók . felület . leírás . vágólap . másolni . rész . csere . alak . egy objektum . az elemet . konfigurálása . konfiguráció . dokumentum

A szakaszból származó anyagok: 1C: Vállalat 8.2 / Fejlesztők / Megállapodások kód írása közben

Egyéb témakörök:

Az eljárások és funkciók leírása

A kiválasztott objektum méretezésének jellemzői

Konfigurációk átvitele az 1C: Enterprise 8.2 platformon az 1C: Enterprise 8.3 platformra a 8.2-es verzióval való kompatibilitási mód nélkül

Az eljárások és funkciók neve

Kiváltságos mód használata


Megtaláljuk: az 1c modul struktúrája , a szervizeljárások és funkciók , a modul, a menedzser modul 1c 8 2 eljárás, hogyan hívhatunk egy eljárást egy másik 1c modulból, angol modul fejlécből, 1c egy feldolgozó formátumú hívás modul eljárásból, 1c 8 2 hívja a menedzser modul eljárását, 1


1C: Vállalat 8