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

Получить значение колонки таблицы значений.

Получить значение колонки таблицы значений.
Я
   progaoff
 
16.05.19 - 18:10
Добрый день, такой вопрос, загружаю данные из Excel, помещаю в ТЗ, как получить значение колонки таблицы значений ? За ранее спасибо за помощь.
 
 
   Галахад
 
1 - 16.05.19 - 18:12
Для каждого стр из ТЗ Цикл
Сообщить(Стр[ИмяКолонки]);
КонецЦикла;
   progaoff
 
2 - 17.05.19 - 13:49
ТЗ = ИзExcelВТаблицу(Путь,1,Истина);        
    Если ТЗ = Неопределено тогда
           Возврат;
    КонецЕсли;    
    
    КодыПоставщика = Новый СписокЗначений;
    КодыПоставщика.ЗагрузитьЗначения(ТЗ.ВыгрузитьКолонку("Артикул"));
    Запрос = Новый Запрос;
    Запрос.Текст =  "ВЫБРАТЬ
                    |    КодыПоставщиков.Владелец.Ссылка КАК Товар
                    |ИЗ
                    |    Справочник.КодыПоставщиков КАК КодыПоставщиков
                    |ГДЕ
                    |    КодыПоставщиков.КодТовара В(&КодыПоставщика)";
    Запрос.УстановитьПараметр("КодыПоставщика",КодыПоставщика);
    ВыборкаТовара = Запрос.Выполнить().Выбрать();
    Поступление = Документы.ПриходнаяНакладная.СоздатьДокумент();
    Поступление.Дата        = ДатаПоступления;
    Поступление.Контрагент = Контрагент;
    Поступление.Склад      = Склад;
    Поступление.Фирма      = Справочники.Фирмы.НайтиПоНаименованию("");
    Для Каждого стр из ТЗ Цикл
    Пока ВыборкаТовара.Следующий() Цикл
          ВыборкаСтрок = Поступление.Товары.Добавить();
        ВыборкаСтрок.Номенклатура = ВыборкаТовара.Товар;
        ВыборкаСтрок.Количество      = стр["Количество"];
        ВыборкаСтрок.Коэффициент  = 1;
        
        
    КонецЦикла;    
    КонецЦикла;
    Поступление.Записать();
В таком виде ставит количество из первой строки. Смысл в том, найденные данные из запроса, залить в поступление а количество и прочее из ТЗ.
   progaoff
 
3 - 17.05.19 - 14:02
Чет в голову ничего не приходит...(
   Kondarat
 
4 - 17.05.19 - 14:15
(3) Видимо надо как-то сопоставить строки ТЗ с элементами выборки
   Chameleon1980
 
5 - 17.05.19 - 14:18
Открой для себя метод НайтиСтроки
   Chameleon1980
 
6 - 17.05.19 - 14:19
ТаблицаЗначений.НайтиСтроки (ValueTable.FindRows)
ТаблицаЗначений (ValueTable)
НайтиСтроки (FindRows)
Синтаксис:

НайтиСтроки(<ПараметрыОтбора>)
Параметры:

<ПараметрыОтбора> (обязательный)

Тип: Структура.
Задает условия поиска: ключ структуры определяет имя колонки, по которой будет осуществляться поиск, а значение структуры - искомое значение.
Возвращаемое значение:

Тип: Массив.
Массив строк таблицы значений, соответствующих условиям поиска.
Замечание! Массив хранит ссылки на строки таблицы значений, то есть при изменении строки в таблице, значение в массиве тоже будет измененным.
Описание:

Осуществляет поиск строк таблицы значений, отвечающих заданным условиям поиска.
Если в таблице значений добавлены индексы, подбор индекса для поиска осуществляется по точному соответствию состава колонок в индексе и в параметрах поиска, порядок следования колонок значения не имеет.

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

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

Метод эффективно использовать для выборки неуникальных значений.
Пример:

// СписокРаботников - реквизит формы для представления информации 


// о работниках (тип ТаблицаЗначений).


// В форме расположено табличное поле СписокРаботников, в котором


// показываются данные СписокРаботников.


// С помощью запроса выбирается информация о работниках.


Запрос = Новый Запрос;
ТекстЗапроса = 
    "ВЫБРАТЬ
    // текст запроса

    // ... 

    ";
Запрос.Текст = ТекстЗапроса;
СписокРаботников = Запрос.Выполнить().Выгрузить();
Отбор = Новый Структура();
Отбор.Вставить("ФизЛицо",Справочники.ФизическиеЛица.ПустаяСсылка());
Строки = СписокРаботников.НайтиСтроки(Отбор);
Если Строки.Количество() > 0 Тогда
    ЭлементыФормы.СписокРаботников.ТекущаяСтрока = Строки[0];
КонецЕсли;
 

--------------------------------------------------------------------------------

     Методическая информация
   Chameleon1980
 
7 - 17.05.19 - 14:20
перечитал 0 - хрень
   progaoff
 
8 - 17.05.19 - 14:49
(4) Ага
   Chameleon1980
 
9 - 17.05.19 - 14:54
мы не знаем что у тебя в тз
   progaoff
 
10 - 17.05.19 - 14:58
(9) в ТЗ выборка из экселя, накладная, количество, цена, сумма, код поставщика который я в список значений помещаю и передаю в запрос. По этому коду ищется товар в базе
   Chameleon1980
 
11 - 17.05.19 - 15:03
ну так сделай типизированную тз из ексель
ее в вт (временная таблица) в запрос.
к ней или ее к справочнику КодыПоставщиков
и весь результат в тч (табличную часть) документа
   Chameleon1980
 
12 - 17.05.19 - 15:05
если у тебя просто найти элементы
может проще в цикле
Справочники.КодыПоставщиков.НайтиПоКоду(стр.Код)
   progaoff
 
13 - 17.05.19 - 15:08
(12) Да просто.
   progaoff
 
14 - 17.05.19 - 15:18
(12) Все гениальное просто. Спасибо

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