|   |   | 
| 
 | Обработка табличных частей 1с | ☑ | ||
|---|---|---|---|---|
| 0
    
        ALEX7519 11.12.23✎ 13:39 | 
        не подскажите, попросили меня в 1с Бухг 30 сделать обработку, чтобы стоя на строчке в счете вводим кол-во и программа должна разбить эту строчку на две - с обним и другим количеством.
 Вроде бы обработку написал, она срабатывает, разделяет строки, но во вновь созданной не проставляются единицы измерения и всего ( только если потом жмякнуть записать ) - я так понимаю т.к. еи и всего это не реквизиты табличной части, а формы и надо бы форму обновить чтоли но никак не вкурю как :((( И еще, как сделать, чтобы форма обработки для ввода количесва не распахивалась на весь экран ? &НаКлиенте
Процедура Заполнить(Команда)
стр = ВладелецФормы.Элементы.Товары.ТекущиеДанные;
СуммаБыла = стр.Сумма;
НДСбыло = стр.СуммаНДС;
КоличествоБыло = стр.Количество;
стр.Количество = Процент;
Стр.Сумма = Стр.Количество*стр.Цена;
Если Стр.СтавкаНДС = ПредопределенноеЗначение("Перечисление.СтавкиНДС.НДС20") Тогда
Ставка = 20;
ИначеЕсли Стр.СтавкаНДС = ПредопределенноеЗначение("Перечисление.СтавкиНДС.НДС10") Тогда
Ставка = 20;
Иначе
Ставка = 0;
КонецЕсли;
Если ВладелецФормы.Объект.СуммаВключаетНДС Тогда
стр.СуммаНДС = ОКР(стр.Сумма/(100+ставка)*ставка,2);
Иначе
стр.СуммаНДС = ОКР(стр.Сумма/100*ставка,2);
КонецЕсли;
//стрН = ВладелецФормы.Элементы.Товары.Добавить();
стрН = ВладелецФормы.Объект.Товары.Добавить();
стрН.Номенклатура = стр.Номенклатура;
стрН.Содержание = стр.Содержание;
стрН.Количество = КоличествоБыло - Процент;
стрН.Цена = стр.Цена;
стрН.Сумма = СуммаБыла - стр.Сумма;
стрН.ПроцентСкидки = стр.ПроцентСкидки;
стрН.СуммаСкидки = стр.СуммаСкидки;
стрН.СтавкаНДС = стр.СтавкаНДС;
стрН.СуммаНДС = НДСбыло - стр.СуммаНДС;
стрН.КлючКалькуляцииРасходов = стр.КлючКалькуляцииРасходов;
ЭтаФорма.Закрыть();
КонецПроцедуры | |||
| 1
    
        Волшебник 11.12.23✎ 13:46 | 
        у вас тут ошибка
 ИначеЕсли Стр.СтавкаНДС = ПредопределенноеЗначение("Перечисление.СтавкиНДС.НДС10") Тогда Ставка = 20; | |||
| 2
    
        ALEX7519 11.12.23✎ 13:47 | 
        (1) угу )     | |||
| 3
    
        ALEX7519 11.12.23✎ 13:58 | 
        может надо это не на клиенте делать а на сервере перезаполнять ?     | |||
| 4
    
        ALEX7519 11.12.23✎ 14:16 | 
        у меня сработало после того как добавил
 ВладелецФормы.Записать(); ЭтаФорма.Закрыть(); КонецПроцедуры но при этом документ сразу и записывается, т.е. если они жмякнули что-то не то уже не получается закрыть счет не сохраняя. не айс :( | |||
| 5
    
        Мимохожий Однако 11.12.23✎ 14:40 | 
        Используй процедуры на сервере без команды Записать()     | |||
| 6
    
        ALEX7519 11.12.23✎ 14:44 | 
        (5) т.е. с процедуры на клиенте перейти в процедуру на сервере и туда весь модуль переписать ?     | |||
| 7
    
        Мимохожий Однако 11.12.23✎ 15:25 | 
        Например, первое попавшееся
 https://infostart.ru/1c/articles/153602/ | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |