8.х Запрос по ТаблицеЗначений

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем Саша82, 19 дек 2007.

  1. TopicStarter Overlay
    Саша82
    Offline

    Саша82 Активный ученик

    Регистрация:
    11 окт 2007
    Сообщения:
    307
    Симпатии:
    0
    Баллы:
    26
    Напишите пожалуйста кокой нибуть пример как сделать запрос по ТаблицеЗначений. С Построителям запроса и источником данных и т.д. Как обратиться какой нибуть колонки этой таблице что то найти в ней?
  2. AlexFF
    Offline

    AlexFF Разбирающийся

    Регистрация:
    6 мар 2007
    Сообщения:
    565
    Симпатии:
    1
    Баллы:
    26
    а что мы тут подразумеваем под таблицойзначений?
  3. BabySG
    Offline

    BabySG Администраторы Команда форума Администратор

    Регистрация:
    10 июн 2007
    Сообщения:
    11.853
    Симпатии:
    12
    Баллы:
    29
    Лавочку с построителем прикрыли - ибо глючила до невозможности.
    На 8.0 - сие невозможно (запрос по ТЗ)
    На 8.1 - используй временные таблицы
  4. TopicStarter Overlay
    Саша82
    Offline

    Саша82 Активный ученик

    Регистрация:
    11 окт 2007
    Сообщения:
    307
    Симпатии:
    0
    Баллы:
    26
    Из Exel листа товары и цены я гружу вначале в таблицу значений которая прикреплена к табличному полю а потом в "Справочник.Номенклатра" и в регистр.

    Такое возможно! А как теперь из таблицы значений лучше отбирать что то?
  5. BabySG
    Offline

    BabySG Администраторы Команда форума Администратор

    Регистрация:
    10 июн 2007
    Сообщения:
    11.853
    Симпатии:
    12
    Баллы:
    29
    Возможно что?
  6. TopicStarter Overlay
    Саша82
    Offline

    Саша82 Активный ученик

    Регистрация:
    11 окт 2007
    Сообщения:
    307
    Симпатии:
    0
    Баллы:
    26
    Что в 1С8 сделали возможность делать запрос к таблице значений но возможность эта оказалась ужасной и от нее отказались.
  7. AlexFF
    Offline

    AlexFF Разбирающийся

    Регистрация:
    6 мар 2007
    Сообщения:
    565
    Симпатии:
    1
    Баллы:
    26

    ой, что-то мудрите вы этакое.
    зачем в табличное поле?
    и оно я так понимаю реквизит формы.

    всю задачу опишите. проще будет понять что же надо в итоге.
  8. TopicStarter Overlay
    Саша82
    Offline

    Саша82 Активный ученик

    Регистрация:
    11 окт 2007
    Сообщения:
    307
    Симпатии:
    0
    Баллы:
    26
    Мне нужно выделенные строки из табличного поля, которое соединено с таблицей значений загрузить в справочник и чтоб при этом, чтоб заполнялся регистр сведений с измерениями товар (СправочникСсылка. номенклатура), поставщик (СправочникСсылка. поставщики) этими же записями. Регистр подчинен документу ФормированиеЦен. Как загрузить записи в регистр я знаю, но как сделать, чтоб они соответствовали нужным записям в справочнике!?
    Вот такой код у меня есть:
    Код:
     Док=Документы.ФормированиеЦен.СоздатьДокумент();
    двиг=Док.Движения.ЦеныТоваров.Добавить();
    двиг.Поставщик="ff";
    двиг.товар="erer";
    двиг.цена="444";
    
    двиг.Регистратор=док.УстановитьСсылкуНового();    
    
    
    cпр=Справочники.Номенклатура.СоздатьЭлемент();
    
    НаборЗаписей = РегистрыСведений.ЦеныТоваров.СоздатьНаборЗаписей();
    ссылка=Документы.ФормированиеЦен.ПолучитьСсылку();
    НаборЗаписей.Отбор.Регистратор.Установить(ссылка); 
    
    НоваяЗапись = НаборЗаписей.Добавить(); 
    НоваяЗапись.Период = ТекущаяДата(); 
    НоваяЗапись.Товар = "товар"; 
    НоваяЗапись.Поставщик = "ВыбранныйДоговор"; 
    НоваяЗапись.Цена = 50; 
    спр.Записать();
    
    НаборЗаписей.Записать(); 
    //док.Движения.ЦеныТоваров.Записать();//???????? 
    
    Но это какая то все ерунда. Напишите мне, пожалуйста, какой нибуть рабочий код. Может в регистр можно и нужно записывать, создавая документ!? Полагаю что здесь надо как-то работать с УстановитьСсылкуНового () но до меня не допирает как эта штука работает.
  9. Эмин
    Offline

    Эмин Руководитель проектов

    Регистрация:
    25 май 2007
    Сообщения:
    1.178
    Симпатии:
    1
    Баллы:
    26
    Если вы хотите в регистре записи, соответствующие каким-то записям в справочнике - введите измерение в котором будете ссылаться на этот справочник или на крайний случай используйте реквизиты (в регистре)
  10. TopicStarter Overlay
    Саша82
    Offline

    Саша82 Активный ученик

    Регистрация:
    11 окт 2007
    Сообщения:
    307
    Симпатии:
    0
    Баллы:
    26
    Точно именно это я и хочу. Измерение Товар ссылается на СправочникНоменклатура но как при загрузки изТаблицыЗначений сделать эту связь. Вот например буду загружать в регистр сведений ЦеныТоваров и в справочник Номенклатура но ведь связь сама то не образуется наверно?
  11. AlexFF
    Offline

    AlexFF Разбирающийся

    Регистрация:
    6 мар 2007
    Сообщения:
    565
    Симпатии:
    1
    Баллы:
    26
    В регистр нужно записывать не значения элемента справочника "Номенклатура" а имеено ссылку на элемент. И соответственно реквизит у регистра должен иметь типданных СправочникСсылка.
  12. TopicStarter Overlay
    Саша82
    Offline

    Саша82 Активный ученик

    Регистрация:
    11 окт 2007
    Сообщения:
    307
    Симпатии:
    0
    Баллы:
    26
    А как получть ссылку у только что созданного элемента справочника чтоб сразу ее записать в регитр?
    Например вот так я создаю новый элемент :
    Код:
    cправ=Справочники.Номенклатура.СоздатьЭлемент();
    
    потом записываю в него. А как его сылку предать в регистр незнаю. Может с помщью УстановитьСсылкуНового и ПолучтьСсылкуНового? До меня не допирает как это использовать и в каких случаях. Если можно маленький примерчик?
  13. AlexFF
    Offline

    AlexFF Разбирающийся

    Регистрация:
    6 мар 2007
    Сообщения:
    565
    Симпатии:
    1
    Баллы:
    26

    Код:
    cправ=Справочники.Номенклатура.СоздатьЭлемент();
    .........
    cправ.записать();
    СсылкаНаЭлемент = справ.ссылка;
    
  14. TopicStarter Overlay
    Саша82
    Offline

    Саша82 Активный ученик

    Регистрация:
    11 окт 2007
    Сообщения:
    307
    Симпатии:
    0
    Баллы:
    26
    Спасибо. Получилось.

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