A
A
A_l_e_x_5_82021-05-28 19:55:53
1C
A_l_e_x_5_8, 2021-05-28 19:55:53

How to make a printable invoice. The lines in the printed form can be sorted by the user's choice According to the length of the name?

Процедура Печать(ТабДок, Ссылка) Экспорт
  //{{_КОНСТРУКТОР_ПЕЧАТИ(Печать)
  Макет = Документы.РасходнаяНакладная.ПолучитьМакет("Печать");
  Запрос = Новый Запрос;
  Запрос.Текст =
  "ВЫБРАТЬ
  |	РасходнаяНакладная.Дата,
  |	РасходнаяНакладная.Клиент,
  |	РасходнаяНакладная.Номер,
  |	РасходнаяНакладная.Товары.(
  |		НомерСтроки,
  |		Товар,
  |		Количество,
  |		Цена,
  |		Сумма
  |	)
  |ИЗ
  |	Документ.РасходнаяНакладная КАК РасходнаяНакладная
  |ГДЕ
  |	РасходнаяНакладная.Ссылка В (&Ссылка)";
  Запрос.Параметры.Вставить("Ссылка", Ссылка);
  Выборка = Запрос.Выполнить().Выбрать();

  ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок");
  Шапка = Макет.ПолучитьОбласть("Шапка");
  ОбластьТоварыШапка = Макет.ПолучитьОбласть("ТоварыШапка");
  ОбластьТовары = Макет.ПолучитьОбласть("Товары");
  ОбластьИтог = Макет.ПолучитьОбласть("Всего");
  ТабДок.Очистить();

  ВставлятьРазделительСтраниц = Ложь;
  Пока Выборка.Следующий() Цикл
    Если ВставлятьРазделительСтраниц Тогда
      ТабДок.ВывестиГоризонтальныйРазделительСтраниц();
    КонецЕсли;

    ТабДок.Вывести(ОбластьЗаголовок);

    Шапка.Параметры.Заполнить(Выборка);
    ТабДок.Вывести(Шапка, Выборка.Уровень());

    ТабДок.Вывести(ОбластьТоварыШапка);
    ВыборкаТовары = Выборка.Товары.Выбрать();
    СуммаИтог = 0;
    Пока ВыборкаТовары.Следующий() Цикл
      ОбластьТовары.Параметры.Заполнить(ВыборкаТовары);
      ТабДок.Вывести(ОбластьТовары, ВыборкаТовары.Уровень());
      СуммаИтог = СуммаИтог + ВыборкаТовары.Сумма;
    КонецЦикла;

    ОбластьИтог.Параметры.ВсегоПоДокументу = СуммаИтог;
    ТабДок.Вывести(ОбластьИтог);

    ВставлятьРазделительСтраниц = Истина;
  КонецЦикла;
  //}}
КонецПроцедуры

Answer the question

In order to leave comments, you need to log in

1 answer(s)
K
Konstantin, 2021-05-28
@fosihas

not in the request.
Only if before the conclusions make a search, fill in a new Table of Values. In it, add the attribute Length of the Name, fill it in accordingly. Then sort by that column. Well, then print the form.

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question