განაცხადის პაკეტი 1s 8.2 გამოყენებულია. უკაცრავად რომ გეკითხებით. ცხოვრების ისტორია

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

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

იკვებება ოპერაციის დიაგრამა

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

  1. იწერება ობიექტის შექმნა და იწერება ტექსტის ინსტალაცია;
  2. ელექტრომომარაგების პარამეტრების დაყენება;
  3. ვიკონანია დალევს იმ შედეგს;
  4. შედეგების განხილვას მოჰყვება მიღებული მონაცემების დამუშავება.

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

// ვარიანტი 1
ზაპიტი = ახალი ზაპიტი;
ზაპიტი . ტექსტი =
"ვიბრატი
| ვალუტის განაკვეთები.
| ვალუტის განაკვეთები.
| ვალუტა ვალუტა.კურსი
|ზ

|DE
;

// ვარიანტი 2
ზაპიტი = ახალი ზაპიტი(“ვიბრატი
| ვალუტის განაკვეთები.
| ვალუტის განაკვეთები.
| ვალუტა ვალუტა.კურსი
|ზ
| რეესტრი Vidomosti.KursiValut YAK KursiValut
|DE
| CursiCurrency.Currency = &Currency");

2. მითითებული პარამეტრების მნიშვნელობებზე გავლენას ახდენს მეთოდი SetParameter (< Имя>, < Значение>) . ტექსტში პარამეტრები მითითებულია სიმბოლოთი " & აირჩიეთ შერჩევის ვარიანტი შერჩევის განყოფილებაში (DDE განყოფილება) და ვირტუალური ცხრილის პარამეტრებში.

ზაპიტი);

3. ტექსტის შეყვანის და პარამეტრების დაყენების შემდეგ აუცილებელია რედაქტირების შედეგის რედაქტირება და გაუქმება. Viconnanny იქმნება Viconati() მეთოდის გამოყენებით, რომელიც ატრიალებს ობიექტს შედეგი Zapitu. შედეგი შეგიძლიათ იკითხოთ:

  • ამოიღეთ არჩევანი ვიბრატის მეთოდის გამოყენებით (< ТипОбхода>, < Группировки>, < ГруппировкиДляЗначенийГруппировок>) ;
  • ვივანტაჟიტის მნიშვნელობები ცხრილში, მნიშვნელობები ან ხის მნიშვნელობები დამატებითი ვივანტაჟიტის მეთოდისთვის (< ТипОбхода>) .

// მონიშვნის ამოღება

ვიბირკა = შედეგი Zapit. ვიბრატი();

// ცხრილის მნიშვნელობების მოძიება
შედეგი Zapit = Zapi. ვიკონატი ();
მაგიდა = შედეგი Zapit. ვივანტაჟიტი();

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

ბუვაი Vibirka .შეტევითი () ციკლი
Povidomiti (Vibirka.Course);
KіnetsCycle;

რობოტის საბოლოო მაგალითი შეიძლება ასე გამოიყურებოდეს:

// ეტაპი 1. შეიქმნა და ჩასმულია ტექსტში
ზაპიტი = ახალი ზაპიტი;
ზაპიტი . ტექსტი =
"ვიბრატი
| ვალუტის განაკვეთები.
| ვალუტის განაკვეთები.
| ვალუტა ვალუტა.კურსი
|ზ
| რეესტრი Vidomosti.KursiValut YAK KursiValut
|DE
| CursiCurrency.Currency = &Currency";

// ეტაპი 2. პარამეტრების დაყენება
ზაპიტი . SetParameter ("ვალუტა", VibranCurrency);

// ეტაპი 3. Vikonannya გარეცხავს და ამოიღებს შერჩევას
შედეგი Zapit = Zapi. ვიკონატი ();
ვიბირკა = შედეგი Zapit. ვიბრატი();

// შერჩევის გვერდის ავლით
ბუვაი Vibirka .შეტევითი () ციკლი
Povidomiti (Vibirka.Course);
KіnetsCycle;

საწყობის ტექსტი იკითხა

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

  1. კითხვის აღწერა- ველების ნაკადი და შერჩეული მონაცემები;
  2. სასმელების ინტეგრაცია- Virasis “UNIFY” და “UNIFY EVERYTHING”;
  3. შეკვეთის შედეგები- ვირაზ „შეკვეთა...“;
  4. აბაზანის ავტომატური მოწყობა- Viraz “AUTO ORDER”;
  5. ჩანთების აღწერა- ვირაზ “PIDBAGS… BY…”.

ობოვიაზკოვა მხოლოდ პირველი განყოფილებაა.

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

ენა 1C მხარს უჭერს vikoristan-ს გრაფიკი- ცხრილი, რომელიც გვიჩვენებს დანაზოგს დროის საათში დაზოგვის შედეგად.

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

VT მენეჯერი = ახალი დროის მენეჯერის ცხრილი;
ზაპიტი = ახალი ზაპიტი;
ზაპიტი . მენეჯერის გუნდის საათების ცხრილი = მენეჯერი VT;

ზაპიტი . ტექსტი =
"ვიბრატი
| ვალუტები
| ვალუტები
|POMISTTI ტელევალუტა
|ზ
| დოვიდნიკი. ვალუტა YAK ვალუტა »;

შედეგი Zapit = Zapi. ვიკონატი();

სხვა შეკითხვებში VT-Currency-ის დროის-საათის ცხრილის შესაცვლელად, აუცილებელია ამ მოთხოვნების მინიჭება დროის-საათის ცხრილის თავდაპირველ მენეჯერს - Manager VT.

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

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

// რობოტის კონდახი პარტიული სიმძლავრით
ზაპიტი = ახალი ზაპიტი;
ზაპიტი . ტექსტი =
"ვიბრატი
| ვალუტები
|ზ
| დოვიდნიკი. ვალუტა YAK ვალუტა
|;
| ვიბრაცია
| ნომენკლატურა. სახელი
|ზ
| Dovidnik.Nomenclature YAK Nomenclature";

ResultPacket = მოთხოვნა. Viconati Package();

TZ ვალუტა = შედეგი პაკეტში [0]. VivantAgility();
TZNomenclature = შედეგი პაკეტისთვის [1]. VivantAgility();

// კონდახით vikoristanya დროის ცხრილი სურათების შესვლისთვის
ზაპიტი = ახალი ზაპიტი;
ზაპიტი . ტექსტი =
"ვიბრატი
| პროდუქცია Posilannya YAK Product
|POST VT პროდუქტები
|ზ
| დოვიდნიკის ნომენკლატურა YAK
|DE
| Tovari.Vyrobnik = &Vyrobnik
|;
| ვიბრაცია
| VT Products.Product,
| PTU.Kilkist,
| PTU.ფასი,
| პროფესიული სასწავლებელი.Posilannya YAK DocumentNadhodzhennia
|ზ
| VTTovari YAK VTTovari
| LEFT CONNECTION Document.Product SupplyService.Products YAK პროფესიული სკოლა
| ON VTTovari.Product = PTU.Nomenclature"
;

ზაპიტი . SetParameter ( "ვირობნიკი", ვირობნიკი);

შედეგი Zapit = Zapi. ვიკონატი ();
ვიბირკა = შედეგი Zapit. ვიბრატი();

ბუვაი Vibirka .შეტევითი () ციკლი

KіnetsCycle;

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

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

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

  • მონაცემთა რეგისტრებისთვის:
    • ზრიზ პერშიხი (<Период>, <Условие>) - ყველაზე ადრეული ჩანაწერები დანიშნული თარიღისთვის;
    • ნარჩენებიდან (<Период>, <Условие>) - უახლესი ჩანაწერი დანიშნული თარიღისთვის;
  • დაგროვების რეესტრებისთვის:
    • ნარჩენები (<Период>, <Условие>) - დანიშნულ თარიღზე ნამეტი;
    • ბრუნვა (<НачалоПериода>, <КонецПериода>, <Периодичность>, <Условие>) - ბრუნვა პერიოდისთვის;
    • ჭარბი/ბრუნვა (<НачалоПериода>, <КонецПериода>, <Периодичность>, <МетодДополненияПериодов>, <Условие>) - ჭარბი და ბრუნვა პერიოდისთვის;
  • ბუღალტრული აღრიცხვისთვის:
    • ნარჩენები (<Период>, <УсловиеСчета>, <Субконто>, <Условие>) - ჭარბი განსაზღვრული თარიღისთვის ბაზრის, ვიმირიუვანისა და სუბკონტოს კონტექსტში;
    • ბრუნვა (<НачалоПериода>, <КонецПериода>, <Периодичность>, <УсловиеСчета>, <Субконто>, <Условие>, <УсловиеКорСчета>, <КорСубконто>) - ბრუნვა რახუნკუს, ვიმირიუვანის, კორ. რაჰუნკი, სუბკონტო, კორ. სუბკონტო;
    • ზალიშკივი/ბრუნვა(<НачалоПериода>, <КонецПериода>, <Периодичность>, <МетодДополненияПериодов>, <УсловиеСчета>, <Субконто>, <Условие>) - ჭარბი და ბრუნვა რახუნკუში, ვიმირიუვანსა და სუბკონტოში;
    • ბრუნვაDtKt(<НачалоПериода>, <КонецПериода>, <Периодичность>, <УсловиеСчетаДт>, <СубконтоДт>, <УсловиеСчетаКт>, <СубконтоКт>, <Условие>) - ბრუნვა რახუნკა Dt, რახუნკა Kt, Subconto Dt, Subconto Kt გაყოფის პერიოდისთვის;
    • RuhiSubconto (<НачалоПериода>, <КонецПериода>, <Условие>, <Порядок>, <Первые>) - რუხები ქვეკონტოს მნიშვნელობებთან ერთად;
  • როზრახუნკუს რეესტრებისთვის:
    • ბაზა (<ИзмеренияОсновногоРегистра>, <ИзмеренияБазовогоРегистра>, <Разрезы>, <Условие>) - განვითარების რეესტრის ძირითადი მონაცემები;
    • მონაცემთა გრაფიკა (<Условие>) - მონაცემთა გრაფიკა;
    • ActualPeriodDiya(<Условие>) - მოქმედების ფაქტობრივი პერიოდი.

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

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

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

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

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

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

ობიექტის სქემა

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

  • SetTextRequest (< Текст>) - აღადგენს Query Packet-ის ძალას ტექსტზე გაგზავნილი მოთხოვნის საფუძველზე;
  • OtrimatiTextZapitu() – აქცევს ფორმირებებს Packet Requests ტექსტის ძალაუფლების ბაზაზე;
  • KnowParameters () - აბრუნებს შეყვანის პარამეტრებს.

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

ᲬᲔᲡᲘᲗ
ვალუტები

გენერირებული კოდი შეიძლება ასე გამოიყურებოდეს:

Zapitu Scheme = New Zapitu Scheme;
პაკეტი 1 = ზაპიტუს სქემა. პაკეტის მოთხოვნები [0];
ოპერატორი 1 = პაკეტი1. ოპერატორები[0];
// დაამატა ძერელამ
RegisterTable = Operator1. ძერელა. დამატება( "დოვდნიკი.ვალუტები", "ვალუტა");
// დაემატა ველები
ველი პოზილანნია = ოპერატორი 1. მინდვრები გროვდება. Addati("ვალუტა.Posilannya", 0);
საველე კოდი = ოპერატორი 1. მინდვრები გროვდება. Addati ("ვალუტა.კოდი", 1);
// ველის მეტსახელების მითითება
პაკეტი 1 . სვეტები[0]. მეტსახელი = "ვალუტა";
პაკეტი 1 . სვეტები [1]. მეტსახელი = "კოდი";
// დაამატეთ თქვენი გონება
ოპერატორი 1 . ვიდბირი. დამატება( "არა მარკ ვიდალენია");
// დაამატეთ თანმიმდევრობით
პაკეტი 1 . შეკვეთა. Addati (FieldCode);
Zapitu ტექსტი = Zapitu სქემა. OtrimatiTextZapitu();

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

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

შეკითხვის კონსტრუქტორის აღწერა 1C 8-ის ოფიციალურ ვებსაიტზე: v8.1c.ru

ცხრილი და ველები; ; ; ; ; ; დეპოზიტები (განვითარების პროცესში).

პროგრამის კოდიდან 1s 8 შეკითხვის დიზაინერზე წვდომისთვის საჭიროა:

  • შექმენით ახალი
ზაპიტი = ახალი ზაპიტი;
  • ცარიელი მწკრივის დაყენება ტექსტზე
მოთხოვნა ტექსტი = "";
  • მოათავსეთ დათვის კურსორი თათებს შორის და დააჭირეთ მაუსის ღილაკს მარჯვნივ. გახსნილი კონტექსტური მენიუდან აირჩიეთ ელემენტი კონსტრუქტორს შეეკითხებადა სიახლეები Ისესაკვებისთვის შეიქმნება ახალი. თუ ტექსტი უკვე ჩაწერილია, უნდა დააჭიროთ შუაში ნებისმიერ ადგილას და დააჭიროთ კონსტრუქტორს ;

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

Გაკვეთილი 1.

შეკითხვის კონსტრუქტორი არის ვიკორისტანის უმარტივესი კონდახი.

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

ცხრილები და ველები.

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

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

No1 გაკვეთილის თეორიული ნაწილი ცხრილები და ველებიჩანართი

შედგება სამი განყოფილებისგან:Მონაცემთა ბაზა

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

  • საჭირო:
  • ან ორი დაწკაპუნებით მაგიდაზე;

ან სწრაფად გამოიყენეთ ">" ან ">>" ღილაკები. . ეს განყოფილება შეიცავს მონაცემთა ბაზის ყველა ცხრილს, რომლებზეც წვდომა შეიძლება შეკითხვის დასმისთვის;გაყოფის ზემოთ

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

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

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

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

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

No1 გაკვეთილის პრაქტიკული ნაწილი

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

დავიწყოთ ნომენკლატურით:

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

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

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

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

პაკეტის მოთხოვნები აღარ ჩანს 8.1.11.67.4 ვერსიაში.

ღერძის ტექსტი დაიწერება:

VIBRATI T1.ZN ადგილი VTწერილი Z (VIBRATI "A" YAK ZN აერთიანებს ყველა ვიბრაციას "B") YAK T1;

ვიბრაცია T1.ZN ადგილი VTSIFR Z (VIBRATI "1" YAK ZN COMBINE ALL VIBRATE "2") YAK T1;

VIBRATI TB.Zn, TC.Zn, TB.Zn+TC.Zn Z VTB ასოები YAK TB, VTCifri YAK TC

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

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

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

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

ადრე, თუ დროის ცხრილი არ იყო, ტექსტის დუბლირება მომიწია.

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

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

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

პაკეტის მოთხოვნების განცხადება 1c ვებსაიტზე შეგიძლიათ იხილოთ აქ: http://v8.1c.ru/overview/release_8_1_11/#Functional

ცხოვრების ისტორია

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

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

ასე რომ, მოდით დავამატოთ ყველა წარმატებული კერძების სია მაგიდას კოდიპომილოკი- არის მოწყალების და ძიების კოდი ზედიზედ.

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

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

Robomo მარცხენა კავშირი, სადაც კომპილაციის კოდი არის NULL, ჩვენ ვაძლევთ კომპილაციის კოდს. სხვა შეღავათები» .

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

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

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

უკაცრავად რომ გკითხავთ

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

პატარა გვიჩვენებს კონფიგურაციის სტრუქტურას.

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

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


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

დროის ცხრილები

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

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

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

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

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

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

პარტიული მოთხოვნა

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

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

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

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

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

აკრეფის შემდეგ შეცვალეთ შედეგების მასივი, რომ შეიცავდეს 3 ელემენტს. პირველი ორი არის ადგილების რაოდენობა ჩანაწერების დროის ცხრილში DocTCH და List of Products, მესამეს ექნება არჩევანი ველებიდან Doc_Quantity, Nomenclature და Reg_Quantity.

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

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

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

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

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

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

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

სუმა (სუმა) YAK სუმა,
ადგილი DocPrikhid



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

ვიბრაცია
ნომენკლატურა,
სუმა (კილკისტი) YAK Kilkist,
სუმა (სუმა) YAK სუმა,
ადგილი DocPrikhid

Document.Source ProductsService.Products
ჯგუფი ნომენკლატურის მიხედვით
;

ვიბრაცია
ნომენკლატურა,
სუმა (კილკისტი) YAK Kilkist,
სუმა (სუმა) YAK სუმა,
POMISTTI DocVitrata

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

;
ვიბრაცია
*

DokPrikhid YAK DokPrikhid
ზედნანიას გარეთ
DocVitrati YAK DocVitrati
PZ

რაც შეგიძლიათ გაითვალისწინოთ არის ის, რომ მესამე მოთხოვნა აერთიანებს ამ ორი მოთხოვნის მონაცემებს.

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

ვიბრაცია
DocPriod.ნომენკლატურა,
DocVitrata.ნომენკლატურა,





DokPrikhid YAK DokPrikhid
ზედნანიას გარეთ
DocVitrati YAK DocVitrati
PZ
DocIncoming.Nomenclature = DocVitrata.Nomenclature

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

ვიბრაცია
YAK ნომენკლატურა,
DocPrikhod.Kilkist YAK KolPrikhod,
DokPrihod.Suma YAK SumPrikhod,
DocVitrata.Quality YAK რაოდენობავიტრატი,
DocVitrata.Suma YAK SumVitrata

DokPrikhid YAK DokPrikhid
ზედნანიას გარეთ
DocVitrati YAK DocVitrati
PZ
DocIncoming.Nomenclature = DocVitrata.Nomenclature

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

ვიბრაცია
ЄNULL (დოკუმენტი შემომავალი. ნომენკლატურა, დოკუმენტი. ამოღება. ნომენკლატურა)
YAK ნომენკლატურა,
NULL (დოკუმენტი შემომავალი. რაოდენობა, 0) YAK შემომავალი,
ЄNULL(Doc.Incoming.Sum,0) YAK SumIncoming,
ЄNULL(DocVitrate.Quality,0) YAK KilkaVitrate,
Є NULL (Doc Vitrata. Sum, 0) YAK Sum Vitrata

DokPrikhid YAK DokPrikhid
ზედნანიას გარეთ
DocVitrati YAK DocVitrati
PZ
DocIncoming.Nomenclature = DocVitrata.Nomenclature