Имя: Пароль:
1C
1С v8
Перевод средств с одного счёта на другой
↓ (Волшебник 11.08.2025 07:56)
0 stinger2000
 
10.08.25
17:01
Версия 8.3, конфигурация полностью самодельная. Делаю документ который реализует перевод средств с одного счета на другой:

Процедура ОбработкаПроведения(Отказ, Режим)

               Расход =

Движения.Баланс.Добавить();

               Расход.Счёт = Отправитель;

               Расход.ВидДвижения =

ВидДвиженияНакопления.Расход;

               Расход.Период = Дата;

               Расход.Сумма = Сумма;

              

               Движения.Баланс.Очистить();

              

               Приход =

Движения.Баланс.Добавить();

               Приход.Счёт = Получатель;      

               Приход.ВидДвижения =

ВидДвиженияНакопления.Приход;

               Приход.Период = Дата;

               Приход.Сумма = Сумма;            

КонецПроцедуры

Списание проводит а зачисление не проводит.
1 Волшебник
 
10.08.25
17:05
Шутник
3 stinger2000
 
10.08.25
17:07
Почему шутник?
4 Волшебник
 
10.08.25
17:08
Получатель другого типа
5 Волшебник
 
10.08.25
17:08
Регистр накопления Баланс
Это же признак
6 stinger2000
 
10.08.25
17:09
Тип тот же
7 Волшебник
 
10.08.25
17:09
Вот объясните, откуда берутся эти студенты, которые делают регистр накопления Баланс?
8 Волшебник
 
10.08.25
17:10
(6) хватит врать мне в лицо. У меня стаж 1С 28 лет
9 Волшебник
 
10.08.25
17:11
Движения.Баланс. Добавить, потом
Очистить()
10 Волшебник
 
10.08.25
17:12
Потом ещё добавить

А чё потом не очищаешь?
11 Волшебник
 
10.08.25
17:12
Дурилка картонная
12 Волшебник
 
10.08.25
17:16
Дезинформация 100%
13 Гена
 
гуру
10.08.25
17:17
(5) Это не настоящий баланс, просто Имя регистра. Если раздражает - пусть будет Б

(11) Дилетантский вопрос: а Записать() нигде не надо? Достаточно Добавить() ?
14 Волшебник
 
10.08.25
17:18
(13) процедура
15 Волшебник
 
10.08.25
17:18
Хотя там тоже есть нюансы
16 Гена
 
гуру
10.08.25
17:21
(14) Понял. Мерси.

Автор очищает приход, но он проводится. Расход не очищает, но он не проводится. Загадка, однако )
17 stinger2000
 
10.08.25
17:38
Процедура ОбработкаПроведения(Отказ, Режим)
    Расход = Движения.Баланс.Добавить();
    Движения.Баланс.Очистить();
    
    Расход.Счёт = Отправитель;
    Расход.ВидДвижения = ВидДвиженияНакопления.Расход;
    Расход.Период = Дата;
    Расход.Сумма = Сумма;

    Приход = Движения.Баланс.Добавить();
    Приход.ВидДвижения = ВидДвиженияНакопления.Приход;
    Приход.Период = Дата;
    Приход.Счёт = Получатель;
    Приход.Сумма = Сумма;
КонецПроцедуры

Всё равно только приход проводит
18 Волшебник
 
10.08.25
18:54
(17) добавить/очистить это мило
19 Волшебник
 
10.08.25
18:55
Валюту забыли
20 Волшебник
 
10.08.25
18:57
Кстати, при переводе денег с одного счета на другой структура баланса не меняется. Актив превращается в актив.
21 Волшебник
 
10.08.25
19:32
Тупые боты