Все выросло из чисто прикладной задачи - ускорить и упростить копирование элементов сложных справочников.
При копировании Номенклатуры нужно было воспроизвести единицы измерения, свойства, штрихкоды и т.д. Так как данные, относящиеся к предмету, раскиданы по подчиненным справочникам и регистрам сведений, пользователи весьма удивлялись, почему по кнопочке "создать элемент копированием" у них на форме копии заполненными оказывалась едва ли треть от привычных им сведений.
Чтобы не утомлять их объяснениями, почему в 1С все так сделано. я сел и написал функцию, которая скопирует практически все, что имеет отношение к объекту. Кроме, конечно, регистров накопления и расчета, а также регистров сведений, связанных с регистраторами.
На этом описательную часть считаю законченой. Собственно сама функция:
Полагаю либо пользователи неграмотные либо автор либо очень специфичная вещь - очень часто после таких "оптимизаторов" приходишь в фирму и спрашиваешь -"а почему у вас вот это так заполняют, а это иначе?", и слышишь в ответ - "ну я не знаю", "так было", "так нам настроили".
С другой стороны это наш хлеб что кто-то допускает ошибки - после того как база вся переписана, забита хламом так что никто ничего не понимает, приходишь и люди на все согласны чтобы навели им порядок. Поэтому трудитесь дальше в том же духе если есть желание.
Но в общем для админов это наверное хорошая вещь если в нее добавить возможность чтобы при копировании вываливался список чего собственно будет создано чтобы можно было отметить галочками что требуется копировать - типа дерева значения. Да и за универсальность + бы поставил, но не проверив код воздержусь, а проверять как я говорю без интерактива создавая кучу хлама не имеет смысла.
В больших предприятиях, где различные части справочников заполняются разными специалистами (отвечающими за правильность своего набора реквизитов) иной раз и нельзя быстро создать новую запись иначе чем копированием. Поэтому говорить, что решение такое решение несет вред, это все равно, что ударив микроскопом по пальцам в попытке забить им гвоздь, заявить, что микроскопы несут вред и посему бесполезны. :-)
(10) gigabyte_artur, в смысле дали? А мы типа просили? Еще раз повторюсь - более чем за 10 лет обслуживания несколько сотен разных клиентов разных сфер и размеров от 1 до 30 пользователей 1С я не разу не встречал такой потребности как и сам ее не испытывал, зато знаю чем заканчивается обычное копирование, а вы ратуете за групповое копирование обычным пользователем!.
Я не говорю что инструмент плох. Но давать его пользователю - крайне опасно, и нормальны программист/администратор не стал бы этого делать если только он хоть как то следит за базой. Никто не застрахован от ошибок - а вот результаты их придется устранять админу, а не пользователю. Так что и сам бы использовал такой инструмент только с указанными ранее интерактивными отметками что нужно копировать, а что нет. А получить "кота в мешке" на выходе - боже упаси.
Жизнь вообще не так однозначна как нам хотелось бы и в этом я сильно согласен с dddxddd. Видел я случаи захламленных баз и даже писал и использовал чужие удалялки дублей, но видел и другие ситуации, когда чтобы создать ту же номенклатуру с обложкой другого цвета приходилось тратить минут 10 времени. А таких позиций нужно создать 200 штук за 2 дня, чтобы поставить быстро на приход.
Инструмент не бывает хорош или плох в принципе - он бывает правильно или неправильно применен. Поэтому с кинутым тапком не согласен:)
Там помимо самого элемента справочника копируется и разная связанная информация.
Ну простой пример, сведения регистра сведений счета учета номенклатуры, если говорить о БУХии 2.0, 3.0 и баз пораньше.
По крайней мере так я понял.
Код не изучал опубликованный тут.
надо было однократно поместить метаданные элемента в переменную, и работать с переменной, а не получать метаданные многократно.
© 2018