8.х странности в запросе

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем tunec, 2 фев 2009.

  1. TopicStarter Overlay
    tunec
    Offline

    tunec Опытный в 1С

    Регистрация:
    2 июн 2008
    Сообщения:
    469
    Симпатии:
    0
    Баллы:
    26
    добрый день всем!
    сегодня столкнулся с интересной вещью. Раньше такого никогда не было. Поэтому думаю от версии платформы и конфы не зависит
    На всякий случай конф. 10.2.2.5 как база для изменения.
    Версия платформы 8.0.11.3.


    Надо было проконтролировать движение товара по складу. Делаю простой запросик в консоли запросов (потом из интереса протестировал и как новый отчет в конфигурации - результат тот же) к регистру "ТоварыНаСкладахОстаткиИОбороты"... Получаю данные - все нормально.

    Код:
    ВЫБРАТЬ
    ТоварыНаСкладахОстаткиИОбороты.Склад КАК Склад,
    ТоварыНаСкладахОстаткиИОбороты.Номенклатура КАК Номенклатура,
    ТоварыНаСкладахОстаткиИОбороты.Регистратор,
    ТоварыНаСкладахОстаткиИОбороты.КоличествоНачальныйОстаток КАК КоличествоНачальныйОстаток,
    ТоварыНаСкладахОстаткиИОбороты.КоличествоПриход КАК КоличествоПриход,
    ТоварыНаСкладахОстаткиИОбороты.КоличествоРасход КАК КоличествоРасход,
    ТоварыНаСкладахОстаткиИОбороты.КоличествоКонечныйОстаток КАК КоличествоКонечныйОстаток
    ИЗ
    РегистрНакопления.ТоварыНаСкладах.ОстаткиИОбороты(&Нач, &Кон, Регистратор, , ) КАК ТоварыНаСкладахОстаткиИОбороты
    
    УПОРЯДОЧИТЬ ПО
    ТоварыНаСкладахОстаткиИОбороты.Период
    ИТОГИ
    СУММА(КоличествоНачальныйОстаток),
    СУММА(КоличествоПриход),
    СУММА(КоличествоРасход),
    СУММА(КоличествоКонечныйОстаток)
    ПО
    ОБЩИЕ,
    Склад,
    Номенклатура
    
    Получаю результат:
    Посмотреть вложение 1567

    Среди этих данных есть документы возврата, которые мне не нужны, т.к. являются "внутренними"... Создаю условие, чтобы не выводились возвраты с контрагентом принадлежащим группе, в которой лежат контрагенты дочерних компаний.

    Код:
    ГДЕ
    ВЫБОР
    КОГДА (ТоварыНаСкладахОстаткиИОбороты.Регистратор ССЫЛКА Документ.ВозвратТоваровПоставщику
    И ТоварыНаСкладахОстаткиИОбороты.Регистратор.Контрагент В ИЕРАРХИИ (&ДочКом))
    ИЛИ (ТоварыНаСкладахОстаткиИОбороты.Регистратор ССЫЛКА Документ.ВозвратТоваровОтПокупателя
    И ТоварыНаСкладахОстаткиИОбороты.Регистратор.Контрагент В ИЕРАРХИИ (&ДочКом))
    ТОГДА ЛОЖЬ
    ИНАЧЕ ИСТИНА
    КОНЕЦ
    

    После этого у возврата от покупателя пропадает поле контрагент, хотя сам документ подбирается нормально, открывается тоже нормально. А вот все его реквизиты недоступны...
    Посмотреть вложение 1568

    Думал мож чето в условии накрутил, делал-то быстро просто проверить и забыть...
    попробовал условие:

    Код:
    ГДЕ
    ВЫБОР
    КОГДА ТоварыНаСкладахОстаткиИОбороты.Регистратор ССЫЛКА Документ.ВозвратТоваровОтПокупателя
    И ТоварыНаСкладахОстаткиИОбороты.Регистратор.Контрагент В ИЕРАРХИИ (&ДочКом)
    ТОГДА ЛОЖЬ
    ИНАЧЕ ИСТИНА
    КОНЕЦ
    
    Эффект тот же...

    Проверил на регистре ПартииТоваровНаСкладах - все работает нормально. Условия отрабатываются. А вот на ТоварыНаСкладах не идет. Причем именно ВозвратОтПокупателя. Для всех остальных доков условия отрабатывают нормально...

    Подскажите, как исправить эту хрень :unsure: Впечатление, что когда механизм запросов обращается к реквизитам регистратора система его просто не находит. Перепроводить пробовал - не помогает.

    Вложения:

  2. BabySG
    Offline

    BabySG Администраторы Команда форума Администратор

    Регистрация:
    10 июн 2007
    Сообщения:
    11.853
    Симпатии:
    12
    Баллы:
    29
    На диске ИТС есть статья, почему не стоит использовать остатки/обороты по регистратору - очень рекомендую ознакомиться.

    Я вот не очень понял, что именно вы собираетесь контролировать - подробнее расскажите.
  3. TopicStarter Overlay
    tunec
    Offline

    tunec Опытный в 1С

    Регистрация:
    2 июн 2008
    Сообщения:
    469
    Симпатии:
    0
    Баллы:
    26
    хм... мне просто надо было единоразово визуально получить перед собой картину движения товаров за определенный период по этому регистру (для сравнения с аналогичными регистрами учета товара вроде партииТоваровНаСкладах, т.к. возникло впечатление, что кто-то поработал задним числом "без балды" и количество номенклатуры теперь неправильно). А возвраты мешали этой картине, нагло вылезая повсюду... И недолго думая я их решил удалить из отбора. Иначе как отбор по регистратору ничего в голову не пришло :) И наткнулся на траблу. И задачка на 1 минуту превратилась в часовое упражнение для мозга и создание этой темы.
  4. BabySG
    Offline

    BabySG Администраторы Команда форума Администратор

    Регистрация:
    10 июн 2007
    Сообщения:
    11.853
    Симпатии:
    12
    Баллы:
    29
    Количество товара ВСЕГДА будет правильным.
    Проверять на правильность ведение учета нужно именно по регистру партий.

    Ибо:

    По количеству:
    01.01.01 +5шт
    02.01.01 -10шт
    03.01.01 +5шт
    Даст в итоге 0шт

    По партиям количество совпадет, а вот стоимость не рассчитается.

    Правильность проверить можно еще используя обработку по восстановлению партионного учета - там все ошибки сразу будут видны.
  5. TopicStarter Overlay
    tunec
    Offline

    tunec Опытный в 1С

    Регистрация:
    2 июн 2008
    Сообщения:
    469
    Симпатии:
    0
    Баллы:
    26
    :) к я сверял регистр партии товаров на складах (похоже партии неверно легли из-за той же работы задним числом безалаберного человека) с товары на складах и товары организаций :) ... При отборе без возвратов в партиях отобралось номано, а в товарах на складах получилась бага... Мне-то конечно не в напряг, я и так все сделал, а потом вернулся к этой фишке, чтобы изучить поподробнее, вдруг пригодится...

    П.С. а что за рекомендации по отбору по регистратору на ИТС... Как-то я пропусти ее.. Ща просмотрел диски - не найду никак...
  6. BabySG
    Offline

    BabySG Администраторы Команда форума Администратор

    Регистрация:
    10 июн 2007
    Сообщения:
    11.853
    Симпатии:
    12
    Баллы:
    29
    Поищи по словах остатки по регистратору
  7. TopicStarter Overlay
    tunec
    Offline

    tunec Опытный в 1С

    Регистрация:
    2 июн 2008
    Сообщения:
    469
    Симпатии:
    0
    Баллы:
    26
    если речь про итоги по регистратору и использование периода для получения верных результатов - то это я в курсе. Даже пробовал воспользоваться. Только вот в данном примере я не использую итоги по регистратору.

    А если про что-то еще - то не найду. Поиск выдал только одну ссылку на документ описание регистров в УП... Искал для верности на январском, декабрьском и ноябрьском ИТС ПРОФ :)
  8. TopicStarter Overlay
    tunec
    Offline

    tunec Опытный в 1С

    Регистрация:
    2 июн 2008
    Сообщения:
    469
    Симпатии:
    0
    Баллы:
    26
    ну чего, никто не знает отчего проблема-то?
  9. BabySG
    Offline

    BabySG Администраторы Команда форума Администратор

    Регистрация:
    10 июн 2007
    Сообщения:
    11.853
    Симпатии:
    12
    Баллы:
    29
    Проблема в неверном запросе, мне вот просто некогда написать другой.
  10. TopicStarter Overlay
    tunec
    Offline

    tunec Опытный в 1С

    Регистрация:
    2 июн 2008
    Сообщения:
    469
    Симпатии:
    0
    Баллы:
    26
    хм, предполагал такое... а хоть подскажи где?

    в отборе? самом смысле запроса? Просто не работает такая схема только с документами "возвратОтПокупателя" и только в регистре "ТоварыНаСкладах"... С прочими типами документов все нормально отрабатывает.

    И что все-таки за статья с ИТС? интересно же...
  11. TopicStarter Overlay
    tunec
    Offline

    tunec Опытный в 1С

    Регистрация:
    2 июн 2008
    Сообщения:
    469
    Симпатии:
    0
    Баллы:
    26
    нашел вот статью про итоги "Расчет итогов по полям остатков", но тогда почему же не работает такой запрос:

    Код:
    "ВЫБРАТЬ
    ТаблицаРегистра.Склад КАК Склад,
    ТаблицаРегистра.Номенклатура КАК Номенклатура,
    ТаблицаРегистра.Регистратор КАК Регистратор,
    ТаблицаРегистра.Регистратор.Контрагент
    ИЗ
    РегистрНакопления.ТоварыНаСкладах.ОстаткиИОбороты(
    &ДатаНач,
    &ДатаКон,
    Регистратор {&Периодичность},
    ,
    Склад = &Склад
    И Номенклатура = &Номенклатура ) КАК ТаблицаРегистра
    ГДЕ
    ВЫБОР
    КОГДА ТаблицаРегистра.Регистратор ССЫЛКА Документ.ВозвратТоваровОтПокупателя
    И ТаблицаРегистра.Регистратор.Контрагент В ИЕРАРХИИ (&ГруппаКомпаний)
    ТОГДА ЛОЖЬ
    ИНАЧЕ ИСТИНА
    КОНЕЦ
    АВТОУПОРЯДОЧИВАНИЕ"
    
    Итогов нет, поля остатков не используются, а результат тот же:
    Посмотреть вложение 1582

    проверил на старых возвратах - то же самое, т.е. дело не только в этом документе... просто раньше не натыкался, т.к. основная работа по товару идет с регистром партий, а там все работает "на ура"...

    Вложения:

    • фига.JPG
      фига.JPG
      Размер файла:
      49,8 КБ
      Просмотров:
      37
  12. TopicStarter Overlay
    tunec
    Offline

    tunec Опытный в 1С

    Регистрация:
    2 июн 2008
    Сообщения:
    469
    Симпатии:
    0
    Баллы:
    26

Поделиться этой страницей