Поиск и восстановление битых ссылок (обычная и управляемая форма) 8.2-8.3
Задачи пользователя - Поиск данных
Файлы
ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.
Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний
Оформите подписку на компанию для решения рабочих задач
Оформить подписку и скачать решение со скидкойВы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».
- 0% комиссии — оплата напрямую исполнителю;
- Исполнители любого масштаба — от отдельных специалистов до команд под проект;
- Прямой обмен контактами между заказчиком и исполнителем;
- Безопасная сделка — при необходимости;
- Рейтинги, кейсы и прозрачная система откликов.
Описание
Адаптация популярной обработки восстановления объектов по GUID для управляемых форм.
Ссылочные типы такие как справочники, документы и т.п. можно восстановить. А для регистров сведений без регистратора либо если это битая ссылка по регистратору удалить, т.к. считается что это избыточные записи!
Отличием от оригинала является портирование всех методов из обычной формы в управляемую форму, а также разработана версия для конфигураций с режимом совместимости выше 8.3.5.
В версии для 8.3.6:
Режим использования модальности: Не использовать.
Режим использования синхронных вызовов расширений платформы и внешних компонент: Не использовать.
Обновления
- В обычном приложении форма битого объекта открывается только на просмотр. Ранее форма открывалась на редактирование. Добавлено программное отключение только просмотр. Если не срабатывает обновите версию платформы. На 8.3.23.1688 проблема проявляется, на 8.3.25.1286 проблема проявляется, но программно изменение режима просмотра отключается.
- Обновлена информация о сайте публикации.
- Оптимизирован код.
- Исправлена ошибка поиска GUID. Вместо переменной использовался реквизит формы, что приводило к не верному результату поиска.
- Исправлена ошибка. Не записанная ссылка при передаче с сервера на клиент не может передать уникальный идентификатор. Объект всегда должен быть записан в управляемой форме!
- Реализована возможность в управляемой форме не записывать объект, до его исправления! Ранее объект всегда записывался, а только потом редактировался!
- Выпущен первый релиз.
P.S. Если материал вам помог, поблагодарите автора, поставив плюс!
Вступайте в нашу телеграмм-группу Инфостарт
1С обработка обычная форма управляемая 8.2 8.3 ОФ УФ поиск и восстановление битых ссылок объект не найден
См. также
Поиск данных Инструменты администратора БД Корректировка данных Разработчик Бухгалтер Пользователь 1С:Предприятие 8 1С:Управление торговлей 10 1С:Управление производственным предприятием 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x 1С:Управление нашей фирмой 3.0 Россия Платные (руб)
Решение для автоматической сверки данных между любыми конфигурациями 1С. Помогает контролировать и проверять обмены, проверять наличие документов при переносах данных, находить изменения в закрытых периодах
9760 руб.
14.11.2025 6208 28 8
Мастера заполнения Поиск данных Инструментарий разработчика Подбор и обработка объектов 1С 8.3 1С 8.5 Платные (руб)
Infostart MagicInput улучшает подбор в полях ввода 1С: ищет по любой части названия и по нескольким ключевым фрагментам, распознаёт ввод в другой раскладке и показывает иконки/статусы объектов прямо в списке. Поддерживает вставку навигационной ссылки/представления документа для автоподбора; для разработчиков доступны поиск по GUID и полному имени предопределённого. Работает в управляемых формах и подключается в большинстве конфигураций 1С 8.3/8.5. Работает на возможностях платформы, внешние компоненты не используются.
6000 руб.
25.02.2026 6703 23 1
Задачи пользователя Инструментарий разработчика Корректировка данных Закрытие периода Разработчик Аналитик Бухгалтер Пользователь Руководитель проекта Стажер 1С 8.3 1С:ERP Управление предприятием 2 1С:Управление нашей фирмой 3.0 Управленческий учет Платные (руб)
Обработка предназначена для поиска, анализа и исправления отрицательных остатков во всех регистрах накопления информационной базы 1С.
6100 руб.
27.02.2026 3228 18 3
Закрытие периода Инструменты администратора БД Корректировка данных Бухгалтер Пользователь 1С:Предприятие 8 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)
Расширение «Оперативное проведение» в 4 раза уменьшает время проведения документов и закрытия месяца. Является комплексным решением проблем 62 и 60 счетов. Оптимизирует проведение при включенной функциональной опции «Раздельный учет НДС». Используется в более 10 организациях уже 2 года. Совместимо с конфигурацией Бухгалтерия 3.0 (+КОРП).
14640 руб.
29.04.2020 52984 146 164
Зарплата Корректировка данных Бухгалтер 1С 8.3 1С:Зарплата и кадры государственного учреждения 3 1С:Зарплата и Управление Персоналом 3.x Бухгалтерский учет НДФЛ Платные (руб)
Внешняя обработка сравнивает НДФЛ из расчетного листка и НДФЛ из регистра, на разницу формирует операцию учета НДФЛ. Исправляет расхождения, в том числе, когда Аванс больше Зарплаты Рассчитывает НДФЛ и сравнивает с исчисленным в программе. На отклонение формирует документ "Перерасчет НДФЛ"
9760 руб.
01.09.2023 10137 325 93
Корректировка данных Разработчик Пользователь 1С:Предприятие 8 1С:Управление торговлей 10 1С:Розница 2 1С:Управление производственным предприятием 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Управленческий учет Платные (руб)
Представьте, что есть система QR - кодирования, которая НЕ ТРЕБУЕТ изменения конфигурации, НЕ ТРЕБУЕТ изменения ни одной печатной формы для добавления QR-кода, включая внешние, НЕ ХРАНИТ данные штрихкодов и их связь, от чего база не "пухнет", ИМЕЕТ возможность закодировать в QR-коде произвольные данные параметров для последующей обработки полученных данных, УМЕЕТ прикреплять сканы, УМЕЕТ обработать считанный QR-код как ВЫ захотите. А также ХРАНИТ историю операций в обход базы для каждого пользователя в отдельности и УМЕЕТ работать с 2D - сканерами. А также автоматически распознавать отсканированные печатные формы (картинки или pdf-файлы) и выполнять заданные произвольные алгоритмы, в том числе прикрепление их к документам! Обновление 3.3 от 24.06.2025!
26840 руб.
26.08.2018 57653 20 65
Файловый обмен (TXT, XML, DBF), FTP Поиск данных Инструменты администратора БД Корректировка данных Системный администратор Разработчик 1С:Предприятие 8 1C:Бухгалтерия 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Платные (руб)
Данная обработка позволит Вам легко и просто, а главное - быстро, выполнить сравнение данных между ЛЮБЫМИ базами (и РИБ, по правилам конвертаций) по контрольным суммам выбранных объектов баз 1С, работающих на платформах 8.3 и выше. Удобный и понятный интерфейс в виде "мастера". Высокая скорость сравнения достигается за счет специального алгоритма расчета контрольной суммы объекта/записи и сравнения по данным суммам объектов 2х баз через файл. Имеется возможность выбора реквизитов, по которым система будет сравнивать объекты. Сравнение количества записей в движениях документов, возможность сравнивать данные по правилам конвертации и не только! Выбор объектов конфигурации для КАЖДОГО узла в отдельности с индивидуальным отбором для каждого объекта конфигурации, работа с FTP, сохранение или загрузка настроек, сохранение или загрузка результата сравнения, регистрация на обмен объекта и его движений. (Обновление от 12.11.2024, версия 2.2-2.5)
24400 руб.
27.10.2017 47864 33 15
Поиск данных Системный администратор Разработчик 1С:Предприятие 8 1C:Бухгалтерия 1С:Бухгалтерия 3.0 1С:Зарплата и Управление Персоналом 3.x 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 1.6 1С:Управление нашей фирмой 3.0 1С:Управление торговлей 11 1С:Розница 2 1С:Розница 3.0 Платные (руб)
Обработки помогут Вам легко и, главное, быстро (в 5 раз и быстрее штатной обработки 1С), выполнить поиск дублирующих данных в Ваших базах 1С на платформах 8.1-8.3. Это позволит уменьшить объем лишней информации в справочниках и документах, планах видов характеристик и др., упростит работу с данными пользователям. А так же можно, одним нажатием, узнать в каких ссылочных объектах есть вообще дубли! Понятное расположение команд и настроек, в сочетании с описанием и справкой, еще упростят процесс. А так же обновления Вы получаете бесплатно в течение года с момента приобретения данных обработок! (Обновление от 27.11.2023, версия 6.12)
13420 руб.
14.05.2012 173768 360 253
ну как бы непонятно в чем проблема
вопрос с датой решился добавлением строки
ИначеЕсли ТипОбъекта = "Документ" Тогда
НовыйОбъект = Документы[ИмяОбъекта].СоздатьДокумент();
НовыйОбъект.УстановитьСсылкуНового(Документы[ИмяОбъекта].ПолучитьСсылку(УникальныйИд));
новыйобъект.дата='20170510';
в результате создается пустой документ и проблему это никак не решает
я неправильно пользуюсь?
проблема следующая: зуп 3.1.2.293 платформа 8.3.8
при попытке ввести исправление в "отпуск" возникает ошибка:
{ОбщийМодуль.ИсправлениеДокументовРасчетЗарплаты.Модуль(1777)}: Ошибка при вызове метода контекста (Записать)
ЗначенияПоказателейНабор.Записать();
по причине:
Запись с такими ключевыми полями существует! : ЗначенияПоказателейНачислений: <Объект не найден> (332:aeea68b599ce83af11e76c5cc180305c), 1, Оклад (Регистр сведений: Значения показателей начислений; Номер строки: 2)
по этому ID получаю гуид в вашей обработке
Плюс ко всему иногда требуется переписывать код конфигурации, чтобы такие действия были возможны. Рекомендую создать тему на форуме или обратиться к специалисту!
У нас платформа 1С:Предприятие 8.3 (8.3.10.2299).
При попытке подключить как внешнюю обработку возникает такая ошибка:
Невозможно подключить дополнительную обработку из файла.
Возможно, она не подходит для этой версии программы.
Метод объекта не обнаружен (СведенияОВнешнейОбработке)
Если просто открыть ее, то при выполнении команды "Получить GUID" возникает такая ошибка:
{ВнешняяОбработка.ПоискИВосстановлениеБитыхСсылок836.Форма.ФормаУправляемая.Форма(67)}: Ошибка при вызове конструктора (УникальныйИдентификатор)
GUID = Новый УникальныйИдентификатор(ГУИД);
по причине:
Недопустимое значение параметра (параметр номер '1')
Типовая БП (3.0.51.12).
Валится на запросе
ВЫБРАТЬ Об.Валюта КАК Объект,
"РегистрБухгалтерии.Хозрасчетный.Валюта" КАК ТаблицаИсточник,
Об.Регистратор КАК ОбъектИсточник,
"Справочник.Валюты" КАК ТипДанных
ИЗ
РегистрБухгалтерии.Хозрасчетный КАК Об
ГДЕ Об.Валюта ССЫЛКА Справочник.Валюты И ВЫРАЗИТЬ(Об.Валюта КАК Справочник.Валюты).Ссылка есть null И Об.Валюта <> Значение(Справочник.Валюты.ПустаяСсылка)
И? По факту обработка не работает. В данной ситуации нужно использовать ВалютаДт и ВалютаКт.
Согласно ТИИ у меня есть битые ссылки в двух РС, но обработка их не выдала.
Если на 8.3.6. все отлично работает (Надеюсь Вы тестирировали) - сделайте пометку, что на 8.3.8 обработка НЕ работоспособна. Чтобы другие пользователи не обломались.
На поддержке, без изменений.
Открываю в ней Вашу обработку.
Нажимаю Поиск - по всем регистрам
Появляются 2 сообщения об ошибках.
Список битых ссылок пустой.
Хотя в регистре сведений Версии объектов есть битые ссылки.
Если глянуть отладчиком - ошибки вылетают при выполнении запроса (Выше).
Попробуй его открыть в консоли.
Регистры это вспомогательные данные, которые крепятся к ссылочным, если нет ссылочного, то такие данные не удалили!
Если вам по какой-то причине нужно для них восстановить, то нужно переписать код в обработке.
Данная разработка этого не предусматривает целенаправленно!
Т.к. реализованы кнопки по удалению регистров из базы!
{ВнешняяОбработка.ПоискИВосстановлениеБитыхСсылок836.Форма.Форма.Форма(3,8)}: Процедура или функция с указанным именем не определена (СтрНайти)
Поз = <<?>>СтрНайти(ГУИД, ":");
{ВнешняяОбработка.ПоискИВосстановлениеБитыхСсылок836.Форма.Форма.Форма(49,39)}: Процедура или функция с указанным именем не определена (СтрНайти)
Менеджер = Менеджеры[Лев(Таблица, <<?>>СтрНайти(Таблица, ".") - 1)];
{ВнешняяОбработка.ПоискИВосстановлениеБитыхСсылок836.Форма.Форма.Форма(50,67)}: Процедура или функция с указанным именем не определена (СтрНайти)
КонкретныйМенеджер = Менеджер[Прав(Таблица, СтрДлина(Таблица) - <<?>>СтрНайти(Таблица, "."))];
{ВнешняяОбработка.ПоискИВосстановлениеБитыхСсылок836.Форма.Форма.Форма(76,9)}: Процедура или функция с указанным именем не определена (СтрНайти)
Если <<?>>СтрНайти(НайденнаяСсылка, "<Объект не найден>") = 0 Тогда
{ВнешняяОбработка.ПоискИВосстановлениеБитыхСсылок836.Форма.Форма.Форма(103,42)}: Процедура или функция с указанным именем не определена (СтрНайти)
ГУИДУдОбъктаСтр = Сред(ГУИДУдОбъктаСтр, <<?>>СтрНайти(ГУИДУдОбъктаСтр,":")+1, СтрДлина(ГУИДУдОбъктаСтр));
{ВнешняяОбработка.ПоискИВосстановлениеБитыхСсылок836.Форма.Форма.Форма(144,41)}: Процедура или функция с указанным именем не определена (СтрНайти)
ТипОбъекта = Лев(ТипНайденнойСсылки, <<?>>СтрНайти(ТипНайденнойСсылки, ".") - 1);
{ВнешняяОбработка.ПоискИВосстановлениеБитыхСсылок836.Форма.Форма.Форма(145,73)}: Процедура или функция с указанным именем не определена (СтрНайти)
ИмяОбъекта = Прав(ТипНайденнойСсылки, СтрДлина(ТипНайденнойСсылки) - <<?>>СтрНайти(ТипНайденнойСсылки, "."));
-----
Платформа: 8.3.10.2580
Конфигурация: Бухгалтерия предприятия, редакция 3.0 (3.0.52.39)
В конфигурации не используется режим совместимости.
Спасибо что сообщили о проблеме!
Реализованный метод для управляемой формы в версии 1.1.1 не сработал, пришлось вернуться к записи объекта на сервере.
Если потребуется обновленный вариант обработки, сообщите в личные сообщения!
И еще ссылка в справочнике битая но при поиске обработке по работе со справочником находится этот объект но зайти не дает пишет объект не найден. Эта обработка сможет полечить?
Не удалось создать объект - {ВнешняяОбработка.ПоискИВосстановлениеБитыхСсылок836.Форма.ФормаУправляемая.Форма(188)}: Ошибка при вызове метода контекста (Записать): Попытка вставки неуникального значения в уникальный индекс:
Microsoft SQL Server Native Client 11.0: Не удается вставить повторяющуюся строку ключа в объект "dbo._Reference253" с уникальным индексом "_Reference253HPK". Повторяющееся значение ключа: (0, 0xa2939cb654afeb2b11e8a5ee8573c581).
HRESULT=80040E2F, SQLSrvr: SQLSTATE=23000, state=1, Severity=E, native=2601, line=1
Как увидеть ошибку:
В поле "Объект не найден" вставить значение, например: "<Объект не найден> (3410:96c874d435fb680c11e781968a0c6dc0)"
Нажимаем "ПолучитьGUID".
Получаем ошибку "{ВнешняяОбработка.ПоискИВосстановлениеБитыхСсылок836.Форма.ФормаУправляемая.Форма(67)}: Ошибка при вызове конструктора (УникальныйИдентификатор)
GUID = Новый УникальныйИдентификатор(ГУИД);
по причине:
Недопустимое значение параметра (параметр номер '1')"
Суть ошибки:
В процедуре "ПолучитьGUIDУдаленногоОбъектаНаСервере" вы ощичаете ГУИДУдОбъкта от лишних данных. Но используете для этого переменну формы ГУИДУдОбъктаСтр, которая имеет ограниченную длину 36 символов. В итоге от сам ГУИД обрезается и становится неверным.
Нажал кнопку "Получить GUID ->"/
Заполнился реквизит "GUID" текстом "8a0c6dc--8196-11e7-96c8-74d435fb680c".
Возможно вы модифицировали обработку или же используете на каком-то режиме совместимости. В режиме совместимости 8.3.10 на платформе 8.3.14 результат на картинке:
Похоже ошибка в формате строки. У меня битая ссылка выглядит так "<Объект не найден> (10:86ae005056c0000811e71c52548be600)".
И какая-то мистика. Возможно кеш или еще что влияет на работу.
Выходило, что после выполнения:
ГУИДУдОбъктаСтр = СтрЗаменить(ГУИДУдОбъкта,"<Объект не найден> (","");Реквизит не менялся. Возможно дело в платформе. Ранее такого бага не было.
Но в любом случае поменяю код, чтобы не было путаницы!
ГУИДУдОбъктаСтр - у вас реквизит формы. Тип Строка 36 символов.
Получается:
Если ГУИДУдОбъкта = "<Объект не найден> (2760:96c874d435fb680c11e78196e9cd5d58)"
При выполнении кода:
ГУИДУдОбъктаСтр = СтрЗаменить(ГУИДУдОбъкта,"<Объект не найден> (","");СтрЗаменить возвращает строку 37 символов. Но попадая в ГУИДУдОбъктаСтр она обрезается до 36!
Здесь платформа отрабатывает так как и должна.
ГУИДУдОбъктаСтр - нужно снять ограничение по длине, или использовать локальную переменную функции
лГУИДУдОбъктаСтр = СтрЗаменить(ГУИДУдОбъкта,"<Объект не найден> (","");
ГУИДУдОбъктаЧ = СтрЗаменить(лГУИДУдОбъктаСтр,")","");
лГУИДУдОбъктаСтр = СтрЗаменить(ГУИДУдОбъктаЧ,"0x","");
лГУИДУдОбъктаСтр = Сред(лГУИДУдОбъктаСтр, СтрНайти(лГУИДУдОбъктаСтр,":")+1, СтрДлина(лГУИДУдОбъктаСтр));
// Преобразуем GUID
ГУИД = Сред(лГУИДУдОбъктаСтр,25,8)+"-"+Сред(лГУИДУдОбъктаСтр,21,4)+"-"+Сред(лГУИДУдОбъктаСтр,17,4)+"-"+Сред(лГУИДУдОбъктаСтр,1,4)+"-"+Сред(лГУИДУдОбъктаСтр,5,12);
ГУИДУдОбъктаСтр = ГУИД;
ПоказатьНе удалось создать объект - {ВнешняяОбработка.ПоискИВосстановлениеБитыхСсылок836_1.Форма.ФормаУправляемая.Форма(188)}: Ошибка при вызове метода контекста (Записать): Попытка вставки неуникального значения в уникальный индекс:
Microsoft SQL Server Native Client 11.0: Не удается вставить повторяющуюся строку ключа в объект "dbo._Reference220" с уникальным индексом "_Reference220_S_HPK". Повторяющееся значение ключа: (0, 0x80c200155d35820211e9456c34c32020).
HRESULT=80040E2F, SQLSrvr: SQLSTATE=23000, state=1, Severity=E, native=2601, line=1
Т.е. как будто с таким идентификатором уже есть объект в базе. Но по этому идентификатору ничего не находится. Что может быть?
При создании обработка выдаёт ошибку, что не может записать с пустой датой.
Не удалось создать объект - {ВнешняяОбработка.ПоискИВосстановлениеБитыхСсылок836_1.Форма.ФормаУправляемая.Форма(188)}: Ошибка при вызове метода контекста (Записать): Значение поля "Дата" не может быть пустой датой
При удалении найденных ссылок в регистрах другая ошибка :
Преобразование значения к типу Дата не может быть выполнено
{ВнешняяОбработка.ПоискИВосстановлениеБитыхСсылок836_1.Форма.ФормаУправляемая.Форма(894)}: Набор.Записать();
{ВнешняяОбработка.ПоискИВосстановлениеБитыхСсылок836_1.Форма.ФормаУправляемая.Форма(865)}: УдалениеБитыхСсылок(пРегистр.Имя, РегистрыНакопления, "РегистрНакопления")
{ВнешняяОбработка.ПоискИВосстановлениеБитыхСсылок836_1.Форма.ФормаУправляемая.Форма(873)}: УдалениеДвиженийПоРегистрамУдаленныхДокументовНаСервере();
по причине:
Ошибка при выполнении обработчика - 'ПередЗаписью'
по причине:
Преобразование значения к типу Дата не может быть выполнено
{РегистрНакопления.СебестоимостьТоваров.МодульНабораЗаписей(373)}: Если НЕ РасчетСебестоимостиПовтИсп.ПартионныйУчетВерсии22(НачалоМесяца(ДатаРегистратора)) Тогда
{РегистрНакопления.СебестоимостьТоваров.МодульНабораЗаписей(39)}: СохранитьНеИзмененныеПервичныеДвижения();
{ВнешняяОбработка.ПоискИВосстановлениеБитыхСсылок836_1.Форма.ФормаУправляемая.Форма(894)}: Набор.Записать();
{ВнешняяОбработка.ПоискИВосстановлениеБитыхСсылок836_1.Форма.ФормаУправляемая.Форма(865)}: УдалениеБитыхСсылок(пРегистр.Имя, РегистрыНакопления, "РегистрНакопления")
1) битые ссылки с типом организация ошибка создания объекта - но это больше программная ошибка , так как при открытии переназначается форма
2) при создании объекта , появляется его дубль , я бы наверно отказался бы от функции КопироватьДанныеФормы
Это бы не было проблемой если бы можно было бы заполнить эти красные строки и записать его, но при попытке выбора единиц измерения выдает ошибку что товар участвует в товародвижении. Отменять проведение всех связанных документов, сохранять объект и снова всех их проводить, не представляется возможным (((
Подскажите, что я делаю не так?
1С:Предприятие 8.3 (8.3.18.1289)
ДАЛИОН: ТРЕНД, редакция 3.0 (3.0.17.5) (www.dalion.ru)
Подскажите, что можно сделать?
Как доработать вашу обработку?
Скопировал в поле "Объект не найден", получил GUID.
Тип данных "Справочник.БанковскиеСчета". При нажатии "Получить ссылка" получаю сообщение "Не указан владелец банковского счета". Может быть я что-то не правильно сделал?
(70)
P.S. Было бы неплохо получить небольшую инструкцию по использование обработки.
По поводу инструкции это не коммераческое решение. Пробуйте на копии, методом тыка если вы не программист разберетесь.
Если вы разработчик, то подняли копию и проверили функционал, думаю инструкция ни к чему.
Давать пользователю такую обработку никто не будет.
НовыйОбъект.ОбменДанными.Загрузка = Истина;Данный код в обработке есть.
Проблема в вашей конфигурации.
Процедура ПередЗаписью(Отказ)
Если ОбменДанными.Загрузка Тогда
Возврат;
КонецЕсли;
Если Не ЗначениеЗаполнено(Дата) Тогда
Отказ = Истина;
КонецЕсли;
КонецПроцедуры
ПоказатьСкорее всего у вас отсутствует такая строка кода в битом справочнике. Т.е. в управляемой форме нельзя открыть объект, если он не записан. А чтобы записать его нужно заполнить какими-то реквизитами, так решили разработчики вашей конфигурации. Но они не учли, что элемент может быть битым и его будут восстанавливать, поэтому и не работает обработка. Тут есть несколько выходов:
1. Написать разработчикам об их ошибке, чтобы они сделали доработку. Ну или самим сделать доработку или написать расширение.
2. Запустить конфигурацию в обычных формах и сделать тоже самое там. В обработке есть обычный интерфейс, там такой проблемы не будет, т.к. возможна запись объекта из формы, которую вы заполните.
3.Проверил еще 1 лайф хак, вместо кнопки создать объект нажмите кнопку получить ссылку. Тогда произойдет интересная вещь, в реквизит укажется ссылка на битый элемент и его можно будет открыть стандартной кнопкой "Открыть".
Если ОбменДанными.Загрузка Тогда
Возврат;
КонецЕсли;Если убрать его как у вас в конфигурации работать не будет. Получается только 2 выхода есть.
Еще обнаружил баг, что в 1С:Предприятие 8.3 (8.3.25.1286) обычная форма открывается в режиме только просмотр.
Нужно добавить строку в обработку:
Форма.ТолькоПросмотр = Ложь;Либо поменять платформу.
На 1С:Предприятие 8.3 (8.3.23.1688) даже этот финт не сработал.
Но обработку с сейчас выложу.
И большое спасибо, что уделяете столько времени
Получается, что в журнале остались следы документы?
Выше читал, что ТИИ нужно запустить, но я уже ранее запускал. Всё равно ещё раз прогнать?
Запустил тии и отработка заработала. Восстановились записи.
Сейчас воюю только с битыми документами по зарплате.
Запрос.Текст =
ВЫБРАТЬ Об.ТочкаМаршрута КАК Объект,
"Справочник.ЭтапыЗаявокСотрудников.ТочкаМаршрута" КАК ТаблицаИсточник,
Об.Ссылка КАК ОбъектИсточник,
"БизнесПроцесс.ЗаявкаСотрудникаСправка2НДФЛ" КАК ТипДанных
ИЗ
Справочник.ЭтапыЗаявокСотрудников КАК Об
ГДЕ Об.ТочкаМаршрута ССЫЛКА БизнесПроцесс.ЗаявкаСотрудникаСправка2НДФЛ И ВЫРАЗИТЬ(Об.ТочкаМаршрута КАК БизнесПроцесс.ЗаявкаСотрудникаСправка2НДФЛ).Ссылка есть null И Об.ТочкаМаршрута <> Значение(БизнесПроцесс.ЗаявкаСотрудникаСправка2НДФЛ.ПустаяСсылка)
выдает ошибку:
Несовместимые типы "ССЫЛКА"
ГДЕ Об.ТочкаМаршрута <<?>>ССЫЛКА БизнесПроцесс.ЗаявкаСотрудникаСправка2НДФЛ И ВЫРАЗИТЬ(Об.ТочкаМаршрута КАК БизнесПроцесс.ЗаявкаСотрудникаСправка2НДФЛ).Ссылка есть null И Об.ТочкаМаршрута <> Значение(БизнесПроцесс.ЗаявкаСотрудникаСправка2НДФЛ.ПустаяСсылка)
ТочкаМаршрута - Определяемый тип - может из-за этого?
Либо это режим совместимости конфигурации, версию вы указали, но без конфигурации не ясно какой режим совместимости используется.
Если демо типовая без доработок, отправьте в личку, я попробую воспроизвести ошибку, тут явно новые правила написания запросов, в последних релизах платформы (зависит от режима совместимости конфигурации) они усилили контроль.
Рейтинг: 1566
Вы можете заказать платную консультацию или разработку у автора. Будет создан приватный заказ на «Бирже заказов» для автора.
№ 608150
Создание 08.04.17 22:19
Обновление 11.03.25 21:27
Просмотры 69568
Загрузки 1203
Рейтинг
47
Комментарии 97
Код открыт Да
Рубрики Поиск данных Корректировка данных
Кому
Системный администратор
,
Разработчик
Тип файла Внешняя обработка (ert,epf)
Платформа 1С:Предприятие 8
Конфигурация 1C:Бухгалтерия
Операционная система Не имеет значения
Страна Не имеет значения
Отрасль Не имеет значения
Налоги Не имеет значения
Вид учета Не имеет значения
Доступ к файлу Абонемент ($m)