Изменение сумм в Заказе покупателя в УНФ (обработка заполнения табличной части Запасы)

05.11.14

Учетные задачи - Оптовая торговля

Обработка позволяет изменять суммы в таб.части Запасы документа Заказ покупателя на указанный процент, на указанную сумму, а также уменьшать/увеличивать суммы так, чтобы итого по таб.части Запасы стало равно заданному значению.

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
UstanovkaSkidokNaZapasyZakaza.epf.7z
.7z 5,48Kb
42
42 Скачать (1 SM) Купить за 1 850 руб.

Появилась необходимость в УНФ в заказах покупателей предоставлять ручные скидки. Например, уменьшить все суммы на 5%, или уменьшить все суммы так, чтобы итоговая сумма документа уменьшилась на 1000р., или сказать, что всё вместе продаётся за 10000р., и чтобы при этом все суммы пропорционально уменьшились/увеличились.

Во "взрослых" конфигурациях (УПП, УТ), насколько помню, есть спец.обработка таб.частей, которая позволяет решить эту задачу (а кроме неё ещё и много других) за пару кликов мыши. В УНФ такого не нашёл. Поэтому взялся за написание своего велосипеда. Большого опыта разработки для упр.приложения пока нет, поэтому буду благодарен за дельные замечания и предложения в комментариях.

Обработка добавляется в "Дополнительные отчеты и обработки" (Вид обработки = "Заполнение объекта"). После этого в документе Заказ покупателя появляется кнопка "Заполнить" с тремя командами:

  • "Скидка, %" - уменьшает все суммы в таб.части Запасы на указанный процент (если ввести отрицательное число, то наоборот увеличит на указанный процент).
  • "Скидка, сумма" - уменьшает все суммы в таб.части Запасы так, чтобы итоговая сумма документа уменьшилась на указанную сумму (если ввести отрицательное число, то наоборот итоговая сумма документа будет увеличена на эту сумму).
  • "Скидка, установить Итого" - уменьшает/увеличивает все суммы в таб.части Запасы так, чтобы итого по таб.части Запасы стало равно введённой сумме.

Код модуля обработки:

////////////////////////////////////////////////////////////////////////////////
// ПРОГРАММНЫЙ ИНТЕРФЕЙС

// Возвращает сведения о внешней обработке.
Функция СведенияОВнешнейОбработке() Экспорт
	
	ПараметрыРегистрации = ДополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке("2.2.2.1");
	
	ПараметрыРегистрации.Вид = ДополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработкиЗаполнениеОбъекта();
	ПараметрыРегистрации.Версия = "0.99";
	ПараметрыРегистрации.Назначение.Добавить("Документ.ЗаказПокупателя");
	
	НоваяКоманда = ПараметрыРегистрации.Команды.Добавить();
	НоваяКоманда.Представление = НСтр("ru = 'Скидка, %'");
	НоваяКоманда.Идентификатор = "УстановитьСкидкуПроцент";
	НоваяКоманда.Использование = ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыВызовКлиентскогоМетода();
	НоваяКоманда.ПоказыватьОповещение = Истина;
	
	НоваяКоманда = ПараметрыРегистрации.Команды.Добавить();
	НоваяКоманда.Представление = НСтр("ru = 'Скидка, сумма'");
	НоваяКоманда.Идентификатор = "УстановитьСкидкуСумма";
	НоваяКоманда.Использование = ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыВызовКлиентскогоМетода();
	НоваяКоманда.ПоказыватьОповещение = Истина;
	
	НоваяКоманда = ПараметрыРегистрации.Команды.Добавить();
	НоваяКоманда.Представление = НСтр("ru = 'Скидка, установить Итого'");
	НоваяКоманда.Идентификатор = "УстановитьСуммуИтого";
	НоваяКоманда.Использование = ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыВызовКлиентскогоМетода();
	НоваяКоманда.ПоказыватьОповещение = Истина;
	
	Возврат ПараметрыРегистрации;
	
КонецФункции

Код модуля формы (сама форма не содержит никаких реквизитов и элементов):

// {{{ Код взят из модуля формы документа ЗаказПокупателя (обработка события "изменение поля Сумма таб.части Запасы").
// Изменение кода свелось по большому счету к передаче ДокОбъект во все процедуры и обращение к "ДокОбъект" (вместо "Объект") внутри процедур.
// < Начало кода, права на который принадлежат фирме 1С

// Рассчитывается сумма НДС в строке табличной части.
//
&НаСервере
Процедура РассчитатьСуммуНДС(ДокОбъект, СтрокаТабличнойЧасти)
	
	СтавкаНДС = УправлениеНебольшойФирмойПовтИсп.ПолучитьЗначениеСтавкиНДС(СтрокаТабличнойЧасти.СтавкаНДС);
	
	СтрокаТабличнойЧасти.СуммаНДС = ?(ДокОбъект.СуммаВключаетНДС, 
									  СтрокаТабличнойЧасти.Сумма - (СтрокаТабличнойЧасти.Сумма) / ((СтавкаНДС + 100) / 100),
									  СтрокаТабличнойЧасти.Сумма * СтавкаНДС / 100);
											
КонецПроцедуры // ПересчитатьСуммыДокумента() 

// Процедура пересчитывает суммы в платежном календаре.
//
&НаСервере
Процедура ПересчитатьПлатежныйКалендарь(ДокОбъект, ПересчитыватьПроцент = Ложь)
	
	// +++ пересчет процента, а не суммы оплаты
	// для решения моей частной задачи нужно чтобы указанная в документе сумма оплаты не менялась, а менялся процент оплаты
	Если ПересчитыватьПроцент Тогда
		Для каждого ТекСтрока Из ДокОбъект.ПлатежныйКалендарь Цикл
			Всего = ДокОбъект.Запасы.Итог("Всего") + ДокОбъект.Работы.Итог("Всего");
			ТекСтрока.ПроцентОплаты = ?(Всего = 0, 0, ТекСтрока.СуммаОплаты / Всего * 100);
			ТекСтрока.СуммаНДСОплаты = Окр((ДокОбъект.Запасы.Итог("СуммаНДС") + ДокОбъект.Работы.Итог("СуммаНДС")) * ТекСтрока.ПроцентОплаты / 100, 2, 1);
		КонецЦикла;
		Возврат;
	КонецЕсли;
	// пересчет процента, а не суммы оплаты +++
	
	Для каждого ТекСтрока Из ДокОбъект.ПлатежныйКалендарь Цикл
		ТекСтрока.СуммаОплаты = Окр((ДокОбъект.Запасы.Итог("Всего") + ДокОбъект.Работы.Итог("Всего")) * ТекСтрока.ПроцентОплаты / 100, 2, 1);
		ТекСтрока.СуммаНДСОплаты = Окр((ДокОбъект.Запасы.Итог("СуммаНДС") + ДокОбъект.Работы.Итог("СуммаНДС")) * ТекСтрока.ПроцентОплаты / 100, 2, 1);
	КонецЦикла;
	
КонецПроцедуры // ПересчитатьПлатежныйКалендарь()

// Процедура - обработчик события ПриИзменении поля ввода Сумма.
//
&НаСервере
Процедура ЗапасыСуммаПриИзменении(ДокОбъект)
	
	Для Каждого СтрокаТабличнойЧасти Из ДокОбъект.Запасы Цикл
	
		// Цена.
		Если СтрокаТабличнойЧасти.Количество <> 0 Тогда
			СтрокаТабличнойЧасти.Цена = СтрокаТабличнойЧасти.Сумма / СтрокаТабличнойЧасти.Количество;
		КонецЕсли;
		
		// Скидка.
		Если СтрокаТабличнойЧасти.ПроцентСкидкиНаценки = 100 Тогда
			СтрокаТабличнойЧасти.Цена = 0;
		ИначеЕсли СтрокаТабличнойЧасти.ПроцентСкидкиНаценки <> 0 И СтрокаТабличнойЧасти.Количество <> 0 Тогда
			СтрокаТабличнойЧасти.Цена = СтрокаТабличнойЧасти.Сумма / ((1 - СтрокаТабличнойЧасти.ПроцентСкидкиНаценки / 100) * СтрокаТабличнойЧасти.Количество);
		КонецЕсли;
			
		// Сумма НДС.
		РассчитатьСуммуНДС(ДокОбъект, СтрокаТабличнойЧасти);
		
		// Всего.
		СтрокаТабличнойЧасти.Всего = СтрокаТабличнойЧасти.Сумма + ?(ДокОбъект.СуммаВключаетНДС, 0, СтрокаТабличнойЧасти.СуммаНДС);
		
	КонецЦикла;
		
	// Платежный календарь.
	ПересчитатьПлатежныйКалендарь(ДокОбъект, Истина); // для штатного пересчета платежного календаря нужно во втором параметре передать Ложь или не указывать его вообще
	
КонецПроцедуры // ЗапасыСуммаПриИзменении()
// Конец кода, права на который принадлежат фирме 1С / >
// Код взят из модуля формы документа ЗаказПокупателя (обработка события "изменение поля Сумма таб.части Запасы"). }}}

// отсюда и до конца файла GPLv3

&НаСервере
Процедура УстановитьСкидкуПроцент(ДокОбъект, ЗначСкидки)
	
	Для Каждого СтрокаТЧ Из ДокОбъект.Запасы Цикл
		СтрокаТЧ.Сумма = Окр(СтрокаТЧ.Сумма * (100 - ЗначСкидки) / 100, 2);
	КонецЦикла;
	
КонецПроцедуры

&НаСервере
Процедура УстановитьСкидкуСумма(ДокОбъект, ЗначСкидки)
	
	МассивСумм = ДокОбъект.Запасы.ВыгрузитьКолонку("Сумма");
	МассивСкидок = ОбщегоНазначения.РаспределитьСуммуПропорциональноКоэффициентам(ЗначСкидки, МассивСумм);
	
	Для Сч = 0 По МассивСумм.Количество() - 1 Цикл
		МассивСумм[Сч] = МассивСумм[Сч] - МассивСкидок[Сч];
	КонецЦикла;
	
	ДокОбъект.Запасы.ЗагрузитьКолонку(МассивСумм, "Сумма");
	
КонецПроцедуры

&НаСервере
Процедура УстановитьСуммуИтого(ДокОбъект, ЗначСкидки)
	
	МассивСумм = ДокОбъект.Запасы.ВыгрузитьКолонку("Сумма");
	МассивРез = ОбщегоНазначения.РаспределитьСуммуПропорциональноКоэффициентам(ЗначСкидки, МассивСумм);
	
	ДокОбъект.Запасы.ЗагрузитьКолонку(МассивРез, "Сумма");
	
КонецПроцедуры

&НаСервере
Процедура УстановитьСкидкуНаСервере(ИмяКоманды, ОбъектыНазначения, ЗначСкидки)
	
	Для Каждого ДокСсылка Из ОбъектыНазначения Цикл
		
		Если ТипЗнч(ДокСсылка) <> Тип("ДокументСсылка.ЗаказПокупателя") Тогда
			Продолжить;
		КонецЕсли;
		
		ДокОбъект = ДокСсылка.ПолучитьОбъект();
		
		Если ДокОбъект.Запасы.Количество() = 0 Тогда
			Продолжить;
		КонецЕсли;
		
		Если ИмяКоманды = "УстановитьСкидкуПроцент" Тогда
			УстановитьСкидкуПроцент(ДокОбъект, ЗначСкидки);
		ИначеЕсли ИмяКоманды = "УстановитьСкидкуСумма" Тогда
			УстановитьСкидкуСумма(ДокОбъект, ЗначСкидки);
		ИначеЕсли ИмяКоманды = "УстановитьСуммуИтого" Тогда
			УстановитьСуммуИтого(ДокОбъект, ЗначСкидки);
		КонецЕсли;
		
		ЗапасыСуммаПриИзменении(ДокОбъект);
		
		ДокОбъект.Записать();
		
	КонецЦикла;
	
КонецПроцедуры

&НаКлиенте
Процедура ВыполнитьКоманду(ИмяКоманды, ОбъектыНазначения) Экспорт
	
	Если ОбъектыНазначения.Количество() > 1 Тогда
		// не будем давать пользователю возможность массово устанавливать скидки
		ВызватьИсключение НСтр("ru = 'Установка скидок для нескольких документов не поддерживается!'");
		Возврат;
	КонецЕсли;
	
	ЗначСкидки = 0;
	ЧислоВведено = Ложь;
	Если ИмяКоманды = "УстановитьСкидкуПроцент" Тогда
		ЧислоВведено = ВвестиЧисло(ЗначСкидки, НСтр("ru = 'Уменьшить на %'"), 4, 1);
	ИначеЕсли ИмяКоманды = "УстановитьСкидкуСумма" Тогда
		ЧислоВведено = ВвестиЧисло(ЗначСкидки, НСтр("ru = 'Уменьшить на сумму'"), 15, 2);
	ИначеЕсли ИмяКоманды = "УстановитьСуммуИтого" Тогда
		ЧислоВведено = ВвестиЧисло(ЗначСкидки, НСтр("ru = 'Установить сумму Итого = '"), 15, 2);
	Иначе
		ВызватьИсключение "Неизвестная команда """ + ИмяКоманды + """!";
		Возврат;
	КонецЕсли;
	
	Если НЕ ЧислоВведено Тогда
		Возврат;
	КонецЕсли;
	
	Если НЕ ЗначениеЗаполнено(ЗначСкидки) Тогда
		Возврат;
	КонецЕсли;

	УстановитьСкидкуНаСервере(ИмяКоманды, ОбъектыНазначения, ЗначСкидки);
	
	// обновим открытые списки и формы документов
	Для Каждого ДокСсылка Из ОбъектыНазначения Цикл
		ОповеститьОбИзменении(ДокСсылка);
		ПараметрыФормы = Новый Структура("Ключ", ДокСсылка);
		ТекФорма = ПолучитьФорму("Документ.ЗаказПокупателя.Форма.ФормаДокумента", ПараметрыФормы);
		Если ТекФорма.Открыта() Тогда
			ТекФорма.Прочитать();
		КонецЕсли;
	КонецЦикла;
	
КонецПроцедуры

См. также

Оптовая торговля Розничная торговля Обмен с ГосИС Бухгалтер Платформа 1С v8.3 1С:Управление торговлей 10 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика Рестораны, кафе и фаст-фуд Россия Бухгалтерский учет Управленческий учет Акцизы Платные (руб)

Полнофункциональное расширение (ранее известное как Модуль 1С-ЕГАИС) для взаимодействия типовых конфигураций 1С и ЕГАИС, предоставляющее максимум возможностей по работе с УТМ. Получение и отправка ТТН, отправка акта о постановке на баланс и акта о списании. Получение остатков. Загрузка и сопоставление номенклатуры и контрагентов. Оправка в ЕГАИС отчетов о производстве и импорте.

8970 руб.

15.12.2015    170038    936    364    

399

Бюджетирование и планирование Оптовая торговля Розничная торговля Логистика, склад и ТМЦ Анализ продаж Пользователь Платформа 1С v7.7 Платформа 1С v8.3 1С:Комплексная автоматизация 1.х 1С:Управление торговлей 10 1С:Розница 2 1С:Управление производственным предприятием 1С:Управление нашей фирмой 1.6 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика Беларусь Украина Россия Казахстан Управленческий учет Платные (руб)

Система управления запасами для 1С помогает работать с запасами правильно: автоматически рассчитывает потребность и делает заказ поставщику, загружает прайсы, перемещает товары по филиалам, анализирует продажи и позволяет управлять ассортиментом.

28500 руб.

21.04.2017    95361    126    40    

213

SALE! 10%

Перенос данных 1C Взаиморасчеты Оптовая торговля Логистика, склад и ТМЦ Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист Платформа 1С v8.3 1С:Управление торговлей 10 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Управленческий учет Платные (руб)

Можно проверить до покупки, оставьте заявку! Воспользовались более 268 компаний! Перенос данных из УТ 10.3 в УТ 11 | из УТ 10.3 в КА 2 | из УТ 10.3 в ERP. Предлагаем качественное и проверенное временем решение для перехода с УТ 10.3. Можно перенести начальные остатки, нормативно-справочную информацию и все возможные документы. При выгрузке можно установить отбор по периоду, организациям и складам. При выходе новых релизов конфигураций 1C оперативно выпускаем обновление переноса данных.

50722 45650 руб.

24.04.2015    194117    148    242    

279

SALE! 20%

Загрузка и выгрузка в Excel Оптовая торговля Печатные формы Бухгалтер Пользователь Платформа 1С v8.3 Управляемые формы Платформа 1C v8.2 Конфигурации 1cv8 1С:Комплексная автоматизация 1.х 1С:Бухгалтерия 2.0 1С:Управление торговлей 10 1С:Розница 2 1С:Управление производственным предприятием 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Управление холдингом 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Бухгалтерский учет Управленческий учет Платные (руб)

Универсальная обработка для загрузки документов из Excel в 1С одним нажатием. Не требует указания параметров (номера колонок, номер первой строки таблицы и т.д.) и предварительной настройки. Просто выбираете файл Excel, документ 1С и нажимаете кнопку "Загрузить". Обработка сама находит таблицу в файле Excel, необходимые для загрузки данные в ней (номенклатура, количество, НДС, цена, сумма) и загружает ее в 1С. Вместе с номенклатурой может найти контрагента, номер и дату документа, штрих-коды, серии ГТД, страну и т.д. Распознает документы ЛЮБОЙ ФОРМЫ (УПД, ТОРГ-12, заказ, отчет комиссионера и т.д.). Не требует MS Office. Для поиска таблиц используются методы эвристического поиска. Загружает только то, что нужно, т.е. пропускает повторы шапки таблицы, заголовки, промежуточные итоги, подписи и т.д. Содержит модуль работы с электронной почтой и api-загрузчик отчетов о продажах маркетплейсов.

6000 5100 руб.

09.11.2016    231063    1046    896    

991

Производство готовой продукции (работ, услуг) Программист Пользователь Платформа 1С v8.3 Оперативный учет 1С:Управление нашей фирмой 1.6 1С:Управление нашей фирмой 3.0 Управленческий учет Платные (руб)

Разработка “Пульт управления производством для 1С:УНФ” содержит цифровые инструменты и средства для производственного и технологического программного обеспечения автоматизации производства - подсистему Технологического контроля с АРМ Контролёра, Учет рекламации, АРМ Начальника производства, АРМ Рабочего цеха

36000 руб.

22.02.2022    17680    7    1    

20

Зарплата Производство готовой продукции (работ, услуг) Учет рабочего времени Рабочее место Бизнес-аналитик Пользователь Руководитель проекта Платформа 1С v8.3 1С:Управление торговлей 10 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Торговля и склад 7.7 Бытовые услуги, сервис Оптовая торговля, дистрибуция, логистика Электротехника и микроэлектроника Управленческий учет Платные (руб)

Модуль или расширение «Сервисный центр для 1С» позволяет принимать в ремонт оборудование (компьютеры, бытовая техника и т.п.), оформлять заявки инженеров на посещение клиентов и вести начисление заработной платы для сотрудников. Позволяет наладить автоматизированный учет в сервисном центре на уже существующей базе.

14800 руб.

01.11.2012    93055    107    1    

115
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. vlastapov 50 27.12.14 12:26 Сейчас в теме
В УНФ, редакция 1.5 (1.5.2.25) выдает ошибку "Использование модальных окон в данном режиме запрещено!". Можно исправить?
2. q_i 584 30.12.14 12:53 Сейчас в теме
(1) vlastapov, вместо процедуры "Процедура ВыполнитьКоманду(ИмяКоманды, ОбъектыНазначения) Экспорт" вставьте (см. прилагаемый файл):
&НаКлиенте
Процедура ВыполнитьКоманду(ИмяКоманды, ОбъектыНазначения) Экспорт
	
	Если ОбъектыНазначения.Количество() > 1 Тогда
		// не будем давать пользователю возможность массово устанавливать скидки
		ВызватьИсключение НСтр("ru = 'Установка скидок для нескольких документов не поддерживается!'");
		Возврат;
	КонецЕсли;
	
	ЗначСкидки = 0;
	Если ИмяКоманды = "УстановитьСкидкуПроцент" Тогда
		ПоказатьВводЧисла(Новый ОписаниеОповещения("ПродолжитьВыполнениеПослеВводаЧисла", ЭтаФорма, Новый Структура("ИмяКоманды, ОбъектыНазначения", ИмяКоманды, ОбъектыНазначения)), ЗначСкидки, НСтр("ru = 'Уменьшить на %'"), 4, 1);
	ИначеЕсли ИмяКоманды = "УстановитьСкидкуСумма" Тогда
		ПоказатьВводЧисла(Новый ОписаниеОповещения("ПродолжитьВыполнениеПослеВводаЧисла", ЭтаФорма, Новый Структура("ИмяКоманды, ОбъектыНазначения", ИмяКоманды, ОбъектыНазначения)), ЗначСкидки, НСтр("ru = 'Уменьшить на сумму'"), 15, 2);
	ИначеЕсли ИмяКоманды = "УстановитьСуммуИтого" Тогда
		ПоказатьВводЧисла(Новый ОписаниеОповещения("ПродолжитьВыполнениеПослеВводаЧисла", ЭтаФорма, Новый Структура("ИмяКоманды, ОбъектыНазначения", ИмяКоманды, ОбъектыНазначения)), ЗначСкидки, НСтр("ru = 'Установить сумму Итого = '"), 15, 2);
	Иначе
		ВызватьИсключение "Неизвестная команда """ + ИмяКоманды + """!";
		Возврат;
	КонецЕсли;
	
КонецПроцедуры	

&НаКлиенте
Процедура ПродолжитьВыполнениеПослеВводаЧисла(ВведенноеЧисло, ДополнительныеПараметры) Экспорт
	
	ЗначСкидки			= ВведенноеЧисло;
	ИмяКоманды			= ДополнительныеПараметры.ИмяКоманды;
	ОбъектыНазначения	= ДополнительныеПараметры.ОбъектыНазначения;
	
	Если НЕ ЗначениеЗаполнено(ЗначСкидки) Тогда
		Возврат;
	КонецЕсли;

	УстановитьСкидкуНаСервере(ИмяКоманды, ОбъектыНазначения, ЗначСкидки);
	
	// обновим открытые списки и формы документов
	Для Каждого ДокСсылка Из ОбъектыНазначения Цикл
		ОповеститьОбИзменении(ДокСсылка);
		ПараметрыФормы = Новый Структура("Ключ", ДокСсылка);
		ТекФорма = ПолучитьФорму("Документ.ЗаказПокупателя.Форма.ФормаДокумента", ПараметрыФормы);
		Если ТекФорма.Открыта() Тогда
			ТекФорма.Прочитать();
		КонецЕсли;
	КонецЦикла;
	
КонецПроцедуры
Показать

Ещё отвалилось обновление открытой формы документа. При поиске формы с помощью кода
ПараметрыФормы = Новый Структура("Ключ", ДокСсылка);
ТекФорма = ПолучитьФорму("Документ.ЗаказПокупателя.Форма.ФормаДокумента", ПараметрыФормы);
ТекФорма.Открыта() возвращает Ложь. Пока некогда разбираться с этим. Буду благодарен коллегам если подскажут как найти и обновить форму открытого документа, из которого была вызвана процедура заполнения.
Прикрепленные файлы:
UstanovkaSkidokNaZapasyZakaza_dlya_unf1.5.2.epf.7z
3. nvk1234 29.11.15 19:26 Сейчас в теме
Хорошо ли при вводе процента скидки писать непосредственно в объект документа? Ведь пользователю может не понравиться результат...
4. q_i 584 30.11.15 11:25 Сейчас в теме
(3) nvk1234, когда писалась эта обработка (а это было год назад), количество костылей, которыми нужно было обложить БСП, чтобы что-то хоть как-то работало стремилось к бесконечности.
На данный момент обработка устарела, и я не удаляю эту публикацию только из-за наличия хоть и мизерной, но всё-таки вероятности, что кому-то могут пригодиться какие-нибудь куски кода из неё.
Дорабатывать в ближайшее время не планирую ввиду отсутствия коммерческого заказа.
5. akaky_2001 29.01.16 20:49 Сейчас в теме
Мне пригодилась, так что автору респект
Оставьте свое сообщение