|
Программное создание ручных операций | ☑ | ||
---|---|---|---|---|
0
Dark_Warrior
22.05.15
✎
10:54
|
Доброй всем пятницы, товарищи. Подскажите, пожалуйста, ЧЯДНТ - БП3.0 (3.0.39.56), платформа 8.3.6.1999. Есть обработка, которая создает в ручных операциях движения в регистре бухгалтерии "Хозрасчетный". Проводка есть, в оборотке сумма есть, но, если из оборотки "провалиться" в карточку счета, то там пусто. Собственно в этом и проблема.
З.Ы.: у хозрасчетного .Записывать и .ОбменДанными.Загрузка = истина. |
|||
1
Славен
22.05.15
✎
10:55
|
код приведи
|
|||
2
Славен
22.05.15
✎
10:55
|
и да ОбменДанными.Загрузка = Ложь поставь и посмотри ошибки
|
|||
3
Dark_Warrior
22.05.15
✎
11:04
|
НаборЗаписей = РегистрыБухгалтерии.Хозрасчетный.СоздатьНаборЗаписей();
наборзаписей.Записывать = Истина; наборзаписей.ОбменДанными.Загрузка = Ложь; НаборЗаписей.Отбор.Регистратор.Установить(Док.Ссылка); ЗаполнитьПроводки(Док, ДатаПер, НаборЗаписей, Валюта); |
|||
4
Dark_Warrior
22.05.15
✎
11:06
|
Это из процедуры ЗаполнитьПроводки:
Если (ОстатокВалюты > 0 и Курс2 - Курс1 > 0) или (ОстатокВалюты < 0 и Курс2 - Курс1 < 0) Тогда Движение = НаборЗаписей.Добавить(); Движение.Регистратор = Док.Ссылка; Движение.Период = Док.Дата; Движение.СчетДт = ПланыСчетов.Хозрасчетный.НайтиПоКоду("76.29"); БухгалтерскийУчет.УстановитьСубконто(Движение.СчетДт, Движение.СубконтоДт, 1, Объект.СубконтоДт1); БухгалтерскийУчет.УстановитьСубконто(Движение.СчетДт, Движение.СубконтоДт, 2, Объект.СубконтоДт2); Движение.СчетКт = ПланыСчетов.Хозрасчетный.НайтиПоКоду("91.01"); БухгалтерскийУчет.УстановитьСубконто(Движение.СчетКт, Движение.СубконтоКт, 1, Справочники.ПрочиеДоходыИРасходы.КурсовыеРазницы); Движение.Организация = док.Организация; Движение.ВалютаДт = Валюта; Если ОстатокВалюты > 0 Тогда суммавал = ОстатокВалюты; //Движение.ВалютнаяСуммаДт = суммавал; Движение.Сумма = суммавал * ((Курс2-Курс1)/Кратность1); ИначеЕсли ОстатокВалюты < 0 Тогда суммавал = ОстатокВалюты*(-1); //Движение.ВалютнаяСуммаДт = суммавал; Движение.Сумма = суммавал * ((Курс1-Курс2)/Кратность1); КонецЕсли; СуммаДок = Движение.Сумма; НаборЗаписей.Записать(); ИначеЕсли (ОстатокВалюты > 0 и Курс2 - Курс1 < 0) или (ОстатокВалюты < 0 и Курс2 - Курс1 > 0) Тогда Движение = НаборЗаписей.Добавить(); Движение.Регистратор = Док.Ссылка; Движение.Период = Док.Дата; Движение.СчетДт = ПланыСчетов.Хозрасчетный.НайтиПоКоду("91.02"); БухгалтерскийУчет.УстановитьСубконто(Движение.СчетДт, Движение.СубконтоДт, 1, Справочники.ПрочиеДоходыИРасходы.КурсовыеРазницы); Движение.СчетКт = ПланыСчетов.Хозрасчетный.НайтиПоКоду("76.29"); БухгалтерскийУчет.УстановитьСубконто(Движение.СчетКт, Движение.СубконтоКт, 1, Объект.СубконтоДт1); БухгалтерскийУчет.УстановитьСубконто(Движение.СчетКт, Движение.СубконтоКт, 2, Объект.СубконтоДт2); Движение.Организация = док.Организация; Движение.ВалютаКт = Валюта; Если ОстатокВалюты > 0 Тогда суммавал = ОстатокВалюты; //Движение.ВалютнаяСуммаКт = суммавал; Движение.Сумма = суммавал * ((Курс1-Курс2)/Кратность1); ИначеЕсли ОстатокВалюты < 0 Тогда суммавал = ОстатокВалюты*(-1); //Движение.ВалютнаяСуммаКт = суммавал; Движение.Сумма = суммавал * ((Курс2-Курс1)/Кратность1); КонецЕсли; СуммаДок = Движение.Сумма; НаборЗаписей.Записать(); КонецЕсли; Док.СуммаОперации = СуммаДок; Док.Записать(); |
|||
5
Рэйв
22.05.15
✎
11:09
|
Движение.Активность=Истина;
|
|||
6
Рэйв
22.05.15
✎
11:11
|
хотя "в оборотке сумма есть".. Тогда итоги пересчитать
|
|||
7
Dark_Warrior
22.05.15
✎
12:19
|
(6) Пересчет не помогает.
|
|||
8
azt-yur
22.05.15
✎
12:34
|
может у тебя субконто не правильно заполняются? например, не правильные типы субконто - в результате в оборотке по счету сумма отображается, а в карточке отбор не может установить корректно. проверь установленные отборы в карточке счета
|
|||
9
Dark_Warrior
22.05.15
✎
12:45
|
(8) Пробовал... Все отборы убраны, а показатели активны.
|
|||
10
pavelul73
22.05.15
✎
12:46
|
Организацию забыли
|
|||
11
pavelul73
22.05.15
✎
12:47
|
а нет, извиняюсь, увидел
|
|||
12
Dark_Warrior
22.05.15
✎
13:51
|
Подниму..
|
|||
13
Барматолог
22.05.15
✎
14:05
|
(0) какой документ используется?
|
|||
14
Славен
22.05.15
✎
14:22
|
ОбменДанными.Загрузка = истина. убрал?
|
|||
15
Dark_Warrior
22.05.15
✎
14:35
|
(14) Да, убрал.
|
|||
16
Dark_Warrior
22.05.15
✎
14:41
|
(13) ОперацияБух
|
|||
17
trooba
22.05.15
✎
15:11
|
(16) Я сначала создаю ОперацияБух, заполняю его шапку, записываю, потом обращаюсь:
БухСпр = Документы.ОперацияБух.СоздатьДокумент(); БухСпр.Содержание = "Проценты по кредитам и займам ("+Строка(Объект.Процент)+"%) - "+Объект.Контрагент.Наименование; БухСпр.Комментарий = "Проценты по кредитам и займам ("+Строка(Объект.Процент)+"%) - "+Объект.Контрагент.Наименование; БухСпр.Дата = Объект.ДатаБух; БухСпр.Организация=Объект.Организация; БухСпр.Ответственный=Пользователи.ТекущийПользователь(); БухСпр.ОбменДанными.Загрузка=Истина; БухСпр.Записать(РежимЗаписиДокумента.Запись); БухСпрСсылка = БухСпр.Ссылка; РегХозрасчетный = РегистрыБухгалтерии.Хозрасчетный.СоздатьНаборЗаписей(); РегХозрасчетный.Отбор.Регистратор.Значение = БухСпрСсылка; а после добавляю данные уже в регистр, в конце записываю набор и все ок работает. |
|||
18
Dark_Warrior
25.05.15
✎
07:59
|
(17) Странно, методика та же, но лыжи не едут)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |