Цитата(pablo @ 20.09.12, 8:25)
Вы предлагаете, что бы мы протелепатировали Ваш код и сказали: "В 19 строчке Вы написали полнейшую чушь. Замените в ней все буквы О на А"?
прошу прощениЯ
Процедура ОбработкаПроведения(Отказ, РежимПроведения)
Движения.Взаиморосчеты.Записывать = Истина;
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
| ОплаченныеНакладные.ТорговаяТочка КАК ТорговаяТочка,
| ОплаченныеНакладные.Сумма КАК Сумма,
| ВзаиморосчетыОстатки.ДокументВзаиморасчетов,
| ЕСТЬNULL(ВзаиморосчетыОстатки.СуммаОстаток, 0) КАК Остаток
|ИЗ
| Документ.ОплаченныеНакладные КАК ОплаченныеНакладные
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.Взаиморосчеты.Остатки(&Момент, ) КАК ВзаиморосчетыОстатки
| ПО ОплаченныеНакладные.ТорговаяТочка = ВзаиморосчетыОстатки.ТорговаяТочка
|ГДЕ
| ОплаченныеНакладные.Ссылка = &Ссылка
|
|УПОРЯДОЧИТЬ ПО
| ВзаиморосчетыОстатки.ДокументВзаиморасчетов.Дата
|ИТОГИ
| МАКСИМУМ(Сумма),
| СУММА(Остаток)
|ПО
| ТорговаяТочка";
Запрос.УстановитьПараметр("Момент", МоментВремени());
Запрос.УстановитьПараметр("Ссылка", Ссылка);
ВыборкаОбщая = Запрос.Выполнить().Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);
Пока ВыборкаОбщая.Следующий() Цикл
Если ВыборкаОбщая.Остаток=0 Тогда
Сообщить("Нет документов для взаимозачета!");
Отказ = Истина;
КонецЕсли;
Если НЕ отказ Тогда
Выборка = ВыборкаОбщая.Выбрать();
КСписанию = ВыборкаОбщая.Сумма;
Пока Выборка.Следующий() И КСписанию > 0 Цикл
Движение = Движения.Взаиморосчеты.ДобавитьРасход();
Списоваем = Мин(Выборка.Остаток, КСписанию);
Движение.Период = Дата;
Движение.ТорговаяТочка = ТорговаяТочка;
Движение.ДокументВзаиморасчетов = Выборка.ДокументВзаиморасчетов;
Движение.Сумма = Списоваем;
Движение.ФормаОплаты = ФормаОплаты;
КСписанию = КСписанию-Списоваем;
КонецЦикла;
КонецЕсли;
КонецЦикла;
КонецПроцедуры
! |
| Правила п.2(Pablo),12(Matevi)
|
Сообщение отредактировал pablo - 20.09.12, 8:41