დალაგება 1-ებში 8.2. შესანიშნავი სასმელების მცირე ხრიკები. ფილმის მოთხოვნის ფუნქციები

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

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

მე ვიკითხავ მაგალითს:

ვიბრაცია
ბანკები.
ბანკები.კორრრახუნოკი

დოვიდნიკი. ბანკები YAK Banks

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

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

ფილმის მოთხოვნების კონსტრუქციის აღწერა

წინადადებების სტრუქტურა

მონაცემების შესარჩევად საკმარისია გამოიყენოთ "VIBRATI" (არჩევა) და "Z" (დან) კონსტრუქციები. კითხვის უმარტივესი გზა ასეთია:

ვიბრაცია * Z Dovidniki.ნომენკლატურა

სადაც "*" ნიშნავს ცხრილის ყველა ველის და მრჩეველთა არჩევას. ნომენკლატურა - ცხრილების სახელები მონაცემთა ბაზაში.

აშკარად დაკეცილი და მბზინავი კონდახი:

ვიბრაცია
<ИмяПоля1>იაკ<ПредставлениеПоля1>,
სუმა (<ИмяПоля2>) YAK<ПредставлениеПоля2>

<ИмяТаблицы1>იაკ<ПредставлениеТаблицы1>
<ТипСоединения>ზ'ედნანია<ИмяТаблицы2>იაკ<ПредставлениеТаблицы2>
PZ<УсловиеСоединениеТаблиц>

DE
<УсловиеОтбораДанных>

ᲘᲗ ᲓᲐᲯᲒᲣᲤᲔᲑᲐ
<ИмяПоля1>

ᲬᲔᲡᲘᲗ
<ИмяПоля1>

ჩანთები
<ИмяПоля2>
PZ
<ИмяПоля1>

ამ მოთხოვნაში ჩვენ ვირჩევთ ველების "Field Name1" და "Field Name1" მონაცემებს ცხრილიდან "Table Name1" და "Table Name", ველებს ვაძლევთ სინონიმებს "HOW" ოპერატორის დახმარებით და ვუერთდებით მათ უკან. "UmovaZ" 'ednannyTable'.

შერჩეული მონაცემებიდან ჩვენ ვირჩევთ მხოლოდ იმ მონაცემებს, რომლებიც შეესაბამება „DE“ „Mind for Data Selection“-ის გონებას. შემდეგი, ჩვენ დავაჯგუფებთ ველის მიხედვით "Field Name1", რომელიც მოიცავს "Field Name2".

დანარჩენ აქციას მოჰყვება დამატებითი მშენებლობა „ORDER BY“.

მიწისქვეშა ნაგებობები

მოდით გადავხედოთ ჩვენი კვების წყაროების ძირითად დიზაინს 1C 8.2.

პერში

ამ დამატებითი ოპერატორის გამოყენებით, შეგიძლიათ მიიღოთ პირველი ჩანაწერების n რაოდენობა. ჩანაწერების თანმიმდევრობა განისაზღვრება ჩანაწერების თანმიმდევრობით.

ვიბრატი პერჩი 100
ბანკები.
ბანკები.CODE YAK BIK

დოვიდნიკი. ბანკები YAK Banks
ᲬᲔᲡᲘᲗ
ბანკები.სახელი

ანბანის მიხედვით დალაგებული „ბანკების“ დანართის პირველი 100 ჩანაწერი წაიშლება.

ნებადართულია

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

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

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

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

რიზნი

Vikoristan "РІЗНІ" საშუალებას გაძლევთ გამორთოთ დუბლიკატი რიგები 1C მოთხოვნის შედეგად. გარუჯვა ნიშნავს ყველა სფეროს გამოტოვებას.

ვიბრატი პერჩი 100
ბანკები.
ბანკები.CODE YAK BIK

დოვიდნიკი. ბანკები YAK Banks

ცარიელი მაგიდა

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

მაგალითი 1C 8 განახლებიდან:

VIBRATI Posilannya.ნომერი, EMPTYTABLE.(No., საქონელი, რაოდენობა) YAK საწყობი
Z დოკუმენტი.
შეუთავსეთ ყველაფერი
VIBRATE გაგზავნა. ნომერი, საწყობი. (რიგის ნომერი, პროდუქტი, რაოდენობა)
Z Document.RozhInkl Document.VidatkovaInvoice.საწყობი.*

Є NULL

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

ვიბრაცია
ნომენკლატურაSp.Posilannya,
ЄNULL(პროდუქტის ბალანსი. ჭარბი რაოდენობა,0) YAK ჭარბი რაოდენობა



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

ЄNULL(RakhunokFakturaOtrimanii.თარიღი, RakhunokFakturaVidanii.თარიღი)

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

ეს დიზაინები ძალიან ჰგავს - ისინი საშუალებას გაძლევთ აღმოფხვრას კონკრეტული მიზნების საჭიროება. იგივე მნიშვნელობა ეხება იმ ფაქტს, რომ UYAVANNYA გარდაქმნის ნებისმიერ მნიშვნელობას მწკრივის ტიპად, ხოლო PRESENTATIVE POSILANNA გარდაქმნის მხოლოდ POSILANNA-ს. რეკომენდირებულია მონაცემთა შედგენის სისტემის პოზიციების შეჩერება ოპტიმიზაციისთვის, ვინაიდან პოზიციური მონაცემების ველი არ იქნება გამარჯვების მოპოვება არჩევანში.

ვიბრაცია
Podannya (Posilannya) // რიგი, მაგალითად „წინასწარი შეტყობინება No123 10.10.2015 წ.
Podannya (MarkVidalennya) YAKMarkVidalennyaText, //სტრიქონი, „ასე“ ან „Ni“
PodannyaPosilannya(MarkVidalennya) YAKMarkVidalennyaBoolean //ლოგიკური, მართალი ან მცდარი

დოკუმენტი.წინასწარი შეტყობინება

ვირაზიტი

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

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

VIRAZITY(TableVitrat.Subconto1 YAK Dovidnik.StattiVitrat). აქტივობის ტიპი გადასახადის გადამხდელისთვის Vitrate

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

VIRAZITY(კომენტარი YAK Ryadok(150))

რეალიზებულიDAT

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

კონდახი vikoristannya Є NULL 1C ჩანაწერში:

ვიბრაცია * ვ
Ref
მარცხენა კავშირი რეგისტრაცია დაგროვება.პროდუქტები საწყობებში.მარაგები YAKStocks of საქონელი
Software NomenclatureRef.Posylannya = SoldProductsCommittentsZashki.Nomenclature
არ გქონდეთ ზედმეტი საქონელი, ჭარბი რაოდენობა არის NULL

ჩანაწერში მონაცემთა ტიპი შეიძლება განისაზღვროს შემდეგი გზით: დამატებითი ფუნქციების TYPE() და TYPEVALUE() ან ლოგიკური ოპერატორის POSITION გამოყენებით. ეს ორი ფუნქცია მსგავსია.

გამოტანილი მნიშვნელობები

1C პარამეტრების მნიშვნელობა შეიძლება შეიცვალოს მნიშვნელობის მიხედვით ან . მაგალითად, გადაჭარბებული ინტერპრეტაცია, გიჟური მტკიცებულებები, გეგმები რაჰუნკისთვის და ა.შ. ამ მიზნით გამოიყენება კონსტრუქცია „Value()“.

ვიკორისტანის კონდახი:

De Nomenclature.Type of Nomenclature = Value(Provider.View Nomenclature.Product)

DE Counterparties. საკონტაქტო ინფორმაციის ტიპი = ღირებულება (ხელახალი ინვენტარი. იხილეთ საკონტაქტო ინფორმაცია. ტელეფონი)

DE ZalishkiPorahunkiv.RakhunokObliku = ღირებულებები(Plan Rakhunkiv.Gosprozrahunkovy.ProfitsZbitki)

ზედნანია

არსებობს 4 ტიპის კავშირი: LIVOE, უფლება, გარე, შიდა.

მარცხენა და მარჯვენა კავშირი

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

Მაგალითად:

გადაატრიალეთ კონტრაგენტების მთელი ცხრილი და შეავსეთ ველი „ბანკი“ მხოლოდ ამ ადგილებში, ასე რომ თქვენ შეძლებთ დაასრულოთ „Counterparties.Name = Banks.Name“. თუ თქვენი გონება არ არის მორგებული, ბანკის ველი დაინსტალირდება NULL.

კავშირის უფლებები mov 1C-შიაბსოლუტურად მსგავსი მარცხენა კავშირი, დამნაშავის უკან მხოლოდ ნიშნებია - ზე მარჯვენა კავშირი"თავის" მაგიდა მეგობარია და არა პირველი.

ზ'ედნანიას გარეთ

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

Მაგალითად:


ზ'ედნანიას გარეთ
დოვიდნიკი. ბანკები YAK Banks

PZ

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

შიდა კავშირი

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

Მაგალითად:


Dovdnik.Conterparties YAK კლიენტები

შიდა კავშირი
დოვიდნიკი. ბანკები YAK Banks

PZ
კლიენტები. სახელი = ბანკები. სახელი

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

ობედნანია

Combine and Combine ALL-ის დიზაინი აერთიანებს ორ შედეგს ერთში. ტობტო. ორის ბოროტების შედეგი იქნება „გაბრაზებული“ ერთში, ზაგალნი.

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

იაკ ვიკორისტუვატი INDEXUVATI ON

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

ვიბრაცია
ვალუტა YAK ვალუტა,
ვალუტის განაკვეთები დანარჩენისთვის. კარგად
POMISTTI KursiValut

ქონების რეგისტრაცია.ვალუტის ტარიფები.დარჩენილი (&პერიოდი,) YAK ვალუტის განაკვეთები დარჩენილი
INDEXUVATI BY
ვალუტა
;
ვიბრაცია
ფასები ნომენკლატურა.
ფასებინომენკლატურა.ფასი,
ფასები ნომენკლატურა.ვალუტა,
ვალუტა ვალუტა.კურსი

ქონების რეესტრი. ფასები, ნომენკლატურა. დარჩენილიდან (&პერიოდი,
ნომენკლატურა B (&ნომენკლატურა) I TypePrice = &TypePrice) YAK ფასინომენკლატურა
LIVOE Z'EDNANNYA Kursi ვალუტა YAK Cursi ვალუტა
ფასის ნომენკლატურის მიხედვით.ვალუტა = CursiValut.ვალუტა

დაჯგუფება

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

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

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

მაგალითი #1:

ვიბრაცია
პროდუქტებისა და სერვისების გაყიდვები პროდუქტები.ნომენკლატურა,
SUMA (საქონლის, სერვისების, პროდუქტების გაყიდვები. რაოდენობა) YAK რაოდენობა,
SUMA(პროდუქტების რეალიზაციაპოსლუგპროდუქტები.სუმა) YAK Suma


ᲘᲗ ᲓᲐᲯᲒᲣᲤᲔᲑᲐ
პროდუქტებისა და სერვისების გაყიდვები პროდუქტები.ნომენკლატურა

ბრძანება ირჩევს საქონლის ყველა რიგს და აჯამებს მათ რიგი თანხებისა და ჯამების ნომენკლატურის მიხედვით.

კონდახი No2

ვიბრაცია
ბანკები.
QUALITY (ROUGH Banks. Posilannya) YAK QUALITY ორმაგი

დოვიდნიკი. ბანკები YAK Banks
ᲘᲗ ᲓᲐᲯᲒᲣᲤᲔᲑᲐ
ბანკები.

ეს მაგალითი აჩვენებს BIC-ების ჩამონათვალს „ბანკების“ მრჩეველში და აჩვენებს რამდენი დუბლიკატია თითოეული მათგანისთვის.

ჩანთები

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

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

ვიბრაცია





Document.ProductService.Products-ის რეალიზაცია YAK პროდუქციის სერვისის პროდუქტების გაყიდვები
ᲬᲔᲡᲘᲗ

ჩანთები
სუმა (კილკისტი),
სუმა (სუმა)
PZ
ნომენკლატურა

შედეგად, კითხვა უფრო იერარქიული ხდება:

ზურგჩანთა ჩანთები

თუ თქვენ გჭირდებათ ჩანთების ამოღება ყველა თქვენი „ჩანთადან“, გამოიყენეთ „ZAGALNI“ ოპერატორი.

ვიბრაცია
პროდუქციის გაყიდვები და სერვისები პროდუქცია ნომენკლატურა YAK ნომენკლატურა,
პროდუქტების, სერვისების, პროდუქტების გაყიდვები. გამოქვეყნებულია YAK Document-ის მიერ,
პროდუქციისა და მომსახურების გაყიდვები პროდუქციის რაოდენობა YAK რაოდენობა,
პროდუქციის გაყიდვები სერვისის პროდუქტები.Suma YAK Suma

Document.ProductService.Products-ის რეალიზაცია YAK პროდუქციის სერვისის პროდუქტების გაყიდვები
ᲬᲔᲡᲘᲗ
პროდუქციის გაყიდვები სერვისის პროდუქტები.პოზიცია.თარიღი
ჩანთები
სუმა (კილკისტი),
სუმა (სუმა)
PZ
ზაგალნი,
ნომენკლატურა

ექსპერიმენტის შედეგად მიღებული შედეგი აღმოიფხვრება:

ვისაც აქვს დაჯგუფების 1 დონე - ყველა ქერქის ველის აგრეგაცია.

აბაზანის ორგანიზება

შედეგის დასალაგებლად გამოიყენება ORDER BY ოპერატორი.

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

ვიბრაცია


დოვიდნიკის ნომენკლატურა YAK ნომენკლატურა
ᲬᲔᲡᲘᲗ
სახელი

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

აბაზანის ავტომატური მოწყობა

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

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

ვიბრაცია
ნომენკლატურა სახელწოდება YAK დასახელება

დოვიდნიკის ნომენკლატურა YAK ნომენკლატურა
აბაზანის ავტომატური მოწყობა

ვირტუალური მაგიდები

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

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

  • პირველიდან;
  • დანარჩენიდან.
  • ჭარბი;
  • რევოლუციები;
  • ჭარბი და ბრუნვა.
  • რუჰი იზ სუბკონტო;
  • რევოლუციები;
  • რევოლუციები Dt Kt;
  • ჭარბი;
  • ჭარბი და ბრუნვა
  • ქვეკონტო.
  • ბაზა;
  • გრაფიკული მონაცემები;
  • მოქმედების რეალური პერიოდი.

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

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

რეგისტრაცია Accumulation.ProductsIn Warehouses.Surplus/Turnover YAK ProductsIn WarehousesSurplus/Turnover

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

ვირტუალური ცხრილის პარამეტრები

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

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

მაგალითად, აირჩიეთ შემდეგი პარამეტრები:

რეგისტრაცია დაგროვება.

ალგორითმი რობოტული ვირტუალური ცხრილებისთვის

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

ვირტუალური ცხრილის არჩევისას სისტემა ირჩევს შემდეგ მანიპულაციებს:

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


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

შეკითხვის კონსტრუქტორი ვიკი

შეკითხვის კონსტრუქტორი- ინსტრუმენტი, რომელიც შევიდა 1C Enterprise სისტემაში, მნიშვნელოვნად ამარტივებს მონაცემთა ბაზაში მოთხოვნების დამუშავებას.

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

ტექსტის კონსტრუქტორის გაშვება მოთხოვნილია კონტექსტური მენიუდან (მაუსის მარჯვენა ღილაკი) პროგრამის კოდის საჭირო ადგილას.

კონსტრუქტორის აღწერა 1C-სთვის

მოდით უფრო ახლოს მივხედოთ დიზაინერის ჩანართს მოხსენებაში. Vinyatok - პობუდოვანიკის ჩანართი, ეს არის okremoi rosmov-ის თემა.

ცხრილისა და ველების ჩანართი

ეს ჩანართი შეიცავს მონაცემთა და ველების ჩამონათვალს, რომლებიც უნდა შეიყვანოთ დარეკვამდე. ფაქტობრივად, ვიბრაციის დიზაინი აქ არის აღწერილი.. IZ.

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

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

Zv'yazku ჩანართი

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

დაჯგუფების ჩანართი

ამ შეყვანისას სისტემა საშუალებას გაძლევთ დააჯგუფოთ და დაამატოთ საჭირო ველები ცხრილის შედეგებში. აღწერილია შემდეგი კონსტრუქცია: GROUP BY, SUM, MINIMUM, AVERAGE, MAXIMUM, QUALITY, QUALITY OF DIFFERENT.

Umovi ჩანართი

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

დოდატკოვოს ჩანართი

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

დაჯგუფება ჩანაწერების ვიბრაცია:

  • პერში ნ- პარამეტრი, რომელიც ბრუნავს N ჩანაწერზე მეტს (ოპერატორი PERSHI)
  • არავითარი გამეორება- უზრუნველყოფს ჩანაწერების წაშლის უნიკალურობას (ოპერატორი RIZNI)
  • ნებადართულია- საშუალებას გაძლევთ აირჩიოთ მხოლოდ ჩანაწერები, რომელთა არჩევის საშუალებას გაძლევთ სისტემა (ნებართვის სტრუქტურა)

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

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

კომუნიკაციები / მეტსახელების ჩანართი

შეკითხვის კონსტრუქტორის ეს შეყვანა ადგენს სხვადასხვა ცხრილებისა და მეტსახელების დაკავშირების შესაძლებლობას (YAK კონსტრუქცია). მარცხენა მხარე შეიცავს ცხრილებს. თუ დროშებს მაგიდის მოპირდაპირედ მოათავსებთ, არის კონსტრუქცია COMBINATE, წინააღმდეგ შემთხვევაში – COMBINE ALL (ორი მეთოდის კომბინაცია). მარჯვენა მხარეს, სხვადასხვა ცხრილებში მითითებულია ველების ტიპი, თუ ტიპი არ არის მითითებული, შეიყვანეთ NULL მნიშვნელობა.

შეკვეთის ჩანართი

აქ მიუთითეთ მნიშვნელობების დახარისხების თანმიმდევრობა (ORDER BY) - დაღმავალი (UNBUVANNYA) ან მზარდი (VIP).

ასევე შესანიშნავი ნიშანი - აბაზანის ავტომატური მოწყობა(ჩანაწერში – AUTO ORDERING). 1C სისტემა შექმნილია მონაცემების "ქაოტური" თანმიმდევრობით ჩვენებისთვის. ამ ნიშნის დადგენის შემდეგ, სისტემა ახარისხებს მონაცემებს შიდა მონაცემების მიხედვით.

შეკითხვის სერიის ჩანართი

Query Builder ჩანართზე შეგიძლიათ შექმნათ ახლები და გამოიყენოთ ისინი ნავიგაციისთვის. ტექსტში პაკეტები გამოყოფილია სიმბოლოთი ";" (კომა).

"Wash" ღილაკი შეკითხვის დიზაინერში

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

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


Vikoristannaya კონსოლის შეკითხვა

Query Console არის მარტივი და მოსახერხებელი გზა რთული მოთხოვნების ორგანიზებისა და ინფორმაციის სწრაფად დასაჭერად. ამ სტატიაში შევეცდები აღვწერო Query Console-ის გამოყენება და მივცემ ინსტრუქციებს Query Console-ზე წვდომისთვის.

მოდით შევხედოთ ამ ხელსაწყოს ქვემოთ.

მოიხიბლეთ 1C კვების ბლოკის კონსოლი

სანამ შეკითხვის კონსოლიდან დაიწყებთ მუშაობას, უნდა დარეგისტრირდეთ. დამუშავება იყოფა ორ ტიპად - კერამიკულ ფორმებზე და ძირითად (ან ზოგჯერ მათ უწოდებენ 8.1 და 8.2/8.3).

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

1C შეკითხვის კონსოლის აღწერა

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

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

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

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

  • ვიკონატიჩამოირეცხა- უბრალოდ ვიკონანია და ოტრიმანია შედეგი
  • Viconati პაკეტი- საშუალებას გაძლევთ ნახოთ ყველა შუალედური მოთხოვნა მოთხოვნების ჯგუფში
  • დროის ცხრილის მიმოხილვა- საშუალებას გაძლევთ ნახოთ შედეგები ცხრილში დროის ჩანაწერების როტაციით

პარამეტრებს ვკითხავ:

საშუალებას გაძლევთ დააყენოთ კონკრეტული პარამეტრები ჩაწერისთვის.

პარამეტრების ფანჯარაში მოგეთხოვებათ:

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

დააყენეთ პარამეტრი ღირებულებების სიაშიეს ძალიან მარტივია, პარამეტრის მნიშვნელობის არჩევისას დააჭირეთ მნიშვნელობის გასუფთავების ღილაკს (ჯვარედინი), სისტემა მოგთხოვთ აირჩიოთ მონაცემთა ტიპი და მოგთხოვთ აირჩიოთ "Value List":

ასევე ზედა პანელზე არის ღილაკი ელექტრომომარაგების კონსოლის დაყენებაზე დასაჭერად:

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

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

1C8 შეკითხვის დიზაინერზე დაწკაპუნება ხდება კონტექსტური მენიუდან (მაუსის მარჯვენა ღილაკი), როდესაც დააწკაპუნებთ შეყვანის ველზე:

ამ მენიუს ასევე აქვს ისეთი სასარგებლო ფუნქციები, როგორიცაა მწკრივის გადაცემის სიმბოლოების (“|”) გასუფთავება ან დამატება კოდზე, ან კოდის ამოღება ამ ხელით ხედიდან:

ზაპიტი = ახალი ზაპიტი;
მოთხოვნა ტექსტი = "
| ვიბრაცია
| ვალუტები

| დოვიდნიკი. ვალუტა YAK ვალუტა”;
ResultRequest = Request.Viconati();

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



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

მოთხოვნების ოპტიმიზაცია

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

აირჩიეთ ვირტუალური ცხრილიდან დამატებითი DE კონსტრუქციისთვის

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

უფლება:

ვიბრაცია


რეგისტრაცია დაგროვება. ორმხრივი ყინვა ორგანიზაციის მეანაბრეებთან. ზალიშკი (
,
ორგანიზაცია = &ორგანიზაცია
І ფიზიკური პიროვნება = &ფიზიკური პიროვნება) YAK ორმხრივი ყინვები ორგანიზაციის ჭარბი დეპოზიტებით

არასწორი:

ვიბრაცია
ორმხრივი FrostInsurance With DepositorsOrganizationSurplus.MountSurplus

რეგისტრაცია დაგროვება.
DE
ორმხრივი ყინვების გაცვლა დეპოზიტორებთანOrganizationSurplus.Organization = &Organization
І ურთიერთყინვა ჭარბი ორგანიზაციის მეანაბრეებთან. Physob = & Physob

დაკეცილი ველის მნიშვნელობის პოვნა წერტილის გამოყენებით

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

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

არასწორი:

ვიბრაცია
აკრიფეთ Records.Recorder.Date,
აკრიფეთ ჩანაწერები.რაოდენობა

RegistryAccumulation.ProductsOrganizations YAK NabirRecords

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

მარჯვენა:

ვიბრაცია
ვიბირი
როდესაც პროდუქტებისაორგანიზაციო რეგისტრატორი გაცემულია დოკუმენტი.პროდუქტების რეალიზაციამომსახურება
TODI VIRAZITI (ProductOrg.Registrar YAK Document.Product and Services-ის რეალიზაცია).თარიღი
WHEN GoodsOrg.რეგისტრატორი POSILANNYA დოკუმენტი.საქონლის სერვისების საიმედოობა
TODI VIRAZITI (ProductOrg.Registrar YAK Document.Reliability of Products and Services).თარიღი
KINETS YAK თარიღი,
ProductsOrg.Quality

რეგისტრაცია Accumulation.ProductsOrganization YAK ProductsOrg

ან კიდევ ერთი ვარიანტია ასეთი ინფორმაციის დამატება დეტალებში, მაგალითად, ჩვენს კატეგორიაში - დაამატეთ თარიღი.

მარჯვენა:

ვიბრაცია
პროდუქტები ორგანიზაცია.თარიღი,
პროდუქციის ორგანიზაცია.ხარისხი

რეგისტრაცია Accumulation.ProductsOrganization YAK ProductsOrganization

დალიეთ თქვენი ტვინისთვის

ოპტიმიზაციისთვის მიუღებელია კავშირის გონებაში vikorystvovat podzapitki, რაც, შესაბამისად, აუმჯობესებს შეწოვის მუშაობას. ბაჟანო ასეთ ვიპადკებში ვიკორისტოვვატი ვ.ტ. შეერთებისთვის საჭიროა მეტამონაცემების ობიექტების და VT-ების ანალიზი, ჯერ მათი ინდექსირება შეერთების ველების მიხედვით.

არასწორი:

ვიბრაცია...

ლივოე ზედნანია (
ვიბრაცია ხედვის რეესტრიდან.
DE...
ჯგუფი...
) PZ...

მარჯვენა:

ვიბრაცია...
POST LIMITED
ქონების რეესტრიდან. ლიმიტი
DE...
ჯგუფი...
INDEXUVATI BY...;

ვიბრაცია...
Z Document პროდუქციისა და მომსახურების გაყიდვები
LEFT CONNECTION LIMITED
PZ...;

ჩანაწერების შეერთება ვირტუალური ცხრილებიდან

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

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

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

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

  1. ინდექსი ყველა ველის ჩასანაცვლებლად, ჩამოთვლილი გონებისთვის.
  2. ველის მნიშვნელობები ჩამოთვლილია ინდექსში.
  3. ეს შერჩევა ნელ-ნელა უნდა მოხდეს, რათა მნიშვნელობები არ „ჩაერიოს“ მათ შორის და არ მიიღონ მონაწილეობა კითხვაში.

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

Vikoristannya ლოგიკური ABO გონებაში

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

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

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

1. vikoristanny ოპერატორის სრული ფორმა.

წინა პუბლიკაციას მინიჭებული ფორმის კრემი:

ველი U (&ListValue),

ასევე, 1C ფილმებში დაშვებულია შესაბამისი ოპერატორის შემდეგი ფორმები:

1.ველი B (& მასივი)

2.ველი (&Value1,....&ValueN),

3.ველი (ვიბრატი…..)ან რამდენიმე სფეროსთვის:

(ველი1, ველი2) (Vibrati T.Field5, T.Field6 Z Table T), de T - ცხრილი (ფიზიკური, ვირტუალური და დრო)

4.ველი (&TableValue)-შიან რამდენიმე სფეროსთვის:

(ველი 1, ველი 2) U (&TableValue)

No3 შესვლის ვარიანტს პოდზაპიტი ეწოდება.

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

2.ოპერატორი იერარქიაში.

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

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

Request.Text = "VIBRATI Nomenclature.Posilannya Z Dovidnik.Nomenclature YAK Nomenclature.

ზაპიტი . SetParameter("Group1", Dovidniki. Nomenclature. Furniture);

შენიშვნა 1: თუ თქვენ მიუთითებთ ცარიელ ელემენტს ოპერატორის არგუმენტში იერარქიაში, არბიტრის ყველა ელემენტი შეირჩევა (შემდეგ იერარქიაში ოპერატორი ცვლის True-ს მნიშვნელობას არბიტრის ნებისმიერი ელემენტისთვის, რადგან ელემენტებს აქვთ იგივე ჯგუფი. მთავარია რეკვიზიტები ბატკო ცარიელია), მაგალითად: მოთხოვნა . SetParameter(" Group1", Dovidniki. Nomenclature. EmptyPosylannya());

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

3.მოთხოვნილია დიზაინერის Vikoristannya.

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

შეკითხვის კონსტრუქტორის ძირითადი უპირატესობები:

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

2. ველების სახელების და დეტალების ზუსტი ჩასმა (ისინი არ არის შეყვანილი ხელით, მაგრამ არჩეულია სიიდან).

3. ობიექტებს შორის ურთიერთქმედების გამარტივებული წარმოდგენა გონებას გააძლიერებს.

4. სარეცხის კანის ნაწილზე ნამუშევარი ფრთხილად იზოლირებულია (კანის რეცხვით სერიული რეცხვით ან თხევადი რეცხვით სასმელების რაუნდის დროს).

5. აბსოლუტურად სანდო მონაცემები ამ კონფიგურაციის „ორიგინალური“ ვირტუალური ცხრილების შესახებ.

4. თარიღებთან მუშაობა ბრძანებებში (თარიღი, მომენტი, საათი, საზღვარი)

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

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

დოქ

დოქ

დოქ = დოკუმენტები. პარაფია. შექმენით დოკუმენტი(); დოქ. თარიღი = LineDate(); Doc.Write();

დოქ = დოკუმენტები. ვიტრატა. შექმენით დოკუმენტი(); დოქ. თარიღი = LineDate(); Doc.Write();

და შემდეგ დაიწერება შემდეგი პოსტი:

შეუთავსეთ ყველაფერი

შეკვეთა თარიღის მიხედვით

ეს გვაძლევს საოცარ შედეგს:

საბუთები არ არის წესრიგში მათი შექმნის თანმიმდევრობით! ჩვენ შეგვიძლია შევცვალოთ დოკუმენტის დეტალები თარიღი დეტალებით მომენტის საათი შეკითხვაში და მიიღება უმოკლეს შედეგი:

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

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

როგორ გითხრათ ეს ამბავი:

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

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

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

მოთხოვნა SetParameter ( " პერიოდის დასასრული " , დასასრული (LineDate()));

ფაქტობრივად, ჭარბი მოცილება მითითებული იქნება მითითებული თარიღის საფუძველზე (ეს არის თარიღი + საათი). Yakshcho vrahuvat რომ თვის ბოლოს (თარიღი (2012, 10, 29)) = 10/31/0012 23:59:59

გამოდის, რომ ვადის დარჩენილ წამში ხელით (დოკუმენტები) ფორმირებული შეფუთვები დავკარგეთ და ზედმეტს თვის ბოლომდე წამით ადრე ვიღებთ და არა თვის ბოლოს! ეს ფუნქცია განსაკუთრებით ხშირად გამოიყენება ჭარბი მოცილებისთვის მცირე ჭარბი იმპორტის დროს (თუ დიდი რაოდენობის დოკუმენტები შეიძლება განთავსდეს ერთ წამში) და ორგანიზაციებში, რომლებიც მუშაობენ 7*24 რეჟიმში.

როგორ მოვაგვაროთ ეს პრობლემა:

ვარიანტი 1: დაამატეთ 1 წამი პერიოდის ბოლომდე:

მოთხოვნა SetParameter ( " პერიოდის დასასრული " , დასასრული(LineDate())+1);

ვარიანტი 2: სწრაფად მიიღეთ სპეციალურად შექმნილი კორდონი თქვენი ობიექტისთვის:

CordonPeriod = New Cordon(EndofMonth(LineDate())+ 1, TypeKorody. ჩათვლით);

ზაპიტი . SetParameter ("EndPeriod", CordonPeriod);

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

CordonPeriod = New Cordon(Document. Moment to Hour, Vidcordon. Including);

რადგან ამ დოკუმენტის ნანგრევები სავარაუდოდ ფუჭდება:

CordonPeriod = New Cordon(Document. Moment Hour, Border View. Inclusive);

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

5. შერჩევა დაჯგუფებიდან, ჩანთები.

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

ხელსაწყოები

ფაილი

შემდეგ თავდაპირველი არჩევანი ითხოვს:

ვიბირკა = იკვებება ვიკონატი (). ვიბრატი ();

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

ზაპიტი = ახალი ზაპიტი;

ზაპიტი . ტექსტი = "VIBRATI ნომენკლატურა. Posilannya YAK ნომენკლატურა Z Dovidnik. ნომენკლატურა YAK ნომენკლატურა

ჩანთები ნომენკლატურის მიხედვით ІЄARCHY";

ვიბირკა = მოთხოვნა.Viconati(). ვიბრაცია (მოთხოვნის შედეგის გვერდის ავლით. იერარქიასთან დაჯგუფებისთვის, „ნომენკლატურა“);

Show("Element=" + SelectDetails. Nomenclature);

KіnetsCycle;

KіnetsCycle;

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

ზაპიტი = ახალი ზაპიტი;

ზაპიტი . ტექსტი = "VIBRATI ნომენკლატურა. Posilannya YAK ნომენკლატურა, ნომენკლატურა. გაყიდული YAK გაყიდულია

Z Dovidnik ნომენკლატურა YAK ნომენკლატურა

ჩანთები ჩანთა (გაიყიდა)

პროგრამული ნომენკლატურა ІЄARCHY";

ვიბირკა = იკვებება ვიკონატი (). ვიბრაცია (მოთხოვნის შედეგის გვერდის ავლით. იერარქიასთან დაჯგუფებისთვის, „ნომენკლატურა“);

ნახვამდის ვიბირკა. Advance() მარყუჟი

გააზიარეთ ("Group =" + Vibirka. Nomenclature + "Sold =" + Vibirka. გაყიდულია);

SelectDetails = Select.Select (შეკითხვის შედეგის გვერდის ავლით. იერარქიასთან დაჯგუფებით, "ნომენკლატურა");

ნახვამდის Vibirkaდეტალები. Advance() მარყუჟი

გააზიარეთ (" Item =" + Select Details. Item + "Sold=" + Select Details. გაყიდულია);

KіnetsCycle;

KіnetsCycle;

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

შენიშვნა 2: უფრო დიდი სტრუქტურის მქონე ბრაუზერზე გადასასვლელად (სტრიქონების რაოდენობა > 2), შეგიძლიათ გამოიყენოთ სწრაფი რეკურსია, მაგალითად:

……………………..

ვიბირკა = მოთხოვნა.Viconati(). ვიბრაცია (მოთხოვნის შედეგის გვერდის ავლით. იერარქიასთან დაჯგუფებისთვის);
VibratiRecursive(Vib_rka);

………….
კინეტების პროცედურები

პროცედურა VibratiRecursively (Vibirka)

Poki Vibirka.Offensive() Loop

გააზიარეთ (ვიბირკა. ნომენკლატურა + "რაოდენობა =" + ვიბირკა. გაყიდულია);

// შეეცადეთ წაშალოთ ბავშვის ჩანაწერები

SelectRecursively(Vib.Vibrate(BypassResultRequest.ForGroupedSeriearchy);
KіnetsCycle;
კინეტების პროცედურები

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

ValueValueFormProperties(Result. Vivantage(BypassResultRequest.For GroupedSeriearchy, "Tree"));

ხე = შედეგი. Vivantage (მოთხოვნის შედეგის გვერდის ავლით. იერარქიასთან დაჯგუფებისთვის);

6. დროის ცხრილები, პარტიული მოთხოვნები.

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

დროის ცხრილიდან მონაცემების ამოღების მიზნით გამოიყენება POST ოპერატორი, რომელიც იწერება მოთხოვნაში VIBRATE და Z ოპერატორებს შორის. შეკითხვის შუა რიცხვებში დამატებულია ერთ რიგში:

////////////////////////////////////////////////////////////

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

პაკეტის კვების სქემა:

1 ჩანაწერში აშკარად ჩანს გაყიდული საქონლის ახალი გადაცემა და თითოეული ნივთის გაყიდვის მაქსიმალური თარიღი,

მე-2 ჩანაწერში ირჩევთ კანის ნომენკლატურას; პირველი ჩანაწერიდან გაყიდვის დოკუმენტს თარიღით, რომელიც უფრო ძველია, ვიდრე ამ მაქსიმალური ნომენკლატურისთვის.

VIBRATE პროდუქტის გამოშვება.ნომენკლატურა, მაქსიმუმ(პროდუქტის გაყიდვა.პოზიცია.თარიღი) YAK თარიღი

პომისტიტი თარიღი

Z Document გაყიდვების პროდუქტები YAK Sales Products

ᲘᲗ ᲓᲐᲯᲒᲣᲤᲔᲑᲐპროდუქციის გაყიდვები.ნომენკლატურა

////////////////////////////////////////////////////////////

ვიბრაცია თარიღი.ნომენკლატურა, თარიღი.თარიღი, MAXIMUM(Implementation.Posylannya) YAK Posilannya

Z თარიღი YAK თარიღი

შიდა კავშირი Document.Implementation YAK Implementation

PZ Date.Date = Implementation.Date

ᲘᲗ ᲓᲐᲯᲒᲣᲤᲔᲑᲐგანხორციელება.

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

7. რიცხვთა თანმიმდევრობა, თარიღები.

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

VIBRATI Digit.Field1 YAK Digit

POMISTITI ციფრები

Z (VIBRATI 1 YAK Field1

შეუთავსეთ ვიბრაცია 2

შეუთავსეთ ვიბრაცია 3

შეუთავსეთ ვიბრაცია 4

შეუთავსეთ ვიბრაცია 5

შეუთავსეთ ვიბრაცია 6

შეუთავსეთ ვიბრაცია 7

შეუთავსეთ ვიბრაცია 8

შეუთავსეთ ვიბრაცია 9

შეუთავსეთ ვიბრაცია 10) YAK Tsifri

VIBRATI (ციფრები.ციფრი - 1) + (ციფრები1.ციფრი - 1)* 10+ (ციფრები2.ციფრი - 1)* 100 YAK ნომერი

DE (ციფრები.ციფრები - 1) + (ციფრები1.ციფრები - 1)* 10+ (ციფრები2.ციფრები - 1)* 100<= 959

შეუკვეთეთ ნომრით

თარიღი: ქმნის თარიღების თანმიმდევრობას Date1-დან Date2-მდე. ის მუშაობს ანალოგიურად, შეგიძლიათ ან დააწკაპუნოთ 3 სტრიქონში (პირველი და მეორე, როგორც არჩეულ აპლიკაციაში, მაგრამ არ აირჩიოთ შედეგი, არამედ განათავსოთ იგი დროის ცხრილში) ან 2 სტრიქონში სხვა ჩანაწერის შეცვლით. პაკეტი ამისთვის:

VIBRATI DODATIKDATE (&თარიღი1, დღე, (ციფრები.ციფრი - 1) + (ციფრები1.ციფრი - 1)* 10+ (ციფრები2.ციფრი - 1)* 100) YAK თარიღი

Z Tsifri YAK Tsifri, Tsifri YAK Tsifri1, Tsifri YAK Tsifri2

DE DODATIKDATE (&თარიღი1, დღე, (ციფრი.ციფრი - 1) + (ციფრი1.ციფრი - 1)* 10+ (ციფრი2.ციფრი - 1)* 100)

შეკვეთა თარიღის მიხედვით

Შენიშვნა: ბუნებრივია, ეს სწორად იმუშავებს მხოლოდ თარიღს Date1 და Date2 შორის არა უმეტეს 999 დღისა.

8.სხვადასხვა მონაცემები ცხრილიდან და ჩანაწერის მნიშვნელობა.

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

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

2.შეავსეთ ცხრილი გაყიდვების მონაცემების მნიშვნელობებით.

3. ჩანაწერში ჩაატარეთ ნომენკლატურის ძიება.

კონდახის კოდი 1 და 3 ეტაპისთვის:

ტიპიური ცხრილის შექმნა ნიშნავს:

// შექმენით აღწერითი ტიპები მნიშვნელობების ცხრილისთვის

KCHK = New QualifierNumbers (14, 3);

KCHShK = New QualifierNumbers (13, 0);

მასივი = ახალი მასივი;

მასივ . Addati (ტიპი ("ნომერი"));

ტიპების აღწერა = ტიპების ახალი აღწერა (Masyv, KCHK);

მასივ . Clear();

მასივ . Addati (ტიპი ("ნომერი"));

ტიპების აღწერა ჩშ = ტიპების ახალი აღწერა (Masiv, KCHShK);

// ცხრილის მნიშვნელობის შექმნა

TableValue = ახალი TableValue;

// დაამატეთ ორი სვეტი ცხრილს

TableValue. Columns.Addati("შტრიხკოდი", DescriptionTypesCHSh, "შტრიხკოდი", 13); TableValue. Სვეტები. დამატება ("გაყიდული", აღწერა TypeivChK, "გაიყიდა", 14);

მოძებნეთ ნომენკლატურები მოთხოვნით:

ზაპიტი = ახალი ზაპიტი;

Request.Text = "VIBRATI TZ.შტრიხკოდი, TZ.QUALITY

POST TK

Z &TZ YAK TZ

////////////////////////////////////////////////////////////////////////////////

VIBRATI TZ.QUALITY YAK ObsyagSales, Nomenclature.Posilannya YAK Posilannya

Z TZ YAK TZ

შიდა კავშირიდოვიდნიკის ნომენკლატურა YAK ნომენკლატურა

BY TK.შტრიხკოდი = ნომენკლატურა.შტრიხკოდი";

ზაპიტი . SetParameter ("TZ", TableValue);

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

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


Პატარა 1

სიები

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

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

Პატარა 1

დახარისხების მექანიზმი

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

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

Პატარა 2

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

Პატარა 3

Პატარა 4

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

Პატარა 5

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

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

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

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

შერჩევის მექანიზმი

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

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

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

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

მარაგებზე შერჩევისა და დახარისხების მექანიზმები

შევეცადოთ შევქმნათ რამდენიმე დავალება დემო მონაცემთა ბაზიდან („ბიზნეს ბუღალტერია“, გამოცემა 1.6). მაგალითად, კონტრაგენტისთვის „Simon and Schuster TOV“-სთვის გენერირებული დოკუმენტები შეგვიძლია ვიხილოთ ჟურნალიდან „Buyers' Documents“. დაუყოვნებლივ ნათელია, რომ შერჩევის წესები და ლოგიკა აღწერილია, როგორც სტანდარტი 1C:Enterprise 8.1 პლატფორმისთვის, რაიმე კონკრეტულ კონფიგურაციასთან და მასში განხორციელებულ დამატებით სერვისულ შესაძლებლობებთან მიბმულობის გარეშე.

მოდით გავხსნათ დოკუმენტური ჟურნალი "მყიდველების დოკუმენტები". სტანდარტულ ხედში, არჩეული შერჩევის გარეშე, ყველა მყიდველის ყველა დოკუმენტი ნაჩვენებია ეკრანზე (დემო მონაცემთა ბაზაში ეს ერთზე მეტ გვერდს იკავებს).

ჩვენ სწრაფად უნდა გადავხედოთ კონტრაგენტის "Simon and Schuster TOV"-ის ყველა დოკუმენტს. დავალება ხორციელდება ამ გზით - გახსენით შერჩევის ფანჯარა, აირჩიეთ კონტრაგენტი "Simon & Shuster TOV" მრჩეველიდან (სურ. 6) "კონტრაგედი" ელემენტში და დააწკაპუნეთ "OK". Zavdannya virishene (სურ. 7).

Პატარა 6

Პატარა 7

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

დაუბრუნდით მათ, ვინც შეკვეთის დროს აფასებს შერჩევის ელემენტებს (ჩვენს მაგალითში, კონტრაგენტი არის Simon და Schuster TOV), მათ უმეტესობას აქვს სწრაფი შერჩევის მექანიზმი, რომელიც ფართოდ გამოიყენება 1C:Pidpri პლატფორმაზე Capacity 8.1". ჩვენს აპლიკაციაში საკმარისი იყო კონტრაქტორის სახელის ან კოდის პირველი სიმბოლოები პირდაპირ შერჩევის ველში ჩაგვეწერა, დააჭირეთ Enter ან Tab და სისტემა ავტომატურად „გამოიცნო“ საჭირო დოკუმენტის ელემენტი.

გთხოვთ გაითვალისწინოთ - სწრაფი შერჩევა დააჩქარებს თქვენთვის ნაცნობი მნიშვნელობების შერჩევას. ვიკორისტა იოგო, დე ცე მოჟლოვო.

აქ არის ნომენკლატურის სია, რომელთა სახელებში შედის სიტყვა "ჩაიდანი". რისთვისაც ხსნით „Nomenclature“ ბრაუზერს, დააჭირეთ შერჩევის ფანჯარას, „Name“ ელემენტში აირჩიეთ მენტალური დონე „Revenge“ და მიუთითეთ საჭირო სიტყვა (სურ. 8).

Პატარა 8

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

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

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

Პატარა 9

მრჩეველის ელემენტებთან მუშაობის გასაადვილებლად სხვადასხვა არჩევანის შერჩევისას, უმჯობესია ნებისმიერ დროს ჩართოთ იერარქიის ჩვენება (სურ. 10).

Პატარა 10

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

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

Პატარა თერთმეტი

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

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

განხორციელების რამდენიმე მეთოდი არსებობს. როგორც ჩანს, ყველაზე ეფექტური. გახსენით ჟურნალი „მყიდველთა დოკუმენტები“ და „დოკუმენტის გარეგნობის“ შერჩევის ელემენტში მიუთითეთ დოკუმენტი „სოფლის ინვოისი“. ამ პუნქტის შემდეგ არჩევანში "კონტრაგენტი", მითითებულია კორექტირების ტიპი "ჯგუფში". შეარჩიეთ ღირებულების ტიპი „კონტრაგენტები“ და გახსენით კონტრაგენტების არჩევის ფორმა. მისგან ვაგროვებთ ჯგუფს „მყიდველები“ ​​(სურ. 12).

Პატარა 12

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

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

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

Პატარა 13

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

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

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

შემდეგი, ჩვენ ვაწესებთ შერჩევის კრიტერიუმებს ნომენკლატურის განყოფილებაში. აქ სხვა საკვების ბრალია - როგორ ავირჩიოთ „STINOL“, თუ ირჩევთ ნომენკლატურას ძლიერი განსხვავების მისაღწევად (ხელმისაწვდომია „რივნე“, „არა თანაბარი“, „სიაში“ და „სიაში არ არის“). ასეთი გონებისთვის მემკვიდრეობის მოგება შესაძლებელია. ვირჩევთ „სიიდან“, ვხსნით სიის შევსების ცნობილ ფანჯარას და მეთოდით ვირჩევთ ნომენკლატურას (სურ. 14, 1). ნომენკლატურის სიას შეიძლება ჰქონდეს ელემენტების დიდი რაოდენობა, ამიტომ არის ბევრი საჭირო ელემენტი. სწრაფად შეარჩიეთ ნომენკლატურის სიიდან ნომენკლატურის დასახელების სმარტ არჩევანში „შემცირებული“ შეყვანით (სურ. 14, 2).

Პატარა 14

ამის შემდეგ აღარ მოგიწევთ დოკუმენტების შერჩევის სიაში ელემენტების შერჩევის დამატება და შერჩევის კრიტერიუმების დაყენება.

შერჩევის მექანიზმის ძირითადი ფუნქციები

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

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

Პატარა 15

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

Პატარა 16

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

Პატარა 17

Პატარა 18

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

Პატარა 19

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

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

1. დიზაინი „ІЗ“.

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

ვიბრატი დოვიდნიკი.ბანკები.*

ირჩევს ყველა ველს ბანკების მრჩეველისგან. І მსგავსია შემდეგი:

ვიბრატი ბანკები. * ზ დოვიდნიკი. ბანკები YAK Banks

2. მონაცემების დალაგება პოზიტიური ველის მიხედვით

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

დოკუმენტების ამ ვარიანტში, შეკვეთა იქნება თანმიმდევრობით „თარიღი-> ნომერი“ „მთავარი წარდგენის“ უკან არსებული დოკუმენტებისთვის. თუ შეკვეთა არ შესრულდა ინსტრუქციის მიხედვით, მაშინ "AUTO ORDER" დიზაინის გამოყენება არ არის რეკომენდებული.

ზოგიერთ სიტუაციაში „AUTO ORDER SENSING“ დიზაინს შეუძლია გააუმჯობესოს შერჩევის პროცესი. ანალოგიურად, შეგიძლიათ გადაწეროთ დოკუმენტების ავტომატური შეკვეთის გარეშე:

3. Ottrimannya ტექსტის მონაცემთა ტიპი posilannya. "PRESENTATION" დიზაინი.

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

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

4. გადავწყვიტე შემერჩია მონაცემები შაბლონისთვის.

მაგალითად, თქვენ უნდა დაიჭიროთ მობილური ტელეფონები ჯანდაცვის მუშაკებისგან (8-123-456-78-912). რისთვისაც საჭიროა შემდეგი აზრის დასმა კითხვაზე:

VIBRATE Spivrobitnik.Name, Spivrobitnik.Phone YAK Phone Z Dovidnik.Spivrobitniki YAK Spivrobitniki DE Phone SIMPLY "_-___-___-__-__"

სიმბოლო "_" სასარგებლოა და ცვლის ნებისმიერ სიმბოლოს.

5. ჩანთების ერთდროული შერჩევა და დაჯგუფება.


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

VIBRATI NadannyaService.Organization YAK Organization, NadannyaService.Nomenclature YAK Nomenclature, SUM (NadannyaService.SumaDocument) YAK SumaDocument Z Document.NadannyaService YAK NadannyaService GROUP BY NadannyaService. , ორგანიზაცია, ნომენკლატურა

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

VIBRATI Nadannya სერვისი. ორგანიზაცია YAK ორგანიზაცია, Nadanya Service. ნომენკლატურა YAK Nomenclature, Nadannya Service.

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

6. მინდვრების როზიმინაცია.

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

იკითხე:

თქვენ შეგიძლიათ ნახოთ ერთი შეხედვით:

VIBRATE Payment.Post, Payment.Organization, Payment.Organization, Organization. ადმინისტრაციული ერთეული 3 დოკუმენტი. გადახდა YAK გადახდა LIVOE Z'EDNANNYA Dovidnik. ორგანიზაციები YAK ორგანიზაციები PZ გადახდა.

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

მაგალითად, არსებობს „გაუმჟღავნებელი გადახდების“ დაგროვების რეესტრი, რეესტრს შეუძლია გამოიყენოს მთელი რიგი დოკუმენტები. ამ შემთხვევაში არასწორია რეგისტრატორის დეტალების მნიშვნელობების ამოღება შემდეგი გზით:

VIBRATE UndividedPayment.Registrar.Date, ..... რეესტრიდანAccumulation.UnundivedPayment YAK UnroddedPayment

კვალი მოიცავს დაკეცილი საველე რეგისტრატორის ტიპს:

ვიბრაცია VIRASITI(არაქვეგანყოფილებაგადახდა.რეგისტრატორი YAK დოკუმენტი.გადახდა).თარიღი, ..... რეესტრიდან დაგროვება.არაქვეგანყოფილებაგადახდა YAKNon-subdivisionPayment

7. დიზაინი "DE"

როდესაც მარცხენა აერთებს ორ ცხრილს, თუ მარჯვენა მაგიდაზე დააყენებთ "DE", მაშინ მივიღებთ შედეგის მსგავს შედეგს შიდა ცხრილის მიერთებით.

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

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

VIBRATE Payment.Poslannya YAK გადახდა, გადახდა.აქციონერი YAK Client PLACE გადახდა Z Document.Payment YAK Payment DE Payment.Division = &Division; //////////////////////////////////////////// /////////////////////////// VIBRATE Client. Message YAK Client, NULL(toPay.Payment, "") YAK Payment Z მრჩეველი .კლიენტები როგორც კლიენტებმა დატოვეს კავშირი TOPAY როგორც TOPAY CLIENT.POSILANNA = TOPAY.CLIENT

თქვენ შეგიძლიათ ამ გონების გარშემო სხვა გზით გადალახოთ. ორ ცხრილს შორის ბმულში აუცილებელია „DE“-ს ჩასმა. კონდახი:

ვიბრატის კლიენტები. Posilannya, გადახდა. Posilannya Z Dovidnik. გადაიხადე. პოსილანნია

8. წყობილ და ვირტუალურ ცხრილებთან დაკავშირება

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

ამ მიზეზით, ჩვენ უნდა გამოვიტანოთ ზედმეტი თანხა გარკვეული კლიენტებისთვის ზუსტ თარიღში.

Vibrate არაკონტროლირებადი დანაყოფები sublus.client, არაკონტაქტური დანაყოფებისთვის sublus.amountexcess from (vibrate მომხმარებლებისგან. Poslanniya როგორც poslannya z dovdnik.clients როგორც კლიენტები de clients.posilyanya b (& client i)) yak extesrequests yak nerozpodіlenі. Posilannya = ჭარბი თანხის გადაუხდელობა.

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

SELECT კლიენტები შეტყობინება YAK Posted PLACE Clients Z Adviser Clients YA Clients DE
Posilannya V (& კლიენტები); //////////////////////////////////////////// /////////////////////////// VIBRATE კლიენტები. Posilannya, Nerozpodіlenі გადაიხადეთ ჭარბი. (, კლიენტი B (VIBRATI client.Postalnya კლიენტისგან)) YA UndividedPaymentBalances BY client.Postal = UndividedPayBalance.Customers

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

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

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

VIBRATE Clients.Post YAK Poslannya PLACE კლიენტები Z Advirnik.Clients YAK Clients INDEX BY Posting DE
Posilannya V (& კლიენტები); //////////////////////////////////////////// ////////////////////////////////////Crate არაკონტაქტური გადასახადები. ნაღდი ფულის ოდენობა, განუყოფელი გადახდა. კლიენტი B (VIBRATI კლიენტი. შეტყობინება კლიენტისგან)) YAK განუყოფელი გადახდის დაჯავშნა; //////////////////////////////////////////// /////////////////////////// VIBRATE clients.Poslannya, surpluses.SumaZalishok YAK SumaZalishok Z tclients YAK tclients tclients.Posilannya = tBalishki.Client

9.გაკეთდება შედეგის გადამოწმება.

გაანგარიშების შედეგი შეიძლება იყოს ცარიელი; ცარიელი მნიშვნელობების შესამოწმებლად, მიჰყევით შემდეგ კონსტრუქციას:

ResRequest = Request.Execute(); Yakshto resRequest.Empty() Todi Turn; KinetsYakscho;

მეთოდი ცარიელი () Slide vikoristova მეთოდები ვიბრატი ()ან კიდევ VivantAgility (), ამიტომ კოლექციის დალაგებას ერთი საათი სჭირდება.

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

ზაპიტი = ახალი ზაპიტი; Query.Text = "VIBRATI | Clients.Posylannya, | Clients.DateNation |Z | Document.Clients YAK Clients |DE | Clients.Posylannya = &კლიენტი"; კანის რიგისთვის Table Client Cycle Request.SetParameter("კლიენტი", კლიენტი); ResultResult = Request.Viconati().Vibrati(); KіnetsCycle;

სასარგებლოა ციკლში სინტაქსური შემოწმების სისტემის დამატება.

11. „მაიუჩი“ დიზაინი.

დიზაინი, რომელიც იშვიათად ხვდება აპლიკაციებში. საშუალებას გაძლევთ დაფიქრდეთ მთლიანი ფუნქციების მნიშვნელობებზე (SUMA, MINIMUM, AVERAGE და ა.შ.). მაგალითად, თქვენ უნდა აირჩიოთ მხოლოდ ის კლიენტები, რომელთა გადახდის თანხები უფრო დიდი იყო 13,000 რუბლისთვის. თუ თქვენ აირჩევთ ფულს „DE“, მაშინ დაუყოვნებლივ მოგიწევთ შექმნათ დროის ცხრილი ან მონაცემები, იქნება დაჯგუფებული ჩანაწერები გადახდის ოდენობის მიხედვით და შემდეგ დაამატეთ ფული. "MAYUCHI" დიზაინი ეხმარება ამ უნიკალურობის მიღწევას.

VIBRATE Payment.Client, AMOUNT(Payment.Amount) YAK თანხა Z Document.Payment YAK გადახდა DE MONTH(გადახდის თარიღი) = 9 GROUP BY გადახდის მიხედვით.

დიზაინერისთვის საკმარისია გადახვიდეთ "გონება" ჩანართზე, დაამატოთ ახალი გონება და შეამოწმოთ ველი "Advanced". უბრალოდ დაწერე თანხა (გადახდა. თანხა) > 13000


12. NULL მნიშვნელობა

აქ ვერ აღვწერ მონაცემთა ბაზაში სამ ღირებულების ლოგიკის პრინციპებს და ამ თემაზე სტატიები არ არის. მოკლედ იმ იაკების შესახებ NULLშეგიძლიათ შეიყვანოთ შედეგი. მნიშვნელობა NULL ნამდვილად არ არის მნიშვნელოვანი და ის ფაქტი, რომ მნიშვნელობა არ არსებობს, უცნობია. ამიტომ, NULL-ით ნებისმიერი ოპერაციები აბრუნებს NULL-ს, როგორიცაა დამატება, ქვედანაყოფი, გაყოფა ან გასწორება. NULL მნიშვნელობები არ შეიძლება NULL მნიშვნელობების გათანაბრება, სანამ ვიცით, რომ ჩვენ თვითონ უნდა გავათანაბროთ ისინი. ტობტო. დანაშაული და გათანაბრება: NULL = NULL, NULL<>NULL - არც სიმართლე და არც სისულელე, მაგრამ უცნობი.

მოდით შევხედოთ კონდახს.

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

ვიბრატი "გადახდა არ არის" YAK ნიშანი, NULL YAK დოკუმენტი POST გადახდა; //////////////////////////////////////////// /////////////////////////// VIBRATE Clients. Message as Client, Payment. Message as Client Payment ENTER clientPayment For Client.Clients YAK Clients LIVOE კავშირი Document.Payment YAK გადახდა კლიენტის მიერ.Posilannya = გადახდა.აქციონერი; //////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////. დოკუმენტი

სხვა დროის ცხრილში დაბრუნება: ClientPayment. ამ ინფორმაციით, მე ვირჩევ ყველა კლიენტს და ყველა გადახდას ამ კლიენტებისთვის. იგივე კლიენტებისთვის, რომლებიც არ ახორციელებენ გადახდებს, ველი "გადახდა" იქნება NULL. ლოგიკის მემკვიდრეობით, პირველ დროის ცხრილში „გადახდა“ მე მივანიშნე 2 ველი, მათგან ერთი არის NULL, მეორე არის სტრიქონი „გადახდების გარეშე“. მესამე ცხრილში იძულებით ვუკავშირდები "ClientPayment" და "ToPay" ცხრილებს "გადახდა" და "დოკუმენტი" ველების გამოყენებით. ვიცით, რომ პირველ ცხრილში „დოკუმენტის“ ველი არის NULL, ხოლო მეორე ცხრილში, ვისაც გადახდები არ აქვს, ველი „გადახდა“ ასევე არის NULL. რატომ უნდა გავერთიანდეთ ასე? მაგრამ არაფრის უკან დაბრუნება არ შეიძლება. იმის გამო, რომ გათანაბრება NULL = NULL არ წარმოქმნის მნიშვნელობას True.

შედეგის მოთხოვნის მიზნით, გადავიწეროთ:

ვიბრატი "გადახდა არ არის" YAK Sign, VALUE (Document.Payment.EmptyPosylannya) YAK Document POST გადახდა; //////////////////////////////////////////// /////////////////////////// VIBRATE Clients.Sent As Client, NULL(Payment.Sent, VALUE(Documentary.Payment.EmptyPosilannya)) ) YAK Payment POST ClientPayment for Advocate.Clients YAK Clients LEFT CONNECTION Document.Payment YAK გადახდა კლიენტის მიერ.Posilannya = გადახდა.აქციონერი; //////////////////////////////////////////// /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////. დოკუმენტი

ახლა სხვა დროის ცხრილში ჩვენ მივუთითეთ, რომ ჩამოსაშლელ სიაში, რადგან ველი „გადახდა“ არის NULL, მაშინ ეს ველი = ცარიელი გადახდა გადახდის დოკუმენტში გაგზავნილი. პირველ ცხრილში ჩვენ ასევე შევცვალეთ NULL ცარიელი გზავნილით. ახლა ჩვენ ავიღებთ არა-NULL ველის ნაწილს და შედეგს დაგვიბრუნებთ.

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

13. “VIBIR KOLI...TODI....KINETS” დიზაინის თავისებურება დაუსაბუთებელია.

როდესაც საჭიროა "Umovi"-ს კონსტრუქციის აღწერა, ჩვენ ვიყენებთ სტანდარტულ სინტაქსს:

VIBRATE VIBER KOLI Koristuvachi.Name = "Vasya Pupkin" TODI "ჩვენი საყვარელი spivrobitnik" წინააღმდეგ შემთხვევაში "ჩვენ არ ვიცით ასეთი რამ" KINETS YAK Field1 Z Dovdnik. Koristuvachi YAK

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

VIBIR MONTH (US_RozrahunokLife_Turnover Schedule. PeriodRozrahunku) KOLI 1 TODI "Sichen" KOLI 2 TODI "Lyutiy" KOLI 3 TODI "MARTY June" KOLI 7 TODI "Lipen" KOLI "8900000" TODI" Zhovten" KOLI 11 TODI "Leaf Fall" KOLI 12 TODI "Gruden"

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

14. პაკეტი არ არის vikonannya.


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

VIBRATI Koristuvachi.Posilannya YAK PIB, Koristuvachi.დაბადების თარიღი, Koristuvachi.Role PLACE in Koristuvachi Z Dovdnik.Koristuvachi JAK Koristuvachi; //////////////////////////////////////////// /////////////////////////// ვიბრატი კორისტუვაჩში. PIB, VT Koristuvachi. Დაბადების თარიღი; //////////////////////////////////////////// /////////////////////////// VIBRATI vtKoristuvachi.PIB, vtKoristuvachi.Role Z vtKoristuvachi JAK vtKoristuvachi GROUP BY vkoristuvachi.PIB, სამ. Დაბადების თარიღი

tPackage = Request.ExecutePackage();

TP_DateNarodzhennya = tPackage.Upload();
TP_Roles = tPackage.Vivantage();

mi bachimo-ს მსგავსად, შეგიძლიათ დაწეროთ პაკეტში და შედეგს მასივით მოეპყროთ. ეს კიდევ უფრო მკაცრია რეალურ ცხოვრებაში.

15. იფიქრეთ ჯგუფური რეცხვის შესახებ

მაგალითად, ჩვენ გვაქვს ჯგუფური მოთხოვნა, სადაც ჯერ ვხსნით ველებს: „სახელი, დაბადების თარიღი, კოდი“ „კორისტუვაჩის“ მრჩეველს და გვინდა ამ ველებიდან გონებრივად ამოვიტანოთ ჩანაწერები „ფიზიკური პირის“ მრჩეველისგან.

VIBRATI Koristuvachi.Physioba.სახელი YAK სახელი, Koristuvachi.Physosoba.თარიღი ეროვნება YAK თარიღი ეროვნება, Koristuvachi.Physioba.კოდი YAK კოდი PLACE in Koristuvachi Z Dovdnik.Koristuvachi YAK /////////// // //////////////////////////////////////////////////////////////////////// / ////////////// VIBRATI ფიზიკური ვალდებულება გამოქვეყნებულია YAK ფიზიკური ვალდებული Z მრჩეველის მიერ.

თქვენ შეგიძლიათ გამოიყენოთ თქვენი გონება ასე:

DE ფიზიკური გამჟღავნება.კოდი B (VIBRATI vtUsers.Code Z vtKoristuvachi) I ფიზიკური გამჟღავნება.სახელი B (VIBRATI vtKoristuvachi.კოდი Z vtKoristuvachi) I ფიზიკური გამჟღავნება.

ან შეგიძლიათ გააკეთოთ ეს ასე:

DE (Physical Individuals. Code, Physical Individuals. Name, Physical Individuals.

უფრო მეტიც, აზრამდე მისვლა ადვილია.

16. სწრაფი შეკითხვის კონსტრუქტორი „გონებისთვის“ ჯგუფური მოთხოვნებისთვის

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

„B“ დიზაინის შემდეგ აუცილებელია მკლავების განთავსება და მკლავებს შორის ცარიელი სივრცის (უფსკრული) დახურვა, სივრცის დათვალიერება და ნაკადის კონსტრუქტორზე დაწკაპუნება. დიზაინერს ექნება წვდომა ყველა პარტიული შეყვანის ცხრილზე. მიდგომა მუშაობს როგორც ვირტუალური რეესტრის ცხრილებზე, ასევე "გონების" ჩანართებზე. დაბოლოს, თქვენ უნდა მონიშნოთ ყუთი "P(vilna umova)" და შეიყვანოთ რედაქტირების რეჟიმი "F4".

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

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

upd1. ქულები 11,12
upd2. ქულები 13,14,15,16

ვიკორისტოვოვანი ლიტერატურა:
ენა "1C: Enterprises 8" - E.Yu. კრიშთალევა
პროფესიული განვითარება 1C:Enterprise 8" სისტემაში.

/// სიმღერის ველები 1s 8.3, 8.2&OnServer პროცედურა როგორ მოვაწყოთ ResultQueryFieldsOnServer() // მოთხოვნის შედეგად რიგების დასალაგებლად // Vikorist განყოფილება ORDER BY. // აუცილებელია პროდუქციის ჩვენება, შეკვეთილი // დაწყებული მზარდი ფერით და შემდეგ // კალორიული ცვლილებებისთვის.ზაპიტი = ახალი ზაპიტი ( "VIBRATI | დასახელება, | ფერი, | კალორიული შემცველობა | Z | Dovidnik. ნომენკლატურა |/// როგორ მოვაწყოთ შედეგი /// Viraz in 1s 8.3, 8.2&OnServer პროცედურა როგორ მოვაწყოთ სერვერზე მოთხოვნილი შედეგი() // ORDER განყოფილების ვიკორიზაცია შესაძლებელია//ვირაზი. // მაგალითად, ჩვენ ვუკვეთავთ პროდუქტებს // ცილების და ნახშირწყლების მაქსიმალური რაოდენობა// ერთად. ზაპიტი = ახალი ზაპიტი ( "VIBRATI | დასახელება, | ცილები, | ნახშირწყლები, | ცხიმები, | წყალი | Z | Dovdnik.Nomenclature | ORDER BY |); Viconati ZapitI VestiNaFormu(Zapit) ; კინეტების პროცედურები /// როგორ მოვაწყოთ შედეგი /// იერარქია 1-ებისთვის 8.3, 8.2&სერვერის პროცედურა როგორ მოვაწყოთ იერარქიის მიერ მოთხოვნილი შედეგი სერვერზე () // ცხრილებისთვის, რომლებსაც აქვთ ავტორიტეტი და იერარქია კომპლექტი // შესაძლებელია დალაგება იერარქიის მიხედვით. // მაგალითად, მნიშვნელოვანია ელემენტების ამოღება // დოვიდნიკი "ნომენკლატურა" ოკ // მათი პირდაპირი პოზიცია მრჩეველის იერარქიაში.ზაპიტი = ახალი ზაპიტი ( "VIBRATI | დასახელება | Z | Dovidnik. Smaki YAK Smaki |); Viconati ZapitI VestiNaFormu(Zapit) ; კინეტების პროცედურები /// როგორ მოვაწყოთ შედეგი /// აგრეგატული ფუნქციები დაჯგუფებულია 1-ებში 8.3, 8.2&სერვერის პროცედურა როგორ მოვაწყოთ მოთხოვნის შედეგი მთლიანი ფუნქციის მიხედვით სერვერზე() // განყოფილება შეკვეთილია შეძლებისდაგვარად // აგრეგატული ფუნქციები, როგორიცაა wikistan for // შედეგი დაჯგუფდება. // კანის ფერისთვის – აირჩიეთ მინიმალური კალორიული შემცველობა // პროდუქტი, რომელსაც აქვს ასეთი ფერი. შემდეგ კი ვახარისხებთ //მინიმალური კალორიული მნიშვნელობის გაზრდის შედეგი.ზაპიტი = ახალი ზაპიტი ( " ვიბრაცია | ფერი, | MINIMUM(Calorie) | Z | Dovidnik.Nomenclature | GROUP BY |); Viconati ZapitI VestiNaFormu(Zapit) ; კინეტების პროცედურები /// როგორ შევუკვეთოთ შედეგები ავტომატურად/// 1-ში 8.3, 8.2 &სერვერის პროცედურაზე YakPractice Auto-OrderingOn Server() // წინადადების ავტომატური შეკვეთა საშუალებას გაძლევთ ჩართოთ რეჟიმი // შეკვეთისთვის ველების ავტომატური ფორმირება // შედეგი იწერება. // ავტომატური შეკვეთა მიჰყვება შემდეგ პრინციპებს: // თუ განცხადებაში მითითებულია წინადადება ORDER BY, // შემდეგ მაგიდა იგზავნება კანზე, რომელიც მის მიერ არის ნათქვამი, // შეიცვლება ველებით, რომლებითაც ცხრილი უნდა იყოს დალაგებული // (დოვიდნიკი არის კოდი ან სახელი, დოკუმენტებისთვის - თარიღი //დოკუმენტი). თუ შეკვეთის ველი ეგზავნება იერარქიულ მრჩეველს, // შემდეგ ამ აგენტს მიენიჭება იერარქიული დახარისხება. // როდესაც წერთ ყოველდღიურ წინადადებას, შეუკვეთეთ, // წინააღმდეგ შემთხვევაში ეს არის PIDBAGS-ის წინადადება, მაშინ შედეგი დაიწერება // მდ. მინდვრების მოწესრიგება // IDBAGS პროგრამული საკვანძო სიტყვის შემდეგ, იგივე თანმიმდევრობით, // თუ შედეგები გამოქვეყნდა ველების მიღმა, ჩვენ ყველაფერს გავაკეთებთ, // შემდეგ ველების მიღმა ხდება ცხრილის დალაგება და ცხრილის დალაგება. // როდესაც ჩაწერთ ყოველდღიურ წინადადებებს, შეუკვეთეთ ისინი PIDBAGS-ის მიხედვით, // წინააღმდეგ შემთხვევაში არის წინადადება GROUP BY, მაშინ შედეგი დაიწერება // იქნება შეკვეთა მდინარის მახლობლად არსებული მინდვრების მიღმა, // იმავე თანმიმდევრობით, როგორც განხორციელდა დაჯგუფება // ველების მიღმა - მიზნისთვის, შემდეგ ველების უკან გონებისთვის დახარისხებისთვის, მაგიდა, // როგორ გაგზავნეს. // როცა ითხოვ ყოველდღიურ წინადადებებს // ORDER BY, PIDBAGS და GROUP BY, შედეგი იქნება // ველების მიხედვით დალაგება, ცხრილის ველების მიხედვით დალაგება, // მონაცემები შეირჩევა იმ ნომრიდან, რომლითაც ისინი გამოჩნდება თანმიმდევრობით. // როდესაც თქვენ ითხოვთ შურისძიებას PIDBAGS-ის, კანის რევანდის წინადადებაზე // ჩანთები ლამაზად არის მოწყობილი. // ქვემოთ მოცემულ განაცხადში ვახარისხებთ ველის მიხედვით Posilannya და vikorystvoemo // საკვანძო სიტყვა ავტომატური შეკვეთა. ცომუს სისტემა // შეცვალეთ Posted ველი ORDER BY განყოფილებაში დოკუმენტის თარიღით.ზაპიტი = ახალი ზაპიტი ( "VIBRATI | Posilannya | Z | დოკუმენტი. SaleEdi | მოწყობა |); Viconati ZapitI VestiNaFormu(Zapit) ; კინეტების პროცედურები /// გაერთეთ და გამოიყენეთ თქვენი კომპიუტერი