Add a report to 1s. Adding an external report to the database. Creating a data layout diagram inside the report

Application objects designed to obtain all kinds of summary tables, to organize data in a form convenient for analysis and viewing in 1C configurations, are usually called reports. How to add a report in 1C, various options for adding, we will try to cover these and some other questions in this article.

Reports and processing: differences

At the same time, they are distinguished from other similar objects - processing:

  1. Possibility of using DCS (data composition system);
  2. Using processing, you can enter information; the report serves to display and organize data;
  3. The difference is in the file format: the epf extension indicates that we are dealing with processing, erf is typical for external reports.

From a programmer’s point of view, the use of these objects is very convenient, because it does not require changes to the configuration metadata, and, therefore, there is no need to kick users out of the database to update it.

Methods for adding a report to the database

Using a special reference book

In most configurations provided by 1C, there is an “External Processing” directory, which allows you to save the processing in the database without making changes to the metadata. There are two ways to access this directory:

  1. For the Full and Administrative interfaces, go to: Operations->Directories->External Processing;
  2. All others via: Service->Additional reports and processing.
  3. Next, you need to select the type of form you want to receive.

So, how to add a layout to the directory through the form, the form of which is presented in Fig. 1

Fig.1 Report or processing registration form

First of all, it is necessary to come up with an original name for the directory element, which would best reflect the essence of the table being generated. The second step is to select the type of form to be added. It could be:

  1. A printed form called by the Print button or another button in those objects that are indicated in the tabular section “Print Form Accessory”;
  2. Filling tabular parts, for tabular parts of documents and reference books presented in the Tabular part “Processing accessories for filling out tabular parts”;
  3. Treatment;
  4. Report.

Rice. 2 Report type selection field

At the final stage, you need to select the file containing the code to be processed from those saved on disk.

Fig.3 Inscription indicating the need to select a report file

By recording an element, you will save it in the database. When restoring and transferring the database, elements saved in this way will also be transferred.

Adding to Configuration

The steps below require exclusive access to the database.

By going to the configurator and opening the configuration, you can start adding processing.

If the configuration is closed for editing, you need to go to the menu item Configuration->Support->Support Settings. A window will open as in Fig. 4

Rice. 4 Support editing window

  1. Click the “Enable change option” button;
  2. Answer the system's question positively.

This way, you will be able to add your own elements to the database metadata.

Now, by right-clicking on the “Reports” line of the configuration tree, you can add an external data compositor to the configuration Fig.5.

Rice. 5 Submenu for adding a report to the configuration

Features of placing processing on managed forms

The interface, built on managed forms, imposes its own restrictions on the display of additional handlers added to the database.

Before adding a report to a managed form in 1C, you need to make sure that it was created using an access control system, otherwise the form will be displayed incorrectly.

Having opened the program in Administration mode, you need to find the item “Print forms, reports and processing” in the Navigation Panel

Rice. 6 Navigation panel 1C 8.3

By checking the “Additional reports and processing” checkbox in the window that opens, you will be able to add your developments to the database for controlled form.

On the form, click the “Create” button. After ignoring the warning window, you can proceed to select the file.

Very often in latest versions program, the addition crashes with an error stating: “Object method not found.” The fact is that after creating a handler using the data composition system, it is necessary to register in its module the function InformationOnExternalProcessing() marked Export, this function should return the registration parameters:

  1. The object to which the handler will connect;
  2. The name with which it will be registered in the database;
  3. Team name.

After this, you can start placing the report in the interface. To do this, click on the “Place” command.

Rice. 7 Accommodation

In this case, the activity of the element is regulated by selecting the appropriate value in the “Publish” field.

Adding without posting

Rewriting a directory element every time any changes are made to the code, especially registering this handler in the configuration, is quite a tedious task. You can do without this. It is enough to simply open the file containing the processing through the File->Open File menu. The most recently opened objects are stored in a list at the bottom of the File submenu.

Regulated reports

In addition to external files and processors provided by the configuration, there is another type of reports in 1C - regulated. These are the data arrangements whose work is regulated by the tax authorities.

By the nature of their work, these forms are more reminiscent of a document. The validity period of such processors rarely exceeds one quarter; 1C regularly releases updates to them.

You can open them from the Reports->Regulated reports menu. After selecting a report option, the program will fill it with data from the database. If there is not enough data, the program will offer to add the missing data manually.

Forms that are not completely filled out are saved with the possibility of additional filling. A fully completed and verified document can be printed on paper or submitted to the tax office electronically.

Let's consider creating an external report in 1C 8 without using a data composition system. To create an external report, we will use the Accounting 2.0 configuration, the initial data: “Write a report on accounting account 62 in which the turnover for the specified period will be displayed in the context Counterparties And Contracts of counterparties.

1. Create a report

First of all, let's create an external report file; to do this, let's go to 1s 8 in the mode Configurator, let's go to the menu File -> New, or click on the icon new document.

Select the item from the list External report. After creating the external report, give it a Name (for example SimplestReport) and save it to disk. We will also add two details: Beginning of period And End of Period type date, we will need them to limit the time interval for data sampling when generating a report.

2. Create an external report layout

To generate a report in 1C 8 you need a layout, this is a template for data output in which everything is specified required parameters, tables are drawn, etc. Let's add a new layout; to do this, select the item in the report metadata tree Layouts and press the button Add, when creating, select the type for the layout spreadsheet document.

Our layout will have 4 areas:

  • Header - in this area we will display the name of the report, the period for which it was generated and the table header;
  • Counterparty data - in this area we will display data on the counterparty in a table;
  • DataCounterparty Agreement - in this area we will display data on the counterparty agreement in a table;
  • Footer - in this area we will display the total values ​​for the entire report for the Income and Expense fields.

Let's start creating layout areas. To create an area in the layout, select required quantity lines and press Menu Table -> Names -> Assign name(Or Ctrl + Shift + N). To the region A cap Let's write the name of the report: Turnover 62 counts, draw using the tool Borders report header, and also set the parameters Beginning of period And End of Period. Using parameters, you can display the necessary data in the report; we will deal with this at the next stage of development, namely when writing the report code. To create a parameter in the layout, select the desired cell, write the name of the parameter in it (without spaces), right-click on it, select the item in the menu that opens Properties. In the cell properties on the tab Layout select padding Parameter.

After this, the parameter name in the cell will be enclosed in angle brackets("<>“). As a result, the area A cap should look like this:

In area DataCounterparty we will create parameters for displaying the name of the counterparty, as well as for income and expenses for account 62, using the tool Borders Let's design the area as a table row.

In area DataCounterparty Agreement Let's create parameters for displaying the name of the contract, as well as for income and expenses for account 62, using the Borders tool we will design the area as a table row. Let's make a small indent before the parameter Counterparty Agreement(this can be done by splitting and merging cells. Right-click on the cell -> Merge or Split cell), it is needed so that the report can see that the line for the contract is lower in the hierarchy than the line for the counterparty.

In area Basement Let's create parameters for income and expense totals.

As a result, we should get a layout like this:

3. Create a report form

To display data, set the formation period and button Form our report will require a form. To create a form, find the item in the external report metadata tree Forms and press the button Add. On the first page of the form designer, you don't need to make any changes, you just need to click the button Further.

On the next page of the designer, select both available details( Beginning of period, End of Period) for placement on the form.

As a result, we will get this form:

But we are not satisfied with it in this form; let’s make some changes to it:

  • Let's drag the button Form from the bottom panel of the report to the top (this will be more convenient for the user);
  • Let's stretch the shape vertically and horizontally;
  • Let's arrange the fields Beginning of period And End of Period horizontally;
  • Let's add a Spreadsheet Document Field control element to the form (our report will be displayed in it), give it a name TabDoc;
  • Let's create a period selection button (when clicked, a dialog will appear with a convenient choice of the desired period). We won’t write the program code for it yet, so we’ll just place the button next to the period fields.

As a result, our form will look like this:

4. Programming

After creating the report form, let's start programming. First, let's create a procedure for displaying a period selection dialog (we already created a button for this at the previous stage). Right-click on the button and select the menu item Properties, in the button properties go to the tab Events, where using the button with a magnifying glass icon we will create a procedure Button1Press in the form module.

You can switch between the form and its module using the tabs at the bottom of the form

To call the period selection form, we will use the standard procedure Accounting 2.0 from a common module Working with Dialogs - HandlerPeriodSettingPress, you need to pass the report details to it as parameters Beginning of period And End of Period.

Procedure Button1Press(Element) Working with Dialogs.PeriodSettingHandlerPressing(PeriodStart,PeriodEnd); EndProcedure

Now let's move on to writing the code that will generate and display our report. The form module already has a procedure ButtonGeneratePress, which will be executed when the button is pressed Form, that’s where we’ll write our code. Let's start by initializing the necessary variables. First of all, let's create a variable for spreadsheet document fields into which we will output data, this is not necessary, it’s just that the recording of calls to it will become shorter, which means the program code will be more understandable for reading.

TabDoc = FormElements.TabDoc;

Let's get the layout of the external report using the function GetLayout(<ИмяМакета>) , we will pass the name of the layout as a parameter, and if such a layout exists, the function will find it.

Layout = GetLayout("Layout" );

After the layout is received, let's create variables for each of its areas, use the layout method for this GetArea(<ИмяОбласти>) .

AreaHeader = Layout.GetArea("Header" ); AreaDataAccount = Layout.GetArea( "Contractor Data"); AreaDataContract = Layout.GetArea("DataContract" ); AreaFooter = Layout.GetArea("Footer" );

Let's clear the field of the spreadsheet document. This is necessary so that every time a new report is generated, the old data is deleted.

TabDoc.Clear();

Now that the initialization of the variables is complete, let's move on to filling and displaying the layout areas one by one. Let's start with the header. If you remember, we created two parameters in this area Beginning of period And End of Period, we will pass there the values ​​of the report generation period, for this we will use the property Options layout areas.

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

No more actions with the area A cap The manufacturer is not needed, so we will display its field in a spreadsheet document.

TabDoc.Output(AreaHead);

Next, we will write a query to the database, with which we will take the account turnover 62 from the accounting register Self-supporting. Let's define a variable in which our request will be located.

Request = new Request;

Before we start writing the request text, let’s pass the necessary parameters to it. Since we are writing a request for an invoice 62 accounting, then first of all we will create a parameter for it

Request.SetParameter("Account62", Charts of Accounts. Self-supporting. Find By Code("62" ));

It is also necessary to pass the report generation period into the request. Don’t forget that we have special report details for the generation period, and we pass them as parameters.

Request.SetParameter("Start of Period", Start of Period); Request.SetParameter("End of Period", End of Period);

Let's start writing the query text, we will do this using the query designer. In many textbooks they write that you need to be able to write a request both manually and using a constructor, but in practice this is not the case. In the tasks that a 1C programmer constantly faces, the priority is to quickly and efficiently write code, and when writing a query to the database manually, this is almost impossible to achieve; you will spend a lot of precious time correctly reproducing all query structures and finding typos which you did when writing, etc.. Therefore, do not waste your time trying to write queries manually, but use the query constructor. It will save your time and allow you to write complex queries without much effort. To start writing the request text, let’s write in code:

Request.Text = "" ;

After that, place the cursor between the quotes and press right button mouse and select the item Constructor request. The query designer window will open.

Now we need to select the 1C 8 database table we need. We need a virtual table Revolutions accounting register Self-supporting. Let's find it on the left side of the designer window

Let's move it to the area Tables and let's start filling out the parameters. For all virtual query tables there is a special set of parameters that allow you to select the necessary data from the main table (in our case, the main table Accounting Register Self-supporting). Let's open the virtual table parameters window.

Let's fill in the parameters for the period that we passed to the request. To use a parameter in the request text, you should write the symbol before its name ampersand(&)

All that remains is to fill out the condition for the accounting account. accounting. To do this, find the line in the parameters of the virtual table Account Condition and we'll write there

Account IN HIERARCHY (&Account62)

You can also use the conditions constructor by clicking on the button with three dots.

There is no need to impose any more conditions on the virtual table, so let’s click the button OK in the virtual table parameters window. Next, we need to select the fields we need from the table Self-supporting.Turnover(namely: Counterparty, Counterparty Agreement, Income and Expense). To view the list of fields available in the table we have selected, click the “+” symbol next to its name. After that let's drag required fields to the rightmost area of ​​the query designer, which is called: Fields. If we open the chart of accounts, we will see that for the account 62 analytics on For the counterparty this is Subconto1, and by Counterparty Agreement - Subconto2.

Therefore, from the fields of the virtual table we select Subconto1 And Subconto2. Since we need income and expenses by amount, we also select the fields AmountTurnoverDt And AmountTurnoverKt

Let's fill in the aliases of the fields we have selected; to do this, go to the tab Unions/Aliases and set the required field names.

Since in our report the data will be displayed hierarchically (the Counterparty is on the first level, and all of its contracts are on the second), we will configure the display of data in the hierarchy using Totals. Let's go to the tab in the designer Results. Drag into grouping fields sequentially Counterparty And Counterparty Agreement, and in the final Coming And Consumption.

This completes the work in the query constructor, click the button OK and we see that the text of our request appears in the program code.

Query.Text = "SELECT | Self-supportingTurnover.Subconto1 AS Counterparty, | Self-supportingTurnover.Subconto2 AS Counterparty Agreement, | Self-supportingTurnover.AmountTurnoverDt AS Receipt, | Self-supportingTurnover.AmountTurnoverKt AS Expense|FROM | Accounting Register. Self-accounting. Turnovers (&Beginning of Period, &End of Period, Account IN HIERARCHY (&Account 62),) AS Self-accountingTurnover|RESULTS | AMOUNT(Revenue), | AMOUNT(Expense) |PO | Counterparty, | Counterparty Agreement";

After we have finished writing the request, let's start filling out the areas DataCounterparty, DataAgreementCounterparty And Basement. We will fill all these areas with the data received when executing the request. Since our query contains groupings( Counterparty And Counterparty Agreement) select data from it as follows:

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

This way we will receive records with totals for all counterparties.

Before traversing the sample data using a loop, we initialize the variables intended for calculating the overall results for the report:

TotalIncoming = 0; TotalConsumption = 0;

In order for the report data to be displayed with a hierarchy (and rotations along “+“), let’s set the beginning of the auto-grouping of the rows of the spreadsheet document:

TabDoc.StartAutoGroupingRows();

All preparations are completed, now let's start crawling the query results. We will traverse using a loop Bye

While Select Account.Next() Cycle EndCycle ;

At the beginning of the cycle, reset the parameters Coming And Consumption region DataCounterparty. What is it for? Let's imagine a situation where the counterparty Uncle Vasya, income is 10, and expense is 5, and for the next counterparty Uncle Petya there is no income or expense, in this case, if we do not reset the parameters Coming And Consumption, then in line by counterparty Uncle Petya there will be an income of 5 and an expense of 10.

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

After that we fill the area DataCounterparty sample element data

FillPropertyValues(AreaAccountData.Parameters,SelectionAccount);

After filling in the data, you can display the area in spreadsheet document, Since we are using auto-grouping of rows, we need to indicate the level of the row in the grouping (our report will have two levels, for counterparties the first for contracts).

TabDoc.Output(AreaDataAccount,1);

Now for this counterparty we will make a selection according to its contracts.

SelectionCounterparty Agreement = SelectionCounterparty.Select(BypassQueryResult.ByGroups);

We will traverse using a loop Bye.

While SelectionCounterparty Agreement.Next() Loop EndCycle ;

In the cycle for counterparty agreements, let’s reset the parameters Coming And Consumption, fill the area DataContract from the sample and output it to spreadsheet document to the second level of records.

AreaDataContract.Parameters.Receipt = 0; AreaDataContract.Parameters.Expense = 0; Fill inPropertyValues(AreaContractData.Parameters,SelectionCounterpartyAgreement); TabDoc.Output(AreaDataContract,2);

Also in this cycle, we will add the current values ​​to the variables for calculating the total values ​​for income and expense.

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

This concludes the output of data in the area DataCounterparty, DataAgreementCounterparty completed, all that remains is to complete the auto-grouping of the rows of the spreadsheet document.

TabDoc.FinishAutoGroupingRows();

Fully cycles responsible for outputting data to the area DataCounterparty And DataAgreementCounterparty look like this:

TabDoc.StartAutoGroupingRows(); While SelectionAccount.Next() Loop AreaDataAccount.Parameters.Receipt = 0 ;

AreaDataAccount.Parameters.Expense = 0 ; Basement FillPropertyValues(AreaAccountData.Parameters,SelectionAccount); spreadsheet document.

TabDoc.Output(AreaDataAccount,1);

SelectionCounterparty Agreement = SelectionCounterparty.Select(BypassQueryResult.ByGroups); While SelectionCounterparty Agreement.Next() Loop AreaDataAgreement.Parameters.Receipt = 0 ; AreaDataContract.Parameters.Expense = 0 ;

Fill inPropertyValues(AreaContractData.Parameters,SelectionCounterpartyAgreement);

TabDoc.Output(AreaDataContract,2);

TotalReceipt = TotalReceipt + SelectionCounterpartyAgreement.Receipt;

TotalExpense = TotalExpense + SampleCounterparty Agreement.Expense;

EndCycle ; EndCycle ; TabDoc.FinishAutoGroupingRows(); It remains to display the final data in the area 8.3.13.1644 ) .

and output the area itself to

AreaBasement.Parameters.TotalIncoming = TotalIncoming; AreaBasement.Parameters.TotalConsumption = TotalConsumption; TabDoc.Output(AreaFooter);

For all the lessons in this series we will use the Gastronom database I prepared. It completely coincides with the base that we used in the school modules when studying queries. Therefore, I expect you to be familiar with its reference books and documents.

If you deleted it, download it again using the following one, unpack it and add it to the list of databases.

Finally, workplace configured and now we will create our first report together using the data composition system. It will be very simple to demonstrate the general capabilities of a data composition system (abbreviated SKD).

Setting a goal

Purpose of this lesson- create a report that, in user mode, displays a list of clients with the following fields:

  • Name
  • Floor
  • Client's favorite color.

The report must be external. This means that it will be created and configured in the configurator, and then saved as a separate (external) file on the computer.

To generate such a report in 1C, the user will need to launch the database in user mode, open this file and click the “Generate” button.

Go!

Creating a report

We launch the configurator for the Gastronom database:

From the main menu, select "File" -> "New...":

Select "External report":

Creating a data layout diagram inside the report

The window for creating an external report opens. For the name, enter: " Lesson 1", and then press the button " Open data composition diagram":

The schema creation designer has started. We agree with the default name" MainData Layout Schema" and press the button " Ready":

The main working window has opened, with many tabs and fields, in which we will configure our data layout scheme.

There is no need to be scared - there are really a lot of opportunities here, but we don’t need all of them. Especially in the first lesson.

Now we are on the bookmark " Datasets"We'll stay there."

We write a request through the constructor

The data composition system (abbreviated as DCS) requires us to data, which it will display to the user.

The easiest way - write a request to the base. In school we learned to write and understand requests - so I expect you to have the appropriate skills.

Click on green plus sign and in the drop-down list select the item " Add Dataset - Query":

Our task is to write the request text in this field. Have you forgotten how to do this yet?

I'll give you a hint:

In this query we have selected three fields (" Name", "Floor" And " Favorite color") from table " Directory.Clients".

But don’t rush to write this text in the “Request” field manually.

Now we will create the same request visually, only using the mouse. This method is called " Query constructor".

To call this constructor, click the button " Query constructor..." in the upper right part of the "Request" field:

In the window that opens, drag the table " Clients" from the first column to the second to indicate that it is from this table that we will query the data:

It turned out like this:

Next, let's expand the table " Clients"in the second column by sign" Plus"to see all its fields and drag the field" Name" from the second column to the third to indicate that from this table we need to query the "Name" field:

It turned out like this:

Let's do the same with the fields" Floor" And " Favorite color". The result will be like this:

Click the "OK" button to exit the query builder and see that the query text is automatically added to the "Query" field.

Moreover, based on the text of the request, 1C itself pulled out the names of the fields (the area above the request) that will be used by the data composition scheme:

Now that we have compiled a request, the ACS knows how to obtain data for the report.

Setting up data presentation

It remains somehow visualize this data for the user in the form of a printed form. And this is where ACS can work wonders!

To create such a miracle, let's go to the tab " Settings" and click the settings designer button ( Magic wand):

In the window that opens, specify the report type " List" and press " Further":

In the next window, select (by dragging) the fields that need to be displayed in the list (drag all of those available to us: " Favorite color", "Name" And " Floor"):

Let's get this result and press the button " OK":

The settings designer closed and the item " Detailed entries":

The report is ready, let's check it. To do this, first save the report as external file.

Save the report as a file

Open the main menu item " File"->"Save":

I'll save it to my desktop under the name " Lesson 1":

Checking the report in user mode

Finally, let’s close the configurator and go to our database in user mode:

Username "Administrator", no password:

Through the menu, select the item " File"->"Open...":

And specify the report file (I saved it to the desktop under the name “Lesson1.erf”:

The report form has opened, click the button " Form":

Ready! Here is our printable with a list of clients, their favorite color and gender:

The printable form can be easily printed. To do this, just select the menu item " File"->"Seal...":

So simply, without programming, we managed to create a full-fledged report that users can open in their databases, generate and print.

students - I answer by mail, but first look at.

TabDoc.Output(AreaDataContract,2);

Log in as a student to access school materials

In the top menu go to Service->->.

After this, the directory list form will appear. In the top menu click Add.

The window for adding a new report appears. Press the button Open.

Select the file with the desired report and click Open. After adding the file, if necessary, change the name of the report (how it will be displayed in the list). Click OK.

As a result, the new report appears in the list.

After this, the report can be used, adding is completed. To open this report later, we also go to Service->Additional reports and processing->Additional external reports.

For BP 3.0, ZUP 3.0, UT 11, ERP 2.0.

To add an external report in 1C:Enterprise 8.3 configurations in a managed interface (using Accounting 3.0 as an example), let’s enter the corresponding section of the program:


It is necessary that the option to use additional reports is enabled, follow the hyperlink:

In the list that opens, click the button Create:


After this, a file selection dialog box with a report will immediately open, in which you need to select required file(in my case this is a file with a plan-actual cost analysis).

Now you need to configure accommodation(the place in the program where the report will be available):


Randomly select from the list required section programs:


Now you need to record the changes in the external report card:

Now open the report from the program interface:


The list is still empty, click Customize the list:


In the selection form, tick our report:


Now it appears in the list:


By button Execute The report form opens:


Of course, 1C Accounting 8 has very broad capabilities. With this program you can perform many different tasks. But sometimes the standard built-in tools are still not enough. What to do in this case?

Also be sure to read a similar article that explains what processing is. Here we will talk about expanding the standard functionality of the program.

Let's say you need to perform some operation and you start looking for how to do it in standard 1C Accounting configurations. Depending on What exactly what you want to do, there are several ways to solve the problem.

Method one. Non-standard use standard means programs. Typically this applies to documents. For example, it is required that the document as a result generate such and such transactions. Then you need to find a document that is similar in meaning and fill it out accordingly, even if at first glance this 1C document is not intended for this at all.

If the document generates transactions loved ones to what you need, but still not quite the same, then you can post the document and then correct the postings manually. I won’t dwell on the peculiarities of non-standard use of ordinary documents here - this is included in my course on 1C Accounting 8. The most important thing is to show a little creativity and knowledge of the configuration, and then it turns out that the range of tasks that can be performed using the standard (unchanged) 1C Enterprise Accounting configuration will expand.

Another way is configuration modifications. For example, one of my students once told me, “ I want to have a button in a visible place in my program “How much money do we have?” ". A completely justified desire, however! ( although in fact such a report already exists in the program)

However, despite the opportunity to modify 1C Accounting at your own discretion, we will not consider this option, since this is a matter for 1C programmers. So what remains ordinary user in this case?

There was an important part of the article, but without JavaScript it is not visible!

The answer is very simple - expand the functionality of the program using . In particular, we will talk about external reports and processing.

This is done quite simply. We find the required report (or processing, depending on what is required) on the Internet and connect it to the standard configuration of 1C Accounting 8. For 1C Accounting 8.2, go to the menu "File / Open...", or press the button Open on the toolbar, then in the Explorer window that opens, specify the external report/processing file. An example in the figure below.


"How to connect an external report / processing in version 1C Accounting 8.3?"- the owners of the new version of 1C Enterprise will ask. Almost the same. I remind you once again that the difference is only in the interface. See the example for 1C Accounting 8.3 below.

website_

As can be seen from the examples above, external reports and processing are connected in the same way as regular files are opened in any other program.

After selecting the file, the external report / processing will open and you can use them as if they were built into the 1C Accounting configuration. It is also worth noting that you must have the necessary access rights to the database.

Tip: store the external reports and processing you use in a specially created folder- it's comfortable. The folder can be created in the folder with the 1C Accounting database (if you have a file database); For convenience, you can change the folder icon.

Why are they called "external"?

Because when connected, an external file is opened that has nothing to do with the 1C Accounting configuration. The file itself not built in into the configuration, but only gains access to the database data.

Safety when working with plug-ins

If the reports are only read your base, but they don’t do anything with them, then here’s the processing can. Of course, it all depends on what kind of processing it is and for what purposes it is intended. In any case, we can recommend the following.

Download external treatments only from trusted sources! Remember - damage to the database as a result of an error or deliberate actions of the processing author can lead to serious problems.



Tests for comparative testing of shockers "on the knee"