Имя: Пароль:
1C
 
наиболее быстрый способ поменять ресурс в регистре бухгалтерии
0 DomanM
 
07.10.15
17:28
хочу переписывать один ресурс в регистре бухгалтерии по определенным счетам, не трогая документы, как это сделать чтоб быстрее и проще...есть смысл обходить НЗ по регистраторам, но как трогать только определенные счета?
1 ДенисЧ
 
07.10.15
17:30
Запросом выбрать нужные регистраторы, и их уже обходить
2 hhhh
 
07.10.15
17:32
если ЗаписьНабора.СчетДт = НужныйСчет Тогда
    ЗаписьНабора.НужныйРесурс = НужныйРесурс;
конецесли;
3 DomanM
 
07.10.15
17:33
(1)это понятно но регистраторы будут могут иметь и другие счета, неужели только каждый раз проверять строчку на вхождение этих счетов?
4 DomanM
 
07.10.15
17:34
(2) только их там 3-4((
5 mikecool
 
07.10.15
17:34
(1) запросом выбрать нужные движения, метлу отдай )
6 ptiz
 
07.10.15
17:42
(3) Наборы записываются только целиком.
Для облегчения задачи в запросе получай кроме регистратора еще и номер записи, тогда сразу сможешь к нужным записям обратиться.
7 ДенисЧ
 
07.10.15
17:42
(5) И чем тебе движения из запроса помогут? Забирай метлу
8 RomanYS
 
07.10.15
17:43
(7) найти нужные строки (номера) и цикл делать только по ним
9 Гёдза
 
07.10.15
18:47
можно запросом выбрать правильные номера строк наборов записей
10 Гёдза
 
07.10.15
18:47
ИТОГИ По Регистратор, НомерСтроки
11 Гёдза
 
07.10.15
18:49

Дерево  = мРезультатЗапроса.Выгрузить(ОбходРезультатаЗапроса.ПоГруппировкам);
Колво   = Дерево.Строки.Количество();
Счетчик = 0;
Для каждого Строка1 Из Дерево.Строки Цикл
    
    Счетчик = Счетчик + 1;
    ОбработкаПрерыванияПользователя();
    Состояние(Строка(Счетчик) + " из " + Строка(Колво) + " " + Строка(Строка1.Регистратор));
    
    НаборЗаписей = РегистрыБухгалтерии.Хозрасчетный.СоздатьНаборЗаписей();
    НаборЗаписей.Отбор.Регистратор.Установить(Строка1.Регистратор);
    НаборЗаписей.Прочитать();
    
    Для каждого Строка2 Из Строка1.Строки Цикл
        
        Запись = НаборЗаписей[Строка2.НомерСтроки - 1];
        
        Если Строка2.ДтКт = "Дт" Тогда
        Иначе
        КонецЕсли;    
        
    КонецЦикла;    
    
    НаборЗаписей.ОбменДанными.Загрузка = Истина;
    НаборЗаписей.Записать();
    
КонецЦикла;
Программист всегда исправляет последнюю ошибку.