| 
    
        
     
     | 
    
    
  | 
УТ 10.3 мистика с остатками товаров | ☑ | ||
|---|---|---|---|---|
| 
    0
    
        Stanislav1C    
     11.08.15 
            ✎
    14:38 
 | 
         
        По регистру "Товары на складах" по выбранной номенклатуре и выбранному значится два движения: приход от 30.07.13 и расход от 14.07.15.
 
        Тем не менее, запрос с нижеследующим текстом на любую дату до 30.07.13 (даже какой-нибудь 2000 год, когда учет, понятное дело, в базе еще не велся) выдает КоличествоОстаток = -1 ВЫБРАТЬ ТоварыНаСкладахОстатки.Номенклатура, ТоварыНаСкладахОстатки.КоличествоОстаток ИЗ РегистрНакопления.ТоварыНаСкладах.Остатки(&Дата, Склад = &Склад) КАК ТоварыНаСкладахОстатки ТиИ пока не делал в виду большого объема базы (точка встанет на N часов)  | 
|||
| 
    1
    
        Stanislav1C    
     11.08.15 
            ✎
    14:43 
 | 
         
        Пересчет итогов может помочь?     
         | 
|||
| 
    2
    
        ОбычныйЧеловек    
     11.08.15 
            ✎
    14:47 
 | 
         
        Больше похоже не на мистику а на сказку... 
 
        Отмени эти 2 движения и посмотри результат запроса...а еще глянь даты - там точно "30.07.13" а не какой нить 30.07.0013?!  | 
|||
| 
    3
    
        Stanislav1C    
     11.08.15 
            ✎
    14:51 
 | 
         
        (2) год точно 13й, к тому же там приход. Все-таки пересчет попробовал запустить, он должен минут за 5 отработать, потом попробую отменить эти движения. Хотя маловероятно, что причина в них.     
         | 
|||
| 
    4
    
        Stanislav1C    
     11.08.15 
            ✎
    14:54 
 | 
         
        Мда, пересчет итогов выдал мне:
 
        Ошибка СУБД: Ошибка SQL: запись значения NULL в поле, не допускающее NULL 'FLD7842_TYPE'  | 
|||
| 
    5
    
        Stanislav1C    
     11.08.15 
            ✎
    16:05 
 | 
         
        В регистре имеется пара десятков "пустых" записей. Соответственно, удалить их я не могу, потому что отбор по регистратору с типом "неопределено" сделать не получится. Вот такие дела...     
         | 
|||
| 
    6
    
        ДенисЧ    
     11.08.15 
            ✎
    16:06 
 | 
         
        (5) Получится...     
         | 
|||
| 
    7
    
        ДенисЧ    
     11.08.15 
            ✎
    16:06 
 | 
         
        ТОлько не неопределено     
         | 
|||
| 
    8
    
        Stanislav1C    
     11.08.15 
            ✎
    16:18 
 | 
         
        (6) и какой отбор устанавливать?
 
        Попробовал так: 
Ругается  | 
|||
| 
    9
    
        ДенисЧ    
     11.08.15 
            ✎
    16:21 
 | 
         
        (8) где регистратор.ссылка есть NULL
 
        и потом по найденным битым ссылкам и беги  | 
|||
| 
    10
    
        Gbpltw    
     11.08.15 
            ✎
    16:23 
 | 
         
        ТиИ + пересчет итогов = счастье)     
         | 
|||
| 
    11
    
        Злопчинский    
     11.08.15 
            ✎
    16:25 
 | 
         
        или тупо создать битые объекты обработкой и потом уже по ним шарится? (обработки есть готовые такие для восстановления битых ссылок)     
         | 
|||
| 
    12
    
        Stanislav1C    
     11.08.15 
            ✎
    16:25 
 | 
         
        (9) Дело в том, что у меня этот запрос и так выдает нужные записи. Ругается при остановке отбора     
         | 
|||
| 
    13
    
        Stanislav1C    
     11.08.15 
            ✎
    16:27 
 | 
         
        (11) Ссылки не битые, их вообще нет     
         | 
|||
| 
    14
    
        Зеленый пень    
     11.08.15 
            ✎
    16:28 
 | 
         
        В выходной - выгрузка/загрузка.     
         | 
|||
| 
    15
    
        Stanislav1C    
     11.08.15 
            ✎
    16:31 
 | 
         
        Нашел способ: снять галку с одного из регистраторов, обновить БД и вернуть галочку обратно. Якобы при реструктуризации регистра эти записи сами пропадут. Но способ работал то ли на 8.1, то ли даже на 8.0. У меня же не дает принять изменения в виду того, что есть дублирующие записи с одинаковым регистратором :)     
         | 
|||
| 
    16
    
        Stanislav1C    
     11.08.15 
            ✎
    16:32 
 | 
         
        (14) Выходных не бывает...и ТЦ обязует отключать компьютеры на ночь.     
         | 
|||
| 
    17
    
        Леха Дум    
     11.08.15 
            ✎
    16:40 
 | 
         
        (13) создать копию регистра накопления по структуре и по документам движения, в него перенести все нормальные записи, старый регистр после переноса грохнуть, новому присвоить имя старого регистра     
         | 
|||
| 
    18
    
        Stanislav1C    
     11.08.15 
            ✎
    16:40 
 | 
         
        (10) ну придется тормозить работу отдела на время ТиИ. А если не поможет, заново распределенный узел создавать. Других вариантов не вижу...     
         | 
|||
| 
    19
    
        Леха Дум    
     11.08.15 
            ✎
    16:42 
 | 
         
        + (17) еще вариант при наличии сервера SQL - лезть напрямую в таблицу движений на сервере и чистить ручками     
         | 
|||
| 
    20
    
        Stanislav1C    
     11.08.15 
            ✎
    17:07 
 | 
         
        (19) SQL сервера нет. Думал через tool_1cd можно как-то удалить записи, но не додумал)     
         | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |