Вход | Регистрация

1С:Предприятие :: 1С:Предприятие 8 общая

Создать ТЗ на основании ТЧ

Создать ТЗ на основании ТЧ
Я
   John83
 
16.03.18 - 12:48
В обработке хочу создать ТЗ с такими колонками, как в товарах в документе реализации.
Как это по-красивше сделать?
Можно создать новый документ и оттуда выгрузить ТЧ.
Или через метаданные обойти колонки ТЧ и создать их в ТЗ.
Но был еще какой-то хитрый способ, никак не вспомню..
 
 
   piter3
 
1 - 16.03.18 - 12:51
Табличная часть (Tabular section)
ВыгрузитьКолонки (UnloadColumns)
Синтаксис:

ВыгрузитьКолонки(<Колонки>)
Параметры:

<Колонки> (необязательный)

Тип: Строка.
Список колонок для выгрузки в формате: "Колонка1, Колонка2...". Если список не задан, то будут выгружены все колонки.
Возвращаемое значение:

Тип: ТаблицаЗначений.

Описание:

Создает таблицу значений с заданным списком колонок.

Доступность:

Сервер, толстый клиент, внешнее соединение, мобильное приложение(сервер).
Примечание:

Выгружается только структура табличной части, данные не выгружаются.
   lodger
 
2 - 16.03.18 - 12:51
забомбить ДокументОбъект в реквизиты формы и вывести из него ТЧ на форму.
   Zmich
 
3 - 16.03.18 - 12:52
(0). Через запрос и ВЫБРАТЬ ПЕРВЫЕ 0?
   Малыш Джон
 
4 - 16.03.18 - 12:53
(0) УФ?
   John83
 
5 - 16.03.18 - 12:55
(3) то, что нужно
спасибо!
PS почему-то казалось, что если в базе этих документов нет, то результат запроса будет без колонок
   John83
 
6 - 16.03.18 - 12:55
(2) хотелось без СоздатьДокумент
   John83
 
7 - 16.03.18 - 12:55
(1) где взять саму ТЧ?
   Zmich
 
8 - 16.03.18 - 12:57
(5). Да, тоже засомневался, но сейчас проверил - работает.

    Запрос = Новый Запрос;
    Запрос.Текст = "
    |ВЫБРАТЬ ПЕРВЫЕ 0
    |    *
    |ИЗ
    |    Документ.РеализацияТоваровУслуг.Товары";
    ТЗ = Запрос.Выполнить().Выгрузить();
    ТЗ.ВыбратьСтроку();
   Малыш Джон
 
9 - 16.03.18 - 12:59
(8) Или как вариант:

ТЗ = Документы.РеализацияТоваровУслуг.ПустаяСсылка().Товары.ВыгрузитьКолонки();
   Zmich
 
10 - 16.03.18 - 13:02
(9). Да, тоже работает.
 
 Рекламное место пустует
   lodger
 
11 - 16.03.18 - 13:04
(9) имхо, неявное создание документа все равно произойдет.
самый дешевый по памяти метод это через запрос.
   lodger
 
12 - 16.03.18 - 13:04
(6) я то думал, что на форме нужна таблица
   Малыш Джон
 
13 - 16.03.18 - 13:08
(11) создание объекта? мне кажется создавать объект, чтобы получить пустую ссылку - это даже для 1с чересчур.
мне кажется, на более низком уровне, различий между получением запросом 0 первых строк из таблицы документов и получением пустой ссылки через метод ПустаяСсылка() не будет.
   lodger
 
14 - 16.03.18 - 13:11
(13) пустую ссылку даст менеджер объекта.
а вот когда ты ее за (товары) подергаешь, то система породит уже документобъект, ибо у ссылки тч еще нет.
   John83
 
15 - 16.03.18 - 13:16
(14) через отладчик в объект не заходит, т.е. вроде как не создает
   John83
 
16 - 16.03.18 - 13:23
(9) да, все же этот вариант по-красивее будет
премного благодарен
   Малыш Джон
 
17 - 16.03.18 - 14:01
(14) мы наверное про разные вещи говорим. Понятно, что в ссылке ничего нет, ссылка сама по себе - это просто указатель. Когда мы обращаемся к реквизиту по ссылке - мы лезем в таблицу документа, находим в этой таблице по этой ссылке данные нужного объекта и считываем нужный реквизит.И ты хочешь сказать, что для пустой ссылки в таблице создаются "пустые" строки, из которых считываются "пустые" значения?
   piter3
 
18 - 16.03.18 - 14:02
(15) Читай внимательно
Выгружается только структура табличной части, данные не выгружаются.

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует