Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Глюки 1С 7.7
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Пользователю 1С 7.7 > Прочее 1С 7.7
ReDll
Есть отчет, неважно что он делает, но есть запрос по бух итогам с разделителем по фирме без учета субщетов.
Потом выбор операций и заполнение таблицы.

Проблема: при проходе в отладчике вручную - работает.
При простом запуске - нет.
Параметры одинаковые.

Что может быть не так или что можно сделать.....
zetovich
а что значит не работает?
ошибка...пустой результат запроса? пустая таблица?
ТиИ делали?
ReDll
Не работает это всмысле:

БИ.ВключатьСубсчета(,-1);
БИ.ВыполнитьЗапрос(Д1,Д2,спСчета,,,2,"Операция",1); //возврат 1

БИ.ВыбратьПериоды(,2);// возврат 1
Пока БИ.ПолучитьПериод() = 1 Цикл //возврат 0
//сюда не заходит
КонецЦикла;
zetovich
т.е. если отладчиком стали
Пока БИ.ПолучитьПериод() = 1 Цикл
заходт во внутрь...если без отладчика.....пролетает?
1. ТиИ
2. Сообщить впихните...заходит?
ReDll
1 с ТиИ все нормально
2 сказано же, что нет.
zetovich
что если в цикл запихнуть "Сообщить"..то не выводит ничего? (без отладчика)
или чо?
ReDll
Я третий раз пишу, надеюсь до Вас дойдет, что : нет в цикл не заходит -> сообщение не выводит.
zetovich
поверте, одно дело говорить что не заходит...а второе что не выводит сообщение.
это иногда разное...и не нужно делать выводы, Вы ж не проверили.
помогайте себе сами.
Vofka
ReDll, в цикл может и заходит, просто дальше какое-то условие не выполняется. zetovich хотел Вам помочь. Но раз Вы не выполняете то, что он Вам говорит, то как было сказано выше:
Цитата
помогайте себе сами.
ReDll
Сообщение не выводиться.
Спасибо за помощь.
Acid
курите параметры запроса пока сообщение начнет появляться. параметры явно неправильно указаны.
sergey1969
Да это нормально, вчера всю ночь перебирал параметры бухзапроса - Субкото(1) выбирает, Субконто(2) - нет или наоборот
БИ.ВыбратьСубконто(2);// возврат 1 субконто есть
Пока БИ.ПолучитьСубконто(2) = 1 Цикл //возврат 0 - а получить их незя
Проблема была в операторах до ИТ.ВыбратьСубконто(2) - ИТ.ВыбратьКорСчета(),ИТ.ПолучитьКорСчет()
БИ позиционируються на КорСчет и фсе...

Пришлось для выбора второго Субконто во внутреннем цикле сделать БИ2.ВыполнитьЗапрос(ДатаНач,ДатаКон,"661",,,3,,"С")

При БИ.ВыполнитьЗапрос(ДатаНач,ДатаКон,"661",,,ХХХ,,"С") с ХХХ 2 или 3 нормально выбирается Субконто(1)
при ХХХ=1 выбирается Субконто(2) но не работает ИТ.ПолучитьКорСчет(субчсет), ВключатьСубчета(,-1) есть.

Может кто что подкинет из мыслей как после ПолучитьКорСчет() его отключить...
Acid
А все потому, что должно быть: ВключатьСубчета(1,1)
sergey1969
Пробовал фсе 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) по аналитике
1Cv77
Если ПоМесяцам=1 Тогда
Пока БИ.ПолучитьСубконто(2)=1 Цикл


А где комманда БИ.ВыбратьСубконто(2);???
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.