Осы мақалада қарастырайық қадамдық нұсқаулар 1С 8.3-те басқарылатын қолданба режимінде сыртқы өңдеуді жасау үшін, тиісінше, біз басқарылатын пішіндерді қолданамыз. Ең бастысы, біз оны стандартты ішкі жүйелердің 2.0 және одан жаңа нұсқасының кітапханасында құрылған 1С конфигурацияларын «сырттай өңдеу» механизміне қосуды үйренеміз.
Тапсырма келесідей болады: «Элемент» каталогында топтық әрекетті орындайтын ең қарапайым сыртқы өңдеуді жасау, атап айтқанда, көрсетілген элементтер тобы үшін таңдалған ҚҚС ставкасының пайызын орнату.
Мұны істеу үшін біз дереу бағдарламада қажетті параметрлерді жасаймыз (біз 1С 8.3 конфигурациясын қарастырамыз: басқарылатын пішіндерде «Кәсіпорынның бухгалтерлік есеп 3.0»).
Бұл құсбелгіні қою бізге сыртқы өңдеуді пайдалану мүмкіндігін береді.
Мысал арқылы 1С 8.3 жүйесінде жаңа сыртқы өңдеуді құру
Енді конфигураторға көшейік. «Файл» мәзірінде «Жаңа...» таңдаңыз. Жасалатын файл түрін таңдауға арналған терезе ашылады. «Сыртқы өңдеу» таңдаңыз:
Жаңа сыртқы өңдеу терезесі ашылады. Оған бірден ат берейік. Ол өңдеуді дискіге сақтау кезінде ұсынылады:
Жаңа басқарылатын өңдеу пішінін қосамыз. Біз бұл өңдеудің бір түрі екенін және ол негізгі екенін көрсетеміз:
Пішінде бізде екі мәліметтер болады:
- Номенклатура тобы – «Номенклатура» анықтамалығына сілтеме;
- SelectVATRate – ҚҚС ставкасын аударуға сілтеме.
Біз мәліметтерді жоғарғы оң жақ терезедегі «Сипаттар» бағанында жасаймыз. Оларды тінтуірдің көмегімен жоғарғы сол жақ терезеге апарыңыз. Жаңа мәліметтер дереу төмендегі пішінде пайда болуы керек.
Мәліметтердің ретін «Жоғары» – «Төмен» көрсеткілері арқылы өзгертуге болады:
1С-те 267 бейне сабақты тегін алыңыз:
«Орнату» түймесін қосу ғана қалады. Басқарылатын пішіндерде пішінге жай ғана түймені қосу мүмкін емес. Оны пішін элементтерінің құрылымына қоссаңыз да, ол пішіннің өзінде көрінбейді. Түйме ол орындалатын пәрменмен байланысты болуы керек. «Пәрмендер» қойындысына өтіп, «ҚҚС ставкасын орнату» пәрменін қосыңыз. Пәрмен сипаттарында әрекетті жасаңыз. «Клиентте» пәрмен өңдеушісін таңдаңыз. Пәрменді пішінге оны пішін элементтері бар бөлімге жай сүйреп апару арқылы да қосуға болады.
Пішін модулінде аттас процедура құрылады. Онда біз сервердегі процедураны шақырамыз:
&OnClient
ҚҚС мөлшерлемесін орнату процедурасы (бұйрық)
SetVATRateOnServer();
Процедураның соңы
Сервердегі процедурада біз ҚҚС ставкасын орнатуға байланысты шағын сұраныс пен әрекеттерді жазамыз:
&Серверде
SetVATRateOnServer() процедурасы
Сұраныс = Жаңа сұраныс;
Сұраныс.Мәтін =
«ТАҢДАУ
| Номенклатура.Сілтеме
|FROM
| Анықтамалық.Номенклатура AS Номенклатура
|ҚАЙДА
| Номенклатура.ИЕРАРХИЯДАҒЫ сілтеме (&Номенклатура тобы)
| ЖӘНЕ Номенклатура ЕМЕС.MarkDeletion
| ЖӘНЕ Номенклатура ЕМЕС Бұл топ»;
Request.SetParameter("Элемент тобы", Элементтер тобы);
ResRequest = Request.Execute();
SelectRecordDet = ResRequest.Select();
SelectRecordDet.Next() циклі
Әрекет
SprNomObject.Write();
Ерекшелік
Report("Нысан жазу қатесі """ + SprNomObject + """!
|» + DescriptionError());
EndAttempt;
EndCycle;
Процедураның соңы
Біз «Пішін» қойындысына ораламыз, пішінге түймені қосып, оны пәрменмен байланыстырамыз:
Осылайша, біздің өңдеуіміз пайдалануға дайын. Оны шақыру үшін «1С Enterprise» режимінде «Файл» - «Ашу» мәзіріне өтіп, жасалған файлды таңдау керек.
Дегенмен, бұл режимде жұмыс өңдеуді түзету үшін ыңғайлы, бірақ пайдаланушы үшін толығымен қолайлы емес. Пайдаланушылар барлығының «қолында», яғни дерекқордың өзінде болуына дағдыланған.
«Қосымша есептер және өңдеу» бөлімі осыған арналған.
Бірақ сол жерге өңдеуімізді қосу үшін алдымен оған сипаттама беріп, бағдарламаға оның қасиеттерін айту керек.
«Сыртқы өңдеу туралы ақпарат» функциясының сипаттамасы
Мен осы функцияның мазмұнына мысал келтіремін. Ол экспортталатын және сәйкесінше өңдеу модулінде орналасуы керек:
Функция InformationOnExternalProcessing() экспорттау
DataForReg = Жаңа құрылым();
DataForReg.Insert("Аты", "ҚҚС мөлшерлемесін орнату");
DataForReg.Insert("Қауіпсіз режим", True);
DataForReg.Insert("Нұсқа", "нұсқа: 1.001");
DataForReg.Insert("Ақпарат", "Номенклатура анықтамалығында ҚҚС ставкасын белгілеу үшін өңдеу");
DataForReg.Insert("Көру", "Қосымша өңдеу");
CommandTable = NewValueTable;
TabZnCommands.Columns.Add("Идентификатор");
TabZnCommands.Columns.Add("Usage");
TabZnCommands.Columns.Add("Көру");
NewRow = TabZnCommands.Add();
NewString.Identifier = "OpenProcessing";
NewRow.Use = "OpenForm";
NewRow.View = "Ашық өңдеу";
DataForReg.Insert("Пәрмендер", TabZnCommands);
DataForReg қайтару;
EndFunction
Тіркеу деректері құрылымының қай өрістерін пайдалану қажет екенін жақсырақ түсіну үшін «Қосымша есептер және өңдеу» каталогының мәліметтерін қарастырайық:
Көріп отырғаныңыздай, бәрі өте қарапайым. Тек бір атрибут сәйкес келмейді: «Іске қосу опциясы» – «Қолдану». Егер біз жалпы модульдердің бірінің кодын қарасақ, біз осы өрістердің жиынтығы қалай пайда болатынын көреміз:
Құрылымның қай өрістері қажет екенін анықтау үшін алдымен оны сипаттай алмайсыз, жай бос өріс жасаңыз, содан кейін отладчикті пайдаланыңыз. Өңдеуді тіркеу кезінде модульдерді қадағалайтын болсаңыз, қай өрістер қажет, қайсысы қажет емес екені бірден анық болады.
1С 8.3 жүйесінде сыртқы өңдеуді қосу
Сыртқы өңдеумен жұмыс істеу үшін (және сыртқы басып шығару формасы да сыртқы өңдеу болып табылады) нысан бар Сыртқы өңдеу.
Екі ықтимал жағдайды қарастырайық:
Сыртқы өңдеу дискіде инфобазадан бөлек сақталады
1С жүйесінде сыртқы өңдеуді бағдарламалық түрде ашу үшін оның файлының мекенжайын білу қажет. Оны біле отырып, өңдеу пішінін ашуға немесе онымен әрі қарай әрекеттерді орындау үшін өңдеу нысанын алуға болады (мысалы, нысан модулінен экспорттық функцияларды шақыру).
Сыртқы өңдеу пішінін ашу
1С жүйесінде сыртқы өңдеу пішінін бағдарламалық түрде ашу үшін функцияны пайдаланыңыз GetForm()объект Сыртқы өңдеу.Функцияның бірнеше параметрлері бар. Негізгі өңдеу пішінінің қарапайым ашылуын қарастырыңыз:
Пішін = Сыртқы процестер. GetForm (Файл мекенжайы);
Пішін. Open();
Шағын сыртқы өңдеу пішінін ашу үшін оның атын көрсету керек.
//FileAddress айнымалысы сыртқы өңдеу файлына толық жолды қамтиды
Пішін = Сыртқы процестер. GetForm(файл мекенжайы, «Кіші форма») ;
Пішін. Open();
Объект ретінде сыртқы өңдеуді ашу
Объект ретінде сыртқы өңдеуді алу үшін функция қолданылады Жасау()объект Сыртқы өңдеу.
//FileAddress айнымалысы сыртқы өңдеу файлына толық жолды қамтиды
ProcessingObject = Сыртқы өңдеу. Жасау(ФайлАдрес) ;
Әдепкі бойынша, барлық өңдеу қауіпсіз режимде ашылады. Оны өшіру үшін келесі опцияларды пайдаланыңыз:
//FileAddress айнымалысы сыртқы өңдеу файлына толық жолды қамтиды
Инфобазада сақталған сыртқы өңдеу немесе басып шығару пішіні
Көптеген конфигурацияларда сыртқы басып шығарылған пішіндерді және өңдеуді тікелей инфобазада сақтауға болады. Ол үшін анықтамалық кітап пайдаланылады. Сыртқы өңдеу.Сыртқы өңдеудің өзі екілік деректер ретінде немесе атрибуттарда сақталады StorageExternalProcessing, немесе кестелік бөлімде Тиістілікреквизиттерде StorageExternalProcessing.
Сыртқы өңдеуді ашу үшін сізге қажет:
- Оны қоймадан алыңыз.
- Өңделген файлды дискіге сақтаңыз.
- Пішінді ашыңыз немесе өңдеу нысанын алыңыз.
- Егер біз сыртқы басып шығарылған пішінмен айналысатын болсақ, онда біз стандартты мәліметтерді толтыра аламыз Нысан сілтемесіжәне экспорттау функциясын шақырыңыз Мөр.
//RefLink айнымалысы ExternalProcessings каталог элементіне сілтемені қамтиды
DvData = RefLink. Сыртқы өңдеу қоймасы. Get();
FileAddress = GetTemporaryFileName() ;
DvData. Write(FileAddress) ;
ProcessingObject = Сыртқы өңдеу. Жасау(ФайлАдрес, Жалған);