8.х Ошибка в запросе

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

  1. TopicStarter Overlay
    xxxALEXxxx
    Offline

    xxxALEXxxx

    Регистрация:
    3 ноя 2009
    Сообщения:
    28
    Симпатии:
    0
    Баллы:
    1
    Доброго времени суток!

    Прошу совета опытных программистов. Передо мной поставили задачу создать отчет который бы:
    - перебирал приходные ордера
    - смотрел основание ордера, получал склад
    - определял относиться ли склад ордера к колонке документа основание (короче совпадает ли склад в одной колонке со складом, который указан в документе основания)
    - и выводил в отчет все документы, где склады не совпадают.
    Я сам отчет написал, но в запросе вылезает какая-то не логичная ошибка, буду очень признателен если кто-нибудь сможет помочь разобраться, в том что я нет так сделал.
    Платформа 8.1. Конфигурация не типовая ( в этом то и проблема).
    Сам запрос -


    ВЫБРАТЬ
    |ДокОрдерПриход.Ссылка Как Приход,
    |ДокументОснование.Ссылка Как ДокументОснование,
    |ДокОрдерПриход.Склад Как ПриходСклад,
    |ДокументОснование.Склад Как ДокументОснованиеСклад
    |ИЗ
    |Документ.ОрдерПриход Как ДокОрдерПриход
    |Левое Соединение Документ.ПриходнаяНакладная как КомплСклад
    |ПО ДокОрдерПриход.ДокументОснование = ДокументОснование.Ссылка
    |Где
    |ДокОрдерПриход.Склад <> ДокументОснование.Склад
    |Сгруппировать по
    |ДокОрдерПриход.Ссылка,
    |ДокументОснование.Ссылка,
    |ДокОрдерПриход.Склад,
    |ДокументОснование.Склад


    Ошибка - Неоднозначное поле"ДокументОснование.Склад" Ордер Приход.Склад<> <<?>>ДокументОснование.Склад


    На всякий случай напишу структуру документов. Документ ОрдерПриход имеет реквизиты Документ основания и Склад.Документом основания является Приходная накладная с реквизитом КомплСклад. Данные в столбике КомплСклад, должны совпадать с данными в столбике Склад. И отчет должен выводить все документы, где эти данные отличаются. если нужны какие-либо другие данные для уточнения условий, пишите, всё предоставлю.
  2. Stack_G
    Offline

    Stack_G Опытный в 1С

    Регистрация:
    10 дек 2007
    Сообщения:
    786
    Симпатии:
    2
    Баллы:
    26
    Не дублируй темы.
    Вот тебе запрос:
    Код:
    "ВЫБРАТЬ
    |	ОрдерПриход.Ссылка
    |ИЗ
    |	Документ.ОрдерПриход КАК ОрдерПриход
    |ГДЕ
    |	ОрдерПриход.Склад <> ОрдерПриход.ДокументОснование.Склад"
    
    Правда вот это
    не понял :)
  3. TopicStarter Overlay
    xxxALEXxxx
    Offline

    xxxALEXxxx

    Регистрация:
    3 ноя 2009
    Сообщения:
    28
    Симпатии:
    0
    Баллы:
    1

    Я Вас правильно понял, что мне нужно удалить свой запрос и вставить Ваш?
  4. Stack_G
    Offline

    Stack_G Опытный в 1С

    Регистрация:
    10 дек 2007
    Сообщения:
    786
    Симпатии:
    2
    Баллы:
    26
    Да, попробуй так.
  5. TopicStarter Overlay
    xxxALEXxxx
    Offline

    xxxALEXxxx

    Регистрация:
    3 ноя 2009
    Сообщения:
    28
    Симпатии:
    0
    Баллы:
    1

    Я уже это сделал! Отчет выдает пустой лист. Получается, либо расхождений по складам в базе нет, либо программа работает некоррктно.

    Как по Вашему мнению, при таком запросе, отчет должен выполнять функции которые я описал?
  6. Stack_G
    Offline

    Stack_G Опытный в 1С

    Регистрация:
    10 дек 2007
    Сообщения:
    786
    Симпатии:
    2
    Баллы:
    26
    Смоделируй ситуацию

    Может у тебя ошибка дальше в выводе, посмотри точно в отладчике, что выдает результат запроса.
  7. TopicStarter Overlay
    xxxALEXxxx
    Offline

    xxxALEXxxx

    Регистрация:
    3 ноя 2009
    Сообщения:
    28
    Симпатии:
    0
    Баллы:
    1

    Программа ошибки не выдает, но она и не выполняет функции которые нужно.Я сейчас посмотрел, расхождения в базе точно есть, получается, что я что-то не так сделал. Мне необходимо чтобы отчет:

    - перебирал приходные ордера
    - смотрел основание ордера, получал склад
    - определял относиться ли склад ордера к колонке документа основание (короче совпадает ли склад в одной колонке со складом, который указан в документе основания)
    - и выводил в отчет все документы, где склады не совпадают.

    Ваш запрос подходит для таких функций?
  8. Stack_G
    Offline

    Stack_G Опытный в 1С

    Регистрация:
    10 дек 2007
    Сообщения:
    786
    Симпатии:
    2
    Баллы:
    26
    Давай поконкретней об этом:
    Что делает запрос:
    У Документа Ордер есть реквизит "склад", у документа основание есть реквизит "склад". Он их сравнивает и если они различны, то запрос выбирает документ Ордер.
    Может нужно сравнивать с реквизитом "Склад" табличной части документа основания?
  9. TopicStarter Overlay
    xxxALEXxxx
    Offline

    xxxALEXxxx

    Регистрация:
    3 ноя 2009
    Сообщения:
    28
    Симпатии:
    0
    Баллы:
    1
    Структура документов такая:

    Документ ОрдерПриход имеет реквизиты Документ основания и Склад.Документом основания является Приходная накладная с реквизитом КомплСклад. Данные в столбике КомплСклад, должны совпадать с данными в столбике Склад. И отчет должен выводить все документы ОрдераПрихода, где эти данные отличаются от данных в столбике КомплСклад, если нужны какие-либо другие данные для уточнения условий, пишите,я всё предоставлю.
  10. Stack_G
    Offline

    Stack_G Опытный в 1С

    Регистрация:
    10 дек 2007
    Сообщения:
    786
    Симпатии:
    2
    Баллы:
    26
    Что такое "столбик КомплСклад"? Тип реквизита?
  11. TopicStarter Overlay
    xxxALEXxxx
    Offline

    xxxALEXxxx

    Регистрация:
    3 ноя 2009
    Сообщения:
    28
    Симпатии:
    0
    Баллы:
    1
    Да, это реквизит документа Приходная Накладная!
  12. Stack_G
    Offline

    Stack_G Опытный в 1С

    Регистрация:
    10 дек 2007
    Сообщения:
    786
    Симпатии:
    2
    Баллы:
    26
    Какой тип реквизита???? Или это табличная часть? Короче, давай скрин структуры документа Приходная Накладная.
  13. TopicStarter Overlay
    xxxALEXxxx
    Offline

    xxxALEXxxx

    Регистрация:
    3 ноя 2009
    Сообщения:
    28
    Симпатии:
    0
    Баллы:
    1

    КомплСклад - это просто реквизит Приходной Накладной, а не реквизит табличной части. Я ответил на вопрос?
  14. servs
    Offline

    servs

    Регистрация:
    1 окт 2009
    Сообщения:
    5
    Симпатии:
    0
    Баллы:
    1
    Ответ очевиден, в запросе прописан не тот реквизит:
    сейчас ОрдерПриход.ДокументОснование.Склад
    нужно ОрдерПриход.ДокументОснование.КомплСклад
  15. TopicStarter Overlay
    xxxALEXxxx
    Offline

    xxxALEXxxx

    Регистрация:
    3 ноя 2009
    Сообщения:
    28
    Симпатии:
    0
    Баллы:
    1

    Ну да, я уже так и сделал. Программа выдала пустую таблицу. Что еще нужно сделать, только вот что ???????
  16. Stack_G
    Offline

    Stack_G Опытный в 1С

    Регистрация:
    10 дек 2007
    Сообщения:
    786
    Симпатии:
    2
    Баллы:
    26
    Так а почему запрос не ругнулся? Есть еще и реквизит "Склад"? :unsure:

    В конфигураторе в режиме отладки смотрел результат запроса?

    Вообще, выложи отчет и скрин структуры документа Приходная Накладная. Тема уж больно затянулась, а ответ явно простецкий.
  17. TopicStarter Overlay
    xxxALEXxxx
    Offline

    xxxALEXxxx

    Регистрация:
    3 ноя 2009
    Сообщения:
    28
    Симпатии:
    0
    Баллы:
    1
    Я выложил внешнюю отчет и скрин документа Приходная накладная!

    Вложения:

  18. Stack_G
    Offline

    Stack_G Опытный в 1С

    Регистрация:
    10 дек 2007
    Сообщения:
    786
    Симпатии:
    2
    Баллы:
    26
    УУУУ... Английский...
    У меня вариант попроще возник. Проверь запрос в консоли запросов.
    Косоль прилагаю.
    Открываешь прикрепленный файл в предприятии. Ваодишь это:
    Код:
    ВЫБРАТЬ
    ОрдерПриход.Ссылка
    ИЗ
    Документ.ОрдерПриход КАК ОрдерПриход
    ГДЕ
    ОрдерПриход.Склад <> ОрдерПриход.ДокументОснование.КомплСклад
    
    Вот как должно быть:
    Посмотреть вложение 2955
    Нажимаешь "Выполнить", в нижнем поле видишь результат.
    Как сделаешь - выложи скрин, что получилось.

    Вложения:

  19. TopicStarter Overlay
    xxxALEXxxx
    Offline

    xxxALEXxxx

    Регистрация:
    3 ноя 2009
    Сообщения:
    28
    Симпатии:
    0
    Баллы:
    1
    Всем спасибо за помощь, я разобрался!

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