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

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

პერიოდული საინფორმაციო რეესტრის შედეგების მოგვარება

SCOPE: კონტროლირებადი პროგრამა, მობილური აპლიკაცია, ნორმალური პროგრამა.

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

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

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

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

აირჩიეთ ნომენკლატურა. სტატია, როგორც სტატია, ინტერესის ფასი. ფასი, როგორიცაა ფასი ,. . . საწყისი დირექტორიაში. ნომენკლატურა, როგორც რეესტრის ნომენკლატურა. PRICESNET. ცირკი-გრძელი (, viditiones \u003d & Vidzena) როგორც ფასები ფასი საკითხია. ნომენკლატურა \u003d ნომენკლატურა. Ბმული. . .

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

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

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

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

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

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

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

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

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

რეესტრს აქვს შემდეგი ჩანაწერები

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

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

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

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

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

რეგისტრაციისგან. ფასი. პრევენციული (და მოცეკვავე,), როგორც ტრანზიტის ფასი

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

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

რეგისტრაციისგან. ფასი. პრევენციული (და მოცეკვავე, პროდუქტი \u003d და საქონელი და მიმწოდებელი \u003d და მიმწოდებელი), როგორც pricerext

შედეგად, ჩვენ მხოლოდ ერთი ჩანაწერი მივიღებთ

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

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

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

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

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

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

რეესტრს აქვს შემდეგი ჩანაწერები

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

აირჩიეთ ფასი Surrenders. პერიოდი, როგორც ბოლო პერიოდი, ბოლო ფასი. პროდუქტი, როგორც საქონელი, pricerere- ხანგრძლივი. მიმწოდებელი, როგორც მიმწოდებელი, ფასი აღდგომა. თანხა, როგორც რეგისტრაციის ჯამი. ფასი. Circling როგორც ფასი Translated

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

პერიოდი | პროდუქტი | მომწოდებელი | თანხა

01/25/2017 | ფანქარი | შპს "ლესტრატი" | თხუთმეტი

02/01/2017 | ფანქარი | PJSC "საკანცელარიო" | 31.

02/01/2017 | გაუმკლავდეს | PJSC "საკანცელარიო" | 145.

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

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

რეგისტრაციისაგან. ფასი. ცირკი-გრძელვადიანი (& amp; dancer,) როგორც ფასი დაცული

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

პერიოდი | პროდუქტი | მომწოდებელი | თანხა

01.01.2017 | ფანქარი | შპს "ლესტრატი" | 10

01.01.2017 | ფანქარი | PJSC "საკანცელარიო" | 27.

01/03/2017 | გაუმკლავდეს | PJSC "საკანცელარიო" | 137.

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

რეგისტრაციისაგან. ფასი. ცირკი-გრძელვადიანი (amp; მოცეკვავე, პროდუქტი \u003d & amp; პროდუქტი და მიმწოდებელი \u003d & amp; მიმწოდებელი), როგორც ფასი თარგმნილია

შედეგად, ჩვენ მხოლოდ ერთი ჩანაწერი მივიღებთ

პერიოდი | პროდუქტი | მომწოდებელი | თანხა

01.01.2017 | ფანქარი | PJSC "საკანცელარიო" | 27.

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

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

43
Null - დაკარგული ღირებულებები. არ გაურკვეველია ნულოვანი ღირებულებით! Null არ არის ნომერი, რომელიც არ არის ტოლი სივრცე, ცარიელი ბმული, undefined. Null - ტიპის ფორმირების ღირებულება, ანუ. არსებობს null ტიპის და ერთადერთი მნიშვნელობა ამ ტიპის. Null ... 26
1C პლატფორმაში მონაცემთა ბაზის მაგიდებზე შეკითხვების ჩამოყალიბება და განხორციელება, სპეციალური ობიექტის პროგრამირების ენა გამოიყენება. ეს ობიექტი შეიქმნა ახალი მოთხოვნის დარეკვით. მოთხოვნა მოსახერხებელია ... 18
სტატიაში წარმოდგენილია სასარგებლო ტექნიკა, როდესაც მუშაობისას 1C v.8.2, ისევე როგორც ინფორმაცია, რომელიც არ არის კარგად ცნობილი შეკითხვის ენაზე. მე არ ვცდები, რომ მოთხოვნის ენის სრული აღწერა, მაგრამ მინდა მხოლოდ შეჩერება ... 13
მსგავსად - ოპერატორი შეამოწმეთ სიმებიანი მსგავსი ნიმუში. ანალოგი, როგორც SQL- ში. ოპერატორს, რომელიც საშუალებას გაძლევთ შეადაროთ მარცხნივ მითითებულ გამოხატვის ღირებულება, მარჯვენა მხარეს მითითებული თარგის სიმებიანი. გამოხატვის ღირებულება ...

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

პრობლემის ფორმულირება

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

გადაწყვეტილება

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

აირჩიეთ RealizatsiyaTovarovUslug.Ssylka, RealizatsiyaTovarovUslug.Valyuta, MAX (KursyValyut.Period) როგორც პერიოდი VTPeriodyUstanovkiKursov PUT თუ როგორ Dokument.RealizatsiyaTovarovUslug RealizatsiyaTovarovUslug მარცხენა შეუერთდეს RegistrSvedeniy.KursyValyut HOW TO KursyValyut RealizatsiyaTovarovUslug.Valyuta \u003d KursyValyut.Valyuta And RealizatsiyaTovarovUslug.Data\u003e \u003d KursyValyut.Period ჯგუფდება განხორციელების მომსახურება. Link, რომელიც ახორციელებს ქუჩაში. Svaluta; ////////////////////////////////////////////// // // ////////////////////////////////////////////////// ////////////////////////////////////// /// // // აირჩიეთ TveriodoresOstorekurs. Link, WTPeriodoresOstrovikurstovs.Valuta, Kursivalyut.KURS საწყისი WTPeriodorestorecars როგორც cluttering დამფუძნებლები მარცხენა დაკავშირებით registerings. Kashivalyuta როგორც coasting vaporiodine პარამეტრები

პროცედურის შეკითხვაზე:

  1. მიღების ვალუტის კურსის თითოეული დოკუმენტი. დოკუმენტები დაკავშირებულია ფიზიკურ მაგიდასთან "Kursiveyut". აქ თქვენ ყურადღება უნდა მიაქციოს კავშირი პირობები. ვალუტა უნდა იყოს თანასწორი, და თარიღი დოკუმენტის\u003e \u003d პერიოდში ინფორმაციის რეესტრში.
    ამგვარი კავშირის შედეგად, თითოეული დოკუმენტისთვის დამაკმაყოფილებელი სტრინგების კომპლექტი მიიღება: სავალუტო კურსის ყველა ჩანაწერი არა უგვიანეს დოკუმენტის თარიღზე.
    საბოლოო ეტაპი იქნება მაქსიმალური კურსის მისაღებად სტრიქონების დაჯგუფება. შედეგად, თითოეული დოკუმენტისთვის, სასურველი ვალუტის კურსის მონტაჟის საჭირო პერიოდი მიიღება (სავალუტო კურსის დამონტაჟების მაქსიმალური თარიღი, მაგრამ არა უმეტეს დოკუმენტის თარიღზე). შედეგი მოთავსებულია დროებითი მაგიდასთან cluttering სისტემები.
  2. კურსის მოპოვება. დროებითი მაგიდასთან ბრალდებით უკავშირდება "Krasvalyut" ფიზიკური მაგიდასთან. კავშირი ხდება დოკუმენტის ვალუტის მიხედვით და მეორე დროებითი მაგიდაზე განსაზღვრული კურსის შექმნის პერიოდში.