![]() |
|
Расчеты, зачем нужно соединять основную таблицу и данные графика? | ☑ | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
0
Sdn
15.04.22
✎
08:24
|
Зачем делается так:
ВЫБРАТЬ ОсновныеНачисления.НомерСтроки КАК НомерСтроки, ОсновныеНачисления.ВидРасчета.СпособРасчета КАК СпособРасчета, ИЗ РегистрРасчета.ОсновныеНачисления КАК ОсновныеНачисления ЛЕВОЕ СОЕДИНЕНИЕ РегистрРасчета.ОсновныеНачисления.ДанныеГрафика( Регистратор = &Регистратор И ВидРасчета.КатегорияРасчета = &КатегорияРасчета) КАК ОсновныеНачисленияДанныеГрафика ПО ОсновныеНачисления.НомерСтроки = ОсновныеНачисленияДанныеГрафика.НомерСтроки УПОРЯДОЧИТЬ ПО НомерСтроки Когда можно сделать сразу так: ВЫБРАТЬ ЕСТЬNULL(ОсновныеНачисленияДанныеГрафика.ЗначениеПериодДействия, 0) КАК План, ЕСТЬNULL(ОсновныеНачисленияДанныеГрафика.ЗначениеФактическийПериодДействия, 0) КАК Отработано, ОсновныеНачисленияДанныеГрафика.НомерСтроки КАК НомерСтроки1, ОсновныеНачисленияДанныеГрафика.ВидРасчета.СпособРасчета ИЗ РегистрРасчета.ОсновныеНачисления.ДанныеГрафика( Регистратор = &Регистратор И ВидРасчета.КатегорияРасчета = &КатегорияРасчета) КАК ОсновныеНачисленияДанныеГрафика Насколько я понимаю. Номера строк в основной таблице теже самые, что и во всех виртуальных, то есть это просто значение поля, задаваемое при формировании физической таблицы ОсновныеНачисления. К чему эти соединения по номерам строк? |
||||||||||
1
s-n-a-y
15.04.22
✎
08:31
|
Могу ошибаться, но во втором случае может быть ситуация, что данные в расчетном периоде (в месяце) не вносились, и второй запрос в этом случае ничего не вернет
|
||||||||||
2
Sdn
15.04.22
✎
08:35
|
Данные хранятся в ОсновнаяТаблица (она физическая), поэтому если данных нет, их не будет ни в первом ни во втором случае (второй случай - виртуальная таблица, она данные не хранит, а получает их из физической).
|
||||||||||
3
dreizehn
15.04.22
✎
08:48
|
Потому что это разные запросы.
Первый вернет все строки основной таблицы, второй - только строки по регистратору и категории. |
||||||||||
4
Sdn
15.04.22
✎
08:55
|
И если в первый добавить
ГДЕ ОсновныеНачисления.Регистратор = &Регистратор И ОсновныеНачисления.ВидРасчета.КатегорияРасчета = &КатегорияРасчета то будут одинаковые результаты? |
||||||||||
5
dreizehn
15.04.22
✎
09:06
|
(4) Нет. В таблице графика отсутствуют записи основной таблицы не связанные с графиком.
Я эту зарплатную кухню смутно помню, но там все еще завязано на измерение - дату и наличие данных в дополнительном регистре сведений, указанном в качестве графика для регистра расчета Так что (1) прав. |
||||||||||
6
dreizehn
15.04.22
✎
09:08
|
Теперь-то тебя возьмут на работу?
|
||||||||||
7
Sdn
15.04.22
✎
09:15
|
В настройках регистра связь с графиком задается сразу, поэтому пока не понимаю как могут появиться такие записи. Но за разъяснение спасибо.
"теперь-то тебя возьмут на работу?" Ты меня с кем то, видимо, перепутал, я не искал работу в 1С, пока изучаю. |
||||||||||
8
dreizehn
15.04.22
✎
09:37
|
(7) > не понимаю как могут
Ну, например, за счет простого отсутствия данных в регистре сведений графика. > я не искал работу в 1С Ну, дело Ваше. |
||||||||||
9
Sdn
15.04.22
✎
09:52
|
> за счет простого отсутствия данных в регистре сведений графика.
вернет записи с пустыми полями, которые рассчитываются с данными графика, там же другие данные есть, с чего бы записи не возвращать. > Ну, дело Ваше. (с) добавить |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |