Имя: Пароль:
1C
1С v8
запись не верна не совпадает активность записей
0 antihacker
 
29.01.14
15:52
ребята вот такая фигня при обмене с узловой базы в централный.
Говрят исправить активность в регистре накоплении.

А как их вообще вытащить. Какие записи там не активные.активные ?

Спасибо !
1 vicof
 
29.01.14
15:53
Запросом
2 antihacker
 
29.01.14
19:37
Запросом ? Как ?

У меня УТ 8,1 вроде нету такого здесь
Или№№№№№
3 echo77
 
29.01.14
19:48
Как оно вообще из другой базы пришло или обмен по планам обмена?
4 antihacker
 
29.01.14
21:19
Не из другой. А в узловой базе есть не активная запись. Кривая блин. Вот ее надо убрать. Можно только программно.
5 antihacker
 
29.01.14
21:42
Пробовал вот так

ДатаНач=началодня(ПолеВвода1);
ДатаКон=конецдня(ПолеВвода2);

   ВыбДок=Документы.РеализацияТоваровУслуг.Выбрать(ДатаНач,ДатаКон);

Остатки = РегистрыНакопления.РеализацияТМЗ;
НаборЗаписей = Остатки.СоздатьНаборЗаписей();
Док = НаборЗаписей.Отбор.Регистратор;
Док.Установить(ВыбДок);



Для Каждого НаборЗаписей Из ВыбДок.ПолучитьОбъект().Движения Цикл
    НаборЗаписей.Прочитать();
    
    ЕСЛИ     НаборЗаписей.Активность=ложь ТОГДА
    НаборЗаписей.УстановитьАктивность(Истина);
    НаборЗаписей.Записать();
      КОНЕЦЕСЛИ;
КонецЦикла;


но ругается

Ошибка при вызове метода контекста (ПолучитьОбъект): Элемент не выбран!
Для Каждого НаборЗаписей Из ВыбДок.ПолучитьОбъект().Движения Цикл
по причине:
Элемент не выбран!
6 antihacker
 
30.01.14
12:02
Тема закрыта.
Вот так решил.

    ДатаНач=началодня(ПолеВвода1);
ДатаКон=конецдня(ПолеВвода2);

    // РегистрыНакопления.Остатки.УстановитьИспользованиеИтогов(Ложь);
    Запрос=Новый Запрос;
    Запрос.Текст = "ВЫБРАТЬ РАЗЛИЧНЫЕ
    |    Регистр.Регистратор
    |ИЗ
    |    РегистрНакопления.РеализацияТМЗ КАК Регистр
    |ГДЕ
    |    Регистр.Регистратор.Дата<&КонПериода и Регистр.Регистратор.Дата>&ДатаНач и Регистр.Активность=ЛОЖЬ";
    
    Запрос.УстановитьПараметр("ДатаНач",ДатаНач);    
    Запрос.УстановитьПараметр("КонПериода",ДатаКон);
    РезультатЗапроса = Запрос.Выполнить();
    Выборка = РезультатЗапроса.Выбрать();
    Кол=0;

    БылиОшибки=Ложь;  
    
      Пока Выборка.Следующий() цикл
        //ОбработкаПрерыванийПользователя();
        Набор = РегистрыНакопления.РеализацияТМЗ.СоздатьНаборЗаписей();
        Набор.Отбор.Регистратор.Значение = Выборка.Регистратор;
        
        Набор.Прочитать();
        Набор.Очистить();
        Набор.Записать();

    
    КонецЦикла;
    Если БылиОшибки Тогда
       Предупреждение("Обработка завершена. Регистр очищен не до конца!!!");
    КонецЕсли;
   // РегистрыНакопления.Остатки.УстановИспользованиеИтогов(Истина);