Почему при выдаче денег УНФ пишет разное?
Пользователь обратился с вопросом, почему в документе выдачи из кассы денег поставщику, при щелчке в поле «Сумма» раньше писалось, сколько мы должны поставщику:

А сейчас пишется остаток в кассе?
Пришлось посмотреть код формы:
&НаКлиенте Процедура СуммаДокументаАвтоПодбор(Элемент, Текст, ДанныеВыбора, ПараметрыПолученияДанных, Ожидание, СтандартнаяОбработка) Элемент.СписокВыбора.Очистить(); Если Объект.ВидОперации = ВидОперацииПоставщику ИЛИ Объект.ВидОперации = ВидОперацииНашейОрганизации Тогда СуммаИтог = Объект.РасшифровкаПлатежа.Итог("СуммаПлатежа"); Если СуммаИтог <> 0 И СуммаИтог <> Объект.СуммаДокумента Тогда НадписьВСкобках = ?(Объект.ВариантЗаполненияРасшифровки = ВариантЗаполненияРасшифровкиВручную, НСтр("ru = 'разнесено вручную'"), НСтр("ru = 'зачтено + аванс'")); Элемент.СписокВыбора.Добавить(СуммаИтог, ""+СуммаИтог+" ("+НадписьВСкобках+")"); КонецЕсли; Если ОстатокВзаиморасчетов < 0 И (-ОстатокВзаиморасчетов) <> Объект.СуммаДокумента Тогда Элемент.СписокВыбора.Добавить(-ОстатокВзаиморасчетов, ""+(-ОстатокВзаиморасчетов)+НСтр("ru = ' (мы должны)'")); КонецЕсли; Если ОстатокДенежныхСредств > 0 И (ОстатокДенежныхСредств) <> Объект.СуммаДокумента Тогда Элемент.СписокВыбора.Добавить(ОстатокДенежныхСредств, ""+(ОстатокДенежныхСредств)+НСтр("ru = ' (остаток в кассе)'")); КонецЕсли; Если Элемент.СписокВыбора.Количество() = 0 Тогда Элемент.СписокВыбора.Добавить(Объект.СуммаДокумента, НСтр("ru = 'Нет данных для заполнения'")); КонецЕсли; КонецЕсли; КонецПроцедуры
Вывод — если долга нет или он равен сумме документа, выводится остаток в кассе.
Как видите, интерфейсное решение плохое, смущает и путает пользователей, потому что в одном и том же месте выводится разная информация. Тогда бы писали уже, что остатка долга нет или он равен сумме документа, а потом уже остаток в кассе.
Среда УНФ: 3.0.11.169. Объем 0.3 час

Свежие комментарии