გარე ანგარიშის შექმნის მაგალითი 1s 8.3. გარე ანგარიშის დამატება მონაცემთა ბაზაში

17.11.2023

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

ანგარიშები და დამუშავება

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

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

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

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

  1. გარე დამუშავება – epf;
  2. გარე ანგარიში – erf.

გარე და ჩაშენებული ანგარიშები

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

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

ბრინჯი. 2

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

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

გარე ანგარიშის შექმნა

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

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

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

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

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

ბრინჯი. 3

ბრინჯი. 4

აქ ჩვენ ვხედავთ:

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

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

განლაგების დიაგრამა

ანგარიშის შესაქმნელად ACS-ის გამოყენება მნიშვნელოვნად ამარტივებს დეველოპერის მუშაობას:

  1. არ არის საჭირო დაფიქრება და ობიექტის ფორმის შექმნა;
  2. ნაჩვენები ფორმის შერჩევა, დაჯგუფება, სვეტები შეიძლება დინამიურად შეიცვალოს მომხმარებლის რეჟიმში;
  3. შესაძლებელია საბოლოო ცხრილის წარმოქმნის რამდენიმე ვარიანტის შექმნა და შენახვა.

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

ბრინჯი.
5

სქემა ინახება ობიექტების განლაგებაში.

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

გარე ობიექტების რეგისტრაცია მონაცემთა ბაზაში

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

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

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

ბრინჯი. 6

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

ინფორმაციასთან ერთად ფუნქციის გარდა, აქ არის წარმოდგენილი: კიდევ ერთი პროცედურა (Add Command) და ფუნქცია (Get Command Table). მათი შინაარსი ნაჩვენებია ნახ. 7

ბრინჯი. 7

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

1. შექმენით ანგარიში

უპირველეს ყოვლისა, მოდით შევქმნათ გარე ანგარიშის ფაილი ამისათვის, მოდით გადავიდეთ 1s 8-ზე კონფიგურატორი, მოდით გადავიდეთ მენიუში ფაილი -> ახალი, ან დააწკაპუნეთ ხატულაზე ახალი დოკუმენტი.

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

2. შექმენით გარე ანგარიშის განლაგება

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

ჩვენი განლაგება იქნება 4 სფერო:

  • Header - ამ ზონაში გამოვაჩენთ ანგარიშის სახელს, პერიოდს, რომლისთვისაც იგი შეიქმნა და ცხრილის სათაურს;
  • კონტრაგენტის მონაცემები - ამ ზონაში ჩვენ გამოვაჩენთ მონაცემებს კონტრაგენტზე ცხრილში;
  • DataCounterparty Agreement - ამ ზონაში ჩვენ გამოვაჩენთ მონაცემებს კონტრაგენტის ხელშეკრულების შესახებ ცხრილში;
  • ქვედა კოლონტიტული - ამ ზონაში ჩვენ გამოვაჩენთ მთლიანი ანგარიშის მთლიან მნიშვნელობებს შემოსავლისა და ხარჯების ველებისთვის.

დავიწყოთ განლაგების ზონების შექმნა. განლაგებაში არეალის შესაქმნელად აირჩიეთ ხაზების საჭირო რაოდენობა და დააწკაპუნეთ მენიუს ცხრილი -> სახელები -> სახელის მინიჭება(ან Ctrl + Shift + N). რეგიონისკენ Capმოდი დავწეროთ მოხსენების სახელი: ბრუნვა 62 ითვლის, დახაზეთ ხელსაწყოს გამოყენებით საზღვრებიანგარიშის სათაური და ასევე დააყენეთ პარამეტრები პერიოდის დასაწყისიდა პერიოდის დასასრული. პარამეტრების გამოყენებით შეგიძლიათ აჩვენოთ საჭირო მონაცემები ანგარიშში, ჩვენ ამას განვიხილავთ განვითარების შემდეგ ეტაპზე, კერძოდ, ანგარიშის კოდის დაწერისას. განლაგებაში პარამეტრის შესაქმნელად აირჩიეთ სასურველი უჯრედი, ჩაწერეთ მასში პარამეტრის სახელი (სივრცის გარეშე), დააწკაპუნეთ მასზე მარჯვენა ღილაკით, აირჩიეთ ელემენტი მენიუში, რომელიც იხსნება. თვისებები. ჩანართზე უჯრედის თვისებებში განლაგებააირჩიეთ padding პარამეტრი.

ამის შემდეგ, უჯრედის პარამეტრის სახელი ჩასმული იქნება კუთხის ფრჩხილებში ("<>“). შედეგად, ტერიტორია Capასე უნდა გამოიყურებოდეს:

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

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

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

შედეგად, ჩვენ უნდა მივიღოთ ასეთი განლაგება:

3. შექმენით ანგარიშის ფორმა

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

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

შედეგად, ჩვენ მივიღებთ ამ ფორმას:

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

  • მოდით გადავიტანოთ ღილაკი ფორმაანგარიშის ქვედა პანელიდან ზევით (ეს უფრო მოსახერხებელი იქნება მომხმარებლისთვის);
  • ფორმის გაჭიმვა ვერტიკალურად და ჰორიზონტალურად;
  • მოვაწესრიგოთ მინდვრები პერიოდის დასაწყისიდა პერიოდის დასასრულიჰორიზონტალურად;
  • ფორმას დავამატოთ Spreadsheet Document Field-ის კონტროლის ელემენტი (მასში გამოჩნდება ჩვენი ანგარიში), მივცეთ სახელი TabDoc;
  • მოდით შევქმნათ პერიოდის შერჩევის ღილაკი (დაწკაპუნებისას გამოჩნდება დიალოგი სასურველი პერიოდის მოსახერხებელი არჩევანით). ჩვენ ჯერ არ დავწერთ პროგრამის კოდს, ამიტომ ღილაკს ვათავსებთ წერტილის ველების გვერდით.

შედეგად, ჩვენი ფორმა ასე გამოიყურება:

4. პროგრამირება

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

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

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

პროცედურა ღილაკი 1 დააჭირეთ (ელემენტი)მუშაობა Dialogs.PeriodSettingHandlerPressing(PeriodStart,PeriodEnd); პროცედურის დასასრული

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

TabDoc = FormElements.TabDoc;

მოდით მივიღოთ გარე ანგარიშის განლაგება ფუნქციის გამოყენებით GetLayout (<ИмяМакета>) , პარამეტრად გადავცემთ განლაგების სახელს და თუ ასეთი განლაგება არსებობს, ფუნქცია იპოვის მას.

Layout = GetLayout("Layout" );

განლაგების მიღების შემდეგ, მოდით შევქმნათ ცვლადები მისი თითოეული სფეროსთვის, ამისათვის გამოვიყენოთ განლაგების მეთოდი GetArea (<ИмяОбласти>) .

AreaHeader = Layout.GetArea("Header" ); AreaDataAccount = Layout.GetArea( "კონტრაქტორის მონაცემები"); AreaDataContract = Layout.GetArea("DataContract" ); AreaFooter = Layout.GetArea("Footer" );

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

TabDoc.Clear();

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

AreaHeader.Parameters.PeriodStart = PeriodStart; AreaHeader.Parameters.EndPeriod = EndPeriod;

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

TabDoc.Output(AreaHead);

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

მოთხოვნა = ახალი მოთხოვნა;

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

მოთხოვნა.

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

Request.SetParameter("პერიოდის დასაწყისი", პერიოდის დასაწყისი); Request.SetParameter("პერიოდის დასასრული", პერიოდის დასასრული);

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

Request.Text = "" ;

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

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

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

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

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

ანგარიში HIERARCHY-ში (&Account62)

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

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

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

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

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

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

Query.Text = "SELECT | Self-supportingTurnover.Subconto1 AS კონტრაგენტი, | Self-supportingTurnover.Subconto2 AS კონტრაგენტის ხელშეკრულება, | Self-supportingTurnover.AmountTurnoverDt AS ქვითარი, | თვითმმართველი ბრუნვა.თანხა ბრუნვაKt AS ხარჯი|საიდან | ბუღალტრული აღრიცხვა თვითაღრიცხვა (&პერიოდის დასაწყისი, &პერიოდის დასასრული, ანგარიში HIERARCHY-ში (&ანგარიში 62), როგორც თვითაღრიცხვა.|შედეგები | AMOUNT(შემოსავლები), | AMOUNT(ხარჯი) |PO | კონტრაპარტიული, | კონტრაგენტის ხელშეკრულება";

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

SelectionCounterpart = Query.Execute().Select(BypassQueryResult.ByGrouping);

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

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

სულ შემომავალი = 0; მთლიანი მოხმარება = 0;

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

TabDoc.StartAutoGroupingRows();

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

ხოლო Select Account.Next() Cycle EndCycle ;

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

AreaDataAccount.Parameters.Receipt = 0; AreaDataAccount.Parameters.Expense = 0;

ამის შემდეგ ჩვენ ვავსებთ ტერიტორიას DataCounterpartyნიმუში ელემენტის მონაცემები

FillPropertyValues(AreaAccountData.Parameters,SelectionAccount);

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

TabDoc.Output(AreaDataAccount,1);

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

SelectionCounterparty ხელშეკრულება = SelectionCounterparty.Select(BypassQueryResult.ByGroups);

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

ხოლო SelectionCounterparty Agreement.Next() Loop EndCycle ;

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

AreaDataContract.Parameters.Receipt = 0; AreaDataContract.Parameters.Expense = 0; შევსებაPropertyValues(AreaDataAgreement.Parameters,SelectionCounterpartyAgreement); TabDoc.Output(AreaDataContract,2);

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

TotalReceipt = Total Receipt + SelectionCounterpartyAgreement.Receipt; TotalExpense = TotalExpense + SampleCounterparty Agreement.Expense;

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

TabDoc.FinishAutoGroupingRows();

სრული ციკლები, რომლებიც პასუხისმგებელია ზონაში მონაცემების გამოტანაზე DataCounterpartyდა DataAgreementCounterpartyგამოიყურებოდეს ასე:

TabDoc.StartAutoGroupingRows(); ხოლო SelectionAccount.Next() Loop AreaDataAccount.Parameters.Receipt = 0 ;

AreaDataAccount.Parameters.Expense = 0; სარდაფი FillPropertyValues(AreaAccountData.Parameters,SelectionAccount); ცხრილების დოკუმენტი.

TabDoc.Output(AreaDataAccount,1);

SelectionCounterparty contract = SelectionCounterparty.Select(BypassQueryResult.ByGroups); ხოლო SelectionCounterparty Agreement.Next() Loop AreaDataAgreement.Parameters.Receipt = 0 ; AreaDataContract.Parameters.Expense = 0; შევსებაPropertyValues(AreaDataAgreement.Parameters,SelectionCounterpartyAgreement); TabDoc.Output(AreaDataContract,2);

TotalReceipt = Total Receipt + SelectionCounterpartyAgreement.Receipt; TotalExpense = TotalExpense + SampleCounterparty Agreement.Expense;ბოლო ციკლი ; ბოლო ციკლი ; TabDoc.FinishAutoGroupingRows();

რჩება საბოლოო მონაცემების ჩვენება ზონაში

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

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

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

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

კონფიდენციალურობის პოლიტიკა

ნებისმიერი სხვა ინფორმაცია, რომელიც გადაცემულია პირის მიერ საიტის მონახულებასთან დაკავშირებით („სხვა ინფორმაცია“, რომელიც არ არის პირის პირადი მონაცემები და არ შეიძლება გამოყენებულ იქნას პირის იდენტიფიცირებისთვის) შეიძლება შეტანილი იყოს ინდივიდუალური მეწარმის ალექსეი ვლადიმიროვიჩ ზაბოლოტნოვის (TIN) საკუთრებაში არსებულ მონაცემთა ბაზაში. INN212702621854, OGRNIP 313213018300022) ან მისი წარმომადგენლები. IP Zabolotnov ალექსეი ვლადიმროვიჩი ინარჩუნებს ყველა უფლებას ამ მონაცემთა ბაზებზე და მათში შენახულ ინფორმაციაზე. ჩვენ მიერ შეგროვებული სხვა ინფორმაცია შეიძლება შეიცავდეს თქვენს IP მისამართს და სხვა ინფორმაციას, რომელიც შეგროვებულია ქუქიების საშუალებით (იხ. ქვემოთ).

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

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

ეს საიტი იყენებს ტექნოლოგიას პიროვნების ადგილმდებარეობის დასადგენად.

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

ეს საიტი არ არის განკუთვნილი 18 წლამდე პირებისთვის. ჩვენ არ ვაგროვებთ პერსონალურ მონაცემებს იმ პირებისგან, რომლებიც ვიცით, რომ არიან 18 წლამდე. ეს საიტი იყენებს ინდუსტრიის სტანდარტული Secure Sockets Layer (SSL) დაშიფვრას ინფორმაციის შესაგროვებლად. თუმცა, ამ პარამეტრით სარგებლობისთვის ბრაუზერმა უნდა უზრუნველყოს კრიპტოგრაფიული დახურვის მხარდაჭერა (ვერსიის მიხედვით Internet Explorer 3.0 შემდეგ). ინდივიდუალური მეწარმე ალექსეი ვლადიმროვიჩ ზაბოლოტნოვი იტოვებს უფლებას მიაწოდოს ინფორმაცია სამთავრობო უწყებებს შესაბამისი მოთხოვნით ან კანონით გათვალისწინებულ შემთხვევებში.

იმისათვის, რომ ამოიღოთ ინფორმაცია პირის შესახებ ჩვენი საკონტაქტო სიებიდან, თქვენ უნდა დაუკავშირდეთ შემდეგ მისამართზე: IP Zabolotnov ალექსეი ვლადიმროვიჩი, ტელ.: +7 8352 441133. ან ელექტრონული ფოსტით: manager@site

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

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

ეს აღწერა საგანმანათლებლოა 1C მოხსენებების შექმნის ძირითადი პრინციპების გასაგებად

როგორ შევქმნათ მოხსენება 1C 8.3-ში

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

თავად კონფიგურატორში გადადით File მენიუში და აირჩიეთ ახალი:


მენიუში, რომელიც გამოჩნდება, აირჩიეთ გარე ანგარიში და დააჭირეთ OK:


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


როგორ გავაკეთოთ ანგარიში განლაგების გამოყენებით

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

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


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


ეს გახსნის განლაგების ფანჯარას, რომელიც წააგავს Excel ფურცელს:


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

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

სათაურის არეალის შესაქმნელად, დააწკაპუნეთ მაუსის მარცხენა ღილაკით ხაზის სათაურზე (სადაც მითითებულია ხაზის ნომერი), რათა აირჩიოთ ეს ხაზი (მთელი ხაზი უნდა შეირჩეს სათაურზე ერთი დაწკაპუნებით):


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


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


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

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


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


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


ანალოგიურად, ჩვენ ვქმნით ელემენტის ხაზის არეალს, მაგრამ არ გამოვყოფთ მას თამამად:


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


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


ანგარიშის ფორმის დიზაინერში, რომელიც იხსნება, დააჭირეთ ღილაკს Finish, ანგარიშის ფორმა გაიხსნება, ორჯერ დააწკაპუნეთ გენერირება ღილაკზე:


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


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


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

//ელცხრილის დოკუმენტის შექმნა, რომელიც შეივსება ანგარიშის ნაწილებით და გამოჩნდება ეკრანზე
TabDocument = ახალი TabularDocument;
//შემდეგი, ვიღებთ განლაგებას, რომელიც შეიქმნა ანგარიშის შექმნისას
განლაგება = GetLayout ("განლაგება");
//ახლა ჩვენ გვჭირდება ანგარიშის სათაურის ჩვენება, ამისთვის ვიღებთ სათაურის არეალს განლაგებიდან და გამოვაჩენთ მას ცხრილების დოკუმენტში
AreaHeader = Layout.GetArea("Header");
TabDocument.Output(AreaHeader);
//მოკითხვის გამოყენებით ვიღებთ ნივთების სახელების არჩევანს, რომლებიც უნდა იყოს ნაჩვენები ანგარიშში
მოთხოვნა = ახალი მოთხოვნა;
მოთხოვნა. ტექსტი = "
|არჩევა
| სახელი
|საიდან
| დირექტორია.ნომენკლატურა
|";
//მიიღეთ ელემენტის ხაზის არეალი განლაგებიდან - ჩვენ მასზე წვდომას მივიღებთ მარყუჟის საშუალებით თითოეული ელემენტის საჩვენებლად
AreaString = Layout.GetArea ("სტრიქონი");
//დაამუშავეთ თითოეული სახელი მიღებული შერჩევის ციკლში
Select = Query.Run().Select();
ხოლო Select.Next() ციკლი
//შემდეგი ხაზის საჩვენებლად, თქვენ უნდა მიუთითოთ შემდეგი სახელი არეალის პარამეტრში (ჩვენ თვითონ პარამეტრი დავაყენეთ განლაგების შექმნისას)
AreaString.Parameters.Name = Selection.Name;
//პარამეტრი შევსებულია, ახლა შეგიძლიათ სტრიქონის ჩვენება
TabDocument.Output(AreaString);
საბოლოო ციკლი;
//ელცხრილის დოკუმენტი შეიქმნა, ახლა ჩვენ გამოვხატავთ მას ეკრანზე
TabDocument.Show("საგნისების სია");

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


მოდით შევაჯამოთ პროგრამის კოდის რა სტრიქონებია საჭირო ანგარიშის შესაქმნელად:

  1. აუცილებელია შეიქმნას ცხრილის დოკუმენტი, რომელიც შეივსება ანგარიშის ნაწილებით და გამოჩნდება ეკრანზე, ეს კეთდება სტრიქონით "TabDocument = New TabularDocument;"
  2. ჩვენ უნდა მივიღოთ მოხსენების განლაგება, მისგან მივიღებთ მოხსენების სტრუქტურას ნაწილებად (უბნებში), ეს კეთდება ხაზით "Layout = GetLayout ("Layout")"
  3. თითოეული ზონის საჩვენებლად, თქვენ უნდა მიიღოთ იგი განლაგებიდან და გამოიყვანოთ იგი ცხრილების დოკუმენტში, ეს კეთდება ხაზებით „Header Area = Layout.GetArea(“Header“)“ და „TabDocument.Output(HeaderArea) "
  4. თუ თქვენ გჭირდებათ პარამეტრების შევსება, რომლებიც ცნობილი ხდება მხოლოდ პროგრამის შესრულებისას, მაშინ არეალის ჩვენებამდე თქვენ უნდა შეავსოთ ასეთი პარამეტრები, ეს კეთდება ხაზით "AreaString.Parameters.Name = Selection.Name"
  5. და მხოლოდ მაშინ, როდესაც ცხრილის დოკუმენტი ივსება მოხსენების ყველა საჭირო ნაწილით, ის გამოჩნდება ეკრანზე, ეს კეთდება სტრიქონით "TabDocument.Show("საგნის სია")"

ახლა კი შეგიძლიათ შეამოწმოთ მოხსენების მოქმედება - გახსენით 1C საწარმოს რეჟიმში (ღილაკი 1C: Enterprise 1C გაშვების ფანჯარაში). მთავარ მენიუში გადადით ფაილის მენიუში, დააჭირეთ გახსნას:


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


და მივიღებთ ნომენკლატურის ჩამონათვალს:


ეს არის მხოლოდ ერთი გზა 1C-ში მოხსენებების შესაქმნელად. შემდეგ სტატიებში განვიხილავთ სხვებს.

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

აქ მთავარი გვერდიანგარიში:

ეს გვერდი გამოიძახება კონფიგურატორიდან მენიუში File – New – External report.

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

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

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

რესურსების ჩანართზე აირჩიეთ თავად რესურსები და დააკონფიგურირეთ შედეგების ჩვენება მათთვის:

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

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

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

ყურადღება მიაქციეთ სვეტს Period.PartsDate.NameMonth. როგორ გამოვაჩინოთ თვის სახელი სვეტის სათაურში? სწორედ აქ გამოდის.

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

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

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