1c ღია გარე დამუშავება. როგორ გავხსნათ პროგრამულად გარე დამუშავება? გარე დამუშავების გახსნა, როგორც ობიექტი

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

როგორ გავხსნათ პროგრამულად გარე დამუშავება?

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

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

  • გარე დამუშავების ფაილის სერვერზე გადატანა,
  • გარე დამუშავების დაკავშირება,
  • გახსენით გარე დამუშავების ფორმა.
&კლიენტის პროცედურაზე ბრძანების დამუშავება (ბრძანების პარამეტრი, ბრძანების შესრულების პარამეტრები) // მოათავსეთ დამუშავება დროებით საცავში Storage Address = ""; შედეგი = PlaceFile(StorageAddress, "C:\ExternalProcessing.epf", False); ProcessingName = ConnectExternalProcessing(StorageAddress); // გახსენით დაკავშირებული გარე დამუშავების ფორმა OpenForm("ExternalProcessing."+ProcessingName +".Form"); EndProcedure &OnServer ფუნქცია ConnectExternalProcessing(StorageAddress) Return ExternalProcessing.Connect(StorageAddress); საბოლოო ფუნქცია

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

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

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

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

გარე დამუშავების ფორმის გასახსნელად გამოიყენეთ ფუნქცია OpenForm(), რომელსაც ფორმის სახელი გადაეცემა შემდეგი ხაზით: "გარე დამუშავება."+ProcessingName +".Form". ზემოაღნიშნულ განსახიერებაში იხსნება ძირითადი დამუშავების ფორმა. თქვენ ასევე შეგიძლიათ გახსნათ არამთავარი დამუშავების ფორმა - ეს განხილულია კითხვაში როგორ მივიღოთ არამთავარი დამუშავების ფორმა? .

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

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

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

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

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

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

მოქმედებები მართული ინტერფეისისთვის (მაგალითად, ტაქსი)

  1. გახსენით პირდაპირ ფაილიდან.
  2. მენიუში აირჩიეთ "ფაილი", შემდეგ "გახსნა".
  3. ფანჯარაში, რომელიც იხსნება, გადადით სამუშაო მაგიდაზე, აირჩიეთ დამუშავების ფაილი და დააჭირეთ ღილაკს "გახსნა".

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

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

პირველი გზა

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

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

Მნიშვნელოვანი!

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

  1. თუ შეცდომა არ მოხდა, იპოვეთ "განთავსება" პუნქტი "ბრძანებებში".
  2. "Command Interface Sections" ფანჯარაში, შეამოწმეთ ოპერაციების განყოფილება.
  3. ცხრილში ვიპოვით "სწრაფი წვდომა" და ვხსნით მას.
  4. აირჩიეთ ყველა მომხმარებელი და დააჭირეთ OK.
  5. დააჭირეთ ღილაკს "შენახვა და დახურვა".

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

მეორე გზა

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

  1. გადადით მონაცემთა ბაზის კონფიგურატორზე.
  2. აირჩიეთ "ადმინისტრაცია" მენიუდან, შემდეგ "მომხმარებლები".
  3. ორჯერ დააწკაპუნეთ სასურველ მომხმარებელზე.
  4. გადადით ჩანართზე სახელწოდებით "სხვა".
  5. მონიშნეთ ველი „გარე ანგარიშების ინტერაქტიული გახსნა და დამუშავება“.
  6. დააჭირეთ "OK".
  7. ჩვენ ვხურავთ კონფიგურატორს და ასევე, თუ ის ღია იყო, მონაცემთა ბაზას.
  8. ჩვენ კვლავ შევდივართ მონაცემთა ბაზაში და ვხსნით ჩვენთვის საჭირო მოხსენებას "ფაილი" მენიუში "გახსნა" ბრძანების გამოყენებით.

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

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

ამისათვის ჩვენ დაუყოვნებლივ გავაკეთებთ საჭირო პარამეტრებს პროგრამაში (ჩვენ განვიხილავთ 1C 8.3 კონფიგურაციას: "საწარმოთა აღრიცხვა 3.0" მართულ ფორმებზე).

ამ ველის მონიშვნა გვაძლევს შესაძლებლობას გამოვიყენოთ გარე დამუშავება.

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

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

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

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

ჩვენ გვექნება ორი დეტალი ფორმაზე:

  • ნომენკლატურის ჯგუფი – ბმული „ნომენკლატურის“ დირექტორიაში;
  • SelectVATRate – ბმული დღგ-ს განაკვეთის გადარიცხვაზე.

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

დეტალების თანმიმდევრობა შეიძლება შეიცვალოს "ზემო" - "ქვემო" ისრებით:

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

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

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

&OnClient

დღგ-ის განაკვეთის დაყენების პროცედურა (ბრძანება)

SetVATRAteOnServer();

დასრულების პროცედურა

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

&სერვერზე

პროცედურა SetVATRAteOnServer()

მოთხოვნა = ახალი მოთხოვნა;
მოთხოვნა.ტექსტი =
"აირჩიე
| ნომენკლატურა.ლინკი
|საიდან
| დირექტორია.Nomenclature AS Nomenclature
|სად
| Nomenclature.Link IN HIERARCHY (&Nomenclature Group)
| და არა ნომენკლატურა.MarkDeletion
| და არა ნომენკლატურა ეს არის ჯგუფი“;

Request.SetParameter("Item Group", Item Group);
ResRequest = Request.Execute();
SelectRecordDet = ResRequest.Select();

ხოლო SelectRecordDet.Next() ციკლი

მცდელობა
SprNomObject.Write();
გამონაკლისი
Report("შეცდომა ობიექტის დაწერისას """ + SprNomObject + """!
|» + DescriptionError());
ბოლო მცდელობა;

საბოლოო ციკლი;

დასრულების პროცედურა

ჩვენ ვუბრუნდებით "ფორმის" ჩანართს, დავამატებთ ღილაკს ფორმაში და ვუკავშირებთ მას ბრძანებას:

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

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

ამისათვის არის განყოფილება „დამატებითი ანგარიშები და დამუშავება“.

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

ფუნქციის აღწერა "ინფორმაცია გარე დამუშავების შესახებ"

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

ფუნქცია InformationOnExternalProcessing() ექსპორტი

DataForReg = ახალი სტრუქტურა();
DataForReg.Insert("სახელი", "დღგ-ს განაკვეთის დაწესება");
DataForReg.Insert("SafeMode", True);
DataForReg.Insert("Version", "ver.: 1.001");
DataForReg.Insert("ინფორმაცია", "ნომენკლატურის დირექტორიაში დღგ-ის განაკვეთის დაყენების პროცესი");
DataForReg.Insert("View", "AdditionalProcessing");

CommandTable = NewValueTable;
TabZnCommands.Columns.Add("იდენტიფიკატორი");
TabZnCommands.Columns.Add("გამოყენება");
TabZnCommands.Columns.Add("View");

NewRow = TabZnCommands.Add();
NewString.Identifier = "OpenProcessing";
NewRow.Use = "OpenForm";
NewRow.View = "დამუშავების გახსნა";
DataForReg.Insert("ბრძანებები", TabZnCommands);

დაბრუნების DataForReg;

საბოლოო ფუნქცია

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

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

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

გარე დამუშავების დაკავშირება 1C-ში 8.3

გარე დამუშავებასთან მუშაობისთვის (და გარე ბეჭდვის ფორმა ასევე არის გარე დამუშავება), არის ობიექტი გარე დამუშავება.

განვიხილოთ ორი შესაძლო შემთხვევა:

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

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

გარე დამუშავების ფორმის გახსნა

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


ფორმა = გარე პროცესები. GetForm (ფაილის მისამართი) ;
ფორმა. Open();

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

//FileAddress ცვლადი შეიცავს გარე დამუშავების ფაილის სრულ გზას
ფორმა = გარე პროცესები. GetForm(ფაილის მისამართი, "მცირე ფორმა") ;
ფორმა. Open();

გარე დამუშავების გახსნა, როგორც ობიექტი

გარე დამუშავების, როგორც ობიექტის მისაღებად, გამოიყენება ფუნქცია Შექმნა()ობიექტი გარე დამუშავება.

//FileAddress ცვლადი შეიცავს გარე დამუშავების ფაილის სრულ გზას
ProcessingObject = ExternalProcessing. შექმნა (ფაილის მისამართი) ;

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

//FileAddress ცვლადი შეიცავს გარე დამუშავების ფაილის სრულ გზას

გარე დამუშავების ან ბეჭდვის ფორმა შენახულია ინფო ბაზაში

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

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

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

//RefLink ცვლადი შეიცავს ბმულს ExternalProcessings დირექტორიის ელემენტთან
DvData = RefLink. გარე დამუშავების საცავი. მიიღეთ() ;
FileAddress = GetTemporaryFileName() ;
DvData. ჩაწერა (ფაილის მისამართი) ;
ProcessingObject = ExternalProcessing. შექმნა (ფაილის მისამართი, მცდარი);