![]() |
|
Вопрос по получению остатков регистра | ☑ | ||
---|---|---|---|---|
0
tciban
12.02.21
✎
13:45
|
Уважаемые коллеги! Как всегда я к вам с дурацким вопросом и всем наверное дано известной проблемой! Есть запрос (на самом деле это часть запроса, получение временной таблицы, но так проще локализовать проблему)
ВЫБРАТЬ ТоварыНаСкладахОстаткиИОбороты.Склад КАК СкладХранения, ТоварыНаСкладахОстаткиИОбороты.Номенклатура КАК Номенклатура, ТоварыНаСкладахОстаткиИОбороты.КоличествоНачальныйОстаток КАК НачальныйОстатокСклада, ТоварыНаСкладахОстаткиИОбороты.КоличествоКонечныйОстаток КАК КонечныйОстатокСклада ИЗ РегистрНакопления.ТоварыНаСкладах.ОстаткиИОбороты( &ДатаН, &ДатаК, Период, ДвиженияИГраницыПериода, Склад В ИЕРАРХИИ (&СкладПолучатель) И Номенклатура В ИЕРАРХИИ (&Мясо)) КАК ТоварыНаСкладахОстаткиИОбороты И вот когда экономист берет в качестве даты начала 31/01/2021 23:59:59 а в качестве даты конца 01/02/2021 00:00:00 (только не спрашивайте меня ЗАЧЕМ? я не знаю) то у него по некоторым товарам начальный и конечный остаток получаются разными! А потому что например по некоему товару есть Списание от 31.01.2021 23:59:59 И оно не попадает в начальный остаток! Потому что оно чуть позже чем 23:59:59 с точки зрения 1С. И 1С права. Так вот вопрос - что делать? Запрос используется в СКД |
|||
1
RomanYS
12.02.21
✎
13:46
|
что делать?
встречный вопрос: делать зачем? Если не хотите включения даты в период - передавайте границу |
|||
2
ДенисЧ
12.02.21
✎
13:47
|
А с фига ли он должен попадать?
|
|||
3
tciban
12.02.21
✎
13:50
|
(1) Сначала я вообще сделал стандартным периодом и все было прекрасно. Но экономисту надо стало задавать период с учетом времени.
Как я уже писал - "зачем" узнать не удалось. Но в чем то я экономиста понимаю. Остатки на конец дня и начало следующего должны быть одинаковыми, иначе как верить отчету? Видимо вопрос в том как задавать начало и конец периода? (2) в том то и дело - не должен! Но как переопределить дату что бы попадал? |
|||
4
Гипервизор
12.02.21
✎
13:50
|
(0) Читать до просветления https://its.1c.ru/db/pubapplied#content:142:hdoc
|
|||
5
ДенисЧ
12.02.21
✎
13:53
|
"Остатки на конец дня и начало следующего"
А задаёт "в качестве даты начала 31/01/2021 23:59:59 а в качестве даты конца 01/02/2021 00:00:00 " Задаёт разные точки, получает разные результаты. Чего ещё надо? |
|||
6
tciban
12.02.21
✎
13:56
|
(5) И я и она понимаем Что "Задаёт разные точки, получает разные результаты." Но как можно задавать в отчете начало дня (ну это еще более менее) и конец дня. Вот задать конец дня в качестве начала периода это не так уж и безумно, это может быть. Первое, что приходит в голову - это написать где нибудь что если у нас 23:59:59, то взять в дату начало следующих суток.
Просто может кто то уже решал такую задачу и придумал что нибудь другое? |
|||
7
RomanYS
12.02.21
✎
13:57
|
(3)
>> в том то и дело - не должен! Не должен, это закреплено в документации >>Но как переопределить дату что бы попадал? Передавай Границу, а не дату |
|||
8
d4rkmesa
гуру
12.02.21
✎
13:57
|
(6) Запретить что-либо проводить в 23:59:59.
|
|||
9
tciban
12.02.21
✎
13:59
|
(8) и такая идея есть. Можно и так. Сейчас соберу все идеи и выберем лучшую!
(7) Как в СКД передавать границу а не дату? И как указать в параметрах границы пользователю отчета? |
|||
10
tciban
12.02.21
✎
14:01
|
"Передавай Границу, а не дату" - кто подскажет - как можно преобразовать дату, содержащую 23:59:59 в границу? Либо прямо в запросе, либо в выражении СКД?
|
|||
11
ДенисЧ
12.02.21
✎
14:01
|
В ПриКомпоновке проверяй начальную дату, и если она равна концу дня от этой даты, присваивай ей начало следующего дня.
|
|||
12
RomanYS
12.02.21
✎
14:01
|
(9) Как в СКД передавать границу а не дату? И как указать в параметрах границы пользователю отчета?
Кодом. Ещё проще в выражении для параметра отнять/прибавить секунду |
|||
13
RomanYS
12.02.21
✎
14:03
|
(9) Правильный путь - понять самому и донести до пользователя, что система работает правильно. Соответственно со стороны пользователя требуется просто правильный ввод параметров.
|
|||
14
tciban
12.02.21
✎
14:03
|
(12) Кодом всякий может при компановке! А вот нельзя ли сделать выражением СКД границу?
|
|||
15
Гипервизор
12.02.21
✎
14:04
|
(10) Например, так: ДобавитьКДате(КонецПериода(&КонецПериода), 1, "Секунда")
|
|||
16
RomanYS
12.02.21
✎
14:04
|
(14) секунду отними - результат такой же будет
|
|||
17
tciban
12.02.21
✎
14:04
|
(13) Это путь самурая. Ведущий скорее всего к сеппуко.
|
|||
18
ДенисЧ
12.02.21
✎
14:13
|
(17) Это путь ведёт к феншую и катарсису...
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |