|
Как скопировать имя в комментарий? | ☑ | ||
---|---|---|---|---|
0
vienya
24.04.24
✎
09:42
|
Помогите, как Бухе в справочнике Контрагенты скопировать все Наименования в комментарии?
|
|||
1
Кондер
24.04.24
✎
09:30
|
Цикл
К.Комментарий = К.Наименование |
|||
2
CepeLLlka
24.04.24
✎
09:31
|
(0)Групповая обработка, произвольный алгоритм и тоже самое:
КонтрагентОбъект.Комментарий = КонтрагентОбъект.Наименование; |
|||
3
Кондер
24.04.24
✎
09:35
|
(2) Это невозможно
|
|||
4
Мультук
гуру
24.04.24
✎
09:42
|
(0)
Ну, год еще, ну, два. А дальше что? Дальше ваши рыжие кудри примелькаются, и вас просто начнут бить. (с) P.S. В гугле забанили? 1) 1с как в цикле перебрать элементы справочника https://1s-portal.ru/index.php/stati/configuration/15-form/59-knopke-naznachit-gorjachuju-klavishu.html https://helpf.pro/faq/view/303.html 2) 1с как изменить элемент справочника программно https://helpf.pro/faq/view/1160.html P.P.S. Настоятельно советую бесчеловечная эксперименты проводить на тестовой базе И не на всём справочнике, а на порции 1-10 элементов, чтобы не ждать |
|||
5
vienya
24.04.24
✎
09:48
|
(1) Пока Контрагент.Наименование = 1 Цикл
Контрагент.Комментарий = Контрагент.Наименование; КонецЦикла; Переменная не определена (Контрагент) |
|||
6
Волшебник
24.04.24
✎
09:49
|
(5) Не надо генерировать бред
|
|||
7
Serg_1960
24.04.24
✎
10:11
|
(3) "Нельзя" если использовать групповое изменение значений реквизитов (контекстное меню - "Изменить выделенные") и "возможно" если использовать универсальную обработку. Не знаю как в БП, но в остальных типовых обработка где-то в районе "Администрирование"-"Обслуживание" находится. Ну, или скачать с ИТС - https://its.1c.ru/db/metod8dev/content/5443/hdoc
|
|||
8
yopQua
24.04.24
✎
10:19
|
(5) мощно..
вам в (4) в ппс сама задача тоже мощная скопировать названия всех контрагентов в комментарий одного? для каждого скопировать наименование в комментарий? как бы ни было, нахоя?? |
|||
9
Serg_1960
24.04.24
✎
10:22
|
(8) Я тоже так в начале подумал... но в конце вопроса - "... в комментарии" - множественное число.
|
|||
10
Кондер
24.04.24
✎
10:23
|
(7) Этой возможно, вроде
|
|||
11
yopQua
24.04.24
✎
10:25
|
(9) поколение некст считает, что граммарнаци существуют только для бутафории и пафоса. Что установка запятой в "Казнить нельзя помиловать" ничего не решает, это придирки. Тоже самое и по формам слов в окончаниях, в приставках и тд. Что их и так поймут, ЭТО главное
|
|||
12
vienya
24.04.24
✎
10:40
|
(7) Спасибо за обработку, а тут как-то можно впихнуть наименование контрагента?
|
|||
13
Serg_1960
24.04.24
✎
10:28
|
"Мы все учились понемногу чему-нибудь и как-нибудь..."
Пока такие, как автор, есть - мы все спокойны за свои рабочие места :)) |
|||
14
vienya
24.04.24
✎
10:50
|
(8) Все имена в соответствующие комментарии.
Дело в том, что в конторе сложилась практика вписывать десятизначные номера лицевых счетов в наименование, поэтому конечной задачей является копирование всех 10 первых знаков в комментарии, а потом их удаление. Примерно так: Процедура ВКомментарий (Контрагент) Если Найти(Контрагент.Наименование, Цифры) = 0 Тогда Контрагент.Комментарий = Лев(Контрагент.Наименование, 10) //лицевой счет 10 знаков Иначе Справочник.Контрагент.Комментарий = Лев(Удалить(Контрагент.Наименование, Цифры), 10) КонецЕсли; КонецПроцедуры Но для начала вопрос встал, как обратиться к переменной Контрагент |
|||
15
Волшебник
24.04.24
✎
10:38
|
(12) Заметьте кнопку "Выполнить произвольный алгоритм"
|
|||
16
Волшебник
24.04.24
✎
10:40
|
(14)
Цикл: Объект.Комментарий = Лев(Объект.Наименование,10); Объект.Наименование = Сред(Объект.Наименование,11); Объект.Записать(); |
|||
17
maxab72
24.04.24
✎
11:39
|
(13) "Мы все учились понемногу чему-нибудь и как-нибудь..." А мне вспомнилась песня Лисы Алисы и Кота Базилио из Буратино - "Пока живут на свете..."
|
|||
18
CepeLLlka
24.04.24
✎
13:51
|
(3)🤦
|
|||
19
Кондер
24.04.24
✎
14:17
|
(18) Хватит хлопать себя по щекам, ты не виноват, что ты написал ничем не обоснованную чушь )
|
|||
20
Kigo_Kigo
24.04.24
✎
14:41
|
говнокодКонтрик =Справочники.контрагенты.выбрать(); Пока Контрик.Следующий() Цикл Если Контрик.ЭтоГруппа() Тогда Продолжить; КонецЕсли ЭлКонтрик = Контрик.ПолучитьОбъект(); ЭкКонтрик.Комментарий = ЭлКонтрик.Комментарий = Лев(Объект.Наименование,10); Попытка ЭлКонтрик.Записать(); Исключение Сообщить(ОписаниеОшибки()); КонецПопытки; КонецЦикла; Можно через запрос Запрос = Новый Запрос(" ВЫБРАТЬ Контрагенты.Ссылка КАК Конрагент, Контрагенты.Наименование КАК Наименование ИЗ Справочник.Контрагенты КАК Контрагенты ГДЕ Контрагенты.ЭтоГруппа = ЛОЖЬ АВТОУПОРЯДОЧИВАНИЕ"); Результат = Запрос.Выполнить().Выбрать(); Пока Результат.Следующий() Цикл Контрик = Результат.Конрагент.ПолучитьОбъект(); Контрик.Комментарий = Лев(Результат.Наименование,10); Попытка Контрик.Записать(); Исключение Сообщить(ОписаниеОшибки()); КонецПопытки; КонецЦикла; |
|||
21
maxab72
24.04.24
✎
14:40
|
Ага, а если главбух в комментарии к каким-то контрагентам записала важную информацию, типа - "динамит с оплатами, строгий контроль" и т.п. как она будет счастлива, после этой обработки...
|
|||
22
vienya
02.05.24
✎
12:16
|
(15) (16) Волшебник, спасибо!
Внесение лицевого счета в комментарий осуществлено через штатную обработку ГруповоеИзменениеРеквизитов (Администрирование > Обслуживание > Корректировка данных) - Ввести новые значения – открыжены все, связанные с Контрагентами поля. - Выполнить произвольный алгоритм: ПервыеДесятьСимволовНаименования = Лев(Объект.Наименование, 10); Если СтрДлина(ПервыеДесятьСимволовНаименования) = 10 И СтрРазделить(ПервыеДесятьСимволовНаименования,"0123456789",Ложь).Количество() = 0 Тогда Объект.Комментарий = ПервыеДесятьСимволовНаименования; Объект.Наименование = СокрЛ(Сред(Объект.Наименование, 11)); //удалить лицевой счет из наименования Объект.НаименованиеПолное = СокрЛ(Сред(Объект.НаименованиеПолное, 11)); //удалить лицевой счет из полного наименования КонецЕсли; - Выбор элементов для изменения: Отбор по Юридическое/физическое лицо = Физическое лицо, Дата создания Больше/Меньше (сортирую по дате, т.к. большой объём, поэтому гружу по частям) |
|||
23
vienya
02.05.24
✎
12:22
|
(21) Тогда можно
Если Объект.Комментарий.Пустая() =0 Тогда А вот как дописать в комментарий? Если Объект.Комментарий.СодержитЗначение() =0 Тогда Как дальше конкатенацию сделать? |
|||
24
Волшебник
02.05.24
✎
12:53
|
(23) Так нельзя
|
|||
25
Мультук
гуру
02.05.24
✎
13:09
|
(23)
1) Наименование: 1234567890 Ромашка НаименованиеПолное: ООО РГУ МФП ДДТ Ромашка после ваших изменений Наименование: Ромашка НаименованиеПолное: П ДДТ Ромашка Почему вы решили, что если в наименовании первые 10 символов это счёт, то и в полном наименовании аналогично ? 2) Конкатенация Объект.Комментарий = Объект.Комментарий + " некая хрень "; P.S. Грустно всё это. |
|||
26
vienya
02.05.24
✎
15:36
|
(25) Спасибо, не заметил, что надо поставить условный оператор и для полного наименования.
Отдельное спасибо за конкатенацию. P.S. Согласен. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |