|   |   | 
| 
 | Как заменить в хозрасчетном регистре все счета | ☑ | ||
|---|---|---|---|---|
| 0
    
        1CVERYGOOD 29.04.14✎ 15:27 | 
        Как можно за определенный период заменить во всех проводках счет х на счет у.     | |||
| 1
    
        ДенисЧ 29.04.14✎ 15:28 | 
        Получиьт наборы записей, заменить, записать, повторить     | |||
| 2
    
        yfylhjkjy 29.04.14✎ 15:29 | 
        обработкой     | |||
| 3
    
        1CVERYGOOD 29.04.14✎ 15:29 | 
        Набор = РегистрыБухгалтерии.Хозрасчетный.СоздатьНаборЗаписей();
 Набор.Отбор.СчетДт.Установить(СтарыйСчет); Набор.Отбор.Дата.Установить(СтарыйСчет); Набор.Записывать = Истина; Набор.Прочитать(); Для Каждого Движение Из Набор Цикл Движение.СчетДт = НовыйСчет; КонецЦикла; Набор.Записать(Истина); | |||
| 4
    
        1CVERYGOOD 29.04.14✎ 15:29 | 
        типа такого как по правильному ?     | |||
| 5
    
        ДенисЧ 29.04.14✎ 15:29 | 
        (3) неа... Без регистратора не обойтись     | |||
| 6
    
        1CVERYGOOD 29.04.14✎ 15:30 | 
        Блин это че перебирать все документы, причем разных видов ?     | |||
| 7
    
        jsmith82 29.04.14✎ 15:31 | 
        (6) зачем перебирать     | |||
| 8
    
        ОбычныйЧеловек 29.04.14✎ 15:31 | 
        (6) Запросом получаешь нужный список документов и по ним уже бежишь     | |||
| 9
    
        jsmith82 29.04.14✎ 15:31 | 
        работай родительским классом
 тебе же методы потомков не нужны | |||
| 10
    
        jsmith82 29.04.14✎ 15:32 | 
        Набор.Отбор.Регистратор.Установить(Выборка.Док);     | |||
| 11
    
        Повелитель 29.04.14✎ 15:34 | 
        (0) ПоискИЗаменаЗначений.epf с диска ИТС
 ее чуток допилить чтобы лишние периоды убирала и вперед, везде поменяет в доках тоже | |||
| 12
    
        1CVERYGOOD 29.04.14✎ 15:41 | 
        Написал такой изврат.        
 Зап = новый Запрос; зап.Текст = "ВЫБРАТЬ РАЗЛИЧНЫЕ | ХозрасчетныйОборотыДтКт.Регистратор КАК Регистратор |ИЗ | РегистрБухгалтерии.Хозрасчетный.ОборотыДтКт(&датаначала, &датаокончания, Регистратор, , , , , ) КАК ХозрасчетныйОборотыДтКт |ГДЕ | ХозрасчетныйОборотыДтКт.СчетДт В (&СчетДт) ИЛИ ХозрасчетныйОборотыДтКт.СчетКт В (&СчетКт) | | |УПОРЯДОЧИТЬ ПО | Регистратор"; зап.Параметры.Вставить("датаначала",'20140101000000'); зап.Параметры.Вставить("датаокончания",'20140331235959'); зап.Параметры.Вставить("СчетДт",СтарыйСчет); зап.Параметры.Вставить("СчетКт",СтарыйСчет); рез = Зап.Выполнить().Выбрать(); Пока рез.Следующий() ЦИКЛ ОбработкаПрерыванияПользователя(); об = рез.Регистратор.ПолучитьОбъект(); Сообщить(об.ссылка); об.Движения["Хозрасчетный"].Прочитать(); Для каждого зап из об.Движения["Хозрасчетный"] Цикл ЕСЛИ зап.СчетДт = СтарыйСчет ТОГДА зап.СчетДт = НовыйСчет; КОНЕЦЕСЛИ; ЕСЛИ зап.СчетКт = СтарыйСчет ТОГДА зап.СчетКт = НовыйСчет; КОНЕЦЕСЛИ; КОНЕЦЦИКЛА; об.Движения["Хозрасчетный"].Записать(); КОНЕЦЦИКЛА; | |||
| 13
    
        neo_matrix_123 29.04.14✎ 15:51 | 
        (0) субконто у счетов x и y одинаковые? если нет - то при замене их тоже надо заполнить, а то последствия будут непредсказуемы     | |||
| 14
    
        1CVERYGOOD 29.04.14✎ 15:52 | 
        Да счета 1в1.     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |