8.х Внешняя обработка ТОРГ-12

Тема в разделе "Общие вопросы "1С:Предприятие 8"", создана пользователем Nikoloz, 28 июн 2012.

  1. TopicStarter Overlay
    Nikoloz
    Offline

    Nikoloz Опытный в 1С

    Регистрация:
    19 июн 2012
    Сообщения:
    57
    Симпатии:
    0
    Баллы:
    26
    Здраствуйте
    Документ "Реализация товаров" после проведения образуется столбец "сумма списания" её можно вывести в печатную форму?
  2. alexburn
    Offline

    alexburn Модераторы Команда форума Модератор

    Регистрация:
    5 янв 2009
    Сообщения:
    14.782
    Симпатии:
    509
    Баллы:
    204
    Можно.
  3. TopicStarter Overlay
    Nikoloz
    Offline

    Nikoloz Опытный в 1С

    Регистрация:
    19 июн 2012
    Сообщения:
    57
    Симпатии:
    0
    Баллы:
    26
    а подробнее:)
  4. alexburn
    Offline

    alexburn Модераторы Команда форума Модератор

    Регистрация:
    5 янв 2009
    Сообщения:
    14.782
    Симпатии:
    509
    Баллы:
    204
    Добавляете в печатную форму колонку, и заполняете ее данными из документа.
  5. TopicStarter Overlay
    Nikoloz
    Offline

    Nikoloz Опытный в 1С

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

    Код:
      Запрос=Новый Запрос("
    |ВЫБРАТЬ
    | СУММА(ЕСТЬNULL(ПартииТоваровКомпанииОбороты.СуммаУпр, 0)) КАК Сумма
    |ИЗ
    | РегистрНакопления.ПартииТоваровКомпании КАК ПартииТоваровКомпанииОбороты
    |ГДЕ
    | ПартииТоваровКомпанииОбороты.Регистратор = &Регистратор
    | И ПартииТоваровКомпанииОбороты.ХозОперация = &ХозОперация
    |");
    Запрос.УстановитьПараметр("Регистратор",ДокументОбъект.Ссылка);
    Запрос.УстановитьПараметр("Ссылка", ДокументОбъект.Ссылка);
    Запрос.УстановитьПараметр("ХозОперация",ДокументОбъект.ХозОперация);
    ВыборкаСтрокТовары = запрос.выполнить().выгрузить();
    мне выводит всю сумму в общем итоге к конце, а как сделать чтоб отдельно было для каждой позиции?
  6. alexburn
    Offline

    alexburn Модераторы Команда форума Модератор

    Регистрация:
    5 янв 2009
    Сообщения:
    14.782
    Симпатии:
    509
    Баллы:
    204
    А зачем вы добавили агрегатную функцию - СУММА ?
  7. TopicStarter Overlay
    Nikoloz
    Offline

    Nikoloz Опытный в 1С

    Регистрация:
    19 июн 2012
    Сообщения:
    57
    Симпатии:
    0
    Баллы:
    26
    В конце общую сумму списания получить.
  8. alexburn
    Offline

    alexburn Модераторы Команда форума Модератор

    Регистрация:
    5 янв 2009
    Сообщения:
    14.782
    Симпатии:
    509
    Баллы:
    204
    Блин, ну добавьте в запрос
    Код:
    ПартииТоваровКомпанииОбороты.СуммаУпр
    Будет вам выводить оборот.
  9. TopicStarter Overlay
    Nikoloz
    Offline

    Nikoloz Опытный в 1С

    Регистрация:
    19 июн 2012
    Сообщения:
    57
    Симпатии:
    0
    Баллы:
    26
    Я так уже делал:( Если например у одной позиции сумма списания 813 так он мне выводит для всех тоже самое, хотя сумму списания у каждом позиции разное. Тупо берёт любую сумму списания и шлёпает для всех позиции
    Код:
      Запрос=Новый Запрос("
    |ВЫБРАТЬ
    | ПартииТоваровКомпанииОбороты.СуммаУпр,
    |   ПартииТоваровКомпанииОбороты.Номенклатура КАК Номенклатура
    |ИЗ
    | РегистрНакопления.ПартииТоваровКомпании КАК ПартииТоваровКомпанииОбороты
    |ГДЕ
    | ПартииТоваровКомпанииОбороты.Регистратор = &Регистратор
    | И ПартииТоваровКомпанииОбороты.ХозОперация = &ХозОперация
    |	   СГРУППИРОВАТЬ ПО
    |   ПартииТоваровКомпанииОбороты.Номенклатура,
    |  ПартииТоваровКомпанииОбороты.СуммаУпр
    |");
    Запрос.УстановитьПараметр("Регистратор",ДокументОбъект.Ссылка);
    Запрос.УстановитьПараметр("Ссылка", ДокументОбъект.Ссылка);
    Запрос.УстановитьПараметр("ХозОперация",ДокументОбъект.ХозОперация);
    ВыборкаСтрокТовары  = запрос.выполнить().выгрузить();
    
    Для каждого СтрокаТоваров Из ВыборкаСтрокТовары Цикл
    Ном = Ном + 1;
    ОбластьСтрока.Параметры.СуммаУпр = СтрокаТоваров.СуммаУпр;
    КонецЦикла;
  10. alexburn
    Offline

    alexburn Модераторы Команда форума Модератор

    Регистрация:
    5 янв 2009
    Сообщения:
    14.782
    Симпатии:
    509
    Баллы:
    204
    Вы вообще походу не догоняете что вам советуют:)
    1. В виртуальных таблицах условие ставится в параметрах этой ВТ
    2. Почитайте как пишутся запросы, и для чего агрегатные функции предназначены.
    3. Не просить чтобы сделали за вас.
    Консоль запросов вам в помощь.
  11. Tiger86
    Offline

    Tiger86 Модераторы Команда форума Модератор

    Регистрация:
    24 мар 2011
    Сообщения:
    6.407
    Симпатии:
    108
    Баллы:
    104
    Код:
    Для каждого СтрокаТоваров Из ВыборкаСтрокТовары Цикл
    Ном = Ном + 1;
    ОбластьСтрока.Параметры.СуммаУпр = СтрокаТоваров.СуммаУпр;
    КонецЦикла;
    вот этот ваш код и будет вам выводить всегда самое последнее значение, по другому не будет, хоть вы как запрос переделывайте. Вы не выводите область, а каждый раз перезаписываете параметр. Вывод - читайте книги и разбирайте примеры вывода области в отчеты.
  12. TopicStarter Overlay
    Nikoloz
    Offline

    Nikoloz Опытный в 1С

    Регистрация:
    19 июн 2012
    Сообщения:
    57
    Симпатии:
    0
    Баллы:
    26
    Получилось!!! Спасибо большое! Тема решена:)

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