| 
    
            
         
         | 
    
  | 
Избитый вопрос по битой ссылке Единицы измерения в УТ10.3 | ☑ | ||
|---|---|---|---|---|
| 
    0
    
        Мимохожий Однако    
     25.05.18 
            ✎
    08:27 
 | 
         
        УТ10.3
 
        есть позиция номенклатуры, в которой битые ссылки на единицах измерения. Попытался перевыбрать единицы измерения. Но при записи номенклатуры ругань на то, что единицы измерения уже использованы в документах и регистрах. Попытался программно поменять. .. Ном=Номенклатура.ПолучитьОбъект(); Ном.ОбменДанными=Истина; Ном.БазоваяЕдиницаИзмерения=БазоваяЕдиницаИзмерения; Ном.ЕдиницаДляОтчетов=ЕдиницаДляОтчетов; Ном.ЕдиницаХраненияОстатков=ЕдиницаХраненияОстатков; Ном.Записать(); Результат отрицательный. ТИИ с восстановлением объектов не хочу запускать, т.к. может появиться неизвестная кучка ненужных объектов. ... Дело осложняется тем, что у единиц измерения есть Владелец. Может есть лайфхак для выборочного восстановления битых ссылок?  | 
|||
| 
    1
    
        Гипервизор    
     25.05.18 
            ✎
    08:36 
 | 
         
        (0) Так может заменить в документах и регистрах?     
         | 
|||
| 
    2
    
        Мимохожий Однако    
     25.05.18 
            ✎
    08:38 
 | 
         
        (1) Замена проблематична. Базе лет 6. Большой объем.
 
        .. Но я решил задачку следующим кодом Процедура КнопкаВыполнитьНажатие(Кнопка) ЗафиксироватьВладельцаЕдиницы(ЕдиницаДляОтчетов); ЗафиксироватьВладельцаЕдиницы(ЕдиницаХраненияОстатков); Ном=Номенклатура.ПолучитьОбъект(); Ном.ОбменДанными.Загрузка=Истина; Ном.БазоваяЕдиницаИзмерения=БазоваяЕдиницаИзмерения; Ном.ЕдиницаДляОтчетов=ЕдиницаДляОтчетов; Ном.ЕдиницаХраненияОстатков=ЕдиницаХраненияОстатков; Ном.Записать(); Сообщить("Записали единицы номенклатуры "+Ном.Наименование); КонецПроцедуры Процедура ЗафиксироватьВладельцаЕдиницы(Единица) Ед=Единица.ПолучитьОбъект(); Ед.Владелец=Номенклатура; Ед.Записать(); КонецПроцедуры ... На форме перед запуском подготавливаю элементы измерения. Для разовой задачи помогло. Спасибо за внимание  | 
|||
| 
    3
    
        Сияющий в темноте    
     25.05.18 
            ✎
    09:34 
 | 
         
        Если битые ссылки,то ссылки есть,а элемента нету.
 
        Что мешает через установитьссылкунового добавить эту ссылку к новому элементу? и больше не переносите номенклатуру без единиц  | 
|||
| 
    4
    
        hhhh    
     25.05.18 
            ✎
    09:37 
 | 
         
        (2) можно запустить тии на копии, а потом выгрузка-загрузка xml перенести в рабочую только то, что нужно.     
         | 
|||
| 
    5
    
        Мимохожий Однако    
     25.05.18 
            ✎
    09:37 
 | 
         
        (3) Примерчик кода сбрось для затравки.
 
        Ошибка образовалась при неудачной замене дублей номенклатуры. Это не новый элемент номенклатуры, а давно используемый.  | 
|||
| 
    6
    
        Мимохожий Однако    
     25.05.18 
            ✎
    09:38 
 | 
         
        (4) ТИИ на пробной копии показала кучу других ошибок ))
 
        А восстановленные объекты приобрели неудобоваримый вид.  | 
|||
| 
    7
    
        mehfk    
     25.05.18 
            ✎
    09:46 
 | 
         
        (0) >> Может есть лайфхак для выборочного восстановления битых ссылок?
 
        Есть. Вызываешь программиста и ставишь задачу.  | 
|||
| 
    8
    
        Мимохожий Однако    
     25.05.18 
            ✎
    19:12 
 | 
         
        (7) Шутка засчитана. Спасибо. А по делу?     
         | 
|||
| 
    9
    
        mehfk    
     25.05.18 
            ✎
    20:27 
 | 
         
        Увольняйся, пока не уволили за несоответствие занимаемой должности.     
         | 
|||
| 
    10
    
        Мимохожий Однако    
     25.05.18 
            ✎
    20:35 
 | 
         
        (9) Мне неоткуда увольняться. Я свободный художник. Ты чего такой злой? Пятница вроде. )) Подскажи, если спец. Стебаться и я могу.     
         | 
|||
| 
    11
    
        mehfk    
     25.05.18 
            ✎
    20:38 
 | 
         
        Поскажу, если оплатишь.     
         | 
|||
| 
    12
    
        Мимохожий Однако    
     25.05.18 
            ✎
    20:39 
 | 
         
        (11) Не оплачу. Давай,до свидания.     
         | 
|||
| 
    13
    
        mehfk    
     25.05.18 
            ✎
    20:39 
 | 
         
        Нищеброд.     
         | 
|||
| 
    14
    
        Мимохожий Однако    
     25.05.18 
            ✎
    20:40 
 | 
         
        (13) Это твоя подпись     
         | 
|||
| 
    15
    
        mehfk    
     25.05.18 
            ✎
    20:42 
 | 
         
        Да ты еще и скудоумен.     
         | 
|||
| 
    16
    
        Cyberhawk    
     26.05.18 
            ✎
    00:03 
 | 
         
        Я так и не понял: сколько платят за решение вопроса? ))     
         | 
|||
| 
    17
    
        Мимохожий Однако    
     26.05.18 
            ✎
    05:40 
 | 
         
        (16) Вопрос я решил еще в (2). 
 
        ОФФ: Я не заказчик. Из-за невинного вопроса про "лайфхак" на будущее - получил небольшой срач в ответ... На пустом месте... Всё как в жизни ))  | 
|||
| 
    18
    
        Serg_1960    
     26.05.18 
            ✎
    08:12 
 | 
         
        (17) Sorry,  свой избитый вопрос ты не решил - ты его усложнил .     
         | 
|||
| 
    19
    
        Мимохожий Однако    
     26.05.18 
            ✎
    08:20 
 | 
         
        (18) ОК. Но кроме критики хотелось бы пример кода или хотя бы алгоритм исправления на будущее.     
         | 
|||
| 
    20
    
        MaxS    
     26.05.18 
            ✎
    08:32 
 | 
         
        (19) Смысл примерно такой:
 
        ОбъектНовойЕИ.УстановитьСсылкуНового(БитаяСсылкаЕИ); EndOff Много критики... ;)  | 
|||
| 
    21
    
        Мимохожий Однако    
     26.05.18 
            ✎
    08:36 
 | 
         
        (20) Спасибо.     
         | 
|||
| 
    22
    
        Serg_1960    
     26.05.18 
            ✎
    08:43 
 | 
         
        (19) В понедельник, если не забуду.     
         | 
|||
| 
    23
    
        Serg_1960    
     28.05.18 
            ✎
    11:10 
 | 
         
        //- Видишь суслика?
 
        //- Нет. //- И я не вижу. А он есть. //(ДМБ) Запрос = Новый Запрос(); Запрос.Текст = "ВЫБРАТЬ | Номенклатура.Ссылка КАК Хозяин, | Номенклатура.ЕдиницаХраненияОстатков КАК Суслик |ИЗ | Справочник.Номенклатура КАК Номенклатура |ГДЕ | Номенклатура.ЕдиницаХраненияОстатков <> ЗНАЧЕНИЕ(Справочник.ЕдиницыИзмерения.ПустаяСсылка) | И Номенклатура.ЕдиницаХраненияОстатков.Ссылка ЕСТЬ NULL"; Выборка = Запрос.Выполнить().Выбрать(); Пока Выборка.Следующий() Цикл GUID = "Проверка логической целостности... " + Выборка.Суслик; // имитация работы со строкой из ТИИ GUID = Сред(GUID, Найти(GUID, "<Объект не найден>") + 20); // выделяем начало ссылки GUID = Сред(GUID, 1, Найти(GUID, ")") - 1); // отрезаем конец строки GUID = Сред(GUID, Найти(GUID, ":") + 1); // освобождаемся от кода вида ссылки GUID = Сред(GUID,25,8) + "-" + Сред(GUID,21,4) + "-" + Сред(GUID,17,4) + "-" + Сред(GUID,1,4) + "-" + Сред(GUID,5,12); GUID = Новый УникальныйИдентификатор(GUID); // Оно, конечно, нафиг не нужно было так извращаться - сама ссылка уже есть в запросе. // Но мы делаем вид, что якобы сканируем протокол ТИИ, - так оно веселее :) Суслик = Справочники.ЕдиницыИзмерения.СоздатьЭлемент(); Суслик.Владелец = Выборка.Хозяин; Суслик.УстановитьСсылкуНового(Справочники.ЕдиницыИзмерения.ПолучитьСсылку(GUID)); Суслик.Записать(); // можно получить и открыть форму, чтобы сразу дозаполнить... но лень-матушка писать :) КонецЦикла;  | 
|||
| 
    24
    
        Мимохожий Однако    
     28.05.18 
            ✎
    11:18 
 | 
         
        (23) Респект. Спасибо.     
         | 
|||
| 
    25
    
        Cyberhawk    
     28.05.18 
            ✎
    19:57 
 | 
         
        Не учел английский вариант "Объект не найден"     
         | 
|||
| 
    26
    
        Serg_1960    
     28.05.18 
            ✎
    20:31 
 | 
         
        А также языки: азербайджанский, армянский, стран Прибалтики, Беларуси, Болгарии, Молдавии, Грузии и наших ближневосточных коллег.     
         | 
|||
| 
    27
    
        Cyberhawk    
     28.05.18 
            ✎
    20:41 
 | 
         
        (26) Пожалуйста:
 
        vi Không tìm thấy đối tượng tr Nesne bulunamadı ro Obiectul nu a fost găsit pl Obiekt nie odnaleziono en Object not found de Objekt nicht gefunden lt Objektas nerastas lv Objekts nav atrasts uk Об`єкт не знайдено bg Обектът не е намерен ru Объект не найден kk Объект табылған жоқ ka ობიექტი არ მოიძებნა Но ты уже и сам понял, что твой вариант не самый надежный  | 
|||
| 
    28
    
        Serg_1960    
     28.05.18 
            ✎
    20:57 
 | 
         
        Feci quod potui faciant meliora potentes     
         | 
|||
| 
    29
    
        Сияющий в темноте    
     29.05.18 
            ✎
    09:56 
 | 
         
        Отсутствие обьекта проще проверять запросом по ссылке из привегилерованного модуля,запрос будет быстрее чем получение обьекта,особенно в случае,когда обьект неожиданно найдется     
         | 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |