Имя: Пароль:
1C
1С v8
УТ, 8.2, Остатки на складе, код
0 seofernandez
 
16.03.12
10:35
Уважаемые специалисты, помогите начинающему!
Есть товар с номенклатурой N, характеристикой X и остатком на складе Z. Нужно чтоб при нажатии на кнопку его стало Z+1. Без списания/приёма, просто взять и исправить!
Как написать это на 1С-коде?
1 jsmith
 
16.03.12
10:37
НаборЗаписей = РегистрыНакопления.ТоварыНаСкладах.СоздатьНаборЗаписей();
НаборЗаписей.Отбор.Номенклатура.Установить(Товар, Истина);
,,,
НаборЗаписей.Прочитать();
НаборЗаписей[0].Количество =НаборЗаписей[0].Количество + 1;
НаборЗаписей.Записать();
2 ll13
 
16.03.12
10:39
(1) Врешь.
3 seofernandez
 
16.03.12
10:42
Не заработает? Щас не могу проверить...
4 Рэйв
 
16.03.12
10:42
(0)Не надо тебе этого. Зайди в документ,исправь и перепроведи
5 jsmith
 
16.03.12
10:43
ну ещё отбор поставить по виду движения приход
вообще вариант конечно топорный и логически плохой
но если делать правильно, через документ
иначе возникнет рассинхрон между документом и движениями
6 seofernandez
 
16.03.12
10:43
Программно нужно, автоматом!
7 seofernandez
 
16.03.12
10:45
Спасибо, буду пробовать!
8 jsmith
 
16.03.12
10:48
Вообще самый кошерный вариант
создать в конфигураторе документ "КорректировкаТоваров"
без форм и реквизитов для простоты
в кнопке такой код:
дк = документы.корректировкатоваров.создать();
нз = дк.движения.товарынаскладах;
зп = нз.добавить();
зп.период = текущаядата();
зп.виддвижения = виддвижениянакопления.приход;
зп.склад = склад;
... (прочие измерения, какие нужны)
зп.количество = 1;
нз.записать();