Имя: Пароль:
1C
1С v8
Бухгалтерия ПРОФ 3.0. Программно заменить один вид субконто на другой
,
0 Sun125
 
13.05.15
18:20
Бухгалтерия 3.0.
Пытаюсь на счете заменить один вид субконто на другой.
ТипЗначения обоих видов субконто совпадает - Справочник.Субконто.
В обработке "Удаление помеченных объектов" есть возможно заменить ссылку на другой элемент. Выбираю: заменить вид субконто на другой.
В итоге в проводках субконто очищается.
Как правильно сделать замену?
1 Sun125
 
13.05.15
18:21
(0) Пробовал такой вариант? Сначала программно у элементов справочника "Субконто" заменил владельца (один вид субконто на другой). Потом сделал замену - все равно в проводках очищается.
2 Sun125
 
13.05.15
18:21
(0)Пробовал такой вариант: Сначала программно у элементов справочника "Субконто" заменил владельца (один вид субконто на другой). Потом сделал замену - все равно в проводках очищается.
3 Sun125
 
13.05.15
18:23
(0) Добавить временно на счет еще одно субконто, заполнить программно значения, а потом удалить первоначальное субконто - такой вариант не подойдет. субконто итак 3 штуки.
4 Sun125
 
14.05.15
08:22
up
5 asady
 
14.05.15
08:26
(0) что за счет?
6 Sun125
 
14.05.15
08:40
(5) да любой счет. просто нужно заменить вид субконто один на другой
7 Sun125
 
14.05.15
08:44
(6)субконто не предопределенные. когда-то добавленные пользователем на счете
8 1С_Fitness
 
14.05.15
09:07
(7) объект какой формирует проводки ?
9 1С_Fitness
 
14.05.15
09:09
(8) а что если получить регистратора и заменить там объект ?
Вот ты вообще... А если будет перепроведение ?
10 Sun125
 
14.05.15
09:09
(8) типовые документы и операции введенные вручную
11 1С_Fitness
 
14.05.15
09:10
вот видишь , тебе нужно в объектах поменять , и перепровести
12 1С_Fitness
 
14.05.15
09:11
мочи обороты счёта в запросе , получай объекта, далее ищи метаданные , потом меняй свой объект, и перепроводи
13 Sun125
 
14.05.15
09:11
(9) в документах есть реквизит "СубконтоДт1/2/3", думаю, в документах можно ссылкозамещением поменять
14 1С_Fitness
 
14.05.15
09:12
(13) Юзай регистраторы, при перепровдении у тебя в другом случае всё слетит
15 1С_Fitness
 
14.05.15
09:12
действуй , бро
16 Sun125
 
14.05.15
09:17
НаборЗаписей = РегистрыБухгалтерии.Хозрасчетный.СоздатьНаборЗаписей();
        НаборЗаписей.Отбор.Регистратор.Установить(Выборка.Док);
        НаборЗаписей.Прочитать();
        Для Каждого ДвиженияРег Из НаборЗаписей Цикл
            Если ДвиженияРег.СчетДт = СчетСтар Тогда
                Для Каждого ТекСтрока Из ДвиженияРег.СубконтоДт Цикл
                    Если СокрЛП(ТекСтрока.Ключ) = "ВидСубконто1" Тогда
                        ТекСтрока.Ключ = ПланыВидовХарактеристик.ВидыСубконтоХозрасчетные.НайтиПоНаименованию("Вид субконто2");
                    КонецЕсли;
                КонецЦикла;
            КонецЕсли;

// Ругается, что Поле объекта недоступно для записи (Ключ)
17 1С_Fitness
 
14.05.15
09:22
я бы тупо перебрал все  метаданные и нашел где ссылка
18 1С_Fitness
 
14.05.15
09:23
Обороты счета в запросе
19 Sasha_1CK
 
14.05.15
09:26
(16)  потому что ключ - это имя поля - а меняешь ты значение
20 Sasha_1CK
 
14.05.15
09:27
(19) по идее ТекСтрока[Ключ]
21 Sasha_1CK
 
14.05.15
09:28
Хотя ПМСМ все равно не взлетит
22 Sun125
 
14.05.15
09:36
(21) как тогда заменить ключ в движениях?
23 Sun125
 
14.05.15
09:44
Пробую уже такой способ: создал копированием еще один счет в плане счетов, только с нужным видом субконто:
012.1 ВидСубконто1
012.2 ВидСубконто2
Перебираю движения регистратора, но я опять натыкаюсь, на то что в ключе еще старый ВидСубконто
24 Sun125
 
14.05.15
09:45
(23) это я хотел заменить в движениях один счет на другой
25 1С_Fitness
 
14.05.15
09:46
(23) а что регистратор изменить нельзя ?
26 Sun125
 
14.05.15
09:46
(25) а зачем менять регистратор?
27 Sun125
 
14.05.15
09:46
мне нужно обновить набор видов субконто, когда я меняю счет
28 1С_Fitness
 
14.05.15
09:47
(26) а вот перепровдешь , движения обратно встанут
29 1С_Fitness
 
14.05.15
09:48
ты что то не то говоришь
30 Sun125
 
14.05.15
09:49
ну допустим, движения формируются ручной проводкой. зачем менять регистратор?
31 Sun125
 
14.05.15
09:49
(28) с реквизитами можно разобраться, ссылки заменить. а вот с движениями как быть..
32 hhhh
 
14.05.15
10:00
(31) не взлетит такая фигня. Надо просто тупо перенести обработкой данные с одного субконто на другое.
33 Sun125
 
14.05.15
10:03
(32) а если субконто итак уже 3? менять в плане счетов (временно) максимальное значение до 4 и переносить? а потом удалить старое субконто.
34 Sun125
 
14.05.15
10:12
вроде бы получилось!
35 Sun125
 
14.05.15
10:13
надеюсь, ничего лишнего (типа <объект не найден>) не образовалось после того, как максимальное количество субконто менял)
Программист всегда исправляет последнюю ошибку.