Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 ноя 2024, 10:49

Выбор из таблицы передаваемый в параметр

Автор kinflay, 22 фев 2024, 10:48

0 Пользователей и 1 гость просматривают эту тему.

kinflay

Да, из запроса, поэтому типы я не задавал
Таблица = Новый ТаблицаЗначений;
Таблица.Колонки.Добавить("Количество", Новый ОписаниеТипов("Число",,, Новый КвалификаторыЧисла(20, 3)));
Таблица.Колонки.Добавить("Вес", Новый ОписаниеТипов("Число",,, Новый КвалификаторыЧисла(20, 3)));
Таблица.Колонки.Добавить("Стоимость", Новый ОписаниеТипов("Число",,, Новый КвалификаторыЧисла(20, 3)));
Таблица.Колонки.Добавить("СтоимостьБезНДС", Новый ОписаниеТипов("Число",,, Новый КвалификаторыЧисла(20, 3)));
Таблица.Колонки.Добавить("ВаловаяПрибыль", Новый ОписаниеТипов("Число",,, Новый КвалификаторыЧисла(20, 3)));
Таблица.Колонки.Добавить("Наценка", Новый ОписаниеТипов("Число",,, Новый КвалификаторыЧисла(20, 3)));
Таблица.Колонки.Добавить("ПрибыльДляКонтроля", Новый ОписаниеТипов("Число",,, Новый КвалификаторыЧисла(20, 3)));
Таблица.Колонки.Добавить("СебестоимостьДляКонтроля", Новый ОписаниеТипов("Число",,, Новый КвалификаторыЧисла(20, 3)));
Таблица.Колонки.Добавить("НаценкаДляКонтроля", Новый ОписаниеТипов("Число",,, Новый КвалификаторыЧисла(20, 3)));
Таблица.Колонки.Добавить("Покупатель", Новый ОписаниеТипов("Строка"));
Таблица.Колонки.Добавить("Номенклатура", Новый ОписаниеТипов("Строка"));
Таблица.Колонки.Добавить("Проект", Новый ОписаниеТипов("Строка"));
Таблица.Колонки.Добавить("АртикулКонтрагента", Новый ОписаниеТипов("Строка"));
    Таблица.Колонки.Добавить("Склад", Новый ОписаниеТипов("Строка"));

Так тоже не работает

antoneus


Максим75

ОтветЦБ.ТабРезультат - это точно таблица значений?
Ну как вариант, попробуйте выгрузить в другую таблицу значений.

fruitella

kinflay,
1. Для ссылочных типов указываешь тип строка;
Таблица.Колонки.Добавить("Номенклатура", Новый ОписаниеТипов("Строка")); //Неправильно
Таблица.Колонки.Добавить("Номенклатура", Новый ОписаниеТипов("СправочникСсылка.Номенклатура")); //Правильно

Для остальных ссылок надо также по аналогии.

2. Вес - это тоже ссылка на справочник упаковки и единицы измерения, это не число.
3. Классификаторы дробных чисел и длины строк должны совпадать. Если используешь связи по каким-то полям внутри запроса, то скорей всего получишь ошибку "Нельзя сравнивать числа/строки неограниченной длины или разных типов".

kinflay

Эти данные я формирую в первом запросе.

    |ВЫБРАТЬ РАЗРЕШЕННЫЕ
    |    КоличествоОборот                                            КАК Количество,
    |    КоличествоОборот * Номенклатура.ЕдиницаХраненияОстатков.Вес КАК Вес,
    |    СтоимостьОборот                                             КАК Стоимость,
    |    Выразить(100 * СтоимостьОборот / 
    |         (100 + ВЫБОР КОГДА Номенклатура.СтавкаНДС = ЗНАЧЕНИЕ(Перечисление.СтавкиНДС.НДС10) ТОГДА 10
    |                       КОГДА Номенклатура.СтавкаНДС = ЗНАЧЕНИЕ(Перечисление.СтавкиНДС.НДС20) ТОГДА 20                     
    |                       ИНАЧЕ 0
    |                 КОНЕЦ) Как Число(15,2))                        КАК СтоимостьБезНДС,       
    |    ВЫБОР КОГДА Проект = ЗНАЧЕНИЕ(Справочник.Проекты.БезКонтроляНаценки) ТОГДА 0 ИНАЧЕ СтоимостьОборот  КОНЕЦ КАК СтоимостьДляКонтроля,
    |    ВЫБОР КОГДА Проект = ЗНАЧЕНИЕ(Справочник.Проекты.БезКонтроляНаценки) ТОГДА 0 ИНАЧЕ КоличествоОборот КОНЕЦ КАК КоличествоДляКонтроля,
    |    ДоговорКонтрагента.Владелец КАК Покупатель,
    |    Номенклатура                КАК Номенклатура,
    |    Склад                       КАК Склад,
    |    Регистратор                 КАК Регистратор,
    |    Период                      КАК Период,
    |    ДокументПродажи             КАК ДокументПродажи,
    |    ЗаказПокупателя             КАК ЗаказПокупателя,
    |    Проект                        КАК Проект,
    |    Подразделение               КАК Подразделение,
    |    Номенклатура.ГруппаСпар     КАК ГруппаСпар
    |ПОМЕСТИТЬ
    |   ТабПродажи
    |ИЗ
    |    РегистрНакопления.Продажи.Обороты(&ДатаНач, &ДатаКон, Регистратор,
    |                           {ДоговорКонтрагента.Владелец.*          КАК Покупатель,
    |                            ДоговорКонтрагента.*                   КАК ДоговорКонтрагента,
    |                            ЗаказПокупателя.*                      КАК ЗаказПокупателя,
    |                            Номенклатура.*                         КАК Номенклатура,
    |                            ДокументПродажи.*                      КАК ДокументПродажи,
    |                            Подразделение.*                        КАК Подразделение,
    |                            Проект.*                                  КАК Проект,
    |                            Склад.*                                КАК Склад,
    |                            Номенклатура.ГруппаСпар.*              КАК ГруппаСпар}
    |                                    ) 

Для Таблицы их нужно задавать так же по примеру?
Таблица.Колонки.Добавить("Номенклатура", Новый ОписаниеТипов("РегистрНакопления.Продажи.Обороты.Номенклатура"));
Цитата: Максим75 от 22 фев 2024, 14:10ОтветЦБ.ТабРезультат - это точно таблица значений?
Ну как вариант, попробуйте выгрузить в другую таблицу значений.
- да, точно
изображение_2024-02-22_191443807.png
Цитата: antoneus от 22 фев 2024, 13:59Не работает с такой же ошибкой?
- да.




Afinogen

Цитата: kinflay от 22 фев 2024, 19:16Для Таблицы их нужно задавать так же по примеру?
Таблица.Колонки.Добавить("Номенклатура", Новый ОписаниеТипов("РегистрНакопления.Продажи.Обороты.Номенклатура"));
нет
такого типа вообще нет
Массив = Новый Массив;
Массив.Добавить(Тип("СправочникСсылка.Номенклатура"));
Таблица.Колонки.Добавить("Номенклатура", Массив);

для следующей колонки
Массив.Очистить();
Массив.Добавить(Тип новой колонки);
Таблица.Колонки.Добавить("Имя новой колонки", Массив);

если тип значения  -смешанный то так
Массив.Очистить();
Массив.Добавить(Тип новой колонки1);
Массив.Добавить(Тип новой колонки2);
Таблица.Колонки.Добавить("Имя новой колонки", Массив);

а вообще советую посмотреть в синтаксис-помощнике))


Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск