ppkmlite
Newbie | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Здравствуйте, вопрос такой. Делаю обработку которая бы создавала приходный и расходный кассовые ордера. На форме две кассы,при выборе касс выходит на форму остаток,если он отрицательный у организации 1,то создается приходный на организацию 1, соответственно расходный на организацию 2. Реквизиты должны проставляться те которые на форме выбраны(договор,контрагент). Не могу разобраться с типами значений, запуталась совсем. Выходит теперь ошибка, что операции сравнения на больше меньше только для значений совпадающих примитивных типов. То есть мне нужно узнать отрицательный остаток или нет, если да, то создать пко. Мне нужно, если я правильно понимаю, вернуть число и его сравнить??Помогите,пожалуйста Процедура Касса1ПриИзменении(Элемент) СуммаДок = ОстатокПоКассе(); ост = СуммаДок; КонецПроцедуры Процедура СоздаетНовыеДокументы() Экспорт Если суммадок < 0 Тогда НовыйПКО = Документы.Приходныйкассовыйордер.СоздатьДокумент(); НовыйПКО.Дата = ТекущаяДата(); НовыйПКО.ОтражатьВУправленческомУчете = Истина; НовыйПКО.Оплачено=Истина; НовыйПКО.Организация = ОрганизацияОт.Ссылка; НОвыйПКО.Контрагент = КонтрагентОт.Ссылка; НовыйПКО.Касса=Касса1.Ссылка; НовыйПКО.СуммаДокумента = суммадок; Новаяпеременная = НовыйПКО.РасшифровкаПлатежа.Добавить(); новаяпеременная.Сделка() НовыйПКО.Записать(); Новаястрока = Многодокументов.Добавить(); Новаястрока.Документ = НовыйПКО; КонецПроцедуры Функция ОстатокПоКассе() Экспорт Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ДенежныеСредстваОстатки.СуммаОстаток, | ДенежныеСредстваОстатки.БанковскийСчетКасса, | ДенежныеСредстваОстатки.Организация |ИЗ | РегистрНакопления.ДенежныеСредства.Остатки(&Период, ) КАК ДенежныеСредстваОстатки |ГДЕ | ДенежныеСредстваОстатки.БанковскийСчетКасса = &БанковскийСчетКасса |И ДенежныеСредстваОстатки.Организация = &Организация"; Запрос.УстановитьПараметр("Период", Период); Запрос.УстановитьПараметр("БанковскийСчетКасса", Касса1); Запрос.УстановитьПараметр("Организация",ОрганизацияОт); РезультатЗапроса = Запрос.Выполнить(); ост = 0; ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать(); Если ВыборкаДетальныеЗаписи.Следующий() Тогда ост = ВыборкаДетальныеЗаписи.СуммаОстаток; КонецЕсли; //}}КОНСТРУКТОР_ЗАПРОСА_С_ОБРАБОТКОЙ_РЕЗУЛЬТАТА Возврат ост |