|
Как заменить в хозрасчетном регистре все счета | ☑ | ||
---|---|---|---|---|
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.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |