|
Создание таблиц изменений констант при увеличении совместимости конфигурации на 8.3.13>=? | ☑ | ||
---|---|---|---|---|
0
pvase
12.07.19
✎
16:08
|
Раньше (8.2), для сохранения изменений в константах использовалась одна общая таблица
_Consts - константы _ConstsChngR - изменения в таблице Но при переходе на 8.3 ситуация изменилась, теперь для хранения изменений используется для каждой константы отдельная таблица, например: _Const22137 - таблица константы _ConstChngR22257 - таблица изменений константы Вроде в теории все правильно, и даже в практике все правильно... было, до последних релизов 1С: 8.3.13, 8.3.14 и 8.3.15. Что происходит с базой при повышении совместимости? Так при повышении совместимости с 8.2.13 на 8.3.12 (версия 1С - 8.3.12.1567) происходит создание таблиц для каждой константы и параллельно таблицы для изменений, например: _Const22137 и _ConstChngR22257. Но при попытке повысить совместимость до того же уровня 8.3.12, но на платформе 8.3.13.1644 происходит что-то непонятное, создаются таблицы констант (например _Const22137), но почему то не создаются таблицы изменений констант (_ConstChngR22257). При этом конфигурация успешно работает, не выдает никаких ошибок, но если нет записей в планах обменов. Как только появиться хоть одна запись в плане обмена, то тут же возникает критическая ошибка SBL и 1С закрывается при попытке записать константу. Возникает вопрос, это общая ошибка платформы, или стечение неизвестных факторов, которые приводят к такому странному поведению 1С? Кто-что знает об этом? |
|||
1
Вафель
12.07.19
✎
16:10
|
а константы включены в планы обмена ?
узлы есть? |
|||
2
ДенисЧ
12.07.19
✎
16:11
|
Реструктуризацию таблиц делал после повышения уровня?
|
|||
3
pvase
12.07.19
✎
16:15
|
(1) Это типовая УПП, так сказать из коробки, константы включены.
(2) Специально не делал, а как это делается? Я просто нажал "Обновить конфигурацию базы данных (F7)" - думаю, что реструктуризация должна пройти автоматически. Или ошибаюсь? |
|||
4
pvase
12.07.19
✎
16:16
|
(1) Проверил, некоторые константы включены (та, на которой провожу эксперименты точно включена), планы обмена есть.
|
|||
5
Вафель
12.07.19
✎
16:17
|
попробуй для начала поднять на 8.2.14
именно там константы по новому |
|||
6
ДенисЧ
12.07.19
✎
16:19
|
(3) В конфигураторе тестирование и исправление
|
|||
7
ДенисЧ
12.07.19
✎
16:19
|
+6 в файле по обновлению специально написано, что при повышении уровня совместимоти надо делать реструктуризацию.
|
|||
8
pvase
12.07.19
✎
17:19
|
(7) Тестирование и исправление не помогает, таблицы не создаются.
|
|||
9
pvase
12.07.19
✎
17:21
|
Понизить релиз CNVDBFL.EXE" -c -f 8.2.13 - не дает, можно только до 8.2.14 - а в ней уже таблицы должны быть. В общем пока только создавать новую базу с желаемой структурой или танцы с бубном чтобы создать ту же базу, но для старой версии и оттуда перенести средствами SQL недостающие таблицы.
|
|||
10
ptiz
12.07.19
✎
17:26
|
(8) А выгрузить/загрузить через dt ?
|
|||
11
pvase
12.07.19
✎
17:44
|
(10) Ничего не дает. Набросал скриптик на скорую руку, может кому пригодиться:
DECLARE @TableName AS varChar(200) DECLARE myCur CURSOR FOR SELECT LEFT(TABLE_NAME,6)+'ChngR'+RIGHT(TABLE_NAME,LEN(TABLE_NAME)-6) FROM [INFORMATION_SCHEMA].[TABLES] WHERE LEFT(TABLE_NAME,6) = '_Const' AND LEFT(TABLE_NAME,11) <> '_ConstChngR' OPEN myCur FETCH NEXT FROM myCur INTO @TableName WHILE @@FETCH_STATUS=0 BEGIN EXEC ('CREATE TABLE [dbo].['+@TableName+']( [_NodeTRef] [binary](4) NOT NULL, [_NodeRRef] [binary](16) NOT NULL, [_MessageNo] [numeric](10, 0) NULL, [_ConstID] [binary](16) NOT NULL ) ON [PRIMARY]' ) FETCH NEXT FROM myCur INTO @TableName END CLOSE myCur DEALLOCATE myCur Но еще надо проверить. |
|||
12
pvase
15.07.19
✎
10:05
|
Оказывается, надо было просто удалить все планы обмена, а потом добавить и таблицы успешно создадутся.
|
|||
13
Гипервизор
15.07.19
✎
10:18
|
(5)(9) Разве есть такой режим совместимости 8.2.14? Кажется после 8.2.13 идет сразу 8.2.16.
|
|||
14
pvase
16.07.19
✎
15:55
|
(13)
CNVDBFL.EXE 1C:Enterprise 8.3 Database File Format Conversion Utility © 1C-Soft LLC 1996-2018 Утилита конвертации файлов базы данных 1С:Предприятия Использование: cnvdbfl [command] [options] [arguments] Общие параметры: --help | -? | -h отображение краткой информации об утилите --version | -v получение версии утилиты --info | -i получение информации о формате файла базы данных --convert | -c конвертация файла базы данных в другой формат --format=<format version> | -f <format version> версия формата файла базы данных: 8.2.14 или 8.3.8 --page=<page size> | -p <page size> размер страницы файла базы данных в байтах: 4096, 8192, 16384, 32768, 65536 или килобайтах: 4K, 8K, 16K, 32K, 64K Общие аргументы: <path to 1CD> путь к файлу базы данных (включая имя файла) |
|||
15
pvase
16.07.19
✎
15:56
|
Т.е. только 2 значения аргумента format= 8.2.14 или 8.3.8
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |