|
Научите меня пересчитывать итоги. | ☑ | ||
---|---|---|---|---|
0
ProxyInspector
31.05.17
✎
13:59
|
Платформа 8.3.8.2197. Конфигурация УТ10. Учет ведется уже 4 года количество документов 2.5 млн.
Помечаю на удаление документы за 2012 год. Удаляю документы стандартной процедурой УстановитьМонопольныйРежим(Истина); УдалитьОбъекты(МассивНаУдаление,Истина); УстановитьМонопольныйРежим(Ложь); Документы удаляются После этого делаю запрос к РегиструНакопления.ПартииТовров ВЫБРАТЬ * ИЗ РегистрНакопления.ПартииТоваровНаСкладах.Остатки(&МоментДокумента) Все ресурсы остатков с ссылками на удаляемые документы имеют значение <Объект не найден>. Остатки по регистру не корректные. Т.е. остатки не соответствуют движениям. После этого делаю полный пересчет регистра, и все становится на свои места. |
|||
1
ProxyInspector
31.05.17
✎
14:02
|
На сколько я понимаю, в целях оптимизации, 1с чистит Таблицу Движений регистра остатки, но не чистит Таблицу Остатков регистра
|
|||
2
ProxyInspector
31.05.17
✎
14:09
|
При таком раскладе весь партионный учет в типовых конфигурациях, весь учет с помощью регистров Остатков, где измерение имеет Тип = ДокументСсылка не корректен.
|
|||
3
Волшебник
модератор
31.05.17
✎
14:10
|
(1) наоборот
|
|||
4
ProxyInspector
31.05.17
✎
14:11
|
Что наоборот?
|
|||
5
ProxyInspector
31.05.17
✎
14:12
|
Так что 8-ка не умеет пересчитывать итоги?
|
|||
6
ProxyInspector
31.05.17
✎
14:18
|
Я помечаю на удаление документРегистратор. Помечаю на удаление документ из Измерения ресурса. Эти документы не имеют ссылок на себя. Поэтому они легко удаляются стандартной обработкой. Движения регистра чистятся, а вот остатки за прошлые периоды (как минимум) остаются.
И пропадают только после полного пересчета итогов Что то не ладно в консерватории. |
|||
7
HEKPOH
31.05.17
✎
14:20
|
но ведь быстро же!
|
|||
8
ProxyInspector
31.05.17
✎
14:24
|
Я считаю, что это чистый БАГ 1с8, а не неумение пересчитывать итоги.
Для корректной работы 1с8 требуется постоянно чистить кеш, пересчитывать итоги. И тогда 1с8 можно будет назвать системой уровня 7x24x365 |
|||
9
ProxyInspector
31.05.17
✎
14:25
|
Ничего там не быстро. На больших базах это долго
|
|||
10
ProxyInspector
31.05.17
✎
14:27
|
Я думаю тему надо назвать "Научите 1с8 перессчитывать итоги"
|
|||
11
Ёпрст
31.05.17
✎
14:27
|
(4) Табличка движений никогда не очищается при пересчете
итогов. Только при удалении/распроведении документа удаляются записи оттуда. |
|||
12
Волшебник
модератор
31.05.17
✎
14:27
|
(4) Нельзя чистить таблицу движений, потому что это первичная информация для расчёта итогов.
|
|||
13
ProxyInspector
31.05.17
✎
14:41
|
Я не знаю как 1С удается добиваться таких результатов, но все началось с того, что движения по регистру не соответствовали остаткам. Может было УдалитьОбъекты(ОбъектНаУдаление,Истина) и ОбъектНаУдаление был не помечен на удаление?
Я сейчас на тестовой базе это делаю, потом посмотрю на рабочей как это будет |
|||
14
HEKPOH
31.05.17
✎
14:58
|
(13) "Я не знаю как 1С удается добиваться таких результатов, но все началось с того, что движения по регистру не соответствовали остаткам"
Ну, нет же!!! Это остатки не соответствуют движениям!!! Движения первичны - остатки вторичны |
|||
15
ProxyInspector
31.05.17
✎
15:28
|
Да остатки не соответствуют движениям.
Можно написать запрос и проверить на других базах |
|||
16
sapphire
31.05.17
✎
15:41
|
(15) База, поди, распределенная, да?
|
|||
17
sapphire
31.05.17
✎
15:42
|
(15) Если бы, при УдалитьОбъекты(МассивНаУдаление,Истина);
имелись ссылки на элементы массива, то удаление не произошло бы. |
|||
18
kiruha
31.05.17
✎
15:47
|
(0)
Это некорректная свертка Нужно создать документ ввод остатков Внести туда остатки по партиям на конец года Отключить итоги Провести документ Потом отменить проведение документов Потом их удалить Включить итоги и пересчитать Вы делаете же что то странное |
|||
19
rozer76
31.05.17
✎
16:03
|
(18) Отключить итоги
РегистрНакопления.ПартииТоваровНаСкладах.Остатки не будет такого |
|||
20
ProxyInspector
31.05.17
✎
16:23
|
У меня не свертка, а удаление не работающих Фирм и Складов
|
|||
21
ProxyInspector
31.05.17
✎
16:25
|
Поэтому помечаются на удаление документы имеющие в реквизитах не работающие Фирмы, Склады. Потом документами инвентаризация, выравниваются остатки. Ну и перепроводятся все документы
|
|||
22
Serg_1960
31.05.17
✎
17:29
|
"Бойся желаний своих, ведь они могут исполниться"(цы)
Автор желает чтобы, после снятия с проведения партиобразующего документа, конфигурация заново пересчитывала/переопределяла партии в документах? Ведь если претензию автора разобрать, то всё упрётся к этому. |
|||
23
ProxyInspector
31.05.17
✎
18:13
|
Ничего не к этому. Претензия в том, что после корректных действий в системе 1С8. Остаток по регистру "Остаток" не соответствует движениям по этому регистру.
К примеру по движениям остаток = 5 а по виртуальной таблице Остатки - остаток = 7 И это исправляется только полным пересчетом регистра |
|||
24
ProxyInspector
31.05.17
✎
18:16
|
Это называется БАГ и баг КРИТИЧЕСКИЙ.
Просто на регистре ПартииТоваров - это проявляется особенно наглядно. На регистре ОстаткиТоваров - этого бага быть не может, как и на большинстве регистров Остатки |
|||
25
kiruha
31.05.17
✎
18:58
|
УдалитьОбъекты(<СписокСсылок>, <Проверять>, <НайденныеДанные>, <ОбластьПоиска>, <ВключитьОбъекты>, <ИсключитьОбъекты>)
Параметры: <СписокСсылок> (обязательный) Тип: Массив. Список ссылок на объекты, которые нужно удалить. <Проверять> (необязательный) Тип: Булево. Определяет, выполнять ли контроль ссылочной целостности при выполнении процедуры. Истина - перед удалением проверяется, нет ли ссылок на удаляемый объект. Если есть, то объект не удаляется, а ссылки помещаются в таблицу значений <НайденныеДанные>. Ложь - проверка не выполняется. Значение по умолчанию: Ложь. !!!! |
|||
26
kiruha
31.05.17
✎
18:59
|
а Истина стоит, понятно
|
|||
27
kiruha
31.05.17
✎
19:01
|
ВключитьОбъекты> (необязательный)
Тип: Массив. Позволяет явно указать объекты метаданных, которые должны присутствовать в области поиска ссылок на объекты. Элементом массива могут быть: Объект метаданных. Строка – полное имя объекта метаданных. Допустимые значения: Неопределено, Пустой массив, Массив объектов метаданных. |
|||
28
piter3
31.05.17
✎
19:02
|
Что-то не пойму,а как быть тогда с перемещениями
|
|||
29
kiruha
01.06.17
✎
10:17
|
(0)
Итого При удалении ссылки - записи регистра не очищаются Кроме одного! случая - признак Ведущее у измерения регистра сведений. В остальных случаях очищать надо самостоятельно Все логично и правильно |
|||
30
ProxyInspector
01.06.17
✎
10:34
|
Что-то в этом роде. Движения удаляются, но ВиртуальнаяТаблица Остаток не корректная становится. Я проверю на днях более внимаельно и запрос сделаю на сравнение Движения - Остатки
|
|||
31
pavig
01.06.17
✎
10:34
|
(0)
Какая-то каша. У тебя изначально были некорректные остатки в регистре. По какой причине они там появились - из (0) не понятно. Скорее всего, если очищали записи регистра при выключенном использовании итогов (УстановитьИсопльзованиеИтогов(Ложь)). После этого ты удалил некоторые документы без контроля целостности, вследствие чего в некорректных остатках у тебя еще и появились "битые ссылки". Пересчитал итооги - вуаля, всё заколосилось. И причем тут 1С?) |
|||
32
pavig
01.06.17
✎
10:40
|
А ну да, контрлль целостности был. Только платформа эти ссылки искала не в остатках, а в движениях.
|
|||
33
pavig
01.06.17
✎
10:40
|
Но это ничего не меняет. У тебя изначально были некорректные остатки. Оттуда всё и пошло)
|
|||
34
ptiz
01.06.17
✎
10:41
|
(31) +100
|
|||
35
Адинэснег
01.06.17
✎
10:59
|
пздц
|
|||
36
Вафель
01.06.17
✎
11:04
|
Сначала нужно было у документов отменить проведение
|
|||
37
Franchiser
гуру
01.06.17
✎
11:22
|
Так что действительно не работает второй параметр в УлалитьОбъекты()?
|
|||
38
ProxyInspector
01.06.17
✎
13:21
|
1С8 не контролирует ссылки в ВиртуальнойТаблице Остатки регистров, хотя в Движениях регистра контролирует. Они считают, что после пересчета регистра они сами пропадут, но до пересчета остатки получаются не корректные.
|
|||
39
ProxyInspector
01.06.17
✎
13:22
|
Второй параметр в УдалитьОбъекты() работает. В базе действительно нет ссылок на эти документы в объектах базы, нет ссылок в движениях, но остаются ссылки в ВиртуальнойТаблице Остатки.
|
|||
40
pavig
01.06.17
✎
13:52
|
(38) Остатки некорректные потому что кое-чьи руки некорректные. Не более того.
|
|||
41
ProxyInspector
01.06.17
✎
14:18
|
Да я согласен, у разработчиков 1С8 кривые руки
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |