Ненулевые сальдо на конец по 2 счетам

  • Автор темы Elle
  • Дата начала
Статус
Закрыто для дальнейших ответов.
E

Elle

Код:
	Ит.ВыбратьСубконто(ВидыСубконто.Контрагенты);
Пока Ит.ПолучитьСубконто(ВидыСубконто.Контрагенты) = 1 Цикл
Контрагент=Ит.Субконто(ВидыСубконто.Контрагенты);
Ит.ВыбратьСчета(); 
к_скд="";
к_скк="";
к_скд_к="";
к_скк_к="";
Пока Ит.ПолучитьСчет()=1 Цикл 

Если Ит.Счет.Код=сч_1 Тогда 
к_скд=Формат(Ит.СКД(),"Ч014.2.,");
к_скк=Формат(Ит.СКК(),"Ч014.2.,"); 
Иначе
к_скд_к=Формат(Ит.СКД(),"Ч014.2.,");
к_скк_к=Формат(Ит.СКК(),"Ч014.2.,");
КонецЕсли; 
КонецЦикла;
Если (к_скд<>0) И (к_скк_к<>0) Тогда

Т.ВывестиСекцию("Секция_2"); 
Иначе
Продолжить;
КонецЕсли;
Ит.ВыбратьСубконто(ВидыСубконто.Договора);
Пока Ит.ПолучитьСубконто(ВидыСубконто.Договора) = 1 Цикл
Договор=Ит.Субконто(ВидыСубконто.Договора);
Ит.ВыбратьСчета(); 
д_скд="";
д_скк="";
д_скд_к="";
д_скк_к=""; 

Пока Ит.ПолучитьСчет()=1 Цикл 
Если Ит.Счет.Код=сч_1 Тогда
д_скд=Формат(Ит.СКД(),"Ч014.2.,");
д_скк=Формат(Ит.СКК(),"Ч014.2.,"); 
Иначе
д_скд_к=Формат(Ит.СКД(),"Ч014.2.,");
д_скк_к=Формат(Ит.СКК(),"Ч014.2.,"); 
КонецЕсли; 
КонецЦикла;
Т.ВывестиСекцию("Секция_5")	

КонецЦикла; 
КонецЦикла;
Нужно выводить только тех контрагентов в которых есть по двум счетам сальдо на конец. А выводит всех контрагентов. На что сменить условие отбора?
 
H

Hryv

Попробуйте вместо
="";
везде написать
=0;

А вообще алгоритм какой-то мутный
Хотя может это только кажется, потому-что не видно, что осталось за кадром
 
E

Elle

Попробуйте вместо
="";
везде написать
=0;

А вообще алгоритм какой-то мутный
Хотя может это только кажется, потому-что не видно, что осталось за кадром
я уже так пробовала - отображает всех контрагентов!!!
 
V

vbs

Правильно Vitfil ругает неявное объявление типов в 1С.
Вот отсюда и сравнение непустой строки с числом 0 :discard:
Конечно, она никогда не будет равна 0 :bequiet:
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!