|
v7: регистр остатков (траблы с RG) | ☑ | ||
---|---|---|---|---|
0
pavlik
28.06.13
✎
23:05
|
конфа самописная, SQL
ТА=31.12.13. Одно из измерений сабжа (партия) - элемент справочника из вне делаю запросы к RG## и наблюдаю историю - сегодня завели партию, двинули регистр - в RG тут же являются записи по всем измерениям от начала месяца (ближайшего периода) вплоть до ТА. В где руки править? |
|||
1
Эльниньо
28.06.13
✎
23:20
|
А как ты хотел?
|
|||
2
ДенисЧ
28.06.13
✎
23:24
|
в ДНК
|
|||
3
Эльниньо
28.06.13
✎
23:25
|
И вообще - серьёзные люди ТА ставят на 31.12.99
|
|||
4
pavlik
28.06.13
✎
23:31
|
(1) Через какую Ж*** тогда работает НачОст()?
|
|||
5
ДенисЧ
28.06.13
✎
23:58
|
(4) именно через ту. Ибо ты не можешь объяснить, что тебе надо. Так что см (2)
|
|||
6
КонецЦикла
28.06.13
✎
23:58
|
(4) Благодаря этому он и работает быстрее :)
|
|||
7
pavlik
29.06.13
✎
00:31
|
(5) Могу - мне нужно получить начальный остаток на конкретный документ из внешней отчетной системы. Возможно, знаний не хватает, но
- есть понимание про RG и RA - есть предположение, что такое поведение позволяет двигать регистры задним числом - и все же - как поступить-то - ведь запрос типа select sp123,sum(sp124) from (select sp123 f1, sp124 f2 from rg111 where period=begin union all select sp123,sp124*(1-2*debkred) from ra111 where date_time_iddoc>=@from -- begin+' 0 0 ' and date_time_iddoc<=@to -- позиция документа ) zz group by sp123 возвращает лишние записи (из RG) |
|||
8
pavlik
29.06.13
✎
00:33
|
(7) select sp123,sum(sp124)
читать как select f1, sum(f2) |
|||
9
pavlik
29.06.13
✎
00:34
|
Как-то @ по своему отрабатывает
|
|||
10
Ёпрст
29.06.13
✎
00:37
|
(4) берет предыдущий итог от даты начала периодичности итогов из RG + суммирует записи с RA с начала периодичности итогов до ДатаЗапроса-1.
Усё. |
|||
11
Ёпрст
29.06.13
✎
00:39
|
Да, если движения регистров пишутся не прямым апдейтом/инсертом в таблички, лучше ТА не сдвигать, а проводить все доки в потоке.
|
|||
12
Ёпрст
29.06.13
✎
00:40
|
И как бэ, нету у тебя понимания RG и RA, иначе ТА не стояла бы на 31.12.13
|
|||
13
pavlik
29.06.13
✎
00:46
|
(12) А что криминального в этом? (окромя распухания RG, как сейчас выяснилось)
|
|||
14
FlashC
29.06.13
✎
00:48
|
(12) я так думаю, что ТА не (0) поставил туда)
|
|||
15
pavlik
29.06.13
✎
00:51
|
(10) Дата начала периодичности итогов - не совсем понял, что это?
|
|||
16
FlashC
29.06.13
✎
00:51
|
(0) Вы вроде про регистр "остатков" обмолвились!? или это не имеет значения?
|
|||
17
pavlik
29.06.13
✎
00:53
|
(16) в целом,да.
|
|||
18
pavlik
29.06.13
✎
00:57
|
(15) Т.е в этом случае @begin_=dateadd(mm,-1,@begin)
|
|||
19
pavlik
29.06.13
✎
01:00
|
(18) а по RA делаем агрегат начиная с @from по @to из (7)
Так? |
|||
20
FlashC
29.06.13
✎
01:02
|
(18) не знаю, я SQL в глаза не видел никогда - но что то подсказывает, что ТА Вас обижает - и остатки не правильно берете!
Жди ГУРУ - я в ПУБ подскажу... а Ваш вопрос не по мне... |
|||
21
pavlik
29.06.13
✎
01:04
|
(18),(19) - бред. Все-же "Дата начала периодичности итогов" - как узнать?
|
|||
22
FlashC
29.06.13
✎
01:12
|
(21) я не знаю что там с SQL - но в файловом режиме (DBF) всегда было и всегда будет, что актуальность остатков по РО - всегда на ТА при быстром отборе... хотя могу ошибаться...
|
|||
23
Ёпрст
29.06.13
✎
01:19
|
(13)
1. при расчете останков, всегда ты в "заднем числе", т.е при получении останка будут участвовать 2 таблички RG и RA (заместо одной - RG в случае , если документ ТА толкает сам) что не есть быстро 2. при записи в регистр, надо пересчитывать все итоги в RG позже позиции дока, что тоже не быстро. |
|||
24
Ёпрст
29.06.13
✎
01:21
|
(21) открыть наконец предприятие и посмотреть в Операции-Управление оперативными итогами, какая периодичность хранения останков выставлена.
По-умолчанию - месяц. |
|||
25
Ёпрст
29.06.13
✎
01:22
|
дата начала периодичности, соотв-но начало месяца, предыдущей - наччало предыдущего месяца и т.д.
|
|||
26
pavlik
29.06.13
✎
01:28
|
(24) ага, значит (18), (19) не бред.
Спасибо, Ёпрст, за развернутые ответы |
|||
27
Ёпрст
29.06.13
✎
01:33
|
ознакомься
http://www.script-coding.com/v77tables.html#3.4.2.4. ЗЫ: хотя для скуля, запрос к останкам мало кто пишет ручонкми, проще ВТ Останки взять из 1cpp, ну и поля ручонками тоже никто не пишет, есть метапарсер имён |
|||
28
Ёпрст
29.06.13
✎
01:33
|
||||
29
pavlik
29.06.13
✎
01:38
|
СПС
|
|||
30
pavlik
29.06.13
✎
01:42
|
(27) Я не пользую 1с++ запросы делаются из внешней отчетной системы
|
|||
31
КонецЦикла
29.06.13
✎
02:42
|
(13) Опухание происходит из-за незакрытости регистров. Тут через некоторое кол-во месяцев все равно таблица будет вся с таким периодом.
А вот так далеко оставленная ТА влияет на время проведения документов. Неужели не хватит держать на конец месяца? |
|||
32
КонецЦикла
29.06.13
✎
02:44
|
(23) Может у него нет временного расчета. ТА можно передвигать раз в месяц на конец следующего и все.
|
|||
33
FlashC
29.06.13
✎
02:54
|
КонецЦикла (просто перетащил) ну хоть Вы подскажите - вроде везде должно быть одинаково в получении остатков.... при быстром запросе к РО - всегда на ТА
|
|||
34
FlashC
29.06.13
✎
02:57
|
+(33) в (0) ТА=31.12.13! он уверенно говорит об этом!
|
|||
35
КонецЦикла
29.06.13
✎
03:03
|
(33) Время получения АКТУАЛЬНЫХ остатков, конечно, будет в пределах стат. погрешности отличаться
Просто при проведении 1С будет записывать изменения для каждого периода хранения остатков от момента дока до ТА. Вот что мне не понравилось. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |