Полная версия этой страницы:
Глюки 1С 7.7
Есть отчет, неважно что он делает, но есть запрос по бух итогам с разделителем по фирме без учета субщетов.
Потом выбор операций и заполнение таблицы.
Проблема: при проходе в отладчике вручную - работает.
При простом запуске - нет.
Параметры одинаковые.
Что может быть не так или что можно сделать.....
а что значит не работает?
ошибка...пустой результат запроса? пустая таблица?
ТиИ делали?
Не работает это всмысле:
БИ.ВключатьСубсчета(,-1);
БИ.ВыполнитьЗапрос(Д1,Д2,спСчета,,,2,"Операция",1); //возврат 1
БИ.ВыбратьПериоды(,2);// возврат 1
Пока БИ.ПолучитьПериод() = 1 Цикл //возврат 0
//сюда не заходит
КонецЦикла;
т.е. если отладчиком стали
Пока БИ.ПолучитьПериод() = 1 Цикл
заходт во внутрь...если без отладчика.....пролетает?
1. ТиИ
2. Сообщить впихните...заходит?
1 с ТиИ все нормально
2 сказано же, что нет.
что если в цикл запихнуть "Сообщить"..то не выводит ничего? (без отладчика)
или чо?
Я третий раз пишу, надеюсь до Вас дойдет, что : нет в цикл не заходит -> сообщение не выводит.
поверте, одно дело говорить что не заходит...а второе что не выводит сообщение.
это иногда разное...и не нужно делать выводы, Вы ж не проверили.
помогайте себе сами.
ReDll, в цикл может и заходит, просто дальше какое-то условие не выполняется.
zetovich хотел Вам помочь. Но раз Вы не выполняете то, что он Вам говорит, то как было сказано выше:
Цитата
помогайте себе сами.
Сообщение не выводиться.
Спасибо за помощь.
курите параметры запроса пока сообщение начнет появляться. параметры явно неправильно указаны.
sergey1969
31.07.09, 22:07
Да это нормально, вчера всю ночь перебирал параметры бухзапроса - Субкото(1) выбирает, Субконто(2) - нет или наоборот
БИ.ВыбратьСубконто(2);// возврат 1 субконто есть
Пока БИ.ПолучитьСубконто(2) = 1 Цикл //возврат 0 - а получить их незя
Проблема была в операторах до ИТ.ВыбратьСубконто(2) - ИТ.ВыбратьКорСчета(),ИТ.ПолучитьКорСчет()
БИ позиционируються на КорСчет и фсе...
Пришлось для выбора второго Субконто во внутреннем цикле сделать БИ2.ВыполнитьЗапрос(ДатаНач,ДатаКон,"661",,,3,,"С")
При БИ.ВыполнитьЗапрос(ДатаНач,ДатаКон,"661",,,ХХХ,,"С") с ХХХ 2 или 3 нормально выбирается Субконто(1)
при ХХХ=1 выбирается Субконто(2) но не работает ИТ.ПолучитьКорСчет(субчсет), ВключатьСубчета(,-1) есть.
Может кто что подкинет из мыслей как после ПолучитьКорСчет() его отключить...
А все потому, что должно быть: ВключатьСубчета(1,1)
sergey1969
03.08.09, 10:51
Пробовал фсе 8 от -1 до 1, там проблема в другом.
Субчтета указаны жестко- выборка по 661 и корсчета 6411,65(1,2,3)
//Вот кусочки кода - выборка по удержаниям сотрудников
БИ.ИспользоватьСубконто(ВидыСубконто.Сотрудники);
БИ.ИспользоватьСубконто(ВидыСубконто.МесяцНачисленияЗП);
БИ.ВключатьСубсчета(1,1);
БИ.ВыполнитьЗапрос(ДатаНач,ДатаКон,"661",,,3,,"С");
БИ.ВыбратьСубконто(1);
Пока БИ.ПолучитьСубконто(1)=1 Цикл
БИ.ВыбратьКорСчета(,);
Если БИ.ПолучитьКорСчет(,"6411")=1 Тогда
сотрНДФЛ = БИ.КорДО();
КонецЕсли; //и т.д.
Если ПоМесяцам=1 Тогда
Пока БИ.ПолучитьСубконто(2)=1 Цикл
БИ.ВыбратьКорСчета(,);
Если БИ.ПолучитьКорСчет(,"6411")=1 Тогда
сотрНДФЛ = БИ.КорДО();
КонецЕсли;
Так вот во Втором цикле Второе Субконто выбирается только один раз! (первый месяц) при ВыполнитьЗапрос(,,,,1,) - выбирает все субконто второго цикла но нет ПолучитьКорСчет - это нормально, 1-остатки.
ПРОБЛЕМА - как после ПолучитьКорСчет() снять позиционирование на этот КорСчет!!
пробовал второй раз ВыбратьКорСчета() - ошибка Субконто(2) по аналитике
Если ПоМесяцам=1 Тогда
Пока БИ.ПолучитьСубконто(2)=1 Цикл
А где комманда БИ.ВыбратьСубконто(2);???
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке.