Pozakontekstnyy vyklik მეთოდები ობიექტის (ხმის) დამუშავების სერტიფიცირებული ფორმით. კონტექსტური დაწკაპუნებით ობიექტის მეთოდების (ხმის) დამუშავების კერატიული ფორმით 1s როგორ გადავიდეთ ობიექტის მოდულის პროცედურაზე

ავკ 693 22.12.13 22:44 ინფექცია თემით

() დავამთავროთ თავით. მაიაჩნია და ნისენიტნიცა - ეს არის ემოციების გამოხატვის მცდელობა. რისი შოვნა შესაძლებელია ეპისტოლარული ჟანრის გარდა? ეს ასევე არ არის გონივრული და არა მხოლოდ მის დალუქვას. დედა მისასალმებელია იმ ხალხის სწორი მხრიდან, ვისაც ესმის. იაკშომ ვიბახი დაახურა.

ანალოგია უბრალოდ დაუსაბუთებელია, ORP-ის ბუნების გამო. OOP არის პროცედურული, მოდულური პროგრამირების არსი. სულ ერთია, რასაც მამა-შვილი ამბობენ, რა დროსაც მამის კონდახი დევს.

მნიშვნელოვანია ამ დადასტურებების დაცვა. ალე ადგილისთვის, ეს პატივისცემა სუსტად არის დაკავშირებული იმ ადგილს, რასაც სტატისტიკაში კომენტირებულია.

მოდით აღვნიშნოთ კონდახი სტატისტიკაზე. იქ მეთოდი შეიცავს კომპილაციის დირექტივას და საკვანძო სიტყვა „ექსპორტი“ აშკარად გამოტოვებულია.

ის, რომ თქვენ არასდროს გქონიათ რაიმეზე მუშაობის შესაძლებლობა, ჯერ არ არის აშკარა, რომ ეს არ არის აქტუალური და რომ არ გსურთ სხვების შეწუხება.

Ისე. მე არ მქონია შესაძლებლობა შეცვალოს გარე მოდულები გარე დამუშავებისთვის. მოხდა ისე, რომ სხვადასხვა ვერსია მუშაობდა სხვადასხვა კონფიგურაციით.

გარდა ამისა, stinks ხშირად გამოიყენება ყოველდღიური ინტერფეისის ამოცანების გასაუმჯობესებლად:

ასე რომ, ეს არის ის, რაც მთავარია. მე არ ვწინასწარმეტყველებ მის სიკვდილს (მთლიანად კარგი და გადამოწმებული გადაწყვეტილება), მაგრამ ტენდენციები ისეთია, რომ 1C გააგრძელებს გადაადგილებას გამოთვლების განყოფილებების მიღმა, მისი გარდაცვალების ადგილის მკაფიო ხილული კოდით. აქ ეს იშვიათად ხდება (როგორც ეს ხდება წარსულში): "ყველაფერი კლიენტზეა და შემდეგ ჩვენ გავარკვევთ" ან "მოდით, სერვერი გავუშვათ რამდენჯერმე - თუნდაც გიგაბაიტი გვქონდეს."

ვფიქრობ, კარგი იქნება „ზაგალნის მოდულის“ კონცეფციის თანდაყოლილი აბსტრაქციის გაფართოება და მისი კონფიგურაციაში დანერგვა.
ახალი ტიპის ერთეულები, ვთქვათ, „მოდული“, მსგავსი მოდულის ობიექტების MS VBA-ში.
"ZagalniModuli" დამრგვალდება "VikonuvaniyModul" ობიექტების არჩევანით, რომლებიც მდებარეობს დაახლოებით
ასევე მსგავსია, რომ ობიექტი არის "ფორმა" და უბრალოდ "ფორმა".

დამწყებთათვის, 1C-ში ცუდი იქნება მოდულების სახელების და მეტამონაცემების ფართობის დანერგვა და არა მხოლოდ ასე (ციტატა სინტაქსის სახელმძღვანელოდან); "უცნობი - იმიტომ, რომ ნაწარმოები არ არის გადატანილი ნასწავლი ენიდან"

დასაშვებია, რომ სტანციების რაოდენობა, რომლებიც ფორმით არის გაფორმებული, იყოს დიდი და დასაშვებია, რომ
მანკიერი ფორმით, კონკრეტული მიზნის განხორციელების შესაძლებლობა მცირეა;

კლასიკურ ვებ პროგრამირებაში შესაძლებელია ფორმების ჩასმა ფორმებში ასინქრონული დაწკაპუნებით (AJAX), სამწუხაროდ, 1C-მა უგულებელყო იგი. ისე, ეს ტოვებს სამ ვარიანტს:

1. Vickory სხვადასხვა ფორმები
2. კლიენტს გადასცეს ყველა საჭირო მონაცემი
3. Smikati სერვერი.

ამასობაში სერვერის ლეგიტიმურ ზარებს არ სცემენ პატივს, ამიტომ გავაფუჭოთ, ასე რომ კვალი უნიკალურია.
- პრინციპში, არის მკაფიო მოსაზრება (რომელსაც მე აღარ ვარ შესაფერისი), რომ ნომერი „ავიღე“.
სერვერის მხრიდან კონტექსტური დაწკაპუნებები ნაკლებად ბოროტია, რადგან მათი ოპტიმიზაცია „ზედმეტად“ აბნევს კოდის „წაკითხულობას“.


თითო ტექსტური სერვერის დაწკაპუნება მიუთითებს ტრაფიკის ცვლილებაზე კლიენტიდან სერვერზე მონაცემების გადაცემისას. ეს სუნები გამოირჩევა კონტექსტურიდან.

მაგალითი 1: საბაზისო დოკუმენტისთვის კონტრაგენტის იდენტიფიცირების აუცილებლობა.

კლიენტის სერვერი
1. აირჩიეთ ფორმა -> აირჩიეთ ფორმა
2. შეცვლისას<--
3. აირჩიეთ კონტრაგენტი --> DocumentP_instatement["კონტრაგედი"]

მესამე ეტაპზე, აზრი არ აქვს მთელი ფორმის სერვერზე გადატანას, ყველა დეტალით. ამიტომ, მნიშვნელოვანია ვიკორისტი სერვერზე კონტექსტის გარეშე.

თქვენს ვარიანტში შეგიძლიათ უბრალოდ შეცვალოთ:

ობიექტის მოდულის მეთოდებისთვის:

&სერვერზე კონტექსტის გარეშე
ფუნქცია Something_with_something (ProcessingObject, ProcessingTypeRow, Parameters)
Rotate DataFormValue(ProcessObject, Type(RowProcessType)).Function We Need(Parameters);
ბოლო ფუნქციები

მენეჯერის მოდულის მეთოდებისთვის:

&სერვერზე კონტექსტის გარეშე
ფუნქცია Something_with_something (სახელი, პარამეტრები)
უბრუნდება ობობკი [იმ'ია]. ფუნქცია ჩვენ გვჭირდება (პარამეტრები);
ბოლო ფუნქციები

1C:Enterprise სისტემის კონფიგურაციის ახალ ვერსიებში, მრავალი ფუნქცია და პროცედურა გადავიდა ობიექტის მოდულებიდან (დოკუმენტები, მრჩევლები და ა.შ.) მენეჯერის მოდულში. მოდით შევხედოთ განსხვავებას ამ ორ მოდულს შორის.

ობიექტზე ორიენტირებული პროგრამირების თეორიის შესაბამისად, ობიექტის მეთოდები იყოფა ორ ჯგუფად: სტატიკური და მარტივი. მარტივი მეთოდები იძლევა წვდომას მხოლოდ კლასის კონკრეტულ მაგალითზე. სტატიკურ მეთოდებს არ აქვთ წვდომა ამ ობიექტებზე, მაგრამ მოქმედებენ კლასის სახელზე.

თუ ყველაფერს ვთარგმნით 1C: Enterprise სისტემის თვალსაზრისით, მაშინ ობიექტის მოდულიგამოიყენეთ უმარტივესი მეთოდები. ამ ძიებისთვის საჭიროა ჯერ კონკრეტული ობიექტის მიღება: დოკუმენტის ელემენტი, დოკუმენტი და ა.შ. მენეჯერის მოდულიშეცვალეთ სტატიკური მეთოდები. ამ მიზნით, არ არის საჭირო კონკრეტული ობიექტის პირდაპირ ამოღება, მაგრამ შეგიძლიათ ერთდროულად იმუშაოთ მთელ კოლექციასთან.

ობიექტის მოდულიშეგიძლიათ გამოიყენოთ პროცედურები და ფუნქციები, რომლებიც შეიძლება გამოყენებულ იქნას ზარების შესარჩევად. ვისთვისაც ასეთი პროცედურა ან ფუნქცია არის მითითებული სიტყვით ექსპორტი.

ფუნქცია NewFunction () ექსპორტი

ობიექტის მოდულიდან ასეთი ფუნქციის გამოსაყენებლად, პირველ რიგში, საჭირო ობიექტზე გაგზავნის შემთხვევაში, უნდა ამოიღოთ იგი დამატებითი ფუნქციიდან. OtrimatiObject().



თითო = ობიექტი. ახალი ფუნქცია();

ანალოგიურად, თქვენ შეგიძლიათ შექმნათ ახალი ცვლილებები, რომლებიც შეიძლება შეიცვალოს სხვადასხვა კონფიგურაციის ობიექტებიდან.

Perem NovaZminna ექსპორტი

დოვდნიკის ელემენტი = დოვდნიკი. ნომენკლატურა. KnowByCode ("000000001");
ობიექტი = დოვიდნიკის ელემენტი. OtrimatiObject () ;
ობიექტი. Nova Zminna =));

ამ გზით შესაძლებელია (შესაცვლელი) ობიექტების სტანდარტული პროცედურების, ფუნქციების და სიმძლავრის დამატება. ასეთი ცვლილებები დინამიურია, ისინი არ ინახება საინფორმაციო ბაზაში და ჩნდება მხოლოდ ამოღებულ ობიექტთან მუშაობის ერთი საათის შემდეგ.

მენეჯერის მოდულიმას აქვს იგივე შესაძლებლობები, ერთადერთი განსხვავება ისაა, რომ ამ პროცესისთვის არ გჭირდებათ კონკრეტული ობიექტის არჩევა; მენეჯერის მოდული საშუალებას გაძლევთ იმუშაოთ ერთი ტიპის ობიექტების კოლექციასთან.

პროცედურა NovaProcedure () ექსპორტი

დოვდნიკის ელემენტი = დოვდნიკი. ნომენკლატურა. Nova Procedure();

ან ცვლილებისთვის:

Perem NovaZminna ექსპორტი

დოვდნიკის ელემენტი = დოვდნიკი. ნომენკლატურა. Nova Zminna;

მოდით შევხედოთ ფიქსირებული ობიექტის მოდულის და მენეჯერის მოდულის მნიშვნელობას სხვა დოკუმენტის ფორმის შექმნის პროცედურის გამოყენებისას.

თუ აირჩევთ ობიექტის მოდულს, კოდი ასე გამოიყურება:

DrukDocument (Posilannya) ექსპორტის ფუნქცია
//ამ ფუნქციამ უნდა გადაიტანოს შეტყობინება კონკრეტულ დოკუმენტში
ჩართოთ TabDoc;
ბოლო ფუნქციები

დოკუმენტის ფორმაში, თქვენ უნდა შექმნათ პროცედურა, რომელიც გადასცემს შეტყობინებას დოკუმენტზე სხვა ფუნქციაზე.

&კლიენტზე
პროცედურა Druk (ბრძანება)
TabDoc = DrukOnServer() ;
TabDoc. შოუ();
კინეტების პროცედურები
&სერვერზე
ფუნქცია DrukOnServer()
Doc = PropsFormValue ("ობიექტი");
Turn Doc. DrukDocumenta (Object. Posilannya);
ბოლო ფუნქციები

ამ მეთოდის მინუსი ის არის, რომ ის მხოლოდ ერთი ობიექტის შემოხვევის საშუალებას გაძლევთ. თუ თქვენ გჭირდებათ დოკუმენტების თაიგულის ფანჯარაში გადატანა, თქვენ უნდა ამოიღოთ კანი ახლისგან და გამოიძახოთ ფუნქცია ობიექტის მოდულიდან. ამას დასჭირდება მნიშვნელოვანი სისტემის რესურსები; როდესაც ობიექტი ამოღებულია, ფრაგმენტები მოთავსებულია RAM-ში.

პროდუქტიულობის თვალსაზრისით, უმჯობესია ვიკორისტით მენეჯერის მოდული, რაც შეიძლება მეტი. ჩვენი აპლიკაციისთვის დავალებული ამოცანები ასე გამოიყურება.
ფუნქცია DrukOnServer()
საბუთების ბრუნვა. ჩვენი დოკუმენტი. DrukDocumenta (MasivPosilan);
ბოლო ფუნქციები

მენეჯერის მოდულის გამოყენებისას პროცედურის დაწკაპუნება შესაძლებელია როგორც დოკუმენტის ფორმიდან, ასევე სიის ფორმიდან, შეტყობინებების გადატანა მასივის რამდენიმე დოკუმენტზე. ამ შემთხვევაში სისტემას არ სჭირდება დოკუმენტის მასივიდან შენახვა, რაც მნიშვნელოვნად დაზოგავს სისტემის რესურსებს.

რა მოხდება, თუ ობიექტის მოდულს ვიკორიზებთ და რა მოხდება, თუ მენეჯერის მოდულს?

ყველაფერი უნდა ინახებოდეს საწყობში. თუ საკმარისი სიმძლავრეა ვიკისთვის (მაგალითად, მენეჯერისთვის), მაშინ უმჯობესია დააინსტალიროთ მენეჯერის მოდული. თუ საჭიროა მონაცემების შეცვლა, მაგალითად, დოკუმენტის შევსება, აუცილებელია მისი წაშლა და ობიექტის მოდულის შეცვლა.

თითქმის ყველა კონფიგურაციის ობიექტს აქვს მენეჯერის მოდული, ხოლო ობიექტების უმეტესობას აქვს ობიექტის მოდული. ხშირად დამწყებ პროგრამებს არ ესმით ამ ორი მოდულის მნიშვნელობა.

მათი მნიშვნელობის გაგება საშუალებას გაძლევთ დაწეროთ პროგრამის კოდი, რომელიც სწორია სტრუქტურის მიხედვით და ზოგიერთ შემთხვევაში დაიცავით 1C სერვერის რესურსები და გაზარდოთ აპლიკაციის გადაწყვეტის პროდუქტიულობა.

სტატია განიხილავს განსხვავებებს ამ მოდულებს შორის, როგორც თეორიული, ასევე კონკრეტული პრაქტიკული გამოყენებისას.

თეორია

ობიექტზე ორიენტირებული პროგრამირების (OOP) საფუძვლებს რომ დავუბრუნდეთ, მოდით გავავლოთ ანალოგი ჩვენს უკანალთან. OOP-ში ობიექტების მეთოდები შეიძლება დაიყოს სტატიკური (სტატიკური) და მარტივი. მარტივ მეთოდებს შეუძლიათ მოითხოვონ მხოლოდ კონკრეტული ობიექტი, წვდომა ნებისმიერი კონტექსტური პროგრამის კოდზე, რაც გვაქვს. სტატიკური მეთოდები არ იძლევა დაუყოვნებელ წვდომას ამ ობიექტებზე. ობიექტის თავიდანვე განსავითარებლად, თქვენ უნდა შექმნათ მისი ასლი. იგივე პლატფორმა 1C:Enterprise 8.x აკლია.

ობიექტის მოდულში პლატფორმა ინახავს პროცედურებსა და ფუნქციებს, რომელთა გამოყენება შესაძლებელია მხოლოდ კონკრეტულ ობიექტთან მუშაობისას, მაგალითად, "ნომენკლატურის" ბრაუზერის ელემენტის ობიექტს. მენეჯერის მოდული შეიცავს პროცედურებსა და ფუნქციებს, რომლებიც შეიძლება გამოყენებულ იქნას მოცემული ტიპის ყველა ობიექტზე, ასევე ამ ობიექტის ინსტანციის საწყის შექმნაზე. შემდეგ, ამ მოდულიდან ნომენკლატურის ელემენტის შესაცვლელად, ჯერ გაგზავნეთ "Opt Object()" მეთოდი viscont ელემენტში და შემდეგ იმუშავეთ მასთან.

მოდით გადავიდეთ თეორიიდან პრაქტიკაზე.

ივარჯიშე

მოდით გადავიდეთ პრაქტიკულ კონდახზე. ვთქვათ, ჩვენ უნდა მივცეთ დავალება პროდუქტების სხვა სიას. Koristuvach აჩვენეთ პროდუქტი თქვენს მეგობარს ან პირდაპირ დოკუმენტის ელემენტიდან, ან პროდუქტების სიის სახით. მოდით შევხედოთ ბრძანების დაყენების ორ გზას.

პროცედურა სხვა ობიექტის მოდულისთვის

Adviser ობიექტის მოდული ამატებს შემდეგ ფუნქციას:

// ფუნქციას გადაეცემა დანართის გაგზავნილი ელემენტიფუნქცია FriendSelectedItems(Postalnya) Export TabDoc = New TabularDocument; განლაგება = დოვიდნიკი. პროდუქტები. Otrimati Layout ("განლაგება"); ზაპიტი = ახალი ზაპიტი; მოთხოვნა ტექსტი = "VIBRATI | პროდუქტები . Podannya YAK Tovar,| პროდუქტები . IconVidalennya,| პროდუქტები . გამყიდველი კოდი || დოვიდნიკი . პროდუქტები YAK|DE | პროდუქტები . Posilannya V(& MasivTovarіv)" ; Request.InstallParameter("Array of Products", Posilannya); //მიწოდების არჩევა

ჩამოსხმის პროგრამის კოდი დიზაინერის მიერ. ერთადერთი, რისი გათვალისწინებაც შეიძლება, არის ის, რომ ის შეირჩა აპლიკაციის "პროდუქტები" ელემენტზე გასაგზავნად. შეტყობინება გადაეცემა როგორც პარამეტრი ფუნქციას. შედეგად, ფუნქციის „შერჩეული პროდუქტების მეგობარი“ დაწკაპუნებით მოხდება ცხრილის დოკუმენტის როტაცია პროდუქტის მინიჭებული პოზიციით.

პროგრამის კოდი „Druk Selected Products“ ობიექტის მეთოდის დასაწკაპუნებლად, ხედების ფორმის „Druk“ ბრძანების უკან მიმდინარე ჩამონათვალზე:

& კლიენტების პროცედურა Druk (გუნდი) // უბრუნდება სერვერის პროცედურას გენერირებული ცხრილების დოკუმენტის რედაქტირებისთვის TabDoc = Druk სერვერი(); // ცხრილის დოკუმენტის ფორმირების ჩვენება TabDoc. შოუ(); EndProcedures & OnServer ფუნქცია DrukServer() // გადაიყვანეთ ფორმის ობიექტი „პროდუქტები“ ინდიკატორის ობიექტად ობიექტის მოდულიდან ფუნქციის დასაწკაპუნებლად ObjectProduct = DetailsFormValue ("ობიექტი"); // ობიექტის მოდულის პროცედურის გამოძახება, დანართის შეტყობინების ნაკადის ელემენტის გადაცემით. შედეგი // კლიენტის მხარეს გადაბრუნდა ObjectProduct-ის დაბრუნება. Druk Vibranich Tovarіv (Object. Posilannya) ; ბოლო ფუნქციები

ამ გზით ჩვენ მოვახერხეთ მოწმის ამჟამინდელი ელემენტი, რომელიც მუშაობდა მის ობიექტთან. სამწუხაროდ, განყოფილებას უთხრეს, რომ დაალაგოთ საქონლის სია, რადგან მყიდველი თავად არის პასუხისმგებელი არჩევაზე. კორისტუვაჩევას გაცნობის ობიექტთან მუშაობისას, ასეთი შესაძლებლობა უბრალოდ შეუძლებელია. უფრო სწორი იქნება, მივყვეთ ელემენტების სიას "პროდუქტები" დირექტორიაში.

მენეჯერის მოდულის პროცედურა

ბრაუზერის მენეჯერის მოდულს აქვს შემდეგი ექსპორტის პროცედურა:

// მასივის გადატანა საქონელზეფუნქცია Druk VibranichProducts(ArrayProducts) Export TabDoc = New TabularDocument; განლაგება = დოვიდნიკი. პროდუქტები. Otrimati Layout ("განლაგება"); ზაპიტი = ახალი ზაპიტი; მოთხოვნა ტექსტი = "VIBRATI | პროდუქტები . Podannya YAK Tovar,| პროდუქტები . IconVidalennya,| პროდუქტები . გამყიდველი კოდი || დოვიდნიკი . პროდუქტები YAK|DE | პროდუქტები . Posilannya V(& MasivTovarіv)"; მოთხოვნა. // დააყენეთ შერჩევა მასივის უკანშედეგი = მოთხოვნა. ვიკონატი (); HeaderArea = განლაგება. OtrimatiArea ("Header"); AreaFooter = განლაგება. OtrimatiArea ("სარდაფი"); TableHeaderArea = განლაგება. ოტრიმატის არე („მაგიდის სათაური“); FooterTableArea = განლაგება. ოტრიმატის ზონა ("მაგიდის ძირი"); DetailRecordsArea = განლაგება. OtrimArea ("დეტალები"); TabDoc. Clear(); TabDoc. Vivesti (ტერიტორიის სათაური) ; TabDoc. Vivest(TableHeadArea) ; TabDoc. StartAutoGroupStock() ; VibratorDetailsRecords = შედეგი. ვიბრატი(); ნახვამდის VibirkaDetailsPosts. Advance() დეტალური ჩანაწერების ციკლის არეალი. Პარამეტრები შენახვა (SelectDetailRecords) ; TabDoc. Enter(DetailedRecordsArea, DetailedRecordsVib.Riven()) ; ციკლის დასასრული; TabDoc. FinishAutoGroupedRow(); TabDoc. ჟილეტი (TableFootArea) ; TabDoc. ვივესტი (ფართობი სარდაფი) ; ჩართოთ TabDoc; ბოლო ფუნქციები

ობიექტის მოდულში ფუნქციის მთავარი მახასიათებელია ფუნქციის პარამეტრი. ახლა, როგორც პარამეტრი, მასივი გადადის შეტყობინებებიდან იმ პროდუქტებზე, რომლებიც დეკონსტრუქციას საჭიროებს.

"Druk" ბრძანების და ფორმის მოდულის პროგრამის კოდი ასე გამოიყურება:

& OnClients პროცედურა Druk(Command) TabDoc = DrukServer() ; TabDoc. შოუ(); EndProcedures & OnServer ფუნქცია DrukServer() // გაგზავნეთ შეტყობინებების მასივი ავტორიზაციის სიიდან ნანახი პროდუქტების სიაში // მენეჯერის მოდულის ფუნქცია "Druk Vibranich Products"ვერნადნია დოვიდნიკი. პროდუქტები. Druk შერჩეული პროდუქტები (ელემენტები. სია. ნახვები რიგები) ; ბოლო ფუნქციები

ამ შემთხვევაში, 1C: Enterprise რეჟიმში ბრძანების დასრულების შედეგი იქნება:

როგორც კი გამოიყენებთ მეთოდს მენეჯერის მოდულიდან, ჩვენ შეგვიძლია მივიღოთ მონაცემები „პროდუქტების“ ინდიკატორიდან კანის პილინგისთვის ობიექტის ამოღების გარეშე. ობიექტის ამოღება ნიშნავს დოკუმენტის ელემენტის მონაცემთა ბაზიდან ყველა მონაცემის ამოღებას და ამოღებულ მონაცემთა RAM-ში განთავსებას, შემდეგ მონაცემების სხვაგვარად დანერგვას დადებითად აისახება პროდუქტიულობაზე. ამ შემთხვევაში, საჭიროა სერვერის აპარატის მინიმალური რესურსები (RAM).

რაც შეეხება vikoristati?

როგორც თავიდან, ყველაფერი ინახება კონკრეტულ ადგილას. თუ თქვენ გჭირდებათ დოკუმენტის რედაქტირება, მაშინ საუკეთესო ვარიანტია მენეჯერის მოდულის რედაქტირება. თუ საჭიროა ობიექტის შევსება, მაგალითად, მაგიდის ნაწილების შევსების გარე პროცესით, მაშინ ამ შემთხვევაში პროცედურები და ფუნქციები ადვილად შეიძლება გაფართოვდეს ობიექტის მოდულში, ხოლო დარჩენილი ნაწილები გადაეცემა თავად რობოტს. ობიექტი.

"Keruvannaya Trading" 11-ე ვერსიის ტიპიურ კონფიგურაციაში, ყველგან არის მენეჯერის მოდული სხვა დოკუმენტებისთვის. თუ გადახედავთ კონფიგურაციას "საწარმოო საწარმოების მენეჯმენტი", მენეჯერის მოდული პრაქტიკულად არ არის მხარდაჭერილი, რადგან კონფიგურაცია დაიწერა პლატფორმის ძველ ვერსიებში, ამ მექანიზმის სრულფასოვანი მხარდაჭერის გარეშე.

კონფიგურაცია სტატიკური კონდახებით.

Zagalny მოდულები 1C- 1C 8.3 და 8.2 კონფიგურაციის მეტამონაცემების ობიექტი, რომელიც ინახავს პროგრამის კოდს, რომელიც ხშირად იწოდება კონფიგურაციაში. ფუნქციის/პროცედურის გამოძახება შესაძლებელია ნებისმიერი კონფიგურაციის ადგილიდან (როგორც ის ექსპორტირებულია).

Yak vikorystuvati zagalny მოდული

კარგი პრაქტიკაა პროცედურის ან ფუნქციის ცალკე მოდულში განთავსება, რათა შესაძლებელი იყოს მისი ერთ ადგილას გამოძახება. უპირველეს ყოვლისა, რადგან პროცედურა შეცვლილია, მას სჭირდება ერთზე მეტი ადამიანი მმართველობისთვის. სხვა გზით, ეს აღწევს კოდში უფრო მეტ წესრიგს.

რეესტრის მოდულის ტიპიური აპლიკაციაა გარკვეული რეესტრის განხორციელების დამუშავება, სამუშაო დღეების რაოდენობის მოხსნა, გაცვლითი კურსის ხელახალი დალაგება, რაოდენობის/ფასის/თანხის ხელახალი დალაგება ცხრილის განყოფილებაში და. სხვა ფუნქციები.

მიწისქვეშა მოდულების სიმძლავრე

ფარული მოდულების ერთ-ერთი მთავარი მახასიათებელი სხვა მოდულებთან შედარებით არის ის, რომ შეუძლებელია მრავალჯერადი ცვლილების გახმოვანება.

უყურეთ 267 ვიდეო გაკვეთილს 1C-დან უფასოდ:

მოდით გადავხედოთ მოხსენების ფრონტალური მოდულის ძალაუფლების პალიტრას:

  • გლობალური- განცხადებების განცხადების შემდეგ, ამ მოდულის ფუნქციები და პროცედურები ხელმისაწვდომი გახდა გლობალურ კონტექსტში. ტობტო. მათი შერჩევა შესაძლებელია კონფიგურაციის მიხედვით, ორიგინალური მოდულის სახელის გარეშე. თუმცა, ირკვევა, რომ ამ გლობალური მოდულის პროცედურებისა და ფუნქციების სახელები შესაძლოა უნიკალური იყოს გლობალურ კონტექსტში.
  • სერვერი— ამ საძილე მოდულის პროცედურების და ფუნქციების კონფიგურაცია შესაძლებელია სერვერზე.
  • გარე კავშირი— ამ საძილე მოდულის პროგრამის კოდების ჩამოტვირთვა შესაძლებელია გარე მოწყობილობით (მაგალითად, COM) მიერთების შემთხვევაში.
  • კლიენტი (კერატიული დამატება)— ამ ლეგალური მოდულის პროცედურები და ფუნქციები შეიძლება გამოყენებულ იქნას სქელ კლიენტში, როგორც კერატინიზებელი დანამატი.
  • კლიენტი (ძირითადი დანამატი)— ამ საძილე მოდულის პროგრამის კოდები შეიძლება გამოყენებულ იქნას სხვა კლიენტებში, როგორც პირველადი პროგრამა.
  • Wiklik სერვერები— ნიშანი, რომელიც საშუალებას აძლევს კლიენტებს შეასრულონ პროცედურები და ფუნქციები ამ სამართლებრივი მოდულიდან.
  • — თუ დაყენებულია True, ეს მოდული საჭირო იქნება წვდომის უფლებების შესამოწმებლად.
  • არაერთხელ vikoristannya- მიუთითებს როტაციული მნიშვნელობის პარამეტრებზე, თუ ვარიანტი ჩართულია, მაშინ პირველი შერჩევის შემდეგ სისტემა ახსოვს ამ შეყვანის პარამეტრების მნიშვნელობებს და ატრიალებს მზა მნიშვნელობებს. შეგიძლიათ მიიღოთ შემდეგი მნიშვნელობები: ნუ ვიკორიზებთ- კავშირი, ვიკლიკი ერთი საათის განმავლობაში- ერთსაათიანი სიმღერის პროცედურისთვის, ერთსაათიანი სესიისთვის- დატოვეთ კორისტუვაჩი სესიის (პროგრამის) დახურვის გარეშე.

თუ თქვენ იწყებთ 1C პროგრამირების სწავლას, ჩვენ გირჩევთ ჩვენს უსასყიდლო კურსს (არ დაგავიწყდეთ