Имя: Пароль:
1C
 
Регистр бухгалтерии. Остатки по количеству
,
0 Никулин Леонид
 
09.08.19
08:52
Добрый день!

Решаю учебную задачу. Спроектировал РегистрБухгалтери.Управленческий. Измерений (и реквизитов) нет. Ресурсы "Количество" не балансовый с признаком учета Количественный. и "Сумма" балансовый.
В ПланеСчетов указал для счетов "ПрибылиИУбытки" и "Товары" одинаковые настройки. Для Признака учета установил флажок "Количественный" и два субконто (Номенклатура и СрокГодности).
Создал для регистра регистраторы ПриходнаяНакладная и РасходнаяНакладная. Сделал движения. В регистре движения появились как по Сумме, так и по Количеству.
Делаю запрос к Остаткам.
По счету Товары все правильно. Есть остатки по Количеству и по Сумме. А по счету ПрибылиИУбытки есть остаток только по Сумме:(
ВОПРОС. Не могу понять куда делся остаток по Количеству?

Спасибо!
1 pikachu
 
09.08.19
09:03
а в проводках по второму счету у вас есть количество?
интересно в количестве чего вы прибыли и убытки измеряете? в количестве банкнот? в количестве монет?  в количестве лягушачьих шкурок?
2 KILL_
OFF_COBECTb
 
09.08.19
09:04
(0) а признак учета количественный для счета ПрибылиИУбытки точно стоит? еще движения посмотреть бы как выполнены
3 KILL_
OFF_COBECTb
 
09.08.19
09:05
(0) а что за задача? там точно нужно количество на этом счете? не припомню в спеце таких
4 Никулин Леонид
 
09.08.19
09:10
(1) Да. Количество есть. Количество я измеряю в разрезах субконто. Учитываю количество по Номенклатуре и по Сроку годности.
5 Никулин Леонид
 
09.08.19
09:14
(2) Да вроде стоит. Только что перепроверил. Количественный = Да. Для субконто "только обороты" выключены.
(3) Это самая первая учебная задача по специалисту по бухгалтерским задачам. Нужно построить отчет по ОстаткамИОборотам по Количеству и по сумме. А у меня количество пропало:) А сумма вся на месте.
6 Никулин Леонид
 
09.08.19
09:16
Фрагмент обработки проведения РасходнойНакладной:

Пока ВыборкаНоменклатураДок.Следующий() Цикл
        
        // Контроль остатков
        Если ВыборкаНоменклатураДок.КолДок > ВыборкаНоменклатураДок.КолОст Тогда             
            Сообщение = Новый СообщениеПользователю;
            Сообщение.Текст = "Номенклатуры " + ВыборкаНоменклатураДок.НоменклатураПредставление + " не достаточно на остатках в количестве " + (ВыборкаНоменклатураДок.КолДок - ВыборкаНоменклатураДок.КолОст);
            Сообщение.Сообщить();
            Отказ = Истина;
            Продолжить;            
        КонецЕсли;
        
        ОсталосьСписать = ВыборкаНоменклатураДок.КолДок;
        
        ВыборкаДетальныеЗаписи = ВыборкаНоменклатураДок.Выбрать();    
        Пока ВыборкаДетальныеЗаписи.Следующий() И ОсталосьСписать > 0 Цикл
            
            КоличествоСписания    = Мин(ОсталосьСписать, ВыборкаДетальныеЗаписи.КолОст);
            СебестоимостьСписания = ?(ОсталосьСписать = ВыборкаДетальныеЗаписи.КолОст, ВыборкаДетальныеЗаписи.СуммаОст,
                    ВыборкаДетальныеЗаписи.СуммаОст / ВыборкаДетальныеЗаписи.КолОст * КоличествоСписания);                                
            
            // Формирование набора записей. Дт ПрибылиУбытки Кт Товары
            Движение = Движения.Управленческий.Добавить();
            Движение.СчетДт = ПланыСчетов.Управленческий.ПрибылиУбытки;
            Движение.СчетКт = ПланыСчетов.Управленческий.Товары;
            Движение.Период = Дата;
            //Движение.Количество = КоличествоСписания; //
            Движение.КоличествоДт = КоличествоСписания;
            Движение.КоличествоКт = КоличествоСписания;
            Движение.Сумма = СебестоимостьСписания;                        
            Движение.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.Номенклатура] = ВыборкаДетальныеЗаписи.Номенклатура;
            Движение.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.СрокГодности] = ВыборкаДетальныеЗаписи.СрокГодностиОст;            
            Движение.СубконтоКт[ПланыВидовХарактеристик.ВидыСубконто.Номенклатура] = ВыборкаДетальныеЗаписи.Номенклатура;
            Движение.СубконтоКт[ПланыВидовХарактеристик.ВидыСубконто.СрокГодности] = ВыборкаДетальныеЗаписи.СрокГодностиОст;
            
                                
            // Формирование набора записей. Дт Покупатели Кт ПрибылиУбытки
            Движение = Движения.Управленческий.Добавить();
            Движение.СчетДт = ПланыСчетов.Управленческий.Покупатели;
            Движение.СчетКт = ПланыСчетов.Управленческий.ПрибылиУбытки;
            Движение.Период = Дата;
            //Движение.Количество = КоличествоСписания;
            Движение.КоличествоКт = КоличествоСписания;
            Движение.КоличествоДт = КоличествоСписания;
            Движение.Сумма = ВыборкаДетальныеЗаписи.СуммаДок / ВыборкаДетальныеЗаписи.КолДок * КоличествоСписания;
            Движение.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.Номенклатура] = ВыборкаДетальныеЗаписи.Номенклатура;
            Движение.СубконтоДт[ПланыВидовХарактеристик.ВидыСубконто.СрокГодности] = ВыборкаДетальныеЗаписи.СрокГодностиОст;
            Движение.СубконтоКт[ПланыВидовХарактеристик.ВидыСубконто.Номенклатура] = ВыборкаДетальныеЗаписи.Номенклатура;
            Движение.СубконтоКт[ПланыВидовХарактеристик.ВидыСубконто.СрокГодности] = ВыборкаДетальныеЗаписи.СрокГодностиОст;
            
            ОсталосьСписать = ОсталосьСписать - КоличествоСписания;
            
        КонецЦикла;
    КонецЦикла;



Движения по всем полям есть. Аналогично по ПриходнойНакладной
7 unregistered
 
09.08.19
09:26
(6) А что ожидается в остатке?

1 запись - КоличествоДт = 100 штук.
2 запись - КоличествоКт = 100 штук.

100 - 100 = 0.

Или у вас какая-то другая альтернативная математика?
8 pikachu
 
09.08.19
09:28
покажите картинками что у вас в проводках
9 shuhard
 
09.08.19
09:33
(7)+1
            Движение = Движения.Управленческий.Добавить();
            Движение.СчетДт = ПланыСчетов.Управленческий.ПрибылиУбытки;
            Движение.КоличествоДт = КоличествоСписания;
        
            Движение = Движения.Управленческий.Добавить();
            Движение.СчетКт = ПланыСчетов.Управленческий.ПрибылиУбытки;
            Движение.КоличествоКт = КоличествоСписания;
10 Никулин Леонид
 
09.08.19
09:35
Это запрос к физической таблице https://yadi.sk/i/5_Yx6X0ez3vGRA
11 Никулин Леонид
 
09.08.19
09:41
А это остатки https://yadi.sk/i/65EDRo_0JKeXBw В самом низу "Прибыли и убытки". Остатки по сумме есть, а по количеству нет.
Есть одна строка с количеством 2. Это движения документа "Бухгалтерская операция" с выводом на форму Движений по регистру. Тут остатки есть
12 pikachu
 
09.08.19
09:42
(11) остатков нет и остаток =0. различаете?
13 Никулин Леонид
 
09.08.19
09:43
Аааа! Начинаю понимать... Всем спасибо. Дальше сам буду ковырять!

Хороших выходных!
14 KILL_
OFF_COBECTb
 
09.08.19
09:53
(9) +1))
15 KILL_
OFF_COBECTb
 
09.08.19
09:56
(5) это задача из 1 билета? если да, то там не нужен признак учета количественный на счете ПрибылиИУбытки для построения отчета, достаточно по счету товары
Основная теорема систематики: Новые системы плодят новые проблемы.