Помогите пожалуйста с обработкой!
03.05.2009
14:57
#1
"Что здесь не так? Пишет: "Число фильтров субконто превысило допустимое значение!". Общий принцип: Выборка итогов по выбранным счетам и разбивкой по субконто. При выборе 1-го субконто, все работает, а нужно с 3. Заранее спасибо!
Для А = 1 По 3 Цикл
Ит=СоздатьОбъект("БухгалтерскиеИтоги");
Ит.ИспользоватьСубконто(Счет.ВидСубконто(А), , 1);
Ит.ВыполнитьЗапрос(ДатаНачала,ДатаКонца);
Ит.ВыбратьСубконто(А);
Пока Ит.ПолучитьСубконто(А) = 1 Цикл
Если ИтогиНеРавныНулю(Ит, А) = 0 Тогда
Продолжить;
КонецЕсли;
Таб.ВывестиСекцию("Строка_1|Начало");
Итого=0;
ТЗ2.ВыбратьСтроки();
Пока ТЗ2.ПолучитьСтроку() = 1 Цикл
Если ТЗ2.Помет = 1 Тогда
О=ТЗ2.Наименование;
ОС=СоздатьОбъект("Справочник.Подразделения");
ОС.НайтиПоНаименованию(О,1);
Если ОС.Выбран()>0 Тогда
Вывод=0;
Если Строка(Ос.ТекущийЭлемент())=Строка(О) Тогда
Ит=СоздатьОбъект("БухгалтерскиеИтоги");
Ит.ИспользоватьСубконто("Подразделения", ОС.ТекущийЭлемент(),,);
Ит.ВыполнитьЗапрос(ДатаНачала,ДатаКонца,СчетПоКоду("50.02"),СЧетПоКоду(Счет.Код),,2,,);
КонецЕсли;
Если ВидДок.ПолучитьЗначение(ВидДок.ТекущаяСтрока())="Приход" Тогда
Таб.ПрисоединитьСекцию("Строка_"+А+"|Колонка_1");
Итого = Итого + Ит.ДО()
Иначе
Таб.ПрисоединитьСекцию("Строка_"+А+"|Колонка_2");
Итого = Итого + Ит.КО();
КонецЕсли;
КонецЕсли;
КонецЕсли;
КонецЦикла;
Таб.ПрисоединитьСекцию("Строка_"+А+"|Итого");
КонецЦикла;
КонецЦикла;"
Для А = 1 По 3 Цикл
Ит=СоздатьОбъект("БухгалтерскиеИтоги");
Ит.ИспользоватьСубконто(Счет.ВидСубконто(А), , 1);
Ит.ВыполнитьЗапрос(ДатаНачала,ДатаКонца);
Ит.ВыбратьСубконто(А);
Пока Ит.ПолучитьСубконто(А) = 1 Цикл
Если ИтогиНеРавныНулю(Ит, А) = 0 Тогда
Продолжить;
КонецЕсли;
Таб.ВывестиСекцию("Строка_1|Начало");
Итого=0;
ТЗ2.ВыбратьСтроки();
Пока ТЗ2.ПолучитьСтроку() = 1 Цикл
Если ТЗ2.Помет = 1 Тогда
О=ТЗ2.Наименование;
ОС=СоздатьОбъект("Справочник.Подразделения");
ОС.НайтиПоНаименованию(О,1);
Если ОС.Выбран()>0 Тогда
Вывод=0;
Если Строка(Ос.ТекущийЭлемент())=Строка(О) Тогда
Ит=СоздатьОбъект("БухгалтерскиеИтоги");
Ит.ИспользоватьСубконто("Подразделения", ОС.ТекущийЭлемент(),,);
Ит.ВыполнитьЗапрос(ДатаНачала,ДатаКонца,СчетПоКоду("50.02"),СЧетПоКоду(Счет.Код),,2,,);
КонецЕсли;
Если ВидДок.ПолучитьЗначение(ВидДок.ТекущаяСтрока())="Приход" Тогда
Таб.ПрисоединитьСекцию("Строка_"+А+"|Колонка_1");
Итого = Итого + Ит.ДО()
Иначе
Таб.ПрисоединитьСекцию("Строка_"+А+"|Колонка_2");
Итого = Итого + Ит.КО();
КонецЕсли;
КонецЕсли;
КонецЕсли;
КонецЦикла;
Таб.ПрисоединитьСекцию("Строка_"+А+"|Итого");
КонецЦикла;
КонецЦикла;"
03.05.2009
22:31
#2
Ит=ВыполнитьЗапрос... используется 2 раза с одним и тем же именем переменной (Ит), хотя это разные запросы. Поэтому Пока Ит.ПолучитьСубконто(А) = 1 Цикл при А > 1 ругается, т.к. уже работает Ит.ИспользоватьСубконто("Подразделения", ОС.ТекущийЭлемент(),,), где всего 1 субконто, и Ит.ПолучитьСубконто(2) не имеет смысла.
не загружается классификатор ОКОФ1c v7.7 ТиС для Укр. Нужен отчет по новым позициям в справочнике номенклатура
Читают тему
(гостей: 1)