| 
    
        
     
     | 
    
  | 
Что делать с незакрытыми регистрами? На примере | ☑ | ||
|---|---|---|---|---|
| 
    0
    
        OldCondom    
     19.04.22 
            ✎
    13:26 
 | 
         
        В базе, к примеру, по таблице остатков по регистру "Заказы покупателей" 102млн записей. 26Гб данных и 72Гб индексы. В то время как по живой таблице 27млн записей, 7Гб данные и 4Гб индексы. 
 
        Запрос первые 100 по остаткам уже выдает строки Заказ покупателя СЕ000000001 от 13.06.2017 23:19:55 Купленный Аренда кофейного оборудования 810,87 Без НДС 1 810,87 51 721,51 То есть незакрытые остатки с 2017 и уверен еще раньше. Смотрю этот заказ, ну заказ и заказ, дальше ничего не пошло, сделали и забыли. Возможно в других случаях ситуация немного иная(частично закрыты). Что с ними делать? У меня пока мысль получить эти заказы и в них же пихать движение расход, чтобы в 0 закрыть. Периоды эти закрыты, трогать никто не будет. После выполнить полный пересчет регистра. По идее удалятся и остатки и нулевые записи. Или на каждый год сделать документ "операция", закрывать кучу остатков разом. Но тогда, как я понимаю, лишние записи, скажем январские, будут гулять по таблице итогов вплоть до декабря, когда они закроются. Или есть совсем другой, правильный и более быстрый вариант?  | 
|||
| 
    1
    
        Irbis    
     19.04.22 
            ✎
    13:28 
 | 
         
        Закрыть жопным числом. А вообще неисполненные заказы должны или проляться принудительно или закрываться по прошествии некоторого времени.     
         | 
|||
| 
    2
    
        OldCondom    
     19.04.22 
            ✎
    13:31 
 | 
         
        (1) то есть именно создать закрытие заказа? Боюсь до нового года будет проводится.     
         | 
|||
| 
    3
    
        Мимохожий Однако    
     19.04.22 
            ✎
    13:35 
 | 
         
        (2) Либо закроешь регистры документами Закрытие заказов либо документами Корректировка регистров. Регламентное заданием порциями закрывай. Другого пути нет. Вариант с открытием новой базы, я полагаю, не рассматривается.     
         | 
|||
| 
    4
    
        OldCondom    
     19.04.22 
            ✎
    13:42 
 | 
         
        (3) понял. Будут корректировкой распараллеливать.
 
        Новую базу не вариант, увы.  | 
|||
| 
    5
    
        guitar_player    
     19.04.22 
            ✎
    13:49 
 | 
         
        (4) ERP? Лучше не делать корректировку, закрывайте заказы с отменой строк, можно в несколько потоков.     
         | 
|||
| 
    6
    
        Dmitry1c    
     19.04.22 
            ✎
    14:20 
 | 
         
        Можно свертку сделать по этим регистрам.     
         | 
|||
| 
    7
    
        _Дайвер_    
     19.04.22 
            ✎
    14:33 
 | 
         
        ПересчитатьИтоги() , удалит нулевые записи и облегчит регистр     
         | 
|||
| 
    8
    
        shuhard    
     19.04.22 
            ✎
    14:55 
 | 
         
        (0)[Периоды эти закрыты,]
 
        у заказов нет понятия закрытого периода, их нужно править путем отмены полной или частичной в ТЧ, см (5)  | 
|||
| 
    9
    
        Михаил Козлов    
     19.04.22 
            ✎
    16:53 
 | 
         
        (5)+ На инфостарте была обработка по закрытию заказов (если лень самому писать).     
         | 
|||
| 
    10
    
        OldCondom    
     19.04.22 
            ✎
    21:49 
 | 
         
        Сделал в итоге порционно по месяцам, чтобы лишних записей в течении года не было. Закрыл 3 месяца самого древнего периода:
 
        dbo._AccumRgT26507 2 721 893(записи) 2 672 648 702 424(данные) 1 969 528(индексы) 696 Сильно вышло. -100млн записей. Кстати, если кому пригодится, пересчет итогов лучше делать после truncate table *итоговая таблица*. В разы(в моем случае в десять так точно) сокращает время и не распухает лог.  | 
|||
| 
    11
    
        Злопчинский    
     19.04.22 
            ✎
    23:56 
 | 
         
        (8) заказы всегда состояние на "сейчас"?     
         | 
|||
| 
    12
    
        Злопчинский    
     19.04.22 
            ✎
    23:57 
 | 
         
        (10) "пересчет итогов лучше делать после truncate table *итоговая таблица*."
 
        - это еще и в 77 было известно.. ;-)  | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |