Имя: Пароль:
1C
1С v8
Запрос к реквизитам и ТЧ одного документа, как к именно ТЧ добавить данные левым соед?
,
0 SkillUp
 
27.07.18
11:20
Запрос к реквизитам и ТЧ одного документа, как к именно ТЧ, добавить данные левым соединением? В связях указываю левое соединение к ТЧ. Товары по номенклатуре. Добавляет данные к реквизитам...

Могу код предоставить, но он слишком большой. Если б просто "теоретически" пояснили как это выполнить, дальше сам разберусь...
1 aleks_default
 
27.07.18
11:49
Без кода не получится понять что ты делаешь не так. Весь код не нужно, только там где делаешь соединение с ТЧ.
А теоретически что пояснить? Берешь шапку документа и соединяешь с ТЧ через ссылку, что тут нужно пояснять еще?
2 lodger
 
27.07.18
11:51
еще можно сделать запрос только к ТЧ, а условия и реквизиты вытащить через точку. все равно соединение сделает,но уже платформа.
3 aleks_default
 
27.07.18
12:03
А вононоче. Он по НОМЕНКЛАТУРЕ соединяет.
4 SkillUp
 
27.07.18
12:23
(3) Ок , вот код:

    Запрос.УстановитьПараметр("ТекущийДокумент", ЭтотОбъект.Ссылка);
    Запрос.УстановитьПараметр("ВидСкладаНТТ",    Перечисления.ВидыСкладов.НТТ);
    Запрос.УстановитьПараметр("ВалютаПечати",    ВалютаПечати);
    
    Запрос.Текст =
    "ВЫБРАТЬ
    |    Номер,
    |    Дата,
    |    Организация,
    |    Организация КАК Поставщик,    
    |    Склад,    
    |    Склад.Представление КАК Склад,
    |    Ответственный.ФизЛицо.Наименование     КАК Выписал,
    |    ПредседательКомиссии.Наименование    КАК ПредседательКомиссии,
    |    ПервыйЧленКомиссии.Наименование        КАК ПервыйЧленКомиссии,
    |    ВторойЧленКомиссии.Наименование        КАК ВторойЧленКомиссии,
    |    ТретийЧленКомиссии.Наименование     КАК ТретийЧленКомиссии,
    |   &ВалютаПечати КАК Валюта,
    |    Товары.(
    |        НомерСтроки,
    |        Номенклатура,
    |        Номенклатура КАК КодАртикул,
    |        ВЫРАЗИТЬ(Номенклатура.НаименованиеПолное КАК СТРОКА(1000)) КАК Товар,
    |        Количество                      КАК Количество,
    |        КоличествоУчет                  КАК КоличествоПоУчету,
    |        Номенклатура.ЕдиницаХраненияОстатков.Представление  КАК ЕдиницаИзмерения,
    |        ВЫБОР
    |            КОГДА Склад.ВидСклада = &ВидСкладаНТТ ТОГДА ЦенаВРознице
    |            ИНАЧЕ Цена
    |        КОНЕЦ КАК Цена,
    |        ВЫБОР
    |            КОГДА Склад.ВидСклада = &ВидСкладаНТТ ТОГДА Количество * ЦенаВРознице
    |            ИНАЧЕ Сумма
    |        КОНЕЦ КАК Сумма,
    |        ВЫБОР
    |            КОГДА Склад.ВидСклада = &ВидСкладаНТТ ТОГДА КоличествоУчет *ЦенаВРознице
    |            ИНАЧЕ СуммаУчет
    |        КОНЕЦ КАК СуммаПоУчету,
    |        ХарактеристикаНоменклатуры      КАК Характеристика,
    |        NULL                            КАК Серия
    |    )
    |ИЗ
    |    Документ.ИнвентаризацияТоваровНаСкладе КАК ИнвентаризацияТоваровНаСкладе
    |
    |ГДЕ
    |    ИнвентаризацияТоваровНаСкладе.Ссылка = &ТекущийДокумент
    |
    |УПОРЯДОЧИТЬ ПО
    |     Товары.НомерСтроки";

    Шапка = Запрос.Выполнить().Выбрать();
    Шапка.Следующий();
    ВыборкаСтрокТовары = Шапка.Товары.Выбрать();

Не могу добавить данные (СрезПоследних цен) в ВыборкаСтрокТовары. Или подскажите как это выполнить?
5 SkillUp
 
27.07.18
12:24
Не могу добавить данные (СрезПоследних цен) в ВыборкаСтрокТовары. Или подскажите как это выполнить?
6 SkillUp
 
27.07.18
12:26
Цены добавляю закупочные, если что... Чтоб не было лишних вопросов на подобие "А зачем там жеж есть цены". Есть, но розничные! Мне надо закупочные...
7 lodger
 
27.07.18
12:27
так (4) это ж вложенная в поле таблица.
8 lodger
 
27.07.18
12:27
где левое соединение анонсированное в (0) ?
9 SkillUp
 
27.07.18
12:29
(8) Удалил, так как желаемого результата не получается...
10 SkillUp
 
27.07.18
12:30
(8) 1 мин. сейчас выложу как я хотел..
11 SkillUp
 
27.07.18
12:30
(8)

Хотел вот так:
ВЫБРАТЬ
    ИнвентаризацияТоваровНаСкладе.Номер,
    ИнвентаризацияТоваровНаСкладе.Дата,
    ИнвентаризацияТоваровНаСкладе.Организация,
    ИнвентаризацияТоваровНаСкладе.Организация КАК Поставщик,
    ИнвентаризацияТоваровНаСкладе.Склад КАК Склад1,
    ИнвентаризацияТоваровНаСкладе.Склад.Представление КАК Склад,
    ИнвентаризацияТоваровНаСкладе.Ответственный.ФизЛицо.Наименование КАК Выписал,
    ИнвентаризацияТоваровНаСкладе.ПредседательКомиссии.Наименование КАК ПредседательКомиссии,
    ИнвентаризацияТоваровНаСкладе.ПервыйЧленКомиссии.Наименование КАК ПервыйЧленКомиссии,
    ИнвентаризацияТоваровНаСкладе.ВторойЧленКомиссии.Наименование КАК ВторойЧленКомиссии,
    ИнвентаризацияТоваровНаСкладе.ТретийЧленКомиссии.Наименование КАК ТретийЧленКомиссии,
    &ВалютаПечати КАК Валюта,
    ИнвентаризацияТоваровНаСкладе.Товары.(
        НомерСтроки,
        Номенклатура,
        Номенклатура КАК КодАртикул,
        ВЫРАЗИТЬ(ИнвентаризацияТоваровНаСкладе.Товары.Номенклатура.НаименованиеПолное КАК СТРОКА(1000)) КАК Товар,
        Количество КАК Количество,
        КоличествоУчет КАК КоличествоПоУчету,
        Номенклатура.ЕдиницаХраненияОстатков.Представление КАК ЕдиницаИзмерения,
        ВЫБОР
            КОГДА ИнвентаризацияТоваровНаСкладе.Склад.ВидСклада = &ВидСкладаНТТ
                ТОГДА ИнвентаризацияТоваровНаСкладе.Товары.ЦенаВРознице
            ИНАЧЕ ЦеныНоменклатурыСрезПоследних.Цена
        КОНЕЦ КАК Цена,
        ВЫБОР
            КОГДА ИнвентаризацияТоваровНаСкладе.Склад.ВидСклада = &ВидСкладаНТТ
                ТОГДА ИнвентаризацияТоваровНаСкладе.Товары.Количество * ИнвентаризацияТоваровНаСкладе.Товары.ЦенаВРознице
            ИНАЧЕ ИнвентаризацияТоваровНаСкладе.Товары.Сумма
        КОНЕЦ КАК Сумма,
        ВЫБОР
            КОГДА ИнвентаризацияТоваровНаСкладе.Склад.ВидСклада = &ВидСкладаНТТ
                ТОГДА ИнвентаризацияТоваровНаСкладе.Товары.КоличествоУчет * ИнвентаризацияТоваровНаСкладе.Товары.ЦенаВРознице
            ИНАЧЕ ИнвентаризацияТоваровНаСкладе.Товары.СуммаУчет
        КОНЕЦ КАК СуммаПоУчету,
        ХарактеристикаНоменклатуры КАК Характеристика,
        NULL КАК Серия
    ),
    ЦеныНоменклатурыСрезПоследних.Цена КАК ЦенаЗак
ИЗ
    Документ.ИнвентаризацияТоваровНаСкладе КАК ИнвентаризацияТоваровНаСкладе
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних(
                &ДатаДокумента,
                ТипЦен = &ТипЦен
                    И Номенклатура В
                        (ВЫБРАТЬ
                            ИнвентаризацияТоваровНаСкладеТовары.Номенклатура
                        ИЗ
                            Документ.ИнвентаризацияТоваровНаСкладе.Товары КАК ИнвентаризацияТоваровНаСкладеТовары
                        ГДЕ
                            ИнвентаризацияТоваровНаСкладеТовары.Ссылка = &ТекущийДокумент)) КАК ЦеныНоменклатурыСрезПоследних
        ПО ИнвентаризацияТоваровНаСкладе.Товары.Номенклатура = ЦеныНоменклатурыСрезПоследних.Номенклатура
ГДЕ
    ИнвентаризацияТоваровНаСкладе.Ссылка = &ТекущийДокумент

УПОРЯДОЧИТЬ ПО
    ИнвентаризацияТоваровНаСкладе.Товары.НомерСтроки
12 lodger
 
27.07.18
12:31
(9) возьми другую таблицу не Документ.ИнвентаризацияТоваровНаСкладе
а Документ.ИнвентаризацияТоваровНаСкладе.Товары
13 SkillUp
 
27.07.18
12:31
(8) Он в "шапку" данные добавляет... А мен надо данные в ВыборкаСтрокТовары.
14 SkillUp
 
27.07.18
12:32
Шапка = Запрос.Выполнить().Выбрать();
    Шапка.Следующий();
    ВыборкаСтрокТовары = Шапка.Товары.Выбрать();
15 lodger
 
27.07.18
12:36
(14) научись делать итоги и обход по группировкам.
16 lodger
 
27.07.18
12:37
+ (15) но зачем тебе этот геморрой, если ты все равно пишешь ИнвентаризацияТоваровНаСкладе.Ссылка = &ТекущийДокумент
и гонишь туда 1 ссылку на 1 документ?
17 SkillUp
 
27.07.18
12:37
(15) Ок. (
18 GenAcid
 
27.07.18
12:38
(13) Выбираешь шапку, они и попадают в шапку. Выбирай табличную часть:
ИЗ Документ.ИнвентаризацияТоваровНаСкладе.Товары КАК ...
19 SkillUp
 
27.07.18
12:38
(16) ВСе данные нужны из одного документа, поэтому ссылка на документ одна...
20 SkillUp
 
27.07.18
12:40
(18) Да кажись уже понял из-за чего...
21 SkillUp
 
27.07.18
12:40
(18) (16)  Спасибо!
Проблемы невозможно решaть нa том же уровне компетентности, нa котором они возникaют. Альберт Эйнштейн