|
Обработка "ОтражениеЗарплатыВРеглУчете" | ☑ | ||
---|---|---|---|---|
0
ZADR
03.03.14
✎
12:56
|
Здравствуйте, есть документ "ОтражениеЗарплатыВРеглУчете", там есть ТЧ "ОтражениеВУчете".
Надо сделать обработку с циклом, чтобы из этой ТЧ выбирал один реквизит "СчетКТ" и менял его значение на другое... Помогите с кодом... Вот код который у меня сейчас есть: выбрать1 = документы.ОтражениеЗарплатыВРеглУчете.Выбрать(Дата1, КонецДня(Дата2)); Пока выбрать1.Следующий() Цикл ... КонецЦикла; |
|||
1
Cube
03.03.14
✎
12:59
|
(0) Семерошник... :)
|
|||
2
kosts
03.03.14
✎
13:00
|
(0) Вот тебе еще кусочек кода
|
|||
3
Любопытная
03.03.14
✎
13:00
|
ну это ты вроде как выборку документов организовал, теперь тебе у каждого элемента выборки надо получить объект, у каждого объекта таб. часть и в каждой строке таб части поменять СчетКТ.
И не забыть после этого записать объект |
|||
4
Плот
03.03.14
✎
13:02
|
(0) а по каким условиям ты собрался менять? Если тупо подставить то можно сделать и с помощью Групповой обработки
|
|||
5
Cube
03.03.14
✎
13:02
|
(0) Если это для расчетчика, то делай внешнюю обработку табличной части.
Ну и в любом случае покури метод НайтиСтроки()... |
|||
6
ZADR
03.03.14
✎
13:06
|
сейчас значение "СчетКТ" равен "Я32", а надо на "3220 поменять...
|
|||
7
vladko
03.03.14
✎
13:06
|
(0) хотя бы так, раз уж начал выборкой:
выбрать1 = документы.ОтражениеЗарплатыВРеглУчете.Выбрать(Дата1, КонецДня(Дата2)); Пока выбрать1.Следующий() Цикл Док = выбрать1.ПолучитьОбъект(); Для Каждого СтрТЧ ИЗ Док.ОтражениеВУчете Цикл Если СтрТЧ.СчетКТ = <условие> Тогда СтрТЧ.СчетКТ = ....; ...здесь реквизиты субконто изменяются... КонецЕсли; КонецЦикла; Док.Записать(РежимЗаписиДокумента.Запись); Док.Записать(РежимЗаписиДокумента.Проведение, РежимПроведенияДокумента.Неоперативный); КонецЦикла; |
|||
8
kosts
03.03.14
✎
13:09
|
(7)
Зачем 2 раза запись? |
|||
9
bse
03.03.14
✎
13:13
|
(8) контрольный
|
|||
10
ZADR
03.03.14
✎
13:16
|
выбрать1 = документы.ОтражениеЗарплатыВРеглУчете.Выбрать(Дата1, КонецДня(Дата2));
Пока выбрать1.Следующий() Цикл Док = выбрать1.ПолучитьОбъект(); Для Каждого СтрТЧ ИЗ Док.ОтражениеВУчете Цикл Если СтрТЧ.СчетКТ = "Я32" Тогда СтрТЧ.СчетКТ = "3220"; //...здесь реквизиты субконто изменяются... КонецЕсли; КонецЦикла; Док.Записать(РежимЗаписиДокумента.Запись); Док.Записать(РежимЗаписиДокумента.Проведение, РежимПроведенияДокумента.Неоперативный); КонецЦикла; Обработка находит строки с значением "Я32" но не меняет на 3220, что делать? ) |
|||
11
Cube
03.03.14
✎
13:18
|
(10) А ты тип реквизита СчетКт смотрел? Пытаешься засунуть квадратное в круглое отверстие и удивляешься... :)
|
|||
12
ZADR
03.03.14
✎
13:22
|
Все работает:
выбрать1 = документы.ОтражениеЗарплатыВРеглУчете.Выбрать(Дата1, КонецДня(Дата2)); Я32 = ПланыСчетов.Типовой.НайтиПоКоду("Я32"); Я3220 = ПланыСчетов.Типовой.НайтиПоКоду("3220"); Пока выбрать1.Следующий() Цикл Док = выбрать1.ПолучитьОбъект(); Для Каждого СтрТЧ ИЗ Док.ОтражениеВУчете Цикл Если СтрТЧ.СчетКТ = Я32 Тогда СтрТЧ.СчетКТ = Я3220; //...здесь реквизиты субконто изменяются... КонецЕсли; КонецЦикла; Док.Записать(РежимЗаписиДокумента.Запись); Док.Записать(РежимЗаписиДокумента.Проведение, РежимПроведенияДокумента.Неоперативный); КонецЦикла; |
|||
13
ZADR
03.03.14
✎
13:23
|
Всем большое спасибо!
|
|||
14
Турист
03.03.14
✎
13:23
|
(0) а обработкой "групповая обработка справочников и документов" принципиально не пользуемся? ))
|
|||
15
ZADR
03.03.14
✎
13:24
|
(14) а разве там есть такое чтобы поменять значение? )) там же просто провести,удалить и так далее... )))
|
|||
16
Турист
03.03.14
✎
13:26
|
(15) можно )) как раз для этого и создана )) чтобы не писать на каждую херню обработки по смене реквизитов
|
|||
17
Cube
03.03.14
✎
13:26
|
(15) Меню -> Настройка -> Разрешить изменение реквизитов объектов.
|
|||
18
ZADR
03.03.14
✎
13:33
|
Все спасибо Вам, теперь буду знать)))
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |