Долг по контрагенту

1. Stunislove 05.06.17 11:34 Сейчас в теме
Помогите, в чем может быть ошибка.

Есть документ счет на оплату покупателю, у него внешняя печатная форма, у нее есть долг по контрагенту.

В отчете: "Ведомость по взаиморасчетам с контрагентами", где есть приход - расход - конечный остаток.

Если компания, которой выписывается Счет на оплату не имеет долгов, то во внешней печатной форме все равно появляется долг в виде суммы счета на оплату, а такого не должно быть
По теме из базы знаний
Найденные решения
15. Nik_novosib 05.06.17 13:26 Сейчас в теме
(1) Может не все внимательно прочел. Но все дело в этих строках:
Если (Час(СсылкаНаОбъект.Дата)=23)и(Минута(СсылкаНаОбъект.Дата)=59)и(Секунда(СсылкаНаОбъект.Дата)=59) Тогда

 Иначе
       СуммаДолга_ = СуммаДолга_+СсылкаНаОбъект.СуммаДокумента;
КонецЕсли; 

Закомментируйте строку
 СуммаДолга_ = СуммаДолга_+СсылкаНаОбъект.СуммаДокумента;
Stunislove; +1 Ответить
11. BackinSoda 05.06.17 13:15 Сейчас в теме
(10)
Если СуммаДолга_>0 Тогда
    ОбластьМакета = Макет.ПолучитьОбласть("СуммаДолга");
    ОбластьМакета.Параметры.Текст_Дата="на дату "+Строка(Формат(СсылкаНаОбъект.Дата,"ДЛФ=Д"))+" составляет:";
    ОбластьМакета.Параметры.Текст_руб=Строка(СуммаДолга_)+" руб.";
    ТабДокумент.Вывести(ОбластьМакета);
    КонецЕсли;

замените на
    ОбластьМакета = Макет.ПолучитьОбласть("СуммаДолга");
    ОбластьМакета.Параметры.Текст_Дата="на дату "+Строка(Формат(СсылкаНаОбъект.Дата,"ДЛФ=Д"))+" составляет:";
    ОбластьМакета.Параметры.Текст_руб=Строка(СуммаДолга_)+" руб.";
    ТабДокумент.Вывести(ОбластьМакета);
    
будет выводиться "0 руб." если нет долгов.
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
15. Nik_novosib 05.06.17 13:26 Сейчас в теме
(1) Может не все внимательно прочел. Но все дело в этих строках:
Если (Час(СсылкаНаОбъект.Дата)=23)и(Минута(СсылкаНаОбъект.Дата)=59)и(Секунда(СсылкаНаОбъект.Дата)=59) Тогда

 Иначе
       СуммаДолга_ = СуммаДолга_+СсылкаНаОбъект.СуммаДокумента;
КонецЕсли; 

Закомментируйте строку
 СуммаДолга_ = СуммаДолга_+СсылкаНаОбъект.СуммаДокумента;
Stunislove; +1 Ответить
2. BackinSoda 05.06.17 11:40 Сейчас в теме
Найдите в макете параметр отвечающий за вывод долга, дальше в коде найдите всё что связано с этим параметром, а там видно будет. Форма типовая или нет?
3. Stunislove 05.06.17 11:45 Сейчас в теме
(2)Вроде типовая. Нашел, всего одна строчка связана с параметром:

ОбластьМакета.Параметры.Текст_руб=Строка(СуммаДолга_)+" руб.";
4. Boneman 298 05.06.17 11:52 Сейчас в теме
(3)
СуммаДолга_

а теперь ищите, как собираются данные в переменную СуммаДолга_
5. lefthander 05.06.17 11:52 Сейчас в теме
(3)Теперь можно найти в коде где формируется этот параметр, как он формируется, из чего получается.
6. Stunislove 05.06.17 12:10 Сейчас в теме
Вот здесь как будто что-то не так, потому что если убрать СсылкаНаОбъект.СуммаДокумента, то рамочка с долгом контрагента убирается, если долга нет, соответственно, если у кого долг, то рамочка с долгом остается, но хотелось, чтобы в рамочке был 0, если у контрагента нет долгов.

СуммаДолга_ = СуммаДолга_+СсылкаНаОбъект.СуммаДокумента;

СуммаДолга_ = ТекущийДолгПоКонтрагенту(СсылкаНаОбъект);
		//ЛЕ 30.09.2016
		//Сообщить(СсылкаНаОбъект.Дата);
		//Сообщить(СсылкаНаОбъект.СуммаДокумента);
		Если (Час(СсылкаНаОбъект.Дата)=23)и(Минута(СсылкаНаОбъект.Дата)=59)и(Секунда(СсылкаНаОбъект.Дата)=59) Тогда
			
		Иначе
	    	СуммаДолга_ = СуммаДолга_+СсылкаНаОбъект.СуммаДокумента;
		КонецЕсли;	
		//Сообщить(СуммаДолга_);
		СуммаДолгаПрописью="Долг контрагента на дату "+Строка(Формат(СсылкаНаОбъект.Дата,"ДЛФ=Д"))+" "+Строка(СуммаДолга_)+" руб.";
		ТекстПодписи="На дату "+Строка(Формат(СсылкаНаОбъект.Дата,"ДЛФ=Д"));
		//СуммаДолгаПрописью = РаботаСДиалогами.ПолучитьТекстДолга(, СуммаДолга_);
	    Если СуммаДолга_ = Неопределено Тогда
		     ТекстПодписи =ТекстПодписи+ " долг не рассчитан";
        ИначеЕсли СуммаДолга_ = 0 Тогда
		     ТекстПодписи =ТекстПодписи+ " нет долга";
        Иначе
		  Если СуммаДолга_ > 0 Тогда
			ТекстПодписи =ТекстПодписи+ " долг контрагента";
		  Иначе
			ТекстПодписи =ТекстПодписи+ " долг компании";
			//СуммаДолга_ = (-1) * СуммаДолга_;
		  КонецЕсли;
Показать
7. BackinSoda 05.06.17 12:14 Сейчас в теме
Как видно сам долг считается в процедуре "ТекущийДолгПоКонтрагенту", а в остальном приведённом коде нет куска с выводом на печать.
Зы: явно переделанная форма
8. Stunislove 05.06.17 12:16 Сейчас в теме
Вот функция сама ТекущийДолгПоКонтрагенту

Функция ТекущийДолгПоКонтрагенту(СсылкаДокумент) Экспорт


	Запрос = Новый Запрос;
	Запрос.Текст = 
		"ВЫБРАТЬ
		|	ВзаиморасчетыСКонтрагентамиОстатки.Организация,
		|	ВзаиморасчетыСКонтрагентамиОстатки.Контрагент,
		|	ВзаиморасчетыСКонтрагентамиОстатки.СуммаВзаиморасчетовОстаток КАК СуммаВзаиморасчетовОстаток
		|ИЗ
		|	РегистрНакопления.ВзаиморасчетыСКонтрагентами.Остатки КАК ВзаиморасчетыСКонтрагентамиОстатки
		|ГДЕ
		|	ВзаиморасчетыСКонтрагентамиОстатки.Организация = &Организация
		|	И ВзаиморасчетыСКонтрагентамиОстатки.Контрагент = &Контрагент";

	Запрос.УстановитьПараметр("Контрагент", СсылкаДокумент.Контрагент);
	Запрос.УстановитьПараметр("Организация", СсылкаДокумент.Организация);

	Результат = Запрос.Выполнить();

	ВыборкаДетальныеЗаписи = Результат.Выбрать();
	ТекущийДолг = 0;
	
	Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
		// Вставить обработку выборки ВыборкаДетальныеЗаписи
		ТекущийДолг = ТекущийДолг+ВыборкаДетальныеЗаписи.СуммаВзаиморасчетовОстаток;
	КонецЦикла;

		Возврат ТекущийДолг;

КонецФункции // ТекущийДолг()
Показать
9. BackinSoda 05.06.17 13:09 Сейчас в теме
Интересно, что в запросе не проверяется договор, а берётся долг по контрагенту в целом.
Опять же, если менять вывод, то надо найти место где выводится область в коде.
потому что если убрать СсылкаНаОбъект.СуммаДокумента, то рамочка с долгом контрагента убирается, если долга нет, соответственно, если у кого долг, то рамочка с долгом остается, но хотелось, чтобы в рамочке был 0

Дайте код всего что ниже строки
Если СуммаДолга_ > 0 Тогда
там должно быть что-то такое же только в условии
Табдокумент.Вывести(Область);
10. Stunislove 05.06.17 13:11 Сейчас в теме
(9)
Функция СоздатьТабличныйДокументПечатиСчетаЗаказа(Тип, ПараметрыПечати)
		
	ТабДокумент = Новый ТабличныйДокумент;
	ТабДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_ЗаказПокупателя_СчетЗаказ";

	Макет = ПолучитьМакет("СчетЗаказ");

	// Систех ЛЕ 28.09.2015
	Если СсылкаНаОбъект.Товары.Количество()>0 Тогда
	     Товар_=1;
	Иначе
	     Товар_=0;
	КонецЕсли;	 
		СуммаДолга_ = ТекущийДолгПоКонтрагенту(СсылкаНаОбъект);
		//ЛЕ 30.09.2016
		//Сообщить(СсылкаНаОбъект.Дата);
		//Сообщить(СсылкаНаОбъект.СуммаДокумента);
		Если (Час(СсылкаНаОбъект.Дата)=23)и(Минута(СсылкаНаОбъект.Дата)=59)и(Секунда(СсылкаНаОбъект.Дата)=59) Тогда
			
		Иначе
	    	СуммаДолга_ = СуммаДолга_+СсылкаНаОбъект.СуммаДокумента;
		КонецЕсли;	
		//Сообщить(СуммаДолга_);
		СуммаДолгаПрописью="Долг контрагента на дату "+Строка(Формат(СсылкаНаОбъект.Дата,"ДЛФ=Д"))+" "+Строка(СуммаДолга_)+" руб.";
		ТекстПодписи="На дату "+Строка(Формат(СсылкаНаОбъект.Дата,"ДЛФ=Д"));
		//СуммаДолгаПрописью = РаботаСДиалогами.ПолучитьТекстДолга(, СуммаДолга_);
	    Если СуммаДолга_ = Неопределено Тогда
		     ТекстПодписи =ТекстПодписи+ " долг не рассчитан";
        ИначеЕсли СуммаДолга_ = 0 Тогда
		     ТекстПодписи =ТекстПодписи+ " нет долга";
        Иначе
		  Если СуммаДолга_ > 0 Тогда
			ТекстПодписи =ТекстПодписи+ " долг контрагента";
		  Иначе
			ТекстПодписи =ТекстПодписи+ " долг компании";
			//СуммаДолга_ = (-1) * СуммаДолга_;
		  КонецЕсли;
		  
		 //Сообщить(ОбщегоНазначения.ФорматСумм(СуммаДолга_, СсылкаНаОбъект.ВалютаДокумента));
		СуммаДолгаПрописью= ТекстПодписи + " " +
		               ОбщегоНазначения.ФорматСумм(СуммаДолга_, СсылкаНаОбъект.ВалютаДокумента);
	   КонецЕсли;
 // Выводим шапку накладной
     Если Тип = "Счет" Тогда
		// ЛЕ 28.09.2015  систех
		Если Товар_=1 Тогда
		   ОбластьМакета = Макет.ПолучитьОбласть("ЗаголовокТовары");
	       ТабДокумент.Вывести(ОбластьМакета);
		КонецЕсли;
		//
		ОбластьМакета       = Макет.ПолучитьОбласть("ЗаголовокСчета");
		ОбластьМакета.Параметры.Заполнить(ПараметрыПечати);
		ТабДокумент.Вывести(ОбластьМакета);
	КонецЕсли; 

	ОбластьМакета = Макет.ПолучитьОбласть("Заголовок");
	ОбластьМакета.Параметры.Заполнить(ПараметрыПечати);
	ТабДокумент.Вывести(ОбластьМакета);

	ОбластьМакета = Макет.ПолучитьОбласть("Поставщик");
	ОбластьМакета.Параметры.Заполнить(ПараметрыПечати);
	ТабДокумент.Вывести(ОбластьМакета);

	ОбластьМакета = Макет.ПолучитьОбласть("Покупатель");
	ОбластьМакета.Параметры.Заполнить(ПараметрыПечати);
	ТабДокумент.Вывести(ОбластьМакета);
	
	ОбластьНомера = Макет.ПолучитьОбласть("ШапкаТаблицы|НомерСтроки");
	ОбластьКодов  = Макет.ПолучитьОбласть("ШапкаТаблицы|КолонкаКодов");
	ОбластьДанных = Макет.ПолучитьОбласть("ШапкаТаблицы|Данные");
	ОбластьСкидок = Макет.ПолучитьОбласть("ШапкаТаблицы|Скидка");
	ОбластьСуммы  = Макет.ПолучитьОбласть("ШапкаТаблицы|Сумма");

	ОбластьТовар = Макет.ПолучитьОбласть("ШапкаТаблицы|Товар");
	Если Не ПараметрыПечати.ВыводитьКоды И ПараметрыПечати.ЕстьСкидки Тогда
		ОбластьТовар = Макет.ПолучитьОбласть("ШапкаТаблицы|ТоварБезКодов");
	ИначеЕсли НЕ ПараметрыПечати.ЕстьСкидки И ПараметрыПечати.ВыводитьКоды Тогда
		ОбластьТовар = Макет.ПолучитьОбласть("ШапкаТаблицы|ТоварБезСкидок");
	ИначеЕсли НЕ ПараметрыПечати.ЕстьСкидки И НЕ ПараметрыПечати.ВыводитьКоды Тогда
		ОбластьТовар = Макет.ПолучитьОбласть("ШапкаТаблицы|ТоварБезКодовИСкидок");
	КонецЕсли;

	ТабДокумент.Вывести(ОбластьНомера);
	Если ПараметрыПечати.ВыводитьКоды Тогда
		ОбластьКодов.Параметры.ИмяКолонкиКодов = ПараметрыПечати.ИмяКолонкиКодов;
		ТабДокумент.Присоединить(ОбластьКодов);
	КонецЕсли;
	ОбластьТовар.Параметры.Товар = "Товары (работы, услуги)";
	ТабДокумент.Присоединить(ОбластьТовар);
	ТабДокумент.Присоединить(ОбластьДанных);
	Если ПараметрыПечати.ЕстьСкидки Тогда
		ТабДокумент.Присоединить(ОбластьСкидок);
	КонецЕсли;
	ТабДокумент.Присоединить(ОбластьСуммы);

	ОбластьНомера = Макет.ПолучитьОбласть("Строка|НомерСтроки");
	ОбластьКодов  = Макет.ПолучитьОбласть("Строка|КолонкаКодов");
	ОбластьДанных = Макет.ПолучитьОбласть("Строка|Данные");
	ОбластьСкидок = Макет.ПолучитьОбласть("Строка|Скидка");
	ОбластьСуммы  = Макет.ПолучитьОбласть("Строка|Сумма");

	ОбластьТовар = Макет.ПолучитьОбласть("Строка|Товар");
	Если Не ПараметрыПечати.ВыводитьКоды И ПараметрыПечати.ЕстьСкидки Тогда
		ОбластьТовар = Макет.ПолучитьОбласть("Строка|ТоварБезКодов");
	ИначеЕсли НЕ ПараметрыПечати.ЕстьСкидки И ПараметрыПечати.ВыводитьКоды Тогда
		ОбластьТовар = Макет.ПолучитьОбласть("Строка|ТоварБезСкидок");
	ИначеЕсли НЕ ПараметрыПечати.ЕстьСкидки И НЕ ПараметрыПечати.ВыводитьКоды Тогда
		ОбластьТовар = Макет.ПолучитьОбласть("Строка|ТоварБезКодовИСкидок");
	КонецЕсли;

	Для каждого ПараметрыПозиции Из ПараметрыПечати.Позиции Цикл 

		Если не ЗначениеЗаполнено(ПараметрыПозиции.Номенклатура) Тогда
			Сообщить("В одной из строк не заполнено значение номенклатуры - строка при печати пропущена.", СтатусСообщения.Важное);
			Продолжить;
		КонецЕсли;

		ОбластьНомера.Параметры.Заполнить(ПараметрыПозиции);
		ТабДокумент.Вывести(ОбластьНомера);

		Если ПараметрыПечати.ВыводитьКоды Тогда
			ОбластьКодов.Параметры.Заполнить(ПараметрыПозиции);
			ТабДокумент.Присоединить(ОбластьКодов);
		КонецЕсли;

		ОбластьТовар.Параметры.Заполнить(ПараметрыПозиции);
		ТабДокумент.Присоединить(ОбластьТовар);
		ОбластьДанных.Параметры.Заполнить(ПараметрыПозиции);
		ТабДокумент.Присоединить(ОбластьДанных);

		Если ПараметрыПечати.ЕстьСкидки Тогда
			ОбластьСкидок.Параметры.Заполнить(ПараметрыПозиции);
			ТабДокумент.Присоединить(ОбластьСкидок);
		КонецЕсли;

		ОбластьСуммы.Параметры.Заполнить(ПараметрыПозиции);
		ТабДокумент.Присоединить(ОбластьСуммы);
		
	КонецЦикла;

	// Вывести Итого
	ОбластьНомера = Макет.ПолучитьОбласть("Итого|НомерСтроки");
	ОбластьКодов  = Макет.ПолучитьОбласть("Итого|КолонкаКодов");
	ОбластьДанных = Макет.ПолучитьОбласть("Итого|Данные");
	ОбластьСкидок = Макет.ПолучитьОбласть("Итого|Скидка");
	ОбластьСуммы  = Макет.ПолучитьОбласть("Итого|Сумма");

	ОбластьТовар = Макет.ПолучитьОбласть("Итого|Товар");
	Если Не ПараметрыПечати.ВыводитьКоды И ПараметрыПечати.ЕстьСкидки Тогда
		ОбластьТовар = Макет.ПолучитьОбласть("Итого|ТоварБезКодов");
	ИначеЕсли НЕ ПараметрыПечати.ЕстьСкидки И ПараметрыПечати.ВыводитьКоды Тогда
		ОбластьТовар = Макет.ПолучитьОбласть("Итого|ТоварБезСкидок");
	ИначеЕсли НЕ ПараметрыПечати.ЕстьСкидки И НЕ ПараметрыПечати.ВыводитьКоды Тогда
		ОбластьТовар = Макет.ПолучитьОбласть("Итого|ТоварБезКодовИСкидок");
	КонецЕсли;

	ТабДокумент.Вывести(ОбластьНомера);
	Если ПараметрыПечати.ВыводитьКоды Тогда
		ТабДокумент.Присоединить(ОбластьКодов);
	КонецЕсли;
	ТабДокумент.Присоединить(ОбластьТовар);
	ТабДокумент.Присоединить(ОбластьДанных);
	Если ПараметрыПечати.ЕстьСкидки Тогда
		ОбластьСкидок.Параметры.Заполнить(ПараметрыПечати);
		ТабДокумент.Присоединить(ОбластьСкидок);
	КонецЕсли;
	ОбластьСуммы.Параметры.Заполнить(ПараметрыПечати);
	ТабДокумент.Присоединить(ОбластьСуммы);

	// Вывести Сумму прописью
	ОбластьМакета = Макет.ПолучитьОбласть("СуммаПрописью");
	ОбластьМакета.Параметры.Заполнить(ПараметрыПечати);
	ТабДокумент.Вывести(ОбластьМакета);

	// Вывести подписи
	Если Тип = "Счет" Тогда
		ОбластьМакета = Макет.ПолучитьОбласть("ПодвалСчета");
	Иначе
		ОбластьМакета = Макет.ПолучитьОбласть("ПодвалЗаказа");
	КонецЕсли; 
	ОбластьМакета.Параметры.Заполнить(ПараметрыПечати);
	ОбластьМакета.Параметры.ДолжностьРуководителя = "Руководитель";  //СисТех Лесов
	
// {{систех ВА 24.01.2017	
	ДоверенностьТекст="по доверенности № 9 от 23.01.2017г";
	ОбластьМакета.Параметры.рДоверенностьТекст=ДоверенностьТекст;	
	ОбластьМакета.Параметры.бДоверенностьТекст=ДоверенностьТекст;	
// }}

	ТабДокумент.Вывести(ОбластьМакета);
	//Систех ЛЕ 29.09.2015
	Запрос = Новый Запрос;
	Запрос.Текст = 
		"ВЫБРАТЬ
		|	РеализацияТоваровУслуг.Контрагент,
		|	РеализацияТоваровУслуг.СтатусДокумента,
		|	РеализацияТоваровУслуг.Дата КАК ДатаДок,
		|	РеализацияТоваровУслуг.Проведен,
		|	РеализацияТоваровУслуг.ОтражатьВБухгалтерскомУчете Как ОтражатьБУ,
		|	РеализацияТоваровУслуг.ОтражатьВНалоговомУчете Как ОтражатьНУ,
		|	РеализацияТоваровУслуг.Проведен,
		|	РеализацияТоваровУслуг.Номер КАК НомерДок
		|ИЗ
		|	Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
		|ГДЕ
	    |	РеализацияТоваровУслуг.Дата >= &Дата_
        |	И РеализацияТоваровУслуг.Контрагент = &Контрагент
		|	И РеализацияТоваровУслуг.ОтражатьВБухгалтерскомУчете = ИСТИНА
		|	И РеализацияТоваровУслуг.ОтражатьВНалоговомУчете = ИСТИНА
		|	И РеализацияТоваровУслуг.СтатусДокумента <> &СтатусДок
		|	И РеализацияТоваровУслуг.Проведен = ИСТИНА";

	Запрос.УстановитьПараметр("Дата_", Дата(2015,1,1));
	Запрос.УстановитьПараметр("Контрагент", СсылкаНаОбъект.Контрагент);
	Запрос.УстановитьПараметр("СтатусДок", Перечисления.СтатусыДокументов.Вернулись);

	Результат = Запрос.Выполнить();
 	ВыборкаДетальныеЗаписи = Результат.Выбрать();
	Массив_ = Новый Массив;
	Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
		// Вставить обработку выборки ВыборкаДетальныеЗаписи
		Строка_= "№ "+ВыборкаДетальныеЗаписи.НомерДок+" от "+Строка(Формат(ВыборкаДетальныеЗаписи.ДатаДок,"ДЛФ=Д"));
		Массив_.Добавить(Строка_);
//		Сообщить(Строка_);
	КонецЦикла;
 //}}КОНСТРУКТОР_ЗАПРОСА_С_ОБРАБОТКОЙ_РЕЗУЛЬТАТА
	ОбластьМакета = Макет.ПолучитьОбласть("ПустаяСтрока");
	Строк_=0;СтрокПустых=15;
	Если СсылкаНаОбъект.Услуги.Количество()>0 Тогда
		 Строк_= СсылкаНаОбъект.Услуги.Количество();
	КонецЕсли; 
	Если СсылкаНаОбъект.Товары.Количество()>0 Тогда
		 Строк_= Строк_+СсылкаНаОбъект.Товары.Количество();
	КонецЕсли; 
	Для Стр_=1 По  14-Строк_-ВыборкаДетальныеЗаписи.Количество() Цикл
	      ТабДокумент.Вывести(ОбластьМакета);
	КонецЦикла;
	//Сообщить(СуммаДолга_);
    Если СуммаДолга_>0 Тогда
	ОбластьМакета = Макет.ПолучитьОбласть("СуммаДолга");
	ОбластьМакета.Параметры.Текст_Дата="на дату "+Строка(Формат(СсылкаНаОбъект.Дата,"ДЛФ=Д"))+" составляет:";
	ОбластьМакета.Параметры.Текст_руб=Строка(СуммаДолга_)+" руб.";
	ТабДокумент.Вывести(ОбластьМакета);
    КонецЕсли;
    Если ВыборкаДетальныеЗаписи.Количество()>0 Тогда
	  ОбластьМакета = Макет.ПолучитьОбласть("НеВернулись_");
	  ОбластьМакета.Параметры.ТекстДок=Массив_[0];
	  ТабДокумент.Вывести(ОбластьМакета);
	  Если ВыборкаДетальныеЗаписи.Количество()>1 Тогда
	      ОбластьМакета = Макет.ПолучитьОбласть("НеВернулисьЕще_");
	  	  Для Стр_=1 По ВыборкаДетальныеЗаписи.Количество()-1 Цикл
	       ОбластьМакета.Параметры.ТекстДок=Массив_[Стр_];
	       ТабДокумент.Вывести(ОбластьМакета);
	     КонецЦикла;	
	  КонецЕсли;
    КонецЕсли;
    
  Возврат ТабДокумент;

КонецФункции // СоздатьТабличныйДокументПечатиСчетаЗаказа()
Показать
11. BackinSoda 05.06.17 13:15 Сейчас в теме
(10)
Если СуммаДолга_>0 Тогда
    ОбластьМакета = Макет.ПолучитьОбласть("СуммаДолга");
    ОбластьМакета.Параметры.Текст_Дата="на дату "+Строка(Формат(СсылкаНаОбъект.Дата,"ДЛФ=Д"))+" составляет:";
    ОбластьМакета.Параметры.Текст_руб=Строка(СуммаДолга_)+" руб.";
    ТабДокумент.Вывести(ОбластьМакета);
    КонецЕсли;

замените на
    ОбластьМакета = Макет.ПолучитьОбласть("СуммаДолга");
    ОбластьМакета.Параметры.Текст_Дата="на дату "+Строка(Формат(СсылкаНаОбъект.Дата,"ДЛФ=Д"))+" составляет:";
    ОбластьМакета.Параметры.Текст_руб=Строка(СуммаДолга_)+" руб.";
    ТабДокумент.Вывести(ОбластьМакета);
    
будет выводиться "0 руб." если нет долгов.
12. Stunislove 05.06.17 13:19 Сейчас в теме
(11) По моему то же самое, не?
13. BackinSoda 05.06.17 13:20 Сейчас в теме
(12) Да, только без условия "Если .. Конецесли;"
14. Stunislove 05.06.17 13:23 Сейчас в теме
(13) Не помогло(
Так же остается долг
16. BackinSoda 05.06.17 13:35 Сейчас в теме
(14)
Не помогло(
Так же остается долг

До этого написали, что убрали СуммуДокумента и область не выходила, если долга нет. Или вернули как было? Уберите сумму, как в 15 посоветовали. Если опять не то, значит в запросе надо еще добавлять фильтр на договор.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот