How to set up smartphones and PCs. Informational portal
  • home
  • Reviews
  • A critical error occurred while updating 1c. Infobase conversion error

A critical error occurred while updating 1c. Infobase conversion error

When working in 1C: Enterprise, the following message may appear: "To work with the new version of 1C: Enterprise, the infobase must be converted." Why does this window appear and how can I resolve the error?

In most cases, the reason for the appearance of the window is the recent transition of the program from an outdated version of the platform to a newer one. Different platforms information base 1C is formed in its own way and takes on a different composition. All that needs to be done is to convert the database (the structure of which corresponds to the outdated platform) to the newest format.

Database conversion

This procedure is simple, however, first it is recommended to create a backup copy of the database, in case an error occurs during the conversion (for example, the computer turns off, as a result information base 1C, as well as the program itself, may be damaged). Then apply the following sequence of actions:

  • Open the database in the configurator mode;
  • You will see a message asking you to convert the infobase. Click confirmation;

  • Close the configurator.

Open the database - it should start without problems. If after conversion the error window continues to appear, you can try the procedure again. In the case when this does not help, you need to contact the 1C programmer. Sometimes, while performing an operation, the program may freeze. There is no need to take any action at this moment.

Important! Information base 1C converted by the latest version of the program cannot be opened on previous versions.

Sandbox

authority September 18, 2013 at 03:24 PM

1C, restoring the infobase configuration using MS SQL

At one time I ran into a problem: when updating the configuration from the repository, a failure occurred and 1C was closed.

As it turned out later, the configuration repository was destroyed, and when the configuration was updated, the database configuration also flew from the repository. A similar error occurred before with a dynamic information security update.

Because This problem has arisen more than once. I decided to share a treatment option.

At the next launch of the configurator, an error occurred: “Attention !!! An error occurred while refreshing the data since the last restructuring. Do you want to retry the update? " if the answer is yes, we get the message: “An incomplete configuration save operation was detected. To continue working, you must complete the operation "after which the application is closed.

When analyzing this problem, several options were found to solve the problem, each solution works in different cases.

Option 1 (if you have a SQL backup with a copy with an identical configuration):

A copy of the information security is deployed, and the following query is executed:
USE GO DELETE FROM .. GO INSERT INTO .. ​​SELECT * FROM .. GO
In this case, the table in which the IB configuration is stored is refilled. It is advisable to test and correct the information security after this operation.

Option 2 (in the absence of backup):

This option was treated like the last straw. Because the configuration was under development and the backup was forgotten a bit, relying on the repository.
In the database, two records are deleted from the "Config" table by the value in the "FileName" column - dbStruFinal and commit

The following query is executed:
USE GO DELETE FROM. WHERE FileName = "dbStruFinal" GO DELETE FROM. WHERE FileName = "commit" GO
Oddly enough, the base comes to life.

Tags: 1c enterprise 8.2, SQL, configuration restore

This article is not subject to comment, since its author is not yet a full member of the community. You will be able to contact the author only after he receives

Background

We needed to create a new "MessageTrackingLog" information register. Added to the configuration, loaded the data. Then the optimization work started. I had to change the structure of the register. But it was not there!

Everything is clear here. The entries have become non-unique, you need to delete them!

The easiest way is:

NewRecord = InformationRegisters.MessageTrackingLogin.CreateRecordSet (); NewWrite.Write ();

With this method, we will clear the register in 1C very quickly (but this will also be our mistake).

Error

It would seem that the register is empty, and you can update 1C. I don’t want to surprise you, but there will be an error again:


What is the error:

A critical error occurred while updating the infobase
because of:
Trying to insert a non-unique value into a unique index:
Microsoft SQL Server Native Client 11.0: The CREATE UNIQUE INDEX statement terminated because a duplicate key was found for the object name "dbo._InfoRgChngR34546NG" and the index name "_InfoR34546_ByNodeMsg_RNTSRRRRRRRNG". The duplicate key value is (0x00000011, d7, , Sep 27 4015 10:22 PM, 768404.00,00,00,00,00,00).
HRESULT = 80040E2F, SQLSrvr: SQLSTATE = 23000, state = 1, Severity = 10, native = 1505, line = 1

Explanation

Let's understand the structure of SQL. We have a register "MessageTrackingLog", it is in the table in SQL " _InfoR34546 ". You can check this with special treatments or by typing (we will not have to do this, since the name of the table is already indicated in the text of the error).

Now I’ll explain what happened. When we loaded the data into the register, then in SQL they got into the table " _InfoR34546 ". When we cleared the table with the code in 1C, this data was deleted from the table." _InfoR34546 "but they were copied to the table" _InfoRgChngR34546 ". This was the problem.

Solution

To solve the problem, we need to clear the "_InfoRgChngR34546" SQL table.

I'll tell you about the example of "Microsoft SQL Server Management Studio". We go to " Management Studio ". Find our base, open the tabs of tables, click on any one and press the button" New query ": Now we type the query

Truncate table "_InfoRgChngR34546"

You can have another table as well! Do not forget!

And we press execute or the "F5" key. This should be the result:

That's it, now you can safely update 1C, and there will be no errors!

We were moving to a new server. It has SQL and 1C. In comparison with the old ones, it was much cooler. And Gilev's test also confirmed this: against 10-15 on old servers it gave 39. Therefore, immediately after the purchase, we transferred the database and started working.

But at some point something went wrong - users began to complain about slow work. We made certain settings for the server and services (which are the topic of a separate post) and decided to reboot the server, since the reboot speed is 2 minutes (on other servers it was up to 10). After that, when entering 1C, we receive the following message:

"Attention!!! An error occurred while refreshing the data since the last restructuring. Do you want to retry the update? " "Not really"

After clicking the "Yes" button, the following appears:

An incomplete configuration save operation was detected. To continue working, you must complete the operation. "

The first thing I decided to do - CHECKDB on in Managment Studio - after 2 hours of waiting (base 500 GB) - everything is OK.

In the vastness of the network, I found information that the same error occurs with dynamic updates.

The solutions proposed on the network did not help outright, but together with other actions, they gave a result. So what I was doing:

Solution:

  1. What was missing for solutions from the network:

sp_configure ‘allow updates’, 1
reconfigure with override
go

2. We transfer the database to recovery mode

alter database set EMERGENCY, SINGLE_USER

3. We carry out testing of the base:

dbcc checkdb ('db_name', REPAIR_ALLOW_DATA_LOSS)

4. We take the database out of recovery mode:

alter database set ONLINE, MULTI_USER

5. In principle, if you are sure that everything is ok with the base itself, then you can skip 2-4 points. Next, we execute two queries in the SQL profiler:

delete from config where FileName = ‘commit’
delete from config where FileName = 'dbStruFinal'

These records are responsible for dynamic updating - you can not be afraid to delete them.

In working versions of databases, queries:

select * from Config WHERE FileName = ‘commit’

select * from Config WHERE FileName = 'dbStruFinal'

will be empty.

6.returning the settings:

sp_configure 'allow updates', 0
go

7. After that we managed to start the configurator and the database started working.

Also, the base can work after removing the first flag.

Top related articles