Цялата конфигурация в 1C се състои от модули
Програмните модули в конфигурациятане са независими програми, тъй като са част от цялата конфигурация на задачата.Програмният модул е „контейнер“ за поставяне на текстове на процедури и функции, извиквани от системата по време на изпълнение в определени моменти от време.
Всеки отделен модул се възприема от системата като цяло, така че всички процедури и функции на програмния модул се изпълняват в един и същи контекст.
Видове програмни модули
1.Глобален модул - намира се в основния раздел за конфигурация; стартира в началото на изпълнението на цялата задача (в режим 1 C:Enterprise); дефинира глобалния контекст за цялата конфигурация.
2.Модул за форма на елемент от директория - поставен в каталога на обекта на метаданни; се стартира при отваряне на формата на референтния елемент. В контекста на този модул на формуляра са налични атрибутите (полетата) на избрания елемент от директорията и атрибутите (елементите) на формуляра.
3.Модул за форма на документ - съдържа се във формата на обекта с метаданни на документа; задейства се при отваряне на формуляр на документ. В контекста на неговия модул са достъпни атрибутите (полетата) на активния документ и атрибутите (елементите) на неговата форма.
4.Модул за документи - поставя се директно в обекта с метаданни на документа; се стартира при извършване на определени действия с документа (осчетоводяване, изтриване на осчетоводяването, отмяна на осчетоводяването). В контекста на модула за документи са достъпни атрибутите (полетата) на активния документ.
5.Модул за регистрационна форма на документи - намира се в обекта с метаданни на журнала; задейства се при отваряне на формуляра за дневник на документи. В контекста на неговия модул са достъпни избраният документ в дневника и подробности за формуляра на дневника.
6.Модул формуляр за отчет - поставени в обекта с метаданни на отчета; се стартира при отваряне на екранния формуляр за отчет. В контекста на модула за отчет са достъпни детайлите (елементите) на формата за отчет.
7.Модул за формуляри за обработка - съдържа се в обекта метаданни за обработка; се задейства при отваряне на екранната форма на този обект. В контекста на модула на обекта Обработка са налични атрибути (елементи) на неговата екранна форма.
14
Програмните модули в конфигурацията не са независими програми, тъй като са част от цялата конфигурация на задачата.Програмният модул е „контейнер“ за поставяне на текстове на процедури и функции, извиквани от системата по време на изпълнение в определени моменти от време.
Всеки отделен модул се възприема от системата като цяло, поради което всички процедури и функции на програмния модул се изпълняват в същияконтекст.
Контекстът на изпълнение на модул е връзката между даден програмен модул и цялата конфигурация.Има два типа контексти за изпълнение на модули:
- контекст на глобалната задача;
- локалния контекст на изпълнение на конкретен модул.
Глобалният контекст на задачатае достъпен за всички програмни модули и дефинира общата езикова среда за конфигурация.
Стойностите на системните атрибути участват във формирането на глобалния контекст на задачата; системни процедури и функции; стойности, които са зададени в конфигуратора под формата на константи, изброявания, регистри; променливи, процедури и функции на глобалния модул, деклариран с ключовата дума Export.
Целта на локалния контекст на модула еда позволи на разработчика да контролира „подробностите“ на цялостната задача.
Формирането на локалния контекст на модула се осъществява в специфиченобектът на метаданни, който съдържа тази програмна единица. Локалният контекст е видим само за конкретен програмен модул и определя набора от методи, които са налични в този конкретен контекст (т.е. някои методи са предоставени за модула на формуляра на речника, други за модула на документа, трети методи за модула на формуляра на отчета и т.н.).
Структура на модула
Софтуерният модул се състои от следните части:
- раздел за деклариране на променливи;
- раздел процедури и функции;
Секция Процедури и функции - поставя се от първия оператор Процедура или Функция до първия изпълним оператор след процедурите (и функциите).
Програмен раздел - започва от първия изпълним оператор след последната процедура (функция) до края на модула. Тук се намират само изпълними изрази.
// Процедури и функции
15
Глобалният системен модул е проектиран да съхранява често използвани процедури и функции, които се извикват от различни части на системата. Глобалният модулен код се инициализира и изпълнява при стартиране на системата. За да може дадена процедура или функция да стане глобална (т.е. да може да бъде извикана от всяка точка на системата), тя трябва да бъде дефинирана с ключовата дума "Export":
Функция mainCalculationAmortizationFA(FA, CalculationDate, CalculateDataAccording to Tax Accounting = 1) Експорт
Глобалният модул е достъпен в "Конфигуратор" в прозореца "Конфигурация". За да го отворите, изберете елемента "Глобален модул" от менюто "Действия".
Процедурата е отделна част от модул, предназначена за изпълнение на специфична задача и която може да бъде извикана от всяко място в модула.
Функцията, за разлика от процедурата, трябва да се върнезначение.
Контекстът на изпълнение е съвкупността от всички променливи, обекти, процедури, функции и методи, налични по време на изпълнение.
Контекстът на всяка процедура или функция се състои от локален контекст и глобален контекст.
Глобалният контекст е достъпният контекст за всички процедури и функции на системата. Той се формира от набор от глобални променливи, процедури и функции, както и редица обекти и методи за конфигуриране (например „Изброяване“, „Сметкопланове“, „Разделител на редове“, „Начало на BI период“ и др.)
Локален контекст е набор от променливи, обекти, процедури, функции и методи, налични в допълнение към глобалния контекст в този модул за всички процедури и функции на този модул.
Всяка процедура или функция на глобален модул може да стане част от глобалния контекст, ако съдържа ключовата дума "Експортиране" в дефиницията си. Ако тази дума е пропусната, тогава процедурата на глобалния модул ще бъде само част от локалния контекст на глобалния модул и ще бъде достъпна само за процедурите и функциите на глобалния модул.
Локалният контекст на всеки модул може да бъде предаден на всяка процедура или функция с помощта на ключовата дума "Контекст".
Процедура chFillName (Продължение) Експортиране
Cont.Name = "Име от глобалния модул";
// Модул на формата на елемент от някаква справочна книга
// В диалоговия прозорец на директорията има поле "Име".
// Нека извикаме процедурата на глобалния модул
// chFillName, предавайки му контекста
// нашият модул. Използване на тази контекстна процедура
// ще има достъп до полето "Име".
Операция е набор от транзакции, които се отнасят за една и съща дата иобединени от нещо общо, което се отразява в съдържанието на операцията. Операциите могат да се създават както ръчно (включително с помощта на стандартни операции), така и с помощта на документи.
Стандартна транзакция е шаблон за ръчна транзакция, който определя състава на транзакциите за ръчна транзакция и правилата за попълване на подробности за транзакцията и транзакциите, включени в нея. Типична операция е дефинирана в режим на стартиране на 1C:Enterprise, т.е. - в базата данни. Всъщност типичната операция не е конфигурационен обект, а е обект с данни.
Условия, при които е препоръчително да се използват стандартни операции:
* Има често или просто редовно повтаряща се бизнес транзакция. броят на осчетоводяванията в типична операция е ограничен, бизнес транзакцията трябва да бъде описана със строго определен брой осчетоводявания
* Обикновено осчетоводяванията на типична транзакция зависят едно от друго по някакъв начин.
* При отразяване на стопанска операция в счетоводството не се изисква извеждане на печатна форма. Бизнес операцията се записва изключително чрез осчетоводявания.