Имя: Пароль:
1C
1С v8
1СНовичокХелп
↓ (Волшебник 27.11.2025 17:13)
0 GoterN
 
27.11.25
15:44
Создать обработку которая будет изменять ставку НДС на выбранных Номенклатурах.

Желательно через:
ссыл.Объект=перемссылка.Получить()
ссылОбъект.реквизит1=перемен.объект()

Проблема:
Создал форму обработки, реквизиты с ссылочным типом данных.
Поле ввода со ставкамиНДС (перечисление ставок НДС)
Кнопка в которой прикреплен весь модуль при Нажатии.

Суть проблемы:/
Не могу найти информацию в интернете, примера по созданию обработки.
Не работает даже обращение к табличной части: простаяпеременная = элементыформы.ТабличнаяЧасть1.текущиеданные;
НоменклатураОбъект = ТабличнаяЧасть1.ПолучитьОбъект();
НоменклатураОбъект.СтавкаНДС =ПолеВвода1;  
НоменклатураОбъект.СтавкаНДС.Записать();
НоменклатураОбъект = Номенклатура.ПолучитьОбъект();
1 Волшебник
 
27.11.25
15:46
тупой бот
2 formista2000
 
27.11.25
16:00
кто-нибудь что-нибудь полял? :-/
3 GoterN
 
27.11.25
16:06
Да) есть такое.
Если это про мои навыки, изучаю первую неделю.
Дошел до такого, есть разница в обращении между управляемыми формами и обычными формами, делаю в обычной форме:
//Через ЭтотОбъект - получилось посомотреть данные табличной части.
простаяпеременная= ЭтотОбъект.ТабличнаяЧасть1;
ЭлементыФормы.Таблица.ТекущиеДанные;
ЭтотОбъект.СтавкаНДС

Мне нужно понять как написать код следующий
Есть форма - в ней по Номенклатуре в табличной части, набираю товары с карточками (автозапчасти к примеру, у которых есть данные НДС)
и при помощи поля где указываю НДС нужный,
надо по нажатию кнопки изменить в карточках номенклатур значение ставки НДС
4 Гипервизор
 
27.11.25
16:06
(2) Понял, что представленный "код" человек не напишет. Ну если только кубик с буквами кидать. )
5 GoterN
 
27.11.25
16:18
простаяпеременная= ЭтотОбъект.ТабличнаяЧасть1;
    ВсеДанныеКарточкивформеобъекта=ЭтотОбъект.ТабличнаяЧасть1[0].Номенклатура.ПолучитьОбъект();


Получил в формате объекта все данные карточки, дальше точно знаю нужно будет использовать Записать.
В пути к осознанию как изменить НДС в карточке Номенклатуры.
6 Волшебник
 
27.11.25
16:23
(5) Попробуйте так:
ВсеДанныеКарточкивформеобъекта.Записать();
7 GoterN
 
27.11.25
16:31
Вот так?

простаяпеременная= ЭтотОбъект.ТабличнаяЧасть1;
    ВсеДанныеКарточкивформеобъекта=ЭтотОбъект.ТабличнаяЧасть1[0].Номенклатура.ПолучитьОбъект();
    СВТ=ВсеДанныеКарточкивформеобъекта.Найти(СтрокаТЧ.СтавкаНДС);
    СВТ.СтавкаНДС =СтавкаНДС;
    ВсеДанныеСВТ.Записать();
8 GoterN
 
27.11.25
16:31
(6) Вот так?

простаяпеременная= ЭтотОбъект.ТабличнаяЧасть1;
    ВсеДанныеКарточкивформеобъекта=ЭтотОбъект.ТабличнаяЧасть1[0].Номенклатура.ПолучитьОбъект();
    СВТ=ВсеДанныеКарточкивформеобъекта.Найти(СтрокаТЧ.СтавкаНДС);
    СВТ.СтавкаНДС =СтавкаНДС;
    ВсеДанныеСВТ.Записать();
9 Волшебник
 
27.11.25
16:31
ебать-колотить...
10 Garikk
 
27.11.25
16:36
у меня явное ощущение что это ИИ пишет всё
11 Гипервизор
 
27.11.25
16:37
(8) Перестаньте бросать кубик, потратьте время на усвоение понятий тип, объект, реквизит, свойство, метод.
(9) А потом говорят, что 1С-сообщество токсичное. А тут как без мата сказать? (
12 Волшебник
 
27.11.25
16:38
(10) Это наверняка. Полное отсутствие здравого смысла и понимания причинно-следственных связей.
13 программистище
 
27.11.25
16:38
(0) проверка
а какая конфигурация?
может хватит типовой Групповое изменение?
14 GoterN
 
27.11.25
16:41
(9) а так?
Поле ввода 1 - в нем данные нового НДС

ПростаяПеременная = ЭтотОбъект.ТабличнаяЧасть1;
    Для Каждого СтрокаТЧ Из ПростаяПеременная Цикл
        СтрокаТЧ.СтавкаНДС = ПолеВвода1;
    КонецЦикла;
    ЭтотОбъект.Записать();
15 mmg
 
27.11.25
16:42
(10) Можете придумать правдоподобную версию зачем?
16 Волшебник
 
27.11.25
16:58
(14) А попробуйте так:

ДругаяПеременная = ЭтотОбъект.ВажнаяТабличнаяЧасть1;
    Для Каждого ПерваяПеременная Из ДругаяПеременная Цикл
        ПерваяПеременная.СтавкаНДС = ПолеВвода1;
    КонецЦикла;
    ЭтотОбъект.Запиcать();
17 K1RSAN
 
27.11.25
16:43
(15) ИИ готовится захватить мир и мимикрирует под 1С-ников
18 Гипервизор
 
27.11.25
16:43
(14) МИМО (С)
19 Garikk
 
27.11.25
16:44
(15) зачем ИИ это пишет?
ну вообще у меня есть проект например, который ведет сеть ИИ агентов которые притворяются обычными людьми и общаются в мессенджерах
как пример тут - самообучение такой штуки
20 Гипервизор
 
27.11.25
16:46
(19) А чему такая штука обучится? Новым матерным словам?
21 Garikk
 
27.11.25
16:59
(20) как вариант, общаться она научится и правильно вопросы задавать
22 GoterN
 
27.11.25
17:06
Спасибо, разобрался, так работает.

Для Каждого СтрокаТЧ Из ПростаяПеременная Цикл
        ОбъектНоменклатуры=СтрокаТЧ.Номенклатура.ПолучитьОбъект();
ОбъектНоменклатуры.СтавкаНДС = СтавкаНДС;
ОбъектНоменклатуры.записать();
23 Волшебник
 
27.11.25
19:39
(22) плохие имена переменных
Есть два вида языков, одни постоянно ругают, а вторыми никто не пользуется.