8.х Создание отчета

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

  1. TopicStarter Overlay
    xxxALEXxxx
    Offline

    xxxALEXxxx

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

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

    Я написал отчет, который выполняет первые два пункта, но не могу сделать так что он производил данный отбор.
    Буду благодарен за любую помощь по этому вопросу.
  2. Stack_G
    Offline

    Stack_G Опытный в 1С

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

    wertklop Опытный в 1С

    Регистрация:
    12 май 2008
    Сообщения:
    321
    Симпатии:
    0
    Баллы:
    26
    а приходный ордер я так понимаю на товары? и вообще, в какой конфе?
  4. TopicStarter Overlay
    xxxALEXxxx
    Offline

    xxxALEXxxx

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

    Платформа 1с 8.1 Конфигурация собственная, разработана под нужды компании.

    Вот простой запрос который я использовал.

    "SELECT
    | ОрдерПриход.Склад
    |FROM
    | Document.ОрдерПриход AS ОрдерПриход";
  5. wertklop
    Offline

    wertklop Опытный в 1С

    Регистрация:
    12 май 2008
    Сообщения:
    321
    Симпатии:
    0
    Баллы:
    26
    ну так как не знаю структуру твоей конфы, можно предложить только алгоритм. с помощью запроса из документа прихода выбрать склад этого документа и склад дока-основания. ну а потом в цикле перебираешь каждую запись и сравниваешь полученные склады, в случае различия, выводишь в отчёт
  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. wertklop
    Offline

    wertklop Опытный в 1С

    Регистрация:
    12 май 2008
    Сообщения:
    321
    Симпатии:
    0
    Баллы:
    26
    //заполнение отчёта
    запрос=новый запрос("|ВЫБРАТЬ
    |ПриходныйОрдер.Ссылка Ссылка,
    |ПриходныйОрдер.Склад Склад,
    |ПриходныйОрдер.ДокументОснование.Склад СкладОснование
    |ИЗ
    |Документ.ПриходныйОрдер КАК ПриходныйОрдер");
    результат=запрос.Выполнить().Выбрать();
    пока результат.Следующий() Цикл
    если результат.Склад=результат.СкладОснование тогда
    //запорлнение строка макета типа:
    СтрокаДокумента.Параметры.Документ=результат.Ссылка;
    КонецЕсли;
    КонецЦикла;
    //проддолжение заполнения отчёта

    как то так.....
  10. TopicStarter Overlay
    xxxALEXxxx
    Offline

    xxxALEXxxx

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

    Поясните, пожалуйста, какие данные Вы вы имеете ввиду под структурой?
  11. Stack_G
    Offline

    Stack_G Опытный в 1С

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



    Хотя бы реквизиты какие у документов.
  12. wertklop
    Offline

    wertklop Опытный в 1С

    Регистрация:
    12 май 2008
    Сообщения:
    321
    Симпатии:
    0
    Баллы:
    26
    я так понимаю, что у него отчёт выводится по всем складам, поэтому и не вставил, ну а если что, я думаю, он сообразит как это сделать
    :unsure:
  13. Stack_G
    Offline

    Stack_G Опытный в 1С

    Регистрация:
    10 дек 2007
    Сообщения:
    786
    Симпатии:
    2
    Баллы:
    26
    Я имел ввиду сразу в запросе нечто вроде:
    Код:
    "ГДЕ ПриходныйОрдер.Склад <> ПриходныйОрдер.Основание.Склад"
    
  14. wertklop
    Offline

    wertklop Опытный в 1С

    Регистрация:
    12 май 2008
    Сообщения:
    321
    Симпатии:
    0
    Баллы:
    26
    а, точно!
    а как то не сообразил. так даже правильнее будет и эффектифнее

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