Имя: Пароль:
1C
1С v8
как правильно выбрать в запросе регистратор по двум регистрам?
0 qeos
 
05.09.11
12:56
один документ делает записи либо в один регистр накопления, либо в другой, либо в оба..

как правильно построить запрос чтобы получить все документы делающие запись или в тот или в другой или в оба?

как я понимаю есть много способов:
1.
выбрать * из
(выбрать РАЗЛИЧНЫЕ
  док.регистратор из РН.регистр1(,,Регистратор) как док
объединить все
выбрать
  док.регистратор из РН.регистр2(,,Регистратор) как док) как ИтоговаяТЧ

2.
выбрать * из
(выбрать
  док.регистратор из РН.регистр1(,,Регистратор) как док
объединить все
выбрать
  док.регистратор из РН.регистр2(,,Регистратор) как док) как ИтоговаяТЧ
СГРУППИРОВАТЬ по ИтоговаяТЧ.Регистратор

3.
выбрать естьNULL(док1.Регистратор,док2.Регистратор) из
  док.регистратор из РН.регистр1(,,Регистратор) как док
  ПОЛНОЕ СОЕДИНЕНИЕ РН.регистр2(,,Регистратор) как док2 по док1.Регистратор = док2.Регистратор

4. ну еще можно пару уж совсем извращенских сделать..

так как верно-то будет?
1 shuhard
 
05.09.11
12:57
(0) объединить все
2 qeos
 
05.09.11
13:00
(1) выбрать различные + объединить все
или
выбрать + объединить все + сгруппировать?
3 Дикообразко
 
05.09.11
13:00
нахер группировать?
4 Дикообразко
 
05.09.11
13:00
объеденить без все
5 qeos
 
05.09.11
13:01
(3) потому что мне не нужны одинаковые регистраторы..
6 qeos
 
05.09.11
13:03
(4)
выбрать * из
(выбрать
  док.регистратор из РН.регистр1(,,Регистратор) как док
объединить
выбрать
  док.регистратор из РН.регистр2(,,Регистратор) как док) как ИтоговаяТЧ

так чтоле? т.е. так транслятор запросов прожует более корректно?
7 shuhard
 
05.09.11
13:04
(6) если нужен хотя бы один, то код верный
Ошибка? Это не ошибка, это системная функция.