Добрый день!
Подскажите, возможно ли удалить целиком макет доп. сведений в нескольких выбранных выделах?
Удаление макета доп. сведений
Сообщений 1 страница 4 из 4
Поделиться120.02.2022 22:41:50
Поделиться221.02.2022 12:41:48
возможно ли удалить целиком макет доп. сведений в нескольких выбранных выделах?
Удаление параметров или целиком макетов как любые другие групповые операции в допмакетах применимы только к результатам поиска. Описано тут:
Глобальная замена, добавление, удаление и арифметические операции
Внимательно изучите этот раздел и потренируйтесь на деморегионе перед выполнением работ на рабочей базе, т.к. логика работы с допмакетами сама по себе сложная и при ее недопонимании Вы можете испортить БД. Архивируйте базы и проверяйте результаты замен - удалений после каждой такой операции. Помните: Вам только кажется, что выбранные Вами условия абсолютно безупречны - семь раз примерь, один раз отрежь. Глобальные операции восстанавливаются только из архива!
Конкретно по Вашему вопросу чтобы удалить целиком допмакет нужно в "Панель данных - Отбор" отобрать не только сам макет (наличие = Да), но и все входящие в него параметры - то есть, выбрать их по очереди и прощелкать кажое возможное значение или по крайней мере основной параметр, который гарантированно присутствует в каждом макете допописаний. Иначе сам макет скорее всего у Вас не выберется (я не пробовал все макеты подряд) и, соответственно не сможет быть удален.
После такого отбора макет в выделах будет помечен галочками и по правой кнопке через "Удалить допописание в выбранных макетах" его можно будет удалить во всех выбранных выделах. Иногда для активации пункта "Удалить допописание в выбранных макетах" нужно правой кнопкой кликнуть по второму или первому полю макета (перейти с активного на нективное).
Не забывайте про требование инструкции:
Последние следует снять перед новым поиском - "Отбор - Метки и условия - Очистить метки всех связанных макетов".
Также не забывайте при необходимости снимать метки выбора самих выделов перед каждым новых поиском.
Если отбор нужен только в выделах отобранных заранее по номеру выдела, то режим поиска должен быть "...из отобранных".
Поделиться322.02.2022 12:22:37
Грешнов, спасибо! удалить получилось. Возможно ли добавить возможность отбора незаполненных значений в имеющемся макете доп. сведений? Может быть, как-то реализована данная функция?
Поделиться422.02.2022 21:04:19
Возможно ли добавить возможность отбора незаполненных значений в имеющемся макете доп. сведений? Может быть, как-то реализована данная функция?
Такой функционал у нас не предусматривался, потребность не возникала, а реализация (чисто интерфейсно) достаточно трудоёмка. Но у нас оставлен ход для продвинутых пользователей, знакомых с языком запросов SQL. На вкладке SQL-тексты через правую кнопку мыши-контекстное меню можно разрешить ручное редактирование сформированных программно запросов.
В вашем случае формируете запрос, например:
"Отобрать из всех выделы, где наличие макета доп. макет 13 - Да (земли линейного протяжения) и параметр макета 1304 - Лесохозяйственная = 4 (можно любой выбрать)" Запросы для отбора выделов будут сформированы.
Далее изменяем один из них - [Запрос отбора параметров из всех доп. макетов]:
UPDATE TblVydDopMaket SET TblVydDopMaket.Vybor0 = 1 WHERE {сюда вставка} TblVydDopMaket.NomZ IN {замена} ( SELECT NomSoed FROM TblVydDopParam WHERE (ParamId = 1304 AND CLng(Parametr) = 4 {лишнее} ) GROUP BY NomSoed HAVING COUNT(NomSoed) >=1 )
на следующий тест:
UPDATE TblVydDopMaket SET TblVydDopMaket.Vybor0 = 1 WHERE TblVydDopMaket.Maket = 13 AND TblVydDopMaket.NomZ NOT IN ( SELECT NomSoed FROM TblVydDopParam WHERE (ParamId = 1304) GROUP BY NomSoed HAVING COUNT(NomSoed) >=1 )
Результатом выполнения будет отбор выделов, где 13 макет есть, но параметр 1304 не заполнялся, то есть его нет совсем (мы не формируем "пустых" параметров).