Modber Сообщество
профессионалов по 1С

Условие и выбор в запросе

1c 8
  
Сообщений: 1

0
Добрый день. Есть у меня такой работающий запрос:


Запрос.Текст = "ВЫБРАТЬ
| ДХМ_ПаспортИзделияТабличнаяЧасть235.Узел КАК Узел,
| ДХМ_ПаспортИзделияТабличнаяЧасть235.Деталь КАК Деталь,
| ДХМ_ПаспортИзделияТабличнаяЧасть235.Материал КАК Материал,
| ДХМ_ПаспортИзделияТабличнаяЧасть235.ПротоколИсслед ования КАК ПротХим,
| ДХМ_ПаспортИзделияТабличнаяЧасть235.ПротоколИсслед ования2 КАК ПротМех,
| ТабХим.C,
| ТабХим.Mn,
| ТабХим.Si,
| ТабХим.S,
| ТабХим.P,
| ТабХим.Cr,
| ТабХим.Ni,
| ТабХим.Ti,
| ТабХим.Mo,
| ТабХим.Al,
| ТабХим.W,
| ТабХим.V,
| ТабХим.Nb,
| ТабХим.Cu,
| ТабМех.ТипОбразца,
| ТабМех.ПределТекучести,
| ТабМех.ВрСопр,
| ТабМех.Удл,
| ТабМех.Суж,
| ТабМех.НомерПлавки,
| ТабМех.НомерПартии,
| ТабМех.Темп,
| ТабМех.Дата,
| ТабМех.Номер,
| ТабМех.ПослеМехСтар,
| ДХМ_ПаспортИзделияТабличнаяЧасть235.ГОСТДетали КАК ГОСТДетали,
| ДХМ_ПаспортИзделияТабличнаяЧасть235.ДопДанные КАК ДопДанные,
| ТабМех.ТемператураKCU КАК Т
|ИЗ
| Документ.ДХМ_ПаспортИзделия.ТабличнаяЧасть235 КАК ДХМ_ПаспортИзделияТабличнаяЧасть235
| ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
| ДХМ_ПротоколИсследованияХимическийСостав.C КАК C,
| ДХМ_ПротоколИсследованияХимическийСостав.Mn КАК Mn,
| ДХМ_ПротоколИсследованияХимическийСостав.Si КАК Si,
| ДХМ_ПротоколИсследованияХимическийСостав.S КАК S,
| ДХМ_ПротоколИсследованияХимическийСостав.P КАК P,
| ДХМ_ПротоколИсследованияХимическийСостав.Cr КАК Cr,
| ДХМ_ПротоколИсследованияХимическийСостав.Ni КАК Ni,
| ДХМ_ПротоколИсследованияХимическийСостав.Ti КАК Ti,
| ДХМ_ПротоколИсследованияХимическийСостав.Mo КАК Mo,
| ДХМ_ПротоколИсследованияХимическийСостав.Al КАК Al,
| ДХМ_ПротоколИсследованияХимическийСостав.W КАК W,
| ДХМ_ПротоколИсследованияХимическийСостав.V КАК V,
| ДХМ_ПротоколИсследованияХимическийСостав.Nb КАК Nb,
| ДХМ_ПротоколИсследованияХимическийСостав.Cu КАК Cu,
| ДХМ_ПротоколИсследованияХимическийСостав.Ссылка.Но мер КАК Номер,
| ДХМ_ПротоколИсследованияХимическийСостав.НомерСтро ки КАК НомерСтроки
| ИЗ
| Документ.ДХМ_ПротоколИсследования.ХимическийСостав КАК ДХМ_ПротоколИсследованияХимическийСостав
|
| СГРУППИРОВАТЬ ПО
| ДХМ_ПротоколИсследованияХимическийСостав.C,
| ДХМ_ПротоколИсследованияХимическийСостав.Mn,
| ДХМ_ПротоколИсследованияХимическийСостав.Si,
| ДХМ_ПротоколИсследованияХимическийСостав.S,
| ДХМ_ПротоколИсследованияХимическийСостав.P,
| ДХМ_ПротоколИсследованияХимическийСостав.Cr,
| ДХМ_ПротоколИсследованияХимическийСостав.Ni,
| ДХМ_ПротоколИсследованияХимическийСостав.Ti,
| ДХМ_ПротоколИсследованияХимическийСостав.Mo,
| ДХМ_ПротоколИсследованияХимическийСостав.Al,
| ДХМ_ПротоколИсследованияХимическийСостав.W,
| ДХМ_ПротоколИсследованияХимическийСостав.V,
| ДХМ_ПротоколИсследованияХимическийСостав.Nb,
| ДХМ_ПротоколИсследованияХимическийСостав.Ссылка.Но мер,
| ДХМ_ПротоколИсследованияХимическийСостав.Cu,
| ДХМ_ПротоколИсследованияХимическийСостав.НомерСтро ки) КАК ТабХим
| ПО (ТабХим.Номер = ДХМ_ПаспортИзделияТабличнаяЧасть235.ПротоколИсслед ования.Номер)
| ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
| ДХМ_ПротоколИсследованияМехИспытание.ТипОбразца КАК ТипОбразца,
| ДХМ_ПротоколИсследованияМехИспытание.ПределТекучес ти КАК ПределТекучести,
| ДХМ_ПротоколИсследованияМехИспытание.ВременноеСопр отивление КАК ВрСопр,
| ДХМ_ПротоколИсследованияМехИспытание.Относительное Удлинение КАК Удл,
| ДХМ_ПротоколИсследованияМехИспытание.Относительное Сужение КАК Суж,
| ДХМ_ПротоколИсследованияМехИспытание.Ссылка.Номер КАК Номер,
| ДХМ_ПротоколИсследованияМехИспытание.Ссылка.Докуме нтОснование.НомерПлавки КАК НомерПлавки,
| ДХМ_ПротоколИсследованияМехИспытание.Ссылка.Докуме нтОснование.НомерПартии КАК НомерПартии,
| ДХМ_ПротоколИсследованияМехИспытание.Ссылка.Докуме нтОснование.ТемпературныйРежим КАК Темп,
| ДХМ_ПротоколИсследованияМехИспытание.Ссылка.Дата КАК Дата,
| ДХМ_ПротоколИсследованияМехИспытание.KCUПослеМехСт р КАК ПослеМехСтар,
| ДХМ_ПротоколИсследованияМехИспытание.НомерСтроки КАК НомерСтроки,
| ДХМ_ПротоколИсследованияМехИспытание.ТемператураKC U КАК ТемператураKCU
| ИЗ
| Документ.ДХМ_ПротоколИсследования.МехИспытание КАК ДХМ_ПротоколИсследованияМехИспытание
|
| СГРУППИРОВАТЬ ПО
| ДХМ_ПротоколИсследованияМехИспытание.ТипОбразца,
| ДХМ_ПротоколИсследованияМехИспытание.ПределТекучес ти,
| ДХМ_ПротоколИсследованияМехИспытание.Относительное Удлинение,
| ДХМ_ПротоколИсследованияМехИспытание.Относительное Сужение,
| ДХМ_ПротоколИсследованияМехИспытание.ВременноеСопр отивление,
| ДХМ_ПротоколИсследованияМехИспытание.Ссылка.Номер,
| ДХМ_ПротоколИсследованияМехИспытание.Ссылка.Докуме нтОснование.НомерПлавки,
| ДХМ_ПротоколИсследованияМехИспытание.Ссылка.Докуме нтОснование.НомерПартии,
| ДХМ_ПротоколИсследованияМехИспытание.Ссылка.Докуме нтОснование.ТемпературныйРежим,
| ДХМ_ПротоколИсследованияМехИспытание.Ссылка.Дата,
| ДХМ_ПротоколИсследованияМехИспытание.KCUПослеМехСт р,
| ДХМ_ПротоколИсследованияМехИспытание.НомерСтроки,
| ДХМ_ПротоколИсследованияМехИспытание.ТемператураKC U) КАК ТабМех
| ПО (ТабМех.Номер = ДХМ_ПаспортИзделияТабличнаяЧасть235.ПротоколИсслед ования2.Номер)
|ГДЕ
| ДХМ_ПаспортИзделияТабличнаяЧасть235.Ссылка.Номер = &Ссылка
|
|УПОРЯДОЧИТЬ ПО
| Деталь
|АВТОУПОРЯДОЧИВАНИЕ";


В док "Документ.ДХМ_ПаспортИзделия.ТабличнаяЧасть235 " есть поле "ПротоколИсследования2" типа "Документ.ДХМ_ПротоколИсследование". Запрос выбирал данные из табличной части Документ.ДХМ_ПаспортИзделия.ТабличнаяЧасть235 + из того документа (ПротоколИсследования) который указ в поле ПротоколИсследования2. однако теперь требование изминилось. Поле "ПротоколИсследования2" стало типа "ДокументСсылка" т.к оно может быть или "Документ.ДХМ_ПротоколИсследование" или "Документ.ДХМ_ВходнойСертификат". Нужно задать условие что если в поле ПротоколИсследования2 выбран док ПротоколИсследование то данные выбираются из табличной часть док ПротоколИсследование, а если выбран Документ.ДХМ_ВходнойСертификат — то соотвественно из его табличной части. Подскажите как можно такое условие задать?
Сообщений: 5

0
Я бы сделала 2 запроса:
1)Текст запроса....
|ГДЕ
|Реквизиту "ПротоколИсследования2" присваиваешь параметр.
Далее устанавливаешь этот параметр, который равен ссылке на нужный документ
делаешь выборку из табличной части
2)второй запрос аналогичный,только параметр будет равен другому документу
В начало страницы 
|
Перейти на форум: