Помогите пожалуйста Чайнику в 1 С 7.7 в отчёт "Взаиморасчёты с Клиентом" вывести строку "Основание" из документа "Оплата". Суть заключается в следующем - бухгалтер или кассир вводя ту или иную сумму от контрагента делает в колонке "основание" пометки которые необходимо что бы видел клиент когда ему в конце месяца бросают отчёт по сверке и движении за месяц.
Сам я не могу и потоу был бы признателен за помощь.
ММодуль отчёта :
Перем ВалИнфо;
//*******************************************
Процедура Взаиморасчеты(Режим)
// Создание Таблицы для выходного отчета
Если (Режим="СводГрн") или (Режим="ДвиженияГрн") Тогда
вДоп = 1;
вОсн = 0;
Иначе
вДоп = 0;
вОсн = 1;
КонецЕсли;
Поставщ=СоздатьОбъект("Справочник.Клиенты");
Поставщ.НайтиПоКоду("1");
Поставщики=Поставщ.ТекущийЭлемент();
Запрос=СоздатьОбъект("Запрос");
Усл = "";
Заг = "";
Если ВыбТерит.Выбран()=0 Тогда
Заг = Заг + "По всем териториям;";
ИначеЕсли ВыбТерит.ЭтоГруппа()=1 Тогда
Усл = Усл +
"Условие (Клиент.Територия.ПринадлежитГруппе(ВыбТерит) = 1);";
Заг = Заг + "По териториям группы " + СокрЛП(ВыбТерит.Наименование) + ";";
Иначе
Усл = Усл + "Условие (Клиент.Територия = ВыбТерит);";
Заг=Заг + "По клиентам територии " + СокрЛП(ВыбТерит.Наименование) + ";";
КонецЕсли;
Если ВыбКлиент.Выбран()=0 Тогда
Заг = Заг + "По всем клиентам;";
ИначеЕсли ВыбКлиент.ЭтоГруппа()=1 Тогда
Усл = Усл +
"Условие (Клиент.ПринадлежитГруппе(ВыбКлиент) = 1);";
Заг = Заг + "По клиентам группы " + СокрЛП(ВыбКлиент.Наименование) + ";";
Иначе
Усл = Усл + "Условие (Клиент = ВыбКлиент);";
Заг=Заг + "По клиенту " + СокрЛП(ВыбКлиент.Наименование) + ";";
КонецЕсли;
Если БезПост=1 Тогда
Усл = Усл + "Условие (Клиент.ПринадлежитГруппе(Поставщики)=0);";
КонецЕсли;
Груп = "";
Перемен = "";
Если (Режим = "Движения") или (Режим = "ДвиженияГрн") Тогда
Перемен = Перемен + "Док = Регистр.Взаиморасчеты.ТекущийДокумент;
|";
Груп = Груп + "Группировка Док;
|";
КонецЕсли;
Если Нал = 1 Тогда
Если БН = 0 Тогда
Усл = Усл + "
|Условие (НалБН = Перечисление.ВидОплаты.Нал);";
Заг = Заг + " По наличной оплате.";
Иначе
Заг = Заг + " По всем видам оплаты.";
КонецЕсли;
Иначе
Если БН = 1 Тогда
Усл = Усл + "
|Условие (НалБН = Перечисление.ВидОплаты.БН);";
Заг = Заг + " По безналичной оплате.";
Иначе
Заг = Заг + " По всем видам оплаты.";
КонецЕсли;
КонецЕсли;
Функции = "";
Функции = "Функция ПрихОсн = Приход(СуммаОсн);
|Функция РасхОсн = Расход(СуммаОсн);
|Функция НачОсн = НачОст(СуммаОсн);
|Функция КонОсн = КонОст(СуммаОсн);";
Если ДатаПо>=ПолучитьДатуТА() Тогда
ДатаПо=ПолучитьДатуТА();
КонецЕсли;
Пер = "";
Если Не(ДатаПо=0) Тогда
Пер=Пер+" По ДатаПо;";
Иначе
Пер=Пер+";";
КонецЕсли;
Если вДоп = 1 Тогда
Заг = Заг + " В дополнительной валюте.";
ВалИнфо = "" + Константа.ДопВалюта.Кратко;
Перемен = Перемен + "СуммаОсн = Регистр.Взаиморасчеты.СуммаДоп;
|";
Иначе
Заг = Заг + " В основной валюте.";
ВалИнфо = "" + Константа.ОснВалюта.Кратко;
Перемен = Перемен + "СуммаОсн = Регистр.Взаиморасчеты.СуммаОсн;
|";
КонецЕсли;
ТекстЗапроса =
"//{{ЗАПРОС(Взаиморасчеты)
|Период с ДатаС" + Пер + "
|Клиент = Регистр.Взаиморасчеты.Клиент;
|НалБН = Регистр.Взаиморасчеты.ВидОплаты;
|" + Перемен + "
|Группировка Клиент;
|" + Груп + "
|" + Функции + "
|" + Усл + "
|";
//Предупреждение(ТекстЗапроса);
Флаг = Запрос.Выполнить(ТекстЗапроса);
Если Флаг = 0 Тогда
Возврат;
КонецЕсли;
Таб = СоздатьОбъект("Таблица");
Таб.ИсходнаяТаблица("Взаиморасчеты");
Таб.ВывестиСекцию("Заголовок");
ЧислоСтрок = 0;
Оживить(6);
НачОснД=0;
НачОснК=0;
КонОснД=0;
КонОснК=0;
Пока Запрос.Группировка("Клиент") = 1 Цикл
Если Запрос.Клиент.ЭтоГруппа() = 1 Тогда
Таб.ВывестиСекцию("Группа");
Оживить(1);
Продолжить;
КонецЕсли;
Таб.ВывестиСекцию("Клиент");
Если Запрос.НачОсн>0 Тогда
НачОснД=НачОснД+Запрос.НачОсн;
Иначе
НачОснК=НачОснК+Запрос.НачОсн;
КонецЕсли;
Если Запрос.КонОсн>0 Тогда
КонОснД=КонОснД+Запрос.КонОсн;
Иначе
КонОснК=КонОснК+Запрос.КонОсн;
КонецЕсли;
Оживить(1);
Если (Режим = "Свод") или (Режим = "СводГрн") Тогда
Продолжить
КонецЕсли;
Пока Запрос.Группировка("Док") = 1 Цикл
Если Запрос.Док.Выбран() = 0 Тогда
Продолжить;
КонецЕсли;
Таб.ВывестиСекцию("Движение");
Оживить(1);
КонецЦикла;
КонецЦикла;
Таб.ВывестиСекцию("Итого");
Оживить(1);
Таб.Опции(0,0,6,0);
Таб.ТолькоПросмотр(1);
Таб.Показать("Взаиморасчеты с клиентами","");
КонецПроцедуры
//***********************
Процедура ИзмБН()
Если БН=1 Тогда
Если Нал=0 Тогда
Форма.СГ.Видимость(1);
Форма.ДГ.Видимость(1);
Иначе
Форма.СГ.Видимость(0);
Форма.ДГ.Видимость(0);
КонецЕсли;
Иначе
Форма.СГ.Видимость(0);
Форма.ДГ.Видимость(0);
КонецЕсли;
КонецПроцедуры
Если ПустоеЗначение(Форма.параметр)=0 Тогда
ВыбКлиент=Форма.параметр;
КонецЕсли;
Форма.СГ.Видимость(0);
Форма.ДГ.Видимость(0);
ДатаС = Константа.НачалоПериода;
ДатаПо = РабочаяДата();
вДоп = 0;
вОсн = 1;
Нал = 1;
БН = 1;
БезПост = 1;
ССылка на вид Выводимого отчёта:

За ранее всем спасибо.
! | Правила, пункт 12 |