Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Левое соединение, нужны пустые записи

Левое соединение, нужны пустые записи
Я
   Trotter
 
15.06.20 - 08:06
Привет!

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

////////////////////////////////////////////////////////////////////////////////

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


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


выводятся только те записи у которых установлена цена с нужным мне типом цен (ТипЦен), а я хочу видеть и нулевые записи. Как реализовать ?
   Ёпрст
 
1 - 15.06.20 - 08:08
Где замени на И
   Trotter
 
2 - 15.06.20 - 08:09
(1) Эт как ? без "Где" - работать совсем не будет. вроде
   Trotter
 
3 - 15.06.20 - 08:10
(1) Спасибо!
   xXeNoNx
 
4 - 15.06.20 - 08:31
Соединяться со срезом? - фу
   Trance_1C
 
5 - 15.06.20 - 08:37
(4) я каждый день соединяюсь со срезом, бывает что с разными, а что в этом плохого?
   Trance_1C
 
6 - 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) Ну ок...
   fisher
 
10 - 15.06.20 - 09:01
(8) В чем глюкавость?
   ДенисЧ
 
11 - 15.06.20 - 09:02
(10) В последних версиях не знаю, но в первых - не обновлялся, если удалить последнюю запись
   Волшебник
 
Модератор
12 - 15.06.20 - 09:04
Я помню, мы в одной конфигурации сделали ещё один регистр сведений СтатусыСрезПоследних, который сами обновляли из набора записей исходного регистра. Работало надёжно как часы.
   Nikoss
 
13 - 15.06.20 - 09:08
(8) физическая? О как... и срез первых тоже физическая? Насколько давно это?
   Волшебник
 
Модератор
14 - 15.06.20 - 09:09
(13) СрезПервых редко кому нужен и введён для симметрии. В 99% случаях нужен именно срез последних
   Nikoss
 
15 - 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) При очень большом количестве строк (несколько миллионов) виртуальная таблица СрезПоследних начинает ощутимо тормозить и нужны радикальные меры.
   Nikoss
 
26 - 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% ))))


Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.