Имя: Пароль:
1C
1С v8
запрос: объединить две таблицы с разным колич. полей
0 Atlant
 
06.11.13
10:28
Привет всем!
имеются две таблицы (бронь и склад) отличаются двумя ключевыми полями.
нужно сделать запрос в котором будет ОДНО уточненное поле (номенклатура) как в 7.7 было в запросах
...
   Номенклатура = Документ.Бронь.Номенклатура, Документ.ПриходТовара.Номенклатура;
---
"уточнение описания переменной".
как это можно сделать?
1 Нуф-Нуф
 
06.11.13
10:29
объедини, будь мужиком, блеать!
2 Wobland
 
06.11.13
10:29
это нужно сделать запрос. всегда ваш, кэп
3 Atlant
 
06.11.13
10:33
как объединить таблицы с РАЗНЫМ КОЛИЧЕСТВОМ ПОЛЕЙ!?!?

в запросе и вопрос. как?
(схема)
выбрать
   номенклатура
из
( выбрать
     номенклатура
  из
     таблица1.Номенклатура

  объединить

  выбрать
     номенклатура
  из
     таблица2.Номенклатура
)

так?
4 Нуф-Нуф
 
06.11.13
10:34
да
5 Wobland
 
06.11.13
10:34
примерчик тут у меня завалялся.. подзапрос - объединение

select sum(subquery.s)
from
(select 20 as s
union
select null) as subquery

union all

select sum(20+null)
6 Atlant
 
06.11.13
10:39
там разное количество полей в двух таблицах и нужны все:
рез таблица должна быть:

номенклатура владелецБрони склад бронь
ежики        вася          10     5

таблица склад:
только номенклатура и количество
таблица бронь:
номенклатура владелец и количество

в рез таблице должны быть ДВЕ колонки с количеством, а номенклатура одна.
7 Atlant
 
06.11.13
10:39
плюс владелец
8 Wobland
 
06.11.13
10:39
(6) это называется соединение
9 shuhard
 
06.11.13
10:40
(6) в чем проблема вернуть 0 из более узкой таблицы и поверх пустить группировку ?
10 Atlant
 
06.11.13
10:42
соединение полное делаю - приходится делать таб1.номенклатура и таб2.номенклатураДВА - потому что иначе выдает ошибку.
получается таблица номенклатура номенклатураДВА владелец кол бронь
а нужна ОДНА номенклатура!!
если тупо опустить поле из таб 2, то когда на складе нет ее а она вся на брони - ПУСТОЕ ПОЛЕ выходит!! :(
11 Atlant
 
06.11.13
10:44
(9) ммм.. пример (хотя бы схему) покажешь?? сорри не въезжаю я в эти махинации с запросом! :(
12 Серго62
 
06.11.13
10:50
(11) Примерно так...

ВЫБРАТЬ
    ЗаказыПокупателей.Номенклатура,
    ЗаказыПокупателей.Количество,
    Продажи.Количество КАК Количество1
ИЗ
    РегистрНакопления.ЗаказыПокупателей КАК ЗаказыПокупателей
        ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрНакопления.Продажи КАК Продажи
        ПО ЗаказыПокупателей.Номенклатура = Продажи.Номенклатура
13 Atlant
 
06.11.13
10:54
(12) они не всегда идентичны и продажи выпадут когда по заказам нет уже этой номенклатуры! :(
в этом вся загвоздка!
нужно чтобы в результат попадали ОБЕ номенклатуры, но проходили как одно поле номенклатура.
в общем по моему придется формировать запрос с двумя номенклатурами, а потом просто перегонять вручную в единую таблицу :(( уже дымит мозг..
14 Wobland
 
06.11.13
10:55
(13) выдыхай. это один запрос
15 PR
 
06.11.13
10:56
(6) Что такое владелец?
16 anaed
 
06.11.13
10:59
Допустим во второй таблице нет суммы.

выбрать
   номенклатура
   количество
   сумма
из

( выбрать
     номенклатура
     количество
     сумма
  из
     таблица1.Номенклатура

  объединить

  выбрать
     номенклатура
     количество
     0
  из
     таблица2.Номенклатура
)

Теперь понятно как объединять таблицы с разным количеством полей?
17 Atlant
 
06.11.13
11:06
(15) это контрагент на ком висит бронь. измерение в регистре накопления.
(14) как в (12) запрос пропускает номенклатуру которая есть на брони. т.к. на складе её уже нету.
делал полное объединение но тогда приходится делать две номенклатуры.
(16) %) и что, так будет работать??? в реальном запросе:

...
выбрать
   Бронь.Номенклатура,
   Бронь.КолОстаток,
   0
из РегистрыНакопления.Бронь.Остатки().. как Бронь
...

реально не выдаст ошибку?!?!??!
18 Wobland
 
06.11.13
11:08
это кто додумался ресурс регистра Колом назвать?
19 shuhard
 
06.11.13
11:08
(17)[реально не выдаст ошибку?!?!??!]
проверить слабо ?
20 Серго62
 
06.11.13
11:10
(17) Открой для себя консоль запросов
21 Atlant
 
06.11.13
11:12
(19) ФЭНКС ВЕРИ МАТЧ!!! :)))
все.
проканало с недокументированной фичей подсказанной товарищем shuhard!!
респект и уважуха! :)
где нашел инфу??
22 Wobland
 
06.11.13
11:13
(21) очень недокументированной, я бы сказал
23 Atlant
 
06.11.13
11:14
(22) мне такой ход нигде не попадался.. :) а тебе?
24 Wobland
 
06.11.13
11:14
(23) попадался. даже в документации описан
25 Atlant
 
06.11.13
11:15
shuhard тебе + (где тут репа повышается то?) :)
26 Серго62
 
06.11.13
11:16
(23) а в (16) разве не то же самое тебе подсказали, только без группировки?
27 Atlant
 
06.11.13
11:16
(24) вот перед тем как сюда буковки писать - просмотрел два справочника (по языку стандарт, Митичкин запросы)!!
чет там такого нету!
может у тебя особенная документация есть? так скажи где лежит и как называется! :)
28 Atlant
 
06.11.13
11:17
(26) я про 16 и говорил!! подстановка вместо имени поля тупо 0 для забивания количества полей при объединении - впервые вижу!!
29 Wobland
 
06.11.13
11:19
30 Atlant
 
06.11.13
11:21
(29) и где ты там видишь, что можно в "СписокПолей(!)Выборки" можно очень тупо НОЛЬ написать!!???
31 hhhh
 
06.11.13
11:22
(30) ну если откроешь любую типовую конфигурацию 1с, а ты ведь их открывал? То найдешь там не менее 500 запросов такого типа. С 0 или NULL.
32 Wobland
 
06.11.13
11:22
(30) ВЫБРАТЬ <СписокПолей>. всё остальное в скобках
33 anaed
 
06.11.13
11:22
34 anaed
 
06.11.13
11:23
очень очень секретная фича - только для избранных
35 Wobland
 
06.11.13
11:23
(32) не на тот вопрос ответил ;)
тыкаешь по гиперссылке и читаешь
36 Atlant
 
06.11.13
11:24
(33) это из 8.2 справки?? мне не попадалась :(
37 Wobland
 
06.11.13
11:25
(36) ДенисЧ приторговывает тут
38 hhhh
 
06.11.13
11:26
(36) кнопку F1 диверсанты вырвали с клавиатуры?
39 Atlant
 
06.11.13
11:27
(31) ну все все.. уговорил.. пойду искать ноль в запросах!! :)

просто для меня была сама логика "выбрать НОЛЬ из таблицы" видать неприемлема.. буду расширять границы своей логики:

выбрать ноль из нуля итог СУММА(ноль) по Ноль! :) мляяя
40 Wobland
 
06.11.13
11:27
(38) ДенисЧ продажи повышает
41 Wobland
 
06.11.13
11:28
(39) ИЗ тоже не обязательно
42 Atlant
 
06.11.13
11:28
(38) ну кто тролля разбудил?!?!
43 Wobland
 
06.11.13
11:28
(39) предскажешь результат (5)? ;)
44 Atlant
 
06.11.13
11:29
(41) во во.. :) ну ка, че получится?
выбрать
  ноль
из
  ноль
итог
  Сумма(ноль)
по
  Ноль;

:))
45 PR
 
06.11.13
11:30
(21) Эээ, а где владелец в этом запросе, я что-то не понял?
Или ты не знал, как в объединении в одном из запросов 0 подставить?
46 Wobland
 
06.11.13
11:30
(44) что за "ноль"?
47 PR
 
06.11.13
11:31
(44) Прикинь, это будет работать :))
ВЫБРАТЬ 0
48 Skom
 
06.11.13
11:31
че, все пробовать пошли? )))
49 Atlant
 
06.11.13
11:32
(47) ЛОЛ!! :) не сомневаюсь УЖЕ!! :)
(45) [Или ты не знал, как в объединении в одном из запросов 0 подставить?] как поставить знал, не знал что им можно поля подменять!! :)
50 Atlant
 
06.11.13
11:34
ладно. всем спасибо! особенно - типовоконфигурацияисследователям и скриншотерам!! куда мы без вас!! :) я серьезно.. иногда прям никак!! :)

всем удачи и реализации!
51 anaed
 
06.11.13
11:40
типовоконфигурацияисследователям... я вот не пойму это оскорбление или наоборот?
52 hhhh
 
06.11.13
12:10
(50) а зачем биться лбом об стену, изобретая немыслимый велосипед? Когда можно открыть готовое и один раз прочитать.