ცხრილების აღწერა 1c. მონაცემთა ბაზის შენახვის სტრუქტურა (მართული ფორმები). განსხვავებები არსებული განხორციელებებისგან

მონაცემები, რომლებიც განსაზღვრავს სისტემის ფუნქციონირების ლოგიკას 1C:Enterprise-ზე დაყრდნობით, ეხება ინფობაზას. შენახვა საინფორმაციო ბაზახორციელდება მონაცემთა ბაზაში, როგორც ცხრილების ნაკრები, რისთვისაც 1C:Enterprise 8.1-ს შეუძლია გამოიყენოს მონაცემთა ბაზის მართვის ოთხი სისტემადან ერთ-ერთი (DBMS):
* ჩაშენებული 1C: Enterprise 8.1-ში (ინფორმაციული ბაზის ფაილის ვერსია). ამ შემთხვევაში, საინფორმაციო ბაზის ყველა მონაცემი ინახება ფაილში სახელად 1Cv8.1CD. ამ ფაილს აქვს ორობითი ფორმატი და არსებითად არის მონაცემთა ბაზა ჩაშენებული 1C:Enterprise 8.1 DBMS-ისთვის.
*Microsoft SQL Server(ინფორმაციული ბაზის კლიენტ-სერვერის ვერსია). საინფორმაციო ბაზის ყველა მონაცემი ინახება Microsoft SQL Server მონაცემთა ბაზაში.
* PostgreSQL(ინფორმაციული ბაზის კლიენტ-სერვერის ვერსია). საინფორმაციო ბაზის ყველა მონაცემი ინახება PostgreSQL მონაცემთა ბაზაში.
*IBM DB2(ინფორმაციული ბაზის კლიენტ-სერვერის ვერსია). საინფორმაციო ბაზის ყველა მონაცემი ინახება IBM DB2 მონაცემთა ბაზაში.

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

მთელი ინფო ბაზა წარმოდგენილია მონაცემთა ბაზაში, როგორც ცხრილების ნაკრები. მათ შორის არის რამდენიმე ცხრილი, რომელიც აუცილებლად წარმოდგენილია ნებისმიერი ინფობაზის წარმოდგენაში:

* კონფიგურაცია- საინფორმაციო ბაზის ძირითადი კონფიგურაცია. ეს კონფიგურაცია შეესაბამება მონაცემთა რეალურ სტრუქტურას და გამოიყენება 1C:Enterprise 8.0-ის მიერ Enterprise რეჟიმში.
* ConfigSave- კონფიგურაცია რედაქტირებულია კონფიგურატორის მიერ. კონფიგურაცია ConfigSave-დან გადაიწერება Config-ში, როდესაც კონფიგურატორში შესრულდება "მონაცემთა ბაზის კონფიგურაციის განახლება" და პირიქით - როცა კონფიგურატორში შესრულდება ოპერაცია "Configuration - Database Configuration - Return to database configuration".
* ფაილებიშეიცავს სერვისის ინფორმაციას, მაგალითად, კონფიგურაციის საცავთან მუშაობის შესახებ.
*პარამებიშეიცავს ინფობაზის პარამეტრებს. Მათ შორის:
=> საინფორმაციო ბაზის მომხმარებელთა სია.
=> ეროვნული საინფორმაციო ბაზის პარამეტრები.
=> მეტამონაცემების ობიექტებისა და მონაცემთა ბაზის ობიექტების შესაბამისობის ცხრილი (ცხრილები, ველები, ინდექსები).
=> კიდევ რამდენიმე ინფორმაცია.
*_YearOffset- თარიღების ცვლა მონაცემთა ბაზაში. ეს ცხრილი იქმნება მხოლოდ Microsoft SQL Server-ის გამოყენებისას.
* DBSchemaშეიცავს ინფორმაციას 1C:Enterprise მონაცემთა ბაზის სტრუქტურის შესახებ და განსაზღვრავს მონაცემთა ბაზის სხვა ობიექტებს, რომლებიც გამოიყენება ამ ინფობაზის მიერ.

1C:Enterprise-ის დაწყებისას ის ამოწმებს ჩამოთვლილი ცხრილების არსებობას ინფობაზაში და თუ რომელიმე მათგანი აკლია, გამოჩნდება შეტყობინება „ინფობაზა განადგურებულია“. ყველა ჩამოთვლილი ცხრილის არარსებობა ნიშნავს, რომ ინფო ბაზა ცარიელია. ამ უკანასკნელ შემთხვევაში შეიქმნება ეს ცხრილები.

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

თუ მინიმუმ ერთი გაცვლის გეგმა განსაზღვრულია კონფიგურაციაში "განაწილებული ინფობაზის" დროშის ნაკრებით, მაშინ შეიქმნება შემდეგი ცხრილები:

*_ConfigChangeRec- კონფიგურაციის ობიექტის ცვლილებების რეგისტრაციის ცხრილი.
* _ConfigChangeRec_ExtProps- კონფიგურაციის ობიექტების შეცვლილი გარე თვისებების ფაილების სახელების ცხრილი.

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

* მუდმივები
=> _Consts შეიცავს კონფიგურაციაში განსაზღვრული ყველა მუდმივის მიმდინარე მნიშვნელობებს.
=> _ConstsChangeRec - ცხრილი მუდმივებში ცვლილებების რეგისტრაციისთვის. იქმნება, თუ ერთი მუდმივი მაინც მონაწილეობს გაცვლის გეგმაში მაინც.
* გაცვლის გეგმები
=> _ კვანძი - გაცვლის გეგმის ცხრილი.
=> _ კვანძი _VT - გაცვლის გეგმის ცხრილი ნაწილი, შექმნილი თითოეული ცხრილის ნაწილისთვის.
* სახელმძღვანელოები
=> _ მითითება - საცნობარო ცხრილი.
=> _ მითითება _VT - დირექტორიის ტაბულური ნაწილი - თითოეული ტაბულური ნაწილისთვის.
=> _ReferenceChangeRec - დირექტორიაში ცვლილებების რეგისტრაციის ცხრილი. შექმნილია, თუ დირექტორია მონაწილეობს მინიმუმ ერთ გაცვლის გეგმაში.
* დოკუმენტაცია
=> _დოკუმენტი - დოკუმენტების ცხრილი თითოეული "დოკუმენტის" მეტამონაცემების ობიექტისთვის.
=> _დოკუმენტი _VT - დოკუმენტის ტაბულური ნაწილი - თითოეული დოკუმენტის ტაბულური ნაწილისთვის.
=> _DocumentChangeRec - "დოკუმენტის" ტიპის მეტამონაცემების ობიექტში ცვლილებების რეგისტრაციის ცხრილი. იქმნება "დოკუმენტის" ტიპის თითოეული მეტამონაცემების ობიექტისთვის, თუ იგი მონაწილეობს გაცვლის მინიმუმ ერთ გეგმაში.
* დოკუმენტის თანმიმდევრობა
=> _ თანმიმდევრობა - დოკუმენტის რეგისტრაციის ცხრილი - თითოეული თანმიმდევრობისთვის.
=> _SequenceBoundary - თანმიმდევრობის საზღვრების ცხრილი - თითოეული მიმდევრობისთვის.
=> _SequenceChangeRec - თანმიმდევრობის ცვლილებების რეგისტრაციის ცხრილი. შექმნილია თითოეული თანმიმდევრობისთვის, რომელიც მონაწილეობს მინიმუმ ერთ გაცვლის გეგმაში.
* დოკუმენტების ჟურნალები.
=> _DocumentJournal - დოკუმენტის ჟურნალის ცხრილი, შექმნილი თითოეული დოკუმენტის ჟურნალისთვის.
* ჩამოთვლა
=> _ ენუმ - აღრიცხვის ცხრილი - თითო ყოველი აღრიცხვისთვის.
* მახასიათებლების ტიპების გეგმები
=> _ჩრკ - მახასიათებლების ტიპების გეგმის ძირითადი ცხრილი.
=> _ჩრკ _VT - მახასიათებლების ტიპების გეგმის ტაბულური ნაწილი - თითოეული ტაბულური ნაწილისთვის.
=> _ChrcChangeRec - მახასიათებლების ტიპების გეგმაში ცვლილებების აღრიცხვის ცხრილი. იგი იქმნება, თუ დამახასიათებელი ტიპის გეგმა მონაწილეობს მინიმუმ ერთ გაცვლის გეგმაში.
* ანგარიშთა სქემები
=> _ აკ - ანგარიშთა გეგმის მთავარი ცხრილი.
=> _ აკ _ ExtDim - ანგარიშთა გეგმის სუბკონტოს ტიპების ცხრილი, შექმნილი ანგარიშთა გეგმისთვის, თუ ქვეკონტოს მაქსიმალური რაოდენობა ნულზე მეტია.
=> _ აკ _VT - ანგარიშთა გეგმის ცხრილური ნაწილი, შექმნილი ანგარიშთა გეგმის თითოეული ცხრილური ნაწილისთვის.
=> _AccChangeRec - ანგარიშთა გეგმაში ცვლილებების რეგისტრაციის ცხრილი. შექმნილია იმ შემთხვევაში, თუ ანგარიშთა სქემა მონაწილეობს მინიმუმ ერთ გაცვლის გეგმაში.
* გაანგარიშების ტიპების გეგმები
=> _CalcKind - გაანგარიშების ტიპების გეგმის ძირითადი ცხრილი.
=> _CalcKind _BaseCK - ძირითადი გაანგარიშების ტიპების ცხრილი, შექმნილია გაანგარიშების ტიპების გეგმისთვის, თუ მის "ძირითადი დამოკიდებულების" თვისებას აქვს მნიშვნელობა, გარდა "არ არის დამოკიდებული".
=> _CalcKind _DisplacedCK - გადაადგილებული კალკულაციის ტიპების ცხრილი, შექმნილია გაანგარიშების ტიპების გეგმისთვის, თუ მას აქვს დროშის ნაკრები "გამოიყენებს მოქმედების პერიოდს".
=> _CalcKind _LeadingCK - გაანგარიშების წამყვანი ტიპების ცხრილი - გაანგარიშების ტიპების თითოეული გეგმისთვის.
=> _CalcKindDN - გამორიცხვის ორდერის დამხმარე ცხრილი იქმნება, თუ გამოთვლის ტიპების გეგმისთვის დაყენებულია დროშა „გამოიყენებს მოქმედების პერიოდს“.
=> _CalcKind _VT - გაანგარიშების ტიპების გეგმის ცხრილი ნაწილი, შექმნილი თითოეული ცხრილის ნაწილისთვის.
=> _CalcKindChangeRec - გაანგარიშების სახეების გეგმაში ცვლილებების რეგისტრაციის ცხრილი. ის იქმნება, თუ გაანგარიშების ტიპის გეგმა მონაწილეობს მინიმუმ ერთ გაცვლის გეგმაში.
* ინფორმაციის რეგისტრები
=> _InfoReg - ინფორმაციის რეესტრის მოძრაობების ცხრილი.
=> _InfoRegChangeRec - ინფორმაციის რეესტრში ცვლილებების რეგისტრაციის ცხრილი. იქმნება თუ საინფორმაციო რეესტრი მონაწილეობს გაცვლის მინიმუმ ერთ გეგმაში.
* დაგროვების რეგისტრები
=> _ AccumReg - დაგროვების რეესტრის მოძრაობის ცხრილი.
=> _ AccumRegTotals - დაგროვების რეესტრის ჯამების ცხრილი, თუ რეესტრი ინარჩუნებს ნაშთებს.
=> _ AccumRegTurnovers - დაგროვების რეესტრის ბრუნვის ცხრილი, თუ რეესტრი მხარს უჭერს ბრუნვას.
=> _ AccumRegChangeRec - დაგროვების რეესტრში ცვლილებების აღრიცხვის ცხრილი. ის იქმნება, თუ დაგროვების რეესტრი მონაწილეობს გაცვლის მინიმუმ ერთ გეგმაში.
=> _AccumRegOptions - პარამეტრების ცხრილი დაგროვების რეგისტრების ჯამების შესანახად, ერთი ყველა დაგროვების რეგისტრისთვის.
* საბუღალტრო რეგისტრები
=> _AccntReg - ბუღალტრული აღრიცხვის რეესტრის მოძრაობის ცხრილი.
=> _AccntRegED - ბუღალტრული აღრიცხვის რეესტრის ქვეკონტოს მნიშვნელობების ცხრილი, შექმნილი თუ ეს ეხება ანგარიშთა სქემას, რომელშიც ქვეკონტოების მაქსიმალური რაოდენობა ნულზე მეტია.
=> _AccTtl0 - ჯამების ცხრილი ანგარიშისთვის.
=> _AccTtl - სადაც i არის 1-დან ქვეთვლების მაქსიმალურ რაოდენობამდე. ჯამების ცხრილი ანგარიშისთვის ქვეკონტოს ტიპების რაოდენობის ტოლი i.
=> _AccTtlC - ანგარიშებს შორის ბრუნვის ჯამების ცხრილი, მხოლოდ სააღრიცხვო რეესტრისთვის, რომელიც მხარს უჭერს კორესპონდენციას.
=> _AccntRegChangeRec - ბუღალტრული აღრიცხვის რეესტრში ცვლილებების აღრიცხვის ცხრილი. ის იქმნება, თუ ბუღალტრული აღრიცხვის რეესტრი მონაწილეობს გაცვლის მინიმუმ ერთ გეგმაში.
=> _AccntRegOptions - პარამეტრების ცხრილი ჯამების შესანახად, ერთი ყველა სააღრიცხვო რეესტრისთვის.
* კალკულაციის რეგისტრები
=> _CalcReg - საანგარიშო რეესტრის მოძრაობის ცხრილი.
=> _CalcRegActPer - საანგარიშო რეესტრის ფაქტობრივი მოქმედების ვადების ცხრილი, რომელიც იქმნება, თუ საანგარიშო რეესტრში დაყენებულია დროშა „მოქმედების პერიოდი“.
=> _CalcRegChangeRec - საანგარიშო რეესტრში ცვლილებების აღრიცხვის ცხრილი. შექმნილია ყოველი საანგარიშო რეესტრისთვის, რომელიც მონაწილეობს მინიმუმ ერთ გაცვლის გეგმაში.
=> _CalcRegRecalc - გაანგარიშების რეგისტრის ხელახალი გაანგარიშების ცხრილი, შექმნილი ყოველი გადაანგარიშებისთვის.
=> _CalcRegRecalcChangeRec - გადაანგარიშების ცვლილებების რეგისტრაციის ცხრილი. შექმნილია, თუ გამოყოფა ჩართულია მინიმუმ ერთ გაცვლის გეგმაში.
* Ბიზნეს პროცესები
=> _BPRoutePoint - ბიზნეს პროცესის მარშრუტების ცხრილი თითოეული ბიზნეს პროცესისთვის.
=> _Საქმის პროცესი - ბიზნეს პროცესის მთავარი ცხრილი.
=> _Საქმის პროცესი _VT - ბიზნეს პროცესის ცხრილის ნაწილი თითოეული ცხრილის ნაწილისთვის.
=> _BusinessProcessChangeRec - ბიზნეს პროცესის ცვლილებების რეგისტრაციის ცხრილი. შექმნილია თითოეული ბიზნეს პროცესისთვის, რომელიც მონაწილეობს მინიმუმ ერთ გაცვლის გეგმაში.
* Დავალებები
=> _ დავალება - ძირითადი ამოცანების ცხრილი.
=> _ დავალება _VT - დავალების ცხრილი ნაწილი თითოეული ტაბულური ნაწილისთვის.
=> _TaskChangeRec - დავალებებში ცვლილებების რეგისტრაციის ცხრილი. შექმნილია თითოეული მეტამონაცემების ობიექტისთვის, ტიპის "ამოცანა", რომელიც მონაწილეობს მინიმუმ ერთ გაცვლის გეგმაში.

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

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

ასევე მნიშვნელოვანია, რომ მონაცემთა ბაზა, რომელიც ინახავს ინფო ბაზას, იყოს სარეზერვო და აღდგენილი მხოლოდ მთლიანად. ამ მიზნით რეკომენდებულია გამოყენება სარეზერვო ასლიგამოყენებული DBMS-ში ჩაშენებული მონაცემთა ბაზები. ინფორმაციის ბაზის ფაილის ვერსიის სარეზერვო ასლის შექმნა შესაძლებელია 1Cv8.1CD ფაილის კოპირებით.

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

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

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

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

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

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

დამუშავების ფუნქციონირება

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

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

განსხვავებები არსებული განხორციელებებისგან

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

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

UPD-2018-01-06 (v1.3).დაფიქსირდა შეცდომა, რომელიც წარმოიშვა თავსებადობის რეჟიმში 8.3.7 და უფრო მაღალი (პლატფორმის ქცევა შეიცვალა).

UPD-2012-08-17 (v1.2).გაკეთდა პატჩი დაგეგმილი ამოცანების სწორად დამუშავებისთვის, დაფიქსირდა გაანგარიშების ტიპების გეგმების ჩვენების წერტილი, გამოსწორდა ქცევა კონფიგურაციის ძირში სტრუქტურის ტიპის გადართვისას.

P.S. ზოგიერთი დამსაქმებელი ეკითხება რეგისტრების ფიზიკური და ვირტუალური ცხრილების რაოდენობას სამუშაოზე განაცხადის დროს. კარგი იქნებოდა ამ კითხვებზე პასუხების ცოდნა, მით უმეტეს, რომ ეს არის 1C: პროფესიული დონე. თუ გსურთ არა მხოლოდ ისწავლოთ ეს პასუხი, არამედ „შეგრძნოთ“ ეს ცხრილები, მაშინ ეს დამუშავება თქვენთვისაა!

პროგრამირების ენაში 1C 8.3 და 8.2 სტრუქტურა არის "Key" და "Value" წყვილების ნაკრები. "Key" ველს აქვს სტრიქონის ტიპი, ხოლო "Value" შეიძლება მიიღოს ნებისმიერი ტიპის მონაცემები. ჩვეულებრივ გამოიყენება ნებისმიერი პარამეტრის ნაკრების შესანახად და პროცედურებს შორის გადასატანად.

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

პირველი გზა:

სტრუქტურა = ახალი სტრუქტურა;
Structure.Insert("ParameterKey1", "Parameter Values ​​#1");
Structure.Insert("ParameterKey2", "Parameter Values ​​#2");

მეორე გზა:

სტრუქტურა = ახალი სტრუქტურა ("ParameterKey1, ParameterKey2", "პარამეტრის მნიშვნელობები #1", "პარამეტრის მნიშვნელობები #2");

ორივე მეთოდი შექმნის სტრუქტურას, რომელიც ჩანს გამართვის სკრინშოტში:

მიიღეთ 267 1C ვიდეო გაკვეთილები უფასოდ:

Ცვლილება

თქვენ შეგიძლიათ დაამატოთ ან შეცვალოთ სტრუქტურა "Insert()" მეთოდის გამოყენებით.

Structure.Insert("KeyName", KeyValue);

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

კოლექციის ელემენტის წასაშლელად, თქვენ უნდა გამოიყენოთ "წაშლა" მეთოდი, სადაც უნდა გადაიტანოთ გასაღების სახელი:

Structure.Delete("KeyName");

ასევე შესაძლებელია კოლექციაში არსებული ყველა ობიექტის გასუფთავება:

Structure.Clear();

სტრუქტურის გავლა

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

Მაგალითად:

თითოეული გასაღების და ღირებულებისთვის სტრუქტურის მარყუჟიდან
…… //დამუშავება, მაგალითად, მნიშვნელობების შეცვლა
საბოლოო ციკლი;

თითოეულ ციკლში გამოჩნდება, რომ ჩვენთვის ხელმისაწვდომია შემდეგი ველები:

გაქვთ შეკითხვები?

შეატყობინეთ შეცდომას

ტექსტი უნდა გაიგზავნოს ჩვენს რედაქტორებს: