Имя: Пароль:
1C
1С v8
Левое соединение, нужны пустые записи
0 Trotter
 
15.06.20
08:06
Привет!

Вот код:

ВЫБРАТЬ
    ПоступлениеТоваровУслуг.Ссылка КАК Ссылка,
    ПоступлениеТоваровУслуг.Номенклатура КАК Номенклатура
ПОМЕСТИТЬ ТаблицаНоменклатуры
ИЗ
    Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровУслуг
ГДЕ
    ПоступлениеТоваровУслуг.Ссылка = &мДок
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
    ТаблицаНоменклатуры.Номенклатура КАК Номенклатура,
    ЦеныНоменклатурыСрезПоследних.Номенклатура, КАК Номенклатура1,
    ЦеныНоменклатурыСрезПоследних.Цена КАК Цена,
    ЦеныНоменклатурыСрезПоследних.ТипЦен КАК ТипЦен
ИЗ
    ТаблицаНоменклатуры КАК ТаблицаНоменклатуры
        ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЦеныНоменклатуры.СрезПоследних КАК ЦеныНоменклатурыСрезПоследних
        ПО ТаблицаНоменклатуры.Номенклатура  = ЦеныНоменклатурыСрезПоследних.Номенклатура
ГДЕ
    ЦеныНоменклатурыСрезПоследних.ТипЦен = &ТипЦен


Пробовал:
ЕСТЬNULL(ЦеныНоменклатурыСрезПоследних.Цена, 0) КАК Цена,
и так
ВЫБОР КОГДА ЦеныНоменклатурыСрезПоследних.ТипЦен ЕСТЬ NULL ТОГДА 0 ИНАЧЕ ЦеныНоменклатурыСрезПоследних.ТипЦен КОНЕЦ КАК ТипЦен


выводятся только те записи у которых установлена цена с нужным мне типом цен (ТипЦен), а я хочу видеть и нулевые записи. Как реализовать ?
1 Ёпрст
 
15.06.20
08:08
Где замени на И
2 Trotter
 
15.06.20
08:09
(1) Эт как ? без "Где" - работать совсем не будет. вроде
3 Trotter
 
15.06.20
08:10
(1) Спасибо!
4 xXeNoNx
 
15.06.20
08:31
Соединяться со срезом? - фу
5 Trance_1C
 
15.06.20
08:37
(4) я каждый день соединяюсь со срезом, бывает что с разными, а что в этом плохого?
6 Trance_1C
 
15.06.20
08:39
таблицы срезов существуют в базе на физическом уровне так что все норм.
7 Волшебник
 
модератор
15.06.20
08:57
(6) Всегда же был индекс. Что-то изменилось?
8 ДенисЧ
 
15.06.20
08:58
(7) Давно. Срез последних уже физическая таблица... Правда, глюкавая...
9 Волшебник
 
модератор
15.06.20
08:59
(8) Ну ок...
10 fisher
 
15.06.20
09:01
(8) В чем глюкавость?
11 ДенисЧ
 
15.06.20
09:02
(10) В последних версиях не знаю, но в первых - не обновлялся, если удалить последнюю запись
12 Волшебник
 
модератор
15.06.20
09:04
Я помню, мы в одной конфигурации сделали ещё один регистр сведений СтатусыСрезПоследних, который сами обновляли из набора записей исходного регистра. Работало надёжно как часы.
13 Nikoss
 
15.06.20
09:08
(8) физическая? О как... и срез первых тоже физическая? Насколько давно это?
14 Волшебник
 
модератор
15.06.20
09:09
(13) СрезПервых редко кому нужен и введён для симметрии. В 99% случаях нужен именно срез последних
15 Nikoss
 
15.06.20
09:16
(14) это согласен. Но вот то что срезы перестали быть виртуальными таблицами, для меня новость.
16 Волшебник
 
модератор
15.06.20
09:17
(15) Для меня тоже.
17 Ёпрст
 
15.06.20
09:21
(8) та ну? В 16-17 что ле? В 15 еще нет
18 ДенисЧ
 
15.06.20
09:22
(17) Обещали ещё лет пять назад...
19 Ёпрст
 
15.06.20
09:23
(18) ааа..обещали)
20 Волшебник
 
модератор
15.06.20
09:23
(18) Обещать не значит жениться. Если тебе нужна отдельная физическая таблица, то заведи ещё один регистр сведений, непериодический. Назови его СрезПоследних и обновляй из набора записей исходного регистра. Это работает.
21 Волшебник
 
модератор
15.06.20
09:25
(20)+ или из подписки, не помню. Да это не важно. Желательно в той же транзакции.
22 Ёпрст
 
15.06.20
09:25
Недавно просто правил в скуле табличку регистра, забыл время из utc к местному перевести, пнишлось апдейтить, дык..там тока одна табличка.
23 ДенисЧ
 
15.06.20
09:25
(20) Если мне будет нужна отдельная таблица для такой фигни, я перейду на фузину (с)
24 Волшебник
 
модератор
15.06.20
09:25
(20)+ Такой подход работает, если вам нужен СрезПоследних до самой последней записи, а не на заданную дату.
25 Волшебник
 
модератор
15.06.20
09:27
(23) При очень большом количестве строк (несколько миллионов) виртуальная таблица СрезПоследних начинает ощутимо тормозить и нужны радикальные меры.
26 Nikoss
 
15.06.20
09:27
из статьи на ис, от середины 16 года

---
Версия 8.3 принесла еще несколько важных изменений:
для периодических регистров кластерным стал индекс, в котором сначала следуют все измерения, а на последнем месте колонка Период (в 8.2 кластерным будет являться индекс, в котором на первом месте стоит Период, а затем перечислены все измерения);
появились ФИЗИЧЕСКИЕ таблицы итогов для хранения среза первых и среза последних. Создавать или нет эти таблицы - решает разработчик, установив соответствующее свойство в конфигураторе.
---

этому делу уже ~4 года получается... жесть
27 Волшебник
 
модератор
15.06.20
09:32
(26) О, я нашёл. На закладке Прочие флаги Разрешить итоги: срез последних
28 Волшебник
 
модератор
15.06.20
09:32
Разрешить итоги: срез последних - если установлен, то при обновлении данных набора записей регистра сведений будут обновлены записи таблицы итогов для среза последних.
29 ДенисЧ
 
15.06.20
09:40
Во. Поставил в тестовой флажОк (с)
http://pics.wfido.ru/img/rs_9a2dn.png
30 Ёпрст
 
15.06.20
09:42
Яснг понятно, кто ж доку то читает в наше время?)
31 ДенисЧ
 
15.06.20
09:42
(30) Ну, тебе же стыдно должно быть...
32 Ёпрст
 
15.06.20
09:43
(31) ))) нет денех на сп, звиняй
33 ДенисЧ
 
15.06.20
09:45
(32) Тебе (лично) могу скидку дать... До 50% ))))