|   |   | 
| 
 | v7: нарушение ограничения primary key Ø (Волшебник 20.09.2021 13:36) | ☑ | ||
|---|---|---|---|---|
| 0
    
        OnePrg 20.09.21✎ 11:15 | 
        База SQL 
 На копии удалил из регистра несколько измерений. Объединением поставил на рабочую базу, теперь время от времени при перепроведении документов ругается на этот регистр и 1С-ка вылетает. http://imagizer.imageshack.com/img923/7088/7k7H4C.png Что я не так сделал? Как это исправить? | |||
| 1
    
        SiAl-chel 20.09.21✎ 11:19 | 
        (0) Тестирование и исправление в Конфигураторе со всеми галками сделай. И хорошо бы в SQL сделать DBCC CHECKDB.
 https://docs.microsoft.com/ru-ru/sql/t-sql/database-console-commands/dbcc-checkdb-transact-sql?view=sql-server-ver15 | |||
| 2
    
        SiAl-chel 20.09.21✎ 11:22 | 
        (0) Удаление измерений регистра делает записи неуникальными, скорее всего из-за этого первичный ключ и стал неуникальным. Можно еще попробовать в дереве метаданных измерения между собой подвигать, потом вернуть ка было, чтобы при сохранении конфигурации запустилась реструктуризация, это может привести к пересчету первичного ключа.     | |||
| 3
    
        ДенисЧ 20.09.21✎ 11:23 | 
        Было
 а, б, в, е а, б, в, д Последнее удаляем. Имеем две записи а,б,в. Вот и нарушение уникальности. | |||
| 4
    
        OnePrg 20.09.21✎ 11:25 | 
        (1) CHECKDB обнаружил 0 ошибок размещения и 0 ошибок согласованности в базе данных     | |||
| 5
    
        youalex 20.09.21✎ 11:37 | 
        По хорошему надо бы отловить это "время от времени"
 Если бы были дубли в существующих данных по новому составу PK, то реструктуризация бы не прошла с аналогичной ошибкой. Значит скорее всего где-то надо изменить логику проведения документов (зачем удалил измерения - не спрашиваю) | |||
| 7
    
        Mikeware 20.09.21✎ 11:40 | 
        (5) опередил.
 надо отловить эту "время от времени", посмотреть, какой набор данных в этот момент пишется, и подумать... впрочем, основная причина - в отношении радиусов... | |||
| 14
    
        SiAl-chel 20.09.21✎ 12:11 | 
        (11) Нет, соглашусь. Чушь - удаление измерений регистров. Потому требуется пересчет итогов. ТиИ со всеми галками это и делает.
 (12) Миша, не хами. Не стоит. | |||
| 15
    
        ДенисЧ 20.09.21✎ 12:12 | 
        (14) "Чушь - удаление измерений регистров". Правильно. Давайте не будем удалять измерения.
 Замечу - при удалении измерения регистра пересчёт сделается сам. При сохранении. | |||
| 16
    
        SiAl-chel 20.09.21✎ 12:12 | 
        (4) Круто, чо. Только сначала-то ТиИ со всеми галками надо было сделать. Удаление метаданных всегда чревато.     | |||
| 17
    
        Mikeware 20.09.21✎ 12:13 | 
        (14) Пересчет итогов сделается автоматически при удалении. Но это еще ладно. Ты реально не видишь, что ограничения первичного ключа срабатывают на записи _движений_?     | |||
| 19
    
        SiAl-chel 20.09.21✎ 12:16 | 
        (15) А ты руку на отсечение дашь, что у автора не было какого-нибудь аппаратного или программного сбоя при реструктуризации и пересчете? Поэтому всегда с ТиИ и надо начинать.
 (17) Вижу. А ты видишь, что разработчик 1С не влияет на формированиt PKey при создание записей движений в коде 1С? У него уже сейчас есть неуникальные первичные ключи в базе. | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |