Operational and non-operational processing of documents 1C example. Features of the document form


What is the difference between non-operative And operational carrying out documents? Accountants using the 1C: Enterprise 8 program often must choose one of two modes of document processing - either operational or non-operational. This procedure is especially incomprehensible to those users who have previously worked in 1C: Enterprise programs. Version 7.7. The procedure for processing documents in this program was clearly defined, but in the 1C: Enterprise 8 program it is necessary to establish a mode for operational or non-operational processing. So how are they different from each other?

To understand the essence of the issue, it is necessary to dwell on the concept of “conducting” in 1C terminology? In 1C, the term “conducting” is a property that documents created to record primary information about a completed operation have. However, different documents may contain information about the same business transaction, therefore, when creating a primary document, such information must be included in these documents and stored there. Such an operation in 1C is called “carrying out”.

An inexperienced user will mistake the concept of “operational processing” for the speed of information processing. However, this is incorrect, since during “non-operational” and “operational” implementation in the 1C program the same thing happens: information about the operation is transferred from one primary document to other documents and stored there. But in the 1C program, each document has important details - date of the business transaction. In the operational mode of document processing, registration of a completed business transaction will occur at the next point in time after its completion. When carried out non-operatively, registration occurs in the past from the current point in time.

If the document was posted yesterday, then the program defaults to non-operational posting mode. The same thing happens when creating a new document - in this case, the program uses the online posting mode. But when adjusting a document and re-posting it, it becomes necessary to select a mode of execution.

As a rule, the user does not need such information, however, you should be aware that a document that was promptly posted cannot be posted on a future date - the program will generate an error. For example, when creating a cash receipt order for tomorrow, the user does not know how much money will go to the cash desk tomorrow. He will know this only when the cashier, having received the money in hand, checks the document.

Next point. In standard programs (1C: UPP 8 and 1C: UT 8), programmers have provided functions for monitoring all kinds of conflicts using the document processing mode. For example, to carry out the operation of selling goods, the program monitors the sufficiency of the stock of goods in the warehouse.

All controls available in the program are based on the fact that a future operation cannot be reflected by a document carried out promptly Therefore, from the totality of similar documents, such control is the most relevant. Thus, when quickly posting a document, the program connects various control modules to it, using previously entered information as a basis. The user's choice of non-operational processing means that this document with a high degree of probability is not the latest, therefore, using most control functions is practically impractical. Thus, the user, choosing non-operative implementation document, thereby disables control provided in the program, and this leads

For those who have worked with 1C configurations in which operational records are maintained, the form shown in the figure is most likely familiar. The document is being carried out today, and the 1C program offers 2 options for carrying out this document. Let's look at what these document processing modes mean...

Where is it used?

  • 1C: Trade Management 10.3
  • 1C:Manufacturing enterprise management 1.3
  • 1C: Integrated automation 1.1

Prompt execution of 1C document

  • Only documents for today can be processed promptly.
  • Operational posting of a 1C document is carried out at the current moment in time. Even if the document was created today, several hours ago, when this document is processed quickly, the time of this document will change to the current one.
  • During operational execution, most configurations check for residuals. If, for example, there is no balance in the warehouse, then the goods document will not be posted.
  • It is impossible to quickly post a document on a future date.

Non-operational posting of 1C document

  • Non-operatively, you can post a document for any date, but the date and time of the document will not change.
  • If carried out non-operatively, residues may not be controlled. For example, a document is posted, but at the same time it displays a message about the product being out of stock.
boston2005

26.10.12 — 21:33

Hi all! A simple question: there is a document (any document), it is involved in both accounting and operational accounting. Question: what should be the mode of conduct (operative, non-operative) and it would be nice to explain why :)

zak555

1 — 26.10.12 — 21:36

upgrade to 8.2

ILM

2 — 26.10.12 — 21:36

Well, if any, then it doesn’t matter which one. Doc after all))

boston2005

3 — 26.10.12 — 21:37

Sorry, I wrote it wrong. this is 8.2 Question: should surgical conduct be prohibited or allowed and why

Johnny

4 — 26.10.12 — 21:39

if the mode of operation is operational, then the presence of balances in the warehouse and the status of mutual settlements will be checked, and if the mode is non-operational, then such checks will not be carried out.

boston2005

5 — 26.10.12 — 21:39

and the document Receipt/Expense invoice

Johnny

6 — 26.10.12 — 21:40

zak555

7 — 26.10.12 — 21:47

http://infostart.ru/public/80344/

boston2005

8 — 26.10.12 — 21:52

I have a configuration in which both operational accounting and accounting. Incoming/outgoing invoice documents make movements both in the accumulation registers and in the accounting register. in the properties documents Should operational execution be prohibited or allowed?

AlexNew

9 — 26.10.12 — 22:44

What does 8.2 have to do with it? The control implementation mechanism has changed in the standard ones, but the essence has not.

Zlopchinsky

10 — 26.10.12 — 22:53

(7) >
Let me remind you that operational posting in the 8.x platform means posting a document with the current date, assigning it an operational time stamp as the time, and setting the Posting Mode parameter in the Posting Processing procedure to Operational. This fundamentally distinguishes the 8th version of the platform from version 7.7, for which the concept of Relevance Point was used and nothing prevented documents from being processed on a future date.
.
A document posted the day before yesterday (or a new one recorded in the day before yesterday) - can you quickly post it to the time stamp “day before yesterday”..?

aleks-id

11 — 26.10.12 — 22:54

go to rouz and forget about operative/non-operative

a_alenkin

12 — 26.10.12 — 22:56

(7)(off)what? - Have they stopped banning you for such links on the site?

AlexNew

13 — 26.10.12 — 22:56

(10) How at 8 promptly the day before yesterday?

AlexNew

14 — 26.10.12 — 22:57

(12) For those - yes.

aleks-id

15 — 26.10.12 — 22:58

aleks-id

16 — 26.10.12 — 22:59

well, they can also ban you for “logan”

AlexNew

17 — 26.10.12 — 23:00

aleks-id

18 — 26.10.12 — 23:01

(17) it would be useful

Zlopchinsky

19 — 27.10.12 — 01:57

(13) is very simple. just like in 7.7 and other other recorders. When entering a document the day before yesterday, I need to know whether, when posting the document the day before yesterday, it will go into the negative when posting the document.

AlexNew

20 — 28.10.12 — 07:22

(19) This won’t help you here. It will no longer be operational.

TurboConf 5 - expanding the capabilities of the 1C Configurator

ATTENTION! If you have lost the message input window, click Ctrl-F5 or Ctrl-R or the "Refresh" button in the browser.

The topic has not been updated for a long time and has been marked as archived. Adding messages is not possible.
But you can create a new thread and they will definitely answer you!
Every hour on the Magic Forum there are more 2000 Human.

1C:Enterprise 8.1

Trade Management, ed. 10.3

In setting up additional user rights, the “monitor excess order volume during shipment” flag is not set. Why, when posting the document “Sales of goods and services”, does a message about the reserve being exceeded appear and the invoice is not posted?

Operative/Non-operative

Procedure: 1. Enter the buyer's order document, then reserve the goods in the amount of 30 kg. 2. Based on the Order, we issued a document Sales of goods and services. 3. Unchecked the checkbox in the Additional user settings “monitor excess volume during shipment.” 4. When the quantity of goods sold in the document “Sales of goods and services” changes, for example, by 35 kg, provided that in the warehouse before placing the Order there was a free balance of this product of 35 kg, the program displays the message: Remaining reserve “Product in the warehouse “Main” warehouse" according to the document "Buyer's order is not enough. 5 pieces missing Remaining 5 pcs. 35 pcs are required. Is this program behavior correct? Yes, these program steps are correct. The checkbox “control excess order volume during shipment” means that the contents of the invoice must fully correspond to the order. If the flag is not set, then the goods can be shipped in excess of those items that were specified in the order. But these additional items must be shipped from the warehouse, and not from the reserve (they were not reserved). In this case, it is necessary to ship the goods from the reserve, and some of the goods from the current balance to the warehouse. Therefore, the implementation should have two lines - one indicates “From reserve”, and the second “From warehouse”. Such an autonomous division can be made in the document if you clear the distribution and click on the “Fill and Post” button.

7. Negative balances - reasons for their appearance and methods of working with them. Procedure for working with invoices.

When working in any accounting system in public catering, the issue of surplus goods (products) or negative balances of goods inevitably arises.

What are negative balances? This is an overconsumption of goods (products).
For example, in the kitchen warehouse there were 10 kilograms of flour, which (according to the technological maps) should be enough to make 20 loaves of bread (0.5 kg per loaf), but 21 loaves of bread were produced and sold that day. Thus, when posting an expense, 10.5 kg will be written off from the warehouse. flour, which will give a negative balance of minus 0.5 kg. (10-10.5=-0.5).

From this example it is clear that a negative balance means a surplus of goods in the warehouse.
Where did the flour come from to make the “extra” loaf of bread? Where do negative balances come from? Let's look at several options for their occurrence and ways to work with them.

Most likely reason— forgot to enter the receipt into the accounting system. That is, they brought another 0.5 kg. flour that was not taken into account. This can be solved by posting goods “retrospectively”.

Second reason— discrepancy between technological maps and real processes. That is, the cook puts 0.476 kg into a loaf of bread. flour, as required by the recipe, but the technological map erroneously indicated 0.5 kg. This also happens when the cook plays it safe and, when preparing dishes, indicates slightly higher standards for storing goods.

Or - theft. The cook deliberately does not add food to the dish, and takes the “saved” goods home, or prepares dishes from them and sells them “past the cash register”, by agreement with the waiters. And since it’s not easy to count how much you underreported—and how much you can “go wrong,” the “extra” dishes from the “saved” goods go through the cash register.

The list can be continued, but I think this is enough. The main thing is that negative balances are not a problem, this is informing the accountant about possible errors in accounting or discrepancies between technological processes in the kitchen and in accounting.

What happens if negative balances appear ?
If there is a negative balance of a certain product in a warehouse, then this product cannot be received into this warehouse.

Operational and non-operational processing of 1C documents

For the described case, it will be flour.

What should be done with negative balances (surplus)?
The surplus should be posted to the warehouse. To do this you need:

a) Construct a statement of balances on the date on which the receipt must be made. “Reports - Statement of balances - Statement of balances” Pay attention to the filter settings in the statement of balances. Rice. 30.

Fig.30. Construction of a balance sheet.

b) Copy negative balances to the matching sheet - menu “document - copy to invoice”, select parameters as shown in the figure:

Fig.31. Copying negative balances to the matching sheet.

Fig.32. Matching sheet with the changed quantity of goods.

d) The most important thing! Move the created matching sheet to yesterday, the last document. To do this, you need to go to the list of invoices and drag the document to the previous day with the mouse.


Fig.33. The process of transferring the matching sheet to the end of the day from January 24 to January 23.

This is necessary to form correct balances at the beginning of the day.

I would like to draw your attention to the recommended procedure for working with documents in the Store Hause program. So, you came to work:
1. Make a receipt for yesterday. (Create receipt invoices), if there was a receipt.
2. Make internal movements between warehouses for yesterday, if there were any.
3. Make an expense (write-off) of dishes and goods for yesterday.
4. Check the presence of negative balances for today. If there are negative balances, then post the surplus, do not forget to “drag” the matching statements to “yesterday”.
If you follow these rules, you will not experience errors associated with “negative balances”.

Disabling balance control in 1C: Accounting

When you try to post a sales document, it shows that the required quantity is not in stock. At the same time, the received goods have not yet been entered into the program, but they are in stock and need to be shipped. Is it possible to disable balance control in 1C: Accounting edition 3.0?

In the 1C: Accounting 8 program, disabling balance control is done as follows:

1). You need to go to the Administration menu - select Posting documents.

2). Check the box for “Allow inventory write-off if there are no balances according to accounting data.”

It should be borne in mind that this method is not optimal from the point of view of residue control. Today this may be convenient, but tomorrow it may lead to errors in accounting, because... a manager or accountant can enter data on the shipment of essentially non-existent product items.

With this principle established, this may not happen due to any intent, but simply due to user errors.

Do you have questions or need help from a 1C specialist? Leave a request! Pay only for results!

Many companies use mechanisms for reserving goods in 1C. This description is suitable for the programs “1C: Trade Management, ed. 10.3" and "Manufacturing Enterprise Management".

Indeed, the reservation mechanism is very convenient - you can place a reserve on goods for the client, ship the reserved goods, and remove the reserve if necessary. Unfortunately, our practice of trading automation shows that not all users fully understand the operation of the reservation mechanism.

In this article we will try to correct the situation, consider the basic principles of reservation and answer the following questions:

The article will be useful to users who are familiar with the program and want to generalize their knowledge of the reservation mechanism.

Product reservation

There are several ways to reserve an item for a buyer.

Method No. 1 – in the buyer’s order

At the time of placing an order, the buyer can reserve the goods specified in the order.

Menu: Documents – Sales – Customer orders

To do this, in the goods table you need to indicate in the “Location” column the warehouse where you want to make a reserve.

If you don’t want to manually select a warehouse, the order has a “Fill and Post” button. Clicking on this button causes the placements to be automatically filled in and the order is placed. The button is only available when placing an order today.

Method No. 2 – adjusting the buyer’s order

To correct a buyer's order, many users create a document “Adjustment of a buyer's order,” indicating in it the items to be added and removed from the order.

You can create an adjustment based on an order or manually.

Menu: Documents – Sales – Adjustment of buyer’s order

Adjustments to customer orders can also set a reserve, just like a customer order. Specify the warehouse in the “Placement” column or use the “Fill and Post” button.

Method No. 3 – in the document “Reservation of goods”

You can place a reserve using a separate document “Reservation of goods”. It can be created based on a customer order or manually.

In order to place a reserve, you need to indicate the order, the product being reserved and its quantity, and also fill out the warehouse in the “New placement” column. At the time the document is processed, a reserve will be established.

Method No. 4 - at the time of receipt of goods

This method only works if you place orders with suppliers to supply customer orders. In this case, the order indicates to the supplier for which buyer the product was ordered.

Menu: Documents – Purchasing – Receipts of goods and services

To set a reserve in the receipt of goods, the “Buyer’s order” column must be filled in.

If the receipt was created based on an order to a supplier, then customer orders will be filled automatically. Selecting a buyer's order in goods receipt if the goods were ordered to the supplier not for this buyer, but simply for the warehouse, is strongly not recommended.

Method No. 5 - in an internal order

An internal order is used to order goods from the warehouse of your own department or warehouse.

Menu: Documents – Inventory (warehouse) – Internal orders

In an internal order, as in a buyer’s order, there is a “Placement” column and a “Fill and Post” button, which allow you to put the item in reserve.

These are the main ways to set up a reserve. The most popular method, of course, is to set a reserve through the “Buyer’s Order” document.

In addition to these methods, there are other options when the program can set a reserve:

  • In adjusting an internal order (similar to adjusting a customer order)
  • In the document “Receipt order for goods”, if the “Without the right to sell” flag is set (goods are taken for safekeeping)
  • In the document “Return of goods from the buyer” - when returning goods that were sold from the reserve
  • In the “Advance report” document, if the accountant went to pick up goods ordered by a supplier (similar to the receipt of goods).

Removing goods from reserve in 1C

There are also many ways to withdraw the reserve; let’s look at the main ones.

Method No. 1 – in the sale of goods

At the time of shipment of goods, the document “Sales of goods and services” is drawn up in the program.

Menu: Documents – Sales – Sales of goods and services

If goods were reserved according to the buyer's order, then at the time of sale the reserve must be removed. In order for the reserve to be removed from goods, you need to indicate the write-off method “From reserve” in the “Products” table.

If the sale of goods is filled out based on the buyer’s order, the program itself determines which goods are in reserve and which will be written off from the free balance in the warehouse. Be very careful when filling out the document manually: if you specify the write-off method “From warehouse”, the product will be written off, but the reserve for it will not be removed and will “hang”.

Method No. 2 - in the document« Closing customer orders»

This document is used to close orders for which some goods were not shipped or the client refused to purchase altogether.

Menu: Documents – Sales – Closing customer orders

The document specifies customer orders that need to be closed. At the time the document is posted, the program checks whether there are reserves for the specified orders. If there are reserves, they are automatically removed.

After the document has been processed, there will be no reserves for all orders included in it.

Method No. 3 - in the document« Reservation of goods»

In addition to setting a reserve, this document can also be used to remove a reserve.

Menu: Documents – Sales – Reservation of goods

In order to remove a reserve, you need to indicate the order, product and its quantity, and also fill out the warehouse in the “Initial placement” column. At the time the document is processed, the reserve will be removed.

Note: with one document you can simultaneously remove a reserve from one warehouse and reserve goods in another if you fill out both the original and new placement.

Method number 4 - in« Requirements-invoice» or« Movement of goods»

The documents “Request-invoice” and “Movement of goods” are used to write off goods as department costs and move goods from one warehouse to another, respectively.

Menu: Documents – Inventory (warehouse) – Movement of goods

Menu: Documents – Inventory (warehouse) – Request invoice

If documents are drawn up on the basis of an internal order in which a reserve was established, then at the time the documents are processed, the reserve must be removed. To withdraw a reserve, the “Reserve Document” column must be filled in:

Note: if the movement of goods is done from the buyer’s reserve, then the program not only removes the reserve at the sender’s warehouse, but also sets it at the recipient’s warehouse.

These methods of withdrawing a reserve are the most popular, but there are other possible situations:

  • In the “Write-off of goods” document, if the “Reserve document” is filled in in the “Goods” table
  • In the document “Receipt order for goods”, when goods previously accepted for safekeeping without the right to sell are returned to the counterparty
  • In the documents “Adjustment of the buyer’s order” and “Adjustment of the internal order”, if a negative quantity of goods is indicated and the placement is filled out
  • In the document “Closing internal orders” (similar to closing customer orders)  

Product reservation reports

We are convinced that there are a lot of opportunities for reserving and withdrawing reserves in the program. Moreover, in most cases, the program sets/removes the reserve automatically based on the completion of the document, without signaling the user in any way.

To control reserves in a warehouse, you need to use reports, thanks to them you will always know which goods are in reserve.

Report “Goods in reserve in warehouses”

Menu: Reports – Inventory (warehouse) – Goods in reserve in warehouses

This report is intended solely to provide information on reserves. Thanks to it, you can always find out: which products, for which order and in which warehouse are in reserve.

The report can be customized: set selections, change the composition of groups, etc.

Report “Analysis of the availability of goods in warehouses”

Menu: Reports – Inventory (warehouse) – Analysis of the availability of goods in warehouses

This report shows more detailed information about the balance of goods in the warehouse. In it you can see the balance of goods in the warehouse, the reserve, the quantity of goods ordered from the supplier, and other information:

For those who have worked with 1C configurations in which operational records are kept, most likely the form shown in the figure next to it is familiar. The document is being carried out today, and the 1C program offers 2 options for carrying out this document.

Let's consider what these document processing modes mean...

Where is it used?

1C: Trade Management 10.3

1C:Manufacturing enterprise management 1.3

1C: Integrated automation 1.1

Prompt execution of 1C document

Only documents for today can be processed promptly.

Operational posting of a 1C document is carried out at the current moment in time. Even if the document was created today, several hours ago, when this document is processed quickly, the time of this document will change to the current one.

During operational execution, most configurations check for residuals. If, for example, there is no balance in the warehouse, then the goods document will not be posted.

It is impossible to quickly post a document on a future date.

Non-operational posting of 1C document

Non-operatively, you can post a document for any date, but the date and time of the document will not change.

If carried out non-operatively, residues may not be controlled. For example, a document is posted, but at the same time it displays a message about the product being out of stock.

Click on one of the buttons below to help other 1C users find this information on the Internet faster.

For implementers who work with standard or their own configurations - and those who are preparing for Certification at 1C: Platform Specialist.

In this article we will look at:

  • How use managed locks correctly for operative and non-operative processing of documents
  • what can it lead to no blocking
  • how to avoid making mistakes that are not immediately discovered and can have serious consequences :)

Reading time: 20 minutes.

So, two methods for controlling balances in 1C:Enterprise 8.3

Let's start with the fact that the designations “old method” and “new method” are quite arbitrary. In fact, if a “new technique” has been used since 2010, it is no longer very new :)

However, we are once again forced to stop here, because it is necessary to distinguish between these approaches and this is critical.

The “old method” is an approach to controlling residues that has been used since the days of 1C:Enterprise 8.0.

Since 2010, with the development of the platform and the addition of new capabilities with 1C:Enterprise 8.2, a “new methodology” has been applied ( however - not everywhere).

What's the difference?

The fundamental difference is in the moment of control of residues:

  • In the “old” method, balances are controlled BEFORE recording movements in registers.
    First, we check the balances; if the balances are “not enough” (negative balances will arise), we will not post the document
  • In the “new” method, control occurs AFTER recording movements, that is, after the fact.
    If after execution negative balances are formed, you need to “roll back” the transaction, that is, cancel the document.

The advantages and disadvantages of the new technique are discussed in detail in a separate article, so we will limit ourselves to only the general thesis - the new technique is more optimal in terms of performance and scalability.

Ok, so the old technique is a thing of the past and this is the destiny of UT 10.3?

No, that's not entirely true.

The new methodology can be used when, when writing off goods all the necessary data is in the document and does not need to be calculated.

For example, when the amount to be written off is known from the tabular part of the document. The problem arises with the cost price, because it needs to be calculated before writing to the register, that is, executing a query to the database.

Therefore, the new methodology can be successfully applied if data on quantity and cost are stored in separate registers.

For example, like this:

However, there are configurations where both quantity and cost are taken into account on the same register. And here it is justified the old method of residue control still works!

Here is an example of one register for both quantity and cost:

What about typical configurations? It's just a new technique, right?

Not always!

For example, in “1C: Trade Management 11.3” there are 2 registers:

When posting shipping documents, the “Cost of Goods” register is not filled in at all. Data enters this register only when performing routine operations to close the month.

UT 11 uses a new technique, since all data for posting documents can be obtained without accessing controlled registers.

As for “1C: Accounting”, both quantity and cost are stored there in one register accounting department, on the corresponding accounting accounts.

That's why BP 3.0 uses the old technique.

Please note that quantitative and cost accounting in UT 11 are carried out with different analytics. For example, the cost price is additionally maintained by organization, division, manager, type of activity, VAT, and so on.

In this article, we will analyze blocking for both the old and new methods of controlling balances.

About the prompt processing of documents

There are often misconceptions about this simple question.

Sometimes it is believed that operational implementation is the control of residues using a new method. This is not true, from the word “at all”.

Operational performance can be analyzed while monitoring residues, but is not necessary.

Operational implementation– this is the document’s ability to record emerging events here and now, that is, in real time.

It is configured using a special document property:

What does it mean to “register here and now”? The platform for quickly processed documents performs a number of actions:

  • Documents posted today are assigned the current time
  • If two documents are posted simultaneously, each will have its own time (that is, the system will space the documents in different seconds)
  • Documents cannot be posted on a future date.

But the main thing is that the system transmits a sign of efficiency document for processing:

For promptly posted documents, you can omit specifying the parameter in the request; current balances will be obtained as of December 31, 3999:

Current balances are stored in the system and are obtained as quickly as possible (balances for other dates in most cases are obtained by calculation).

Thus operational implementation can be adopted for both the old and new residue control methods.

Interesting fact.

In UT 11, documents writing off nomenclature are prohibited from being carried out promptly. For example, these are documents “Sales of goods and services”, “Assembly of goods”, “Movement of goods”, “Domestic consumption of goods” and others.

Why is this done?

In the system, balance control is always performed at the current point in time (the Period parameter is not specified in the request). And the lack of operational execution allows you to enter documents in the future, such a task is often required by clients.

Control of balances using a new method - without blocking

Let us briefly consider the algorithm for controlling balances when carrying out the document “Sales of goods and services” using a model configuration.

There are two registers:

  • Available balances – for quantitative accounting
  • Cost of goods – for cost accounting

To control product balances, it is enough to work with the “Free balances” register.

The posting processing code will look like this:

Request = New Request;


#Area Area1
Query.TemporaryTableManager = NewTemporaryTableManager;
#EndArea


#Area Area2
Request.Text =
"CHOOSE

|Place GoodsDocument
|FROM
|WHERE
|
|GROUP BY
|
|INDEX BY
| Nomenclature
|;

|SELECT
| &Date AS Period,
| VALUE(Type of MovementAccumulation.Expense) AS Type of Movement,
| ProductsDocument.Quantity AS Quantity
|FROM
";
Query.SetParameter("Date", Date);
#EndArea

// 4. Recording movements in the database
#Area Area4
Movements.Record();
#EndArea


#RegionRegion5
Request.Text =
"CHOOSE
| -FreeRemainingRemaining.QuantityRemaining AS Deficit
|FROM
| ProductsDocument HOW TO ProductsDocument
| INNER JOIN RegisterAccumulations.FreeRemains.Remains(
| &Moment of Time,
| Nomenclature B
| (CHOOSE
| ProductsDocument.Nomenclature AS Nomenclature
| FROM
| Products of the Document AS Products of the Document)) AS Free Remaining Remaining
| Software ProductsDocument.Nomenclature = AvailableRemainingRemaining.Nomenclature
|WHERE
| AvailableRemainingRemaining.QuantityRemaining< 0";
#EndArea


#RegionRegion6
Moment of Remaining Control =
?(Mode = Document Holding Mode. Operational,
Undefined,
New Boundary(TimePoint(), BoundaryView.Including));
Request.SetParameter("Moment of Time", Moment of Remaining Control);
RequestResult = Request.Execute();
#EndArea


#RegionRegion7
If NOT Query Result.Empty() Then
Refuse = True;
ErrorSelect = QueryResult.Select();
While SelectErrors.Next() Loop
Message.Text = "Not enough product in quantity: "+SelectionErrors.Shortage;
Message.Field = "Products["+(ErrorSelection.LineNumber-1)+"].Quantity";
Message.Message();
EndCycle;
endIf;
#EndArea


#Region Region8
If Failure Then
Return;
endIf;
#EndArea

EndProcedure

Let's consider the key points of the residual control algorithm.

1. Initializing the temporary table manager

The manager will be needed so that the temporary table created in the query is available in subsequent queries.

Thus, the data from the tabular part is obtained once, saved in a temporary table and then used repeatedly.

2. Query grouping tabular data

The query selects grouped data from the tabular section.

Please note that the document line number is also selected - it will be needed to contextualize the error message. For the line number, the aggregate function MINIMUM() is used - that is, the message will be tied to the first line where the specified nomenclature occurs.

The first request in the batch creates a temporary table. In the second query, temporary table data is selected and 2 fields required for each register entry are added - Period and Movement Type.

The advantages of this approach:

  • There is no need to perform pre-cleanup, that is, use the Clear() method
  • There is no need to organize a loop based on the selection or tabular part.

By the way, a similar approach is used in standard configurations, in particular in UT 11 and BP 3.0.

4. Recording movements in the database

The recording could be performed with one command (instead of two) - Movements.FreeRemains.Record().

And in our case, when one register is written, there will be no difference.

But this approach is more universal:

  • First, set the Write flag for the required sets of register records
  • Then call the Write() method of the Movement collection, which writes to the database all sets with the Write flag set

After executing the “Movements.Record()” command, the Record flag for all sets will be reset to False.

You also need to remember that at the end of the transaction (after Post Processing), the system will automatically write to the database only those sets of records for which the Write flag is set to True.

Typical solutions use a similar scheme to record movements. Why?

The Write() method of the Movement collection writes sets of records in the same sequence, even for different documents.

Recording movements manually can lead to problems.

Let's give an example.

If you write in the “Implementation” document like this:

Movements.FreeRemainders.Write();
...
Movements.Cost of Goods.Write();

And in the document “Movement of goods” change the order:

Movements. Cost of Items.Write();
...
Movements. FreeRemainings.Write();

This can lead to deadlocking of documents on intersecting sets of items.

The above motion recording approach can be used if the appropriate motion recording value is specified in the document properties:

5. Query receiving negative balances

The request selects negative balances by item from the document.

A negative balance is a shortage (shortage) of a product.

The connection to the items from the document is performed only to obtain the line number.

If we did not plan to link messages to document fields, the query could be greatly simplified - data would be obtained from one table (the remainder of the register).

6. Determining the point in time to control residues

This is where operational execution came in handy.

If the document is carried out promptly, then the moment for receiving balances is Undetermined, which means receiving current balances.

If this is a non-operative transaction, then we get a point in time “after” the document - to take into account the movements just made.

Let us remember that obtaining current balances is a quick operation compared to obtaining balances at an arbitrary point in time.

This is precisely the benefit of promptly executed documents.

7. If the request is not empty, it means that negative balances have been formed

In the loop, we go through all the negative remainders and display a message attached to the rows of the tabular part.

This is what the diagnostic message will look like:

8. If there are errors, then return from the event handler

If there was at least one mistake, we exit the procedure.

Since there is no point in continuing the transaction, the transaction will not be recorded anyway (and then we will develop a code for writing off batches).

Implementation of cost write-offs by batch

After checking the balances has been successful, you can begin writing off the batches.

The code for writing off by FIFO will be like this:

// I. Analysis of document date shift forward


AND NOT ThisObject.ThisNew()
And ThisObject.Conducted Then

Request = New Request;
Request.Text =
"CHOOSE
| Document.Date AS Date
|FROM
|WHERE

RequestResult = Request.Execute();
SelectDocument.Next();

Otherwise
Lie);
endIf;

EndProcedure

Procedure When Recording (Refusal)

ThisObject.AdditionalProperties.Insert("DocumentDateMovedForward",
ThisObject.Date>


endIf;

EndProcedure

ProcessingProcedure(Failure, Mode)

Request = New Request;

// 1. Initialization of the temporary table manager
#Area Area1
...
#EndArea

// 2. Query grouping table data
#Area Area2
...
#EndArea

// 4. Recording movements in the database
#Area Area4
...
#EndArea

// 5. Query receiving negative balances
#RegionRegion5
...
#EndArea

// 6. Determining the point in time to control balances
#RegionRegion6
...
#EndArea

// 7. If the request is not empty, then negative balances have been formed
#RegionRegion7
...
#EndArea

// 8. If there are errors, then return from the event handler
#Region Region8
...
#EndArea

// II. Preparing sets of records for the "Cost of goods" register
#Area AreaII

Movements.Record();
endIf;
Movements.Cost of Goods.Record = True;
#EndArea

// III. Request receiving batch balances for write-off using FIFO
#AreaAreaIII
Request.Text =
"CHOOSE
| ProductsDocument.Nomenclature AS Nomenclature,
| ProductsDocument.Line Number AS Line Number,

| Remains. Party AS Party
|FROM
| ProductsDocument HOW TO ProductsDocument
| &Moment of Time,
| Nomenclature B
| (CHOOSE
| FROM

|ORDER BY
|RESULTS
| MAXIMUM(Quantity),
| SUM(QuantityRemaining)
|software
| Nomenclature";
RequestResult = Request.Execute();
#EndArea

// IV. Cycle by document nomenclature
#AreaAreaIV

// V. Get the amount to write off
//VI. Batch cycle by FIFO
While SelectionBatch.Next() And RemainingWrite>0 Loop
// VII. Check for zero balance
If SampleBatch.QuantityRemaining=0 Then
Continue;
endIf;
Movement.Period = Date;

// VIII. Calculation of quantity and amount to be written off

// IX. We will reduce the amount to be written off
EndCycle;
EndCycle;
#EndArea

EndProcedure

Let's look at the key points of the algorithm for writing off batches using FIFO.

I. Analysis of document date shift forward

Here we understand whether the date of the posted document moves forward. This information will be useful below when cleaning up movements.

To analyze the document date shift, 2 events are required:

  • Before recording– to obtain the old date of the document and check the document posting mode
  • When recording– to get a new document date

We transfer data between events through a special collection of the object – “Additional Properties”. It exists as long as the current version of the object is in memory, that is, it is available for all events during execution.

A similar technique is used in the standard “1C: Accounting 8”. But there is used one event “Before recording”.

Why is it not necessary to use “On recording” in the BP?

It's simple - shipping documents cannot be processed promptly in the accounting department. This means that the time of the document will not accept an operational stamp (if the document is re-posted on the current day), therefore both the old and new date of the document can be obtained in the “Before recording” event.

II. Preparing sets of records for the “Cost of goods” register

The movement deletion mode is set for the document – ​​“When posting is cancelled”:

Thus, there is a possibility that when reposting, we can take into account the movements of the document itself. BUT this will only happen if the date of the document is shifted forward. That is, it makes sense to clear movements only when the document date is shifted forward.

Here's an example:

  • The balance of LG monitors at the time of documents is 10 pcs.
  • A document is posted that writes off 8 pcs.
  • In the same document, the time is increased by 1 minute, let’s repeat

If old movements are not deleted, the system will report a shortage of 6 monitors, since the current document movements have already written off 8 of the 10 available monitors.

Note. Sometimes there is advice - to remove movements only during surgery.

But this is wrong: they will not take into account the situation of changing “non-operative” documents (yesterday’s and earlier ones).

That is, the problem of “shortage of 6 monitors” (see above) will in this case be solved only for documents modified today.

III. Request that receives batch balances for write-off using FIFO

In the request, we refer to the balances by batch, and at the same time we superimpose the totals by item.

At the total level, the quantity from the document is obtained - MAXIMUM(Quantity) and the balance of the batch - SUM(QuantityRemaining).

Do you think the quantity from the document may exceed the total balance of the item for all batches?

If movements in the registers “Free Remains” and “Cost of Goods” by quantity are made synchronously (both incoming and outgoing), then such a situation cannot arise. This is what we will rely on when writing off lots.

IV. Cycle by document nomenclature

Thanks to the results in the query in the outer loop, we bypass the nomenclature from the document.

V. Get the amount to write off

Let's remember how much you need to write off. Further this amount will decrease.

VI. Batch cycle by FIFO

The nested cycle will contain batches according to the current nomenclature.

VII. Check for zero balance

In general, the situation when the batch balance is zero is an error in the system data (nevertheless, such a situation is possible). The point is that in this case the sum is NOT zero (the virtual table of register balances does not return records with zero resource values).

Therefore, we decide that we will skip such erroneous games. If desired, you can issue diagnostics to the user.

VIII. Calculation of quantity and amount to be written off

The quantity to be written off is the minimum value between the remainder of the batch and what remains to be written off.

The amount is calculated by an elementary proportion.

If the entire balance of a batch is written off, the entire amount of that batch will be written off. This is 3rd grade math at a parochial school: X*Y/X = Y:)

That is, there is NO need to do additional checks (sometimes they give such advice) to ensure that the entire quantity is written off. This advice even has its own name - “ the problem of pennies».

And for those who give bad advice, it makes sense to look into the “1C: Accounting 8” configuration. There (oh, horror!) there is no check that the entire batch is written off :)

Here is a screenshot of the general module “Goods Accounting”, the “Write Off Remaining Goods” method:

IX. We will reduce the amount to be written off

You need to understand how much is left to write off. To do this, subtract the quantity from the register movement.

Why are managed locks needed?

Here we come to controlled blocking.

It would seem that the algorithms presented above work like clockwork. You can test them yourself (links to database downloads at the end of the article).

But during real multi-user operation, problems will begin, and, as often happens, problems will not be detected immediately...

Let's give an example of the most typical problem when writing off an item, when 2 users almost simultaneously try to write off an item (make a sale):

In this example, two users almost simultaneously carry out the sale of goods - document No. 2 began to be carried out a little later than document 1.

Upon receipt of the balance, the system reports that the balance is 10 units, and both documents are successfully processed. The sad result is that there are minus 5 LG monitors in stock.

But at the same time, residue control works! That is, if document No. 2 is posted after the end of document No. 1, the system will not post document No. 2:

Sometimes there is a misconception - “Only 3-4 users work in my database at the same time, the probability of parallel processing of documents is zero, so you don’t have to be distracted by blocking.”

This is very dangerous reasoning.

Even two users can post documents almost simultaneously, for example, if one of them performs group posting of documents.

In addition, you cannot be immune to an increase in the number of users. If the business takes off, then new sales people, storekeepers, logisticians, and so on will be needed. Therefore, you need to immediately create solutions that will work stably in a multi-user environment.

How to solve the problem when posting documents in parallel?

The solution is simple - block LG monitors at time T1, so that other transactions cannot access the balances for this product.

Then at time T2 the system will wait for the LG monitor to be unlocked. And after this, the system will receive the current balance of goods and the write-off of goods will be completed (or not completed).

Just a few words about the classification of blocking.

There are 2 types of locks:

  • Object
  • Transactional.

To put it simply, object locks do not allow interactively change one object (directory element or document) for two users.

And transaction locks allow programmatically operate with current data when performing movements across registers.

In this article we will be interested in transactional locks, then simply locks.

When should blocking be applied?

The task of setting locks becomes relevant as soon as the database starts work more than one user.

Locks need to be placed on transactions, but when do transactions occur? That's right, the most common case is document processing.

That is, blocking must be applied when processing all documents?

No way. It’s definitely not worth setting up locks “just in case.”. After all, locks themselves reduce the concurrency of users (system scalability).

Locks must be placed on resources (table rows) that are read and modified in transactions. For example, when carrying out documents.

In the example above, such a resource is the balance of the product. The system had to block the balance from the moment the balance data was received (T1) until the end of the transaction (T3).

Note. The transaction when posting document No. 1 begins earlier than the moment the balance is received. But for simplicity, we assume that T1 is both the start time of document processing and the moment of receipt of balances.

Example when no need to lock– carrying out the “Receipt of goods” document. In this case, there is no competition for resources (leftovers, ...), so blocking will be harmful: it will reduce the scalability of the system.

Automatic and controlled blocking

Here we will not go into theory (this is the topic of a separate article), but will only say that managed locks are more optimal.

Instead of theory, we can give proof - all modern standard configurations work on controlled interlocks.

Therefore, in our model configuration the appropriate mode will be selected:

Controlled locks in new residue control technology

We will apply a lock to the “Free balances” register and only to item items found in the document.

Moreover correct blocking option– as late as possible.

In the new method of controlling balances, this must be done before recording (or at the time of recording) movements in the “Free Balances” register, so that other transactions cannot change this shared resource.

The lock can be applied manually (programmatically) and a little later we will show how this is done.

But an additional bonus of the new balance control technology is that it only takes one line of code to lock shared resources.

You just need to set the BlockForChange property on the register entry set:

// 3.1. Locking register remainders
#Area Area3_1
Moves.FreeRemainders.BlockForChange = True;
#EndArea

// 4. Recording movements in the database
#Area Area4
Movements.FreeRemainders.Write = True;
Movements.Record();
#EndArea
...

As a result, 2 transactions will not be able to change free balances for one item.

In fact, when the property is BlockForChange does not install managed locking, it only turns off the mode of separating register totals when writing.

But for our article, the following is fundamental: the system will set a lock on the combination of data written to the register. We will look at the work of the BlockForChange property in detail in a separate article.

By the way, in the standard UT 11 it is not so easy to find the setting of the BlockForChange property for the “Free balances” register. The fact is that this is performed in the register recordset module, in the “Before writing” event.

That's all, with one line of code the correct operation of the system was ensured!

Important. We do not lock the “Cost of goods” register.

Why? Such blocking would be unnecessary (and this is a certain load on the 1C server), since movements to the “Free balances” and “Cost of goods” registers are always performed synchronously, that is, sequentially one after another.

Therefore, by blocking goods from “Free balances”, we will not allow other transactions before these goods and in the “Cost of goods” register.

But for the old method of controlling balances, the blocking will be applied differently. First, let's look at the batch write-off algorithm for this case.

Old method of residue control

Let us remind you that the old methodology can be applied if quantity and cost are taken into account in one register.

Let this be the “Cost of goods” register:

Then the algorithm for posting the document “Sales of goods” will look like this:

// 1. Event handler "Before recording"
Procedure Before Recording (Failure, Recording Mode, Conducting Mode)

If Recording Mode = Document Recording Mode. Posting
AND NOT ThisObject.ThisNew()
And ThisObject.Conducted Then

Request = New Request;
Request.Text =
"CHOOSE
| Document.Date AS Date
|FROM
| Document. Sales of Goods and Services AS Document
|WHERE
| Document.Link = &Link";
Request.SetParameter("Link", ThisObject.Link);
RequestResult = Request.Execute();
SelectionDocument = Query Result.Select();
SelectDocument.Next();

ThisObject.AdditionalProperties.Insert("OldDocumentDate", SelectDocument.Date);

Otherwise
endIf;

EndProcedure

Procedure When Recording (Refusal)

If NOT ThisObject.AdditionalProperties.Property("DocumentDateShiftedForward") Then

ThisObject.AdditionalProperties.Insert("DocumentDateMovedForward",
ThisObject.Date>ThisObject.AdditionalProperties.OldDocumentDate);

Report(ThisObject.AdditionalProperties.DocumentDateMovedForward);
endIf;

EndProcedure

ProcessingProcedure(Failure, Mode)

// 2. Removing "old" document movements
If AdditionalProperties.DocumentDate is ShiftedForward Then
Movements.Cost of Goods.Record = True;
Movements.Product Cost.Clear();
Movements.Record();
endIf;

// 3. Setting the flag to record movements at the end of the transaction
Movements.Cost of Goods.Record = True;

// 4. Request that receives balances by batch at the time of the document
Request = New Request;
Request.Text =
"CHOOSE
| Sales of Products. Nomenclature AS Nomenclature,
| SUM(SalesProducts.Quantity) AS Quantity,
| MINIMUM(SalesProducts.LineNumber) ASLineNumber
|Place GoodsDocument
|FROM
| Document. Sales of Goods and Services. Goods HOW to Sale Goods
|WHERE
| SalesProducts.Link = &Link
|GROUP BY
| Sales of Products. Nomenclature
|INDEX BY
| Nomenclature
|;
|////////////////////////////////////////////////////////////////////////////////
|SELECT
| ProductsDocument.Nomenclature AS Nomenclature,
| ProductsDocument.Quantity AS Quantity,
| ProductsDocument.Line Number AS Line Number,
| ISNULL(Remaining.NumberRemaining, 0) AS QuantityRemaining,
| ISNULL(Remaining.AmountRemaining, 0) AS AmountRemaining,
| Remains. Party AS Party
|FROM
| ProductsDocument HOW TO ProductsDocument
| LEFT CONNECTION Register Accumulations. Cost of Goods. Remainings(
| &Moment of Time,
| Nomenclature B
| (CHOOSE
| T.Nomenclature AS Nomenclature
| FROM
| ProductsDocument AS T)) AS Leftovers
| Software ProductsDocument.Nomenclature = Remaining.Nomenclature
|ORDER BY
| Remains.Batch.Moment of Time
|RESULTS
| MAXIMUM(Quantity),
| SUM(QuantityRemaining)
|software
| RowNumber";

Request.SetParameter("TimePoint", TimePoint());
Request.SetParameter("Link", Link);

RequestResult = Request.Execute();

SelectionNomenclature = Query Result.Select(BypassQueryResult.ByGrouping);

// 5. Cycle by item - checking whether the quantity is sufficient for write-off
While SelectionNomenclature.Next() Loop

Nomenclature Deficit = SampleNomenclature.Quantity - SampleNomenclature.QuantityRemaining;

If Nomenclature Deficit>0 Then
Message = New MessageToUser;
Message.Text = "Not enough product in quantity: "+Nomenclature Deficiency;
Message.Field = "Products["+(SelectionNomenclature.LineNumber-1)+"].Quantity";
Message.SetData(ThisObject);
Message.Message();
Refuse = True;
endIf;

If Failure Then
Continue;
endIf;

// 6. Get the amount to write off
RemainingWrite = SampleNomenclature.Quantity;
SelectionBatch = SelectionNomenclature.Select();

// 7. Batch cycle
While SelectionBatch.Next() And RemainingWrite>0 Loop

Movement = Movements.Cost of Goods.AddExpense();
Movement.Period = Date;
Movement.Nomenclature = SelectionBatch.Nomenclature;
Movement.Batch = SelectionBatch.Batch;
// 9. Calculation of quantity to be written off
Movement.Quantity = Min(RemainingWrite, BatchSelection.QuantityRemaining);
// 10. Calculation of the write-off amount
Movement.Amount = Movement.Quantity*
SampleBatch.AmountRemaining/SampleBatch.QuantityRemainder;

// 11. Reduce the amount to be written off
RemainingWrite = RemainingWrite - Movement.Quantity;

EndCycle;
EndCycle;

There are operational and non-operative document processing; the possibility of non-operative execution is regulated by the corresponding option in the document settings:

Operational implementation- this is holding a document with the current date and time. Even if you manually specify a past or future time and date in a document, in online mode it will still be carried out as the current moment. This is necessary because in online mode the system controls the balances in the registers so that it cannot go into the negative. Such control makes sense only at the current moment, because... even a second earlier or a second later, the state of the base may already be different than at the moment of the execution itself.

Non-operative implementation- holding a document to a past or future date. Because control of balances when carried out “retrospectively” does not have any practical meaning, the goods have already been shipped anyway, and in this mode of execution it is not carried out.

Non-operational posting may violate batch accounting: when writing off the warehouse retrospectively, the first suitable batch will be written off, and not the one that should have been FIFO at the time specified in the document. After this, the parties will have to be restored.

Question 01.50 of exam 1C: Platform Professional. Under what conditions is it necessary to set the "Operational Posting" property of a document to the value "Prohibit"?

  1. When the document is oriented towards real (present) time.
  2. When a document is oriented towards the future tense
The correct answer is fourth. If the document is always supposed to be carried out on a future date, then prompt execution is definitely not necessary.

Question 01.51 of exam 1C: Platform Professional. Under what conditions is it necessary to set the "Operational posting" property of a document to the value "Allow"?

  1. When the document is oriented towards real (present) time.
  2. When the posting of a document does not depend on the time of its registration.
  3. When a document is oriented towards the past tense ("backdating").
  4. When a document is oriented towards the future tense.
The correct answer is the first one, see above.

Question 12.10 of exam 1C: Platform Professional. The operational mode of document posting is used:

  1. Only when working with information registers
  2. Only when working with accumulation registers
  3. Only when working with accounting registers
  4. Only when working with calculation registers
  5. Does not depend on the type of register

The correct answer is fifth. Regardless of the type of register, you must either take into account or not take into account its state at the time the records are generated.

Question 12.54 of exam 1C: Platform Professional.

The correct answer is the first, everything is obvious from the screenshot.

Question 12.55 of exam 1C: Platform Professional. Describe what the system does when you try to post a document?

  1. The system will refuse to post the document because operational execution is allowed for it, and the date is greater than the current date
  2. The system will only record the document for the required date, but will not post it, because operational execution is allowed for it, and the date is greater than the current date
  3. The system will ask a question about the posting mode ("Operational", "Non-operative") and, depending on the user's choice, will post the document
  4. The system will, of course, process the document in non-operational mode, because... operational execution is allowed for it, and the document date is greater than the current date

The correct answer is the first one. Operational posting is carrying out by the current date and time.

Question 12.56 of exam 1C: Platform Professional. Describe what the system does when you try to post a document?

  1. The system will certainly process the document online, because... operational execution is allowed for it, but it has not been carried out and the date is equal to the current date (accurate to the day)
  2. The system will refuse to post the document because operational execution is allowed for it, and the date is greater than the working date
  3. The system will, of course, process the document in non-operational mode, because... operational execution is allowed for it, and the document date is less than the current date (accurate to a second)
  4. The system will ask a question about the posting mode ("Operational", "Non-operative") and, depending on the user's choice, will post the document

The correct answer is the first one. Entries will be made using the current date and time.

Question 12.60 of exam 1C: Platform Professional. Describe what the system does when you try to post a document?

  1. Because For a document, operational posting is allowed, it is posted and the date is equal to the current date (accurate to the day), then the system will ask a question about the posting mode (“Operational”, “Non-operative”) and, depending on the user’s choice, will post the document
  2. The system will refuse to post the document because it is allowed to be carried out promptly, and the date is greater than the working date
  3. The system will, of course, process the document in non-operational mode, because... operational execution is allowed for it, and the document date is less than the current date (accurate to a second)
  4. The system will certainly process the document online, because... operational execution is allowed for it, and the date is equal to the current date (accurate to the day)
The correct answer is the first one - since the document has already been posted, the system needs to understand what time to post the document - the current time or the document time.

Question 12.63 of exam 1C: Platform Professional. Describe what the system does when you try to post a document?

  1. The system will request confirmation of posting the document in non-operational mode or canceling the action, because operational execution is allowed for it, it was not carried out and the date is less than the current date
  2. The system will refuse to post the document because it is allowed to be carried out promptly, and the date is greater than the working date
  3. The system will, of course, process the document in non-operational mode, because... operational execution is allowed for it, and the document date is less than the current date
  4. The system will ask a question about the posting mode ("Operational", "Non-operative") and, depending on the user's choice, will post the document
The correct answer is the first one. It will not be possible to quickly redo it; the movements have already been created.

Question 12.66 of exam 1C: Platform Professional. Describe what the system does when you try to post a document?

  1. The system will, of course, process the document in non-operational mode, because... operational execution is allowed for it, it is carried out and the date is less than the current date
  2. The system will refuse to post the document because it is allowed to be carried out promptly, and the date is greater than the working date
  3. The system will refuse to post the document because operational execution is allowed for it, and the date is less than the current date
  4. The system will request confirmation of posting the document in non-operational mode or canceling the action, because operational execution is allowed for it, and the date is less than the current date
  5. The system will ask a question about the posting mode ("Operational", "Non-operative") and, depending on the user's choice, will post the document
First answer.

Question 12.57 of exam 1C: Platform Professional. What domain conditions might affect setting the Live Post property of a document to Allow?

  1. When a document is oriented towards real (present) time
  2. When the posting of a document does not depend on the time of its registration
  3. When a document is oriented towards past tense ("backdating")
  4. When a document is oriented towards the future tense

The correct answer is the first, see about the operational mode in the post.

Question 12.58 of exam 1C: Platform Professional. In what modes can a document be posted if the "Operational posting" property is set to "Prohibit"?

  1. Only in "Non-operational" mode
  2. Only in "Operational" mode
  3. Both in "Operational" and "Non-Operational" modes

The correct answer is obviously the first one.

Question 12.59 of exam 1C: Platform Professional. In what modes can a document be posted if the "Operational Posting" property is set to "Allow"?

  1. Both in the "Operational" and in the "Non-operative" mode
  2. Only in "Operational" mode
  3. Only in "Non-operational" mode

First option.

Question 12.65 of exam 1C: Platform Professional. In what modes can a document be posted if the "Operational posting" property is set to "Prohibit"?

  1. Can be carried out in the past period
  2. Can be carried out in the future
  3. Can be carried out by the current period
  4. Options 1 and 2 are correct
  5. Options 1 and 3 are correct
  6. Options 1, 2 and 3 are correct

The correct answer is number six, non-operative execution means execution at any necessary moment.

Question 12.67 of exam 1C: Platform Professional. When re-posting a document in the register:

  1. The old set of records is always automatically deleted and a new one is written in its place
  2. The set of entries in the register remains unchanged
  3. The behavior of the recordset is determined by the developer in the configurator through settings and program code
  4. The behavior of the record set is determined by the user depending on the selected posting mode (online or non-online)

The correct answer is the first, the set of records can be programmed and different when posting the document for the first time/repeatedly.

Question 12.68 of exam 1C: Platform Professional. When the "Online execution" mode is enabled in the configurator?

  1. The document can be posted with the current date and current time
  2. The document can be posted with any arbitrary date
  3. The document can be posted either with the previous date or with the current date and current time

The correct answer is third. The document will be processed non-operatively on the previous date.

Question 12.73 of exam 1C: Platform Professional. In what modes can a document be posted if the "Operational posting" property is set to "Prohibit"?

  1. When posting a document as a recorder for a record set, there must be a link to the current document
  2. When holding a document as a recorder for a set of records there must be a reference to any document, but for all records in the set the recorder must be the same
  3. When carried out operationally by the registrar, the set must contain a link to the current document, and when carried out non-operatively there can be a link to any document

The correct answer is the second (it is not entirely clear how this correlates with the mode of conduct).


Editor's Choice
Value added tax is not an absolute charge. A number of business activities are subject to it, while others are exempt from VAT....

“I think painfully: I’m sinning, I’m getting worse, I’m trembling at God’s punishment, but instead I’m using only God’s mercies. My sin...

40 years ago, on April 26, 1976, Defense Minister Andrei Antonovich Grechko passed away. The son of a blacksmith and a dashing cavalryman, Andrei Grechko...

The date of the Battle of Borodino, September 7, 1812 (August 26, old style), will forever remain in history as the day of one of the greatest...
Gingerbread cookies with ginger and cinnamon: bake with the children. Step-by-step recipe with photographs. Gingerbread cookies with ginger and cinnamon: bake with...
Waiting for the New Year is not only about decorating the house and creating a festive menu. As a rule, in every family on the eve of December 31...
You can make a delicious appetizer from watermelon rinds that goes great with meat or kebabs. I recently saw this recipe in...
Pancakes are the most delicious and satisfying delicacy, the recipe of which is passed down in families from generation to generation and has its own unique...
What, it would seem, could be more Russian than dumplings? However, dumplings only came into Russian cuisine in the 16th century. Exists...