Вход | Регистрация


1С:Предприятие ::

Метки: 

использование функции счетчик в запросе

Я
   Doberman
 
16.05.05 - 13:31
Всем добрый день. Помогите, плиз, побороть такую проблему:
-есть 5-ти уровневый справочник отделов (коды уникальны в пределах подчинения)
-есть одноуровневый справочник ПК, в котором, в котором один из реквизитов ссылается на справочник отделов.
НАДА: сделать отчет/запрос- перебор всех эл. справочника ПК в разрезе отделов с подчсетом кол-ва ПК в пределах каждой группы.
----------
И вроде бы ерундовый запрос:
    ТекстЗапроса = 
    "//{{ЗАПРОС(КрЗапрос)

    |Период с (ТекущаяДата()) по (ТекущаяДата());
    |ТекущийЭлемент = Справочник.ПК.ТекущийЭлемент;
    |МестоИспользования = Справочник.ПК.МестоИспользования;
    |КодОС = Справочник.ПК.КодОС;
    |Функция Счётчик = Счётчик();
    |Функция СчётчикОС = Счётчик() когда(ПустаяСтрока(КодОС)=0);
    |Группировка МестоИспользования упорядочить по МестоИспользования.Наименование;
    |Группировка ТекущийЭлемент;
    |//}}ЗАПРОС

    ;
-------------------
ПРОБЛЕМА: функция счетчик неправильно подсчитывет значения составных групп, т.е. групп, содержащих в себе другие группы. Например, кол-во ПК в отделе труда и з/п подсчитывает верно, а кол-во ПК в бухгалтерии, куда входит отдел труда и з/п а также другие отделы считает уже неверно... Не могу понять, где ошибка, уже с ног сбился... Спасите, помогите, СОС!!!
 
 
   Doberman
 
1 - 16.05.05 - 13:51
лююююди, ау, вы где?
   SnarkHunter
 
2 - 16.05.05 - 13:54
Неужели никто не сталкивался?
   121
 
3 - 16.05.05 - 13:56
Да есть где-то на форуме пример со счетчиком, в свое время не нашла, пришлось извращаться((
   Ёпрст
 
4 - 16.05.05 - 13:58
(0) 1.Покажи остальной код (где используешь счетчик)
   2.На хрена тебе "Период с (ТекущаяДата()) по (ТекущаяДата()); " ?
   1С Дурочкааа
5 - 16.05.05 - 13:58
Она, наверное, считает поштучно в отделе труда, а в бухгалтерии вычисляет и поштучно и для группы отдел труда. Т.е. разница должна быть на итоги по вложенным группам.
   Doberman
 
6 - 16.05.05 - 13:59
да я этот форум уже 2 часа рою, а то что надо, все никак не попадается
   Doberman
 
7 - 16.05.05 - 14:04
неа ,весь прикол в том, что в более крупной группе элементов выдает меньше, чем во вложенной группе, вот такое идиотство ,блин
   Doberman
 
8 - 16.05.05 - 14:07
Пока Запрос.Группировка(1) = 1 Цикл
       // Заполнение полей МестоИспользования

        Если укруп=1 Тогда
        Если Запрос.МестоИспользования.Уровень()=2 Тогда
        Таб.ВывестиСекцию("МестоИспользования");
        КонецЕсли;
        Иначе
        Таб.ВывестиСекцию("МестоИспользования");
        КонецЕсли;
    
    Пока Запрос.Группировка(2) = 1 Цикл
       //    МатПлата=Получить(ТекущийЭлемент.МатеринскаяПлата)

            Таб.ВывестиСекцию("ТекущийЭлемент");
        КонецЦикла;
    КонецЦикла;
----счетчики выводятся в составе секции МестоИспользования
   1С Дурочкааа
9 - 16.05.05 - 14:09
Запрос отрабатывает только элементы справочника. Итоги по группам добавляются в конце обработки запроса.
   Doberman
 
10 - 16.05.05 - 14:16
неа, запрос обрабатывает все элементы- я делал выгрузку рез-та запроса в таблицу значений и сатрел
 
  Рекламное место пустует
   1С Дурочкааа
11 - 16.05.05 - 14:19
Запрос отрабатывает только(!) элементы справочника. Итоги по группам добавляются в конце обработки запроса. Это однозначно.
   Ёпрст
 
12 - 16.05.05 - 14:19
(9)семеряжная правда!
(10)обрабатывает то все элементы, но не значения групп!
   Doberman
 
13 - 16.05.05 - 14:23
ок, не буду спорить, но как осознание этого факта может мне помочь?
   1С Дурочкааа
14 - 16.05.05 - 14:29
Осознание этого факта поможет тебе понять откуда в запросе берутся цифры, которые тебе не понятны.
   Ёпрст
 
15 - 16.05.05 - 14:32
(13)Решение в лоб:
Используй Уровень()
   Ёпрст
 
16 - 16.05.05 - 14:34
+15


|Группировка МестоИспользования упорядочить по МестоИспользования.Уровень();
   Ёпрст
 
17 - 16.05.05 - 14:36
(15),(16) блин ... сам ступил ... Сорри :((
   Doberman
 
18 - 16.05.05 - 14:46
(14) ааааа, ни фига не понимаю... че ж тогда при просмотре таблицы значений идет сначала старшая группа, потом младшая, а потом элементы...
   Doberman
 
19 - 16.05.05 - 17:03
НАРОД, ХЕЛп!!!!
нашел парочку веток, типа
Внешний отчет
но все равно счетчик неправильно подсчитывает итог по сложным группам, содержащим несколько вложенные групп. Что делать? Я в отчаянии, Спасите, ПАМАГИТЕ, ЛЕЛИК!!!!!!!!!!!!111
   lemon
 
20 - 16.05.05 - 17:15
(19) не вникал...   но если уперлись...
делайте запрос без групп, выгружайте в ТЗ без групп, добавляйте группы с подсчетом количества...
   Vovik
 
21 - 16.05.05 - 17:21
Лень вникать в твой запрос.
Но есть такой метод если тебе поможет:
Счетчик=0
Внутри цикла когда идет нужная секция
Счетчик=Счетчик+1
   Doberman
 
22 - 16.05.05 - 17:31
(21) так не канает :(
   Doberman
 
23 - 17.05.05 - 09:32
НАРОД, подсобите, пагибаююююю, ааааааааааааааа...
   Proba
24 - 17.05.05 - 10:07
Обрати внгимание, на всякий случай, на такой элемент запроса как Обрабатывать НеПомеченныеНаУдаление
   sergei_ssau
 
25 - 17.05.05 - 10:44
Попробуй написать функцию в 
английском варианте.
Слушал, что в завизимости от релиза именно по этой функции
срабатывае глюк!
   Doberman
 
26 - 18.05.05 - 18:17
НАРОД!!!!!!!!!!!!!!!!!!!!
Счс мля загавкаю и кусаться начну.
ПАМАГИТЕ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!1
ААААААААААААААА!!!!!!!!!!!!!!!1
Могет, я неудачно объяснил, чего нада, постараюсь еще раз:
нада выдать все элементы одного справочника, подбив их сумму по элементам или группам 2-го уровня другого справочника.
Не знаю, удачно ли объяснил, но поднапряжитесь,  очень нада, честно...



Список тем форума
Рекламное место пустует   Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Ветка сдана в архив. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует