|
Как сделать запрос из двух регистров. | ☑ | ||
---|---|---|---|---|
0
Vladimir2503
26.03.13
✎
22:43
|
Здравствуйте!!!
Помогите сделать запрос из 2х регистров. Нужно как то обьединить их,не могу сообразить как!!! Процедура КнопкаВыполнитьНажатие(Кнопка) Запрос = Новый Запрос; ТекстЗапроса = "ВЫБРАТЬ | Контрагенты.Ссылка КАК Дачник, | Контрагенты.Наименование КАК ФИО, | УчасткиСведения.Участок.Улица КАК Улица, | УчасткиСведения.Участок.НомерУчастка КАК Номер, | УчасткиСведения.Участок.Площадь КАК Площадь, | УчасткиСведения.Участок.Общество КАК Общество |ИЗ | Справочник.Контрагенты КАК Контрагенты | ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.УчасткиСведения КАК УчасткиСведения | ПО Контрагенты.Ссылка = УчасткиСведения.Контрагент |ГДЕ | Контрагенты.Родитель = &Родитель"; Если НЕ ВыборУлиц.Пустая() Тогда ТекстЗапроса = ТекстЗапроса + " | И УчасткиСведения.Участок.Улица = &Улица"; КонецЕсли; ТекстЗапроса = ТекстЗапроса + " | |УПОРЯДОЧИТЬ ПО | ФИО"; Запрос.Текст = ТекстЗапроса; Запрос.УстановитьПараметр("Родитель",Справочники.Контрагенты.НайтиПоКоду("000000052")); Если НЕ ВыборУлиц.Пустая() Тогда Запрос.УстановитьПараметр("Улица",ВыборУлиц); КонецЕсли; ТабличнаяЧасть1.Загрузить(Запрос.Выполнить().Выгрузить()); КонецПроцедуры и второй регистр бухгалтерии ВЫБРАТЬ ХозрасчетныйОстаткиИОбороты.Счет, ХозрасчетныйОстаткиИОбороты.Субконто1 как Контрагенты, ХозрасчетныйОстаткиИОбороты.Организация, ХозрасчетныйОстаткиИОбороты.СуммаНачальныйОстатокДт, ХозрасчетныйОстаткиИОбороты.СуммаНачальныйОстатокКт, ХозрасчетныйОстаткиИОбороты.СуммаОборотДт, ХозрасчетныйОстаткиИОбороты.СуммаОборотКт, ХозрасчетныйОстаткиИОбороты.СуммаКонечныйОстатокДт, ХозрасчетныйОстаткиИОбороты.СуммаКонечныйОстатокКт ИЗ РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты КАК ХозрасчетныйОстаткиИОбороты |
|||
1
H A D G E H O G s
26.03.13
✎
22:44
|
Если НЕ ВыборУлиц.Пустая() Тогда
ТекстЗапроса = ТекстЗапроса + " | И УчасткиСведения.Участок.Улица = &Улица"; КонецЕсли; Плохо. Сделать единным запросом, пустоту улиц передать папаметром. |
|||
2
H A D G E H O G s
26.03.13
✎
22:45
|
Нужно как то обьединить их,не могу сообразить как!!!
Ну ты же в 1 запросе как то объединил |
|||
3
Vladimir2503
26.03.13
✎
22:51
|
H A D G E H O G s
Я дорабатываю уже существующую обработку,которую написали до меня. |
|||
4
zladenuw
26.03.13
✎
22:56
|
что надо в итоге ?
По первому запросу замени условие в коде на условие в запросе ВЫБОР КОГДА &Улица = ЗНАЧЕНИЕ(справочник.Улица .ПустаяСсылка) ТОГДА ИСТИНА ИНАЧЕ Влож.Улица = &Улица КОНЕЦ |
|||
5
H A D G E H O G s
26.03.13
✎
22:57
|
(3) Все так говорят.
|
|||
6
zladenuw
26.03.13
✎
22:59
|
ну если тупо смотреть в твои запросы. то соединение между ними будет по контрагенту. а дальше все зависит, что тебе надо. угадывать можно долго
|
|||
7
kiruha
26.03.13
✎
22:59
|
(4)
Что это ? |
|||
8
H A D G E H O G s
26.03.13
✎
23:01
|
(7) Это кусок ЧАСТИЧНО правильно написанного запроса.
|
|||
9
H A D G E H O G s
26.03.13
✎
23:03
|
(7) Просто zladenuw не достаточно опытен и не знает правило программиста
"на всякий случай" Если Значение=Истина Тогда Ситуация=1; ИначеЕсли Значение=Ложь Тогда Ситуация=2; Иначе Ситуация=3; КонецЕсли; Так и тут - ВыборУлиц - необязательно ссылка на справочник Улицы. |
|||
10
Vladimir2503
26.03.13
✎
23:09
|
В итоге мне надо чтоб выбирал остатки и обороты по контрагентам по 62 счету
http://www.fotolink.su/v.php?id=4055d8b7faea352c35a5702a72aa40d3 |
|||
11
zladenuw
26.03.13
✎
23:16
|
(9) всегда есть 3 варианта ? :)
|
|||
12
zladenuw
26.03.13
✎
23:17
|
(10) если судить по форме. то достаточно в запросе указать так как я написал, тип ведь ссылка. если было бы составной тип, то да согласен на (9)
|
|||
13
zladenuw
26.03.13
✎
23:19
|
(10) давай делай запрос и показывай.
|
|||
14
Vladimir2503
26.03.13
✎
23:26
|
zladenuw
Вы наверное не поняли меня. Мне нужно как то первый и второй запросы обьединить и выбрать по 62 счету по контрагентам |
|||
15
zladenuw
26.03.13
✎
23:30
|
(14) я то тебя понял. ты не понял.
ну так. делаешь первый запрос вложенным или пакетным. второй запрос по бух регистру где отбор по счету и связь по субконто контрагента. ну и группировка. и ты получаешь 1 таблицу для вывода |
|||
16
zladenuw
26.03.13
✎
23:35
|
типа так.
думай. ВЫБРАТЬ Контрагенты.Ссылка, КонтактнаяИнформация.Представление ПОМЕСТИТЬ ТЗ ИЗ Справочник.Контрагенты КАК Контрагенты ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК КонтактнаяИнформация ПО Контрагенты.Ссылка = КонтактнаяИнформация.Объект ГДЕ Контрагенты.Ссылка = &Ссылка И КонтактнаяИнформация.Тип = &Тип И КонтактнаяИнформация.Вид = &Вид ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ ТЗ.Ссылка, СУММА(ХозрасчетныйОстаткиИОбороты.СуммаНачальныйОстаток) КАК СуммаНачальныйОстаток, СУММА(ХозрасчетныйОстаткиИОбороты.СуммаКонечныйОстаток) КАК СуммаКонечныйОстаток, СУММА(ХозрасчетныйОстаткиИОбороты.СуммаОборот) КАК СуммаОборот ИЗ ТЗ КАК ТЗ ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрБухгалтерии.Хозрасчетный.ОстаткиИОбороты(&p1, &p2, , , Счет = &счет, , ) КАК ХозрасчетныйОстаткиИОбороты ПО ТЗ.Ссылка = ХозрасчетныйОстаткиИОбороты.Субконто1 СГРУППИРОВАТЬ ПО ТЗ.Ссылка |
|||
17
Vladimir2503
26.03.13
✎
23:39
|
zladenuw
спасибо завтра попробую сделать. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |