Имя: Пароль:
1C
1C 7.7
v7: Запрос 1sqlite "через 2 точки" нельзя?
,
0 palpetrovich
 
11.06.15
15:26
кодик:

    |Select
    |    Рег.Менеджер [Менеджер :Справочник.Сотрудники]
    |   ,Рег.Поставщик [Поставщик :Справочник.Контрагенты]
    |   ,SUM(Рег.Приход) [Приход :Число.19.5]
    |From
    |    (
    |    SELECT
    |         Движения.Товар.Менеджер Менеджер
    |        ,Движения.Поставщик Поставщик
    |       ,Движения.ОстатокТовара * (1 - Движения2.Debkred) Приход
    |    FROM
    |       [Регистр.ПартииТоваров] Движения
    |    INNER Join [Журнал] Жур ON Жур.iddoc = Движения.iddoc
    |                AND Жур.date BETWEEN :ДатаПриходНач And :ДатаПриходКон
    |) Рег
    |Group by Рег.Менеджер, Рег.Поставщик
    |";

результатик:  no such column: Движения.Товар.Менеджер
зы Менеджер - реквизит справочника Номенклатура
1 Asmody
 
11.06.15
15:30
(0) конечно нет, это вам не 8ка, разыменовывать поля надо самому
2 palpetrovich
 
11.06.15
15:34
(1) хм,разыменовывать ...а как? к примру Менеджер в DD - SP3215
3 ДенисЧ
 
11.06.15
15:35
join с таблицами справочника
4 Славко
 
11.06.15
15:36
(0) порпобуй заюзать 1С++
5 palpetrovich
 
11.06.15
15:38
(3) че-т так и думал ..а в моем случае , джоин по чем?
(4) о, какие люди :)
6 Бубка Гоп
 
11.06.15
15:40
(5) джоин со справочником номенклатуры, видимо. оттуда уже тянуть менеджера
7 ДенисЧ
 
11.06.15
15:40
(5) хм.... А представь, что ты пишешь запрос в 8ке, но не используешь две точки...
8 Бубка Гоп
 
11.06.15
15:41
(7) по-православному
9 Славко
 
11.06.15
15:42
(5) да, как ни странно, вернулся в кодеры... )))
про 1С++ я серьезно...
ЗЫ приятно когда тебя не просто знают, а еще и помнят ;)
10 palpetrovich
 
11.06.15
15:47
(7) хм, типа так?
ВЫБРАТЬ
    Номенклатура.ССылка
    Номенклатура.Менеджер КАК Менеджер,
    ПартииТоваровНаСкладахОбороты.ДокументОприходования,
    ПартииТоваровНаСкладахОбороты.КоличествоПриход
ИЗ
    Справочник.Номенклатура КАК Номенклатура
        ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрНакопления.ПартииТоваровНаСкладах.Обороты КАК ПартииТоваровНаСкладахОбороты
        ПО Номенклатура.ССылка  = ПартииТоваровНаСкладахОбороты.Номенклатура
11 ДенисЧ
 
11.06.15
15:50
(10) select ///
from sc...
inner join ....
12 Бубка Гоп
 
11.06.15
15:51
(10) да, так должно прокатить в (0)
13 palpetrovich
 
11.06.15
16:03
вроде как работает, правда почти уверен что сделе криво :)

    |Select
    | id [Товар :Справочник.Номенклатура]
    |,Товары.Менеджер [Менеджер :Справочник.Сотрудники]
    |,Рег.Поставщик [Поставщик :Справочник.Контрагенты]
    |,SUM(Рег.Приход) [Приход :Число.19.5]
    |
    |FROM Товары
    |
    |INNER Join
    |    (
    |    SELECT
    |        Движения.Товар Товар
    |        ,Движения.Поставщик Поставщик
    |       ,Движения.ОстатокТовара * (1 - Движения.Debkred) Приход
    |    FROM
    |       [Регистр.ПартииТоваров] Движения
    |    INNER Join [Журнал] Жур ON Жур.iddoc = Движения.iddoc
    |                AND Жур.date BETWEEN :ДатаПриходНач And :ДатаПриходКон
    |) Рег ON Рег.Товар = id
    |Group by Товары.Менеджер, Рег.Поставщик
    |";

ну и , хотелось-бы от колонки "Товар"  избавится. но не в обяз
14 palpetrovich
 
11.06.15
16:13
народ, скажите, покатит или нет?
и еще, есть смысл так заморачиваться:
запрос.ВыполнитьЗапрос("create virtual table Товары using dbeng(Справочник.Номенклатура)");
..
|FROM Товары
или и так сгодится?
|FROM [Справочник.Номенклатура] Товары
15 Гёдза
 
11.06.15
16:19
ибо эта крутейшая фишка только у 1с
16 palpetrovich
 
11.06.15
16:25
(15)  это сарказм?