Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Не списывается ОС
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 7.7
Aisha12
Здравствуйте, конфигурация, написанная с нуля, предыдущую тему закрыли, оказалась проблема в другом. В документе Списание ОС не списывает ОС, хотя должен списывать на определенного сотрудника ,
вот карточка счета Почему Мол остается пустым, а не считывает с имеющегося? Вот код
Процедура ОбработкаПроведения()
        
    //___Сумма начисленного износа___
    Если НачисленнаяАмортизация <> 0 Тогда
        Операция.НоваяПроводка();
        Операция.СодержаниеПроводки = "Списана начисл. аморт.";
        Операция.НомерЖурнала = "ОС";
        Операция.Дебет.Счет = ОС.Группа.СчетИзноса.Получить(ДатаДок);
        Операция.Дебет.Субконто(1, ОС);
        Операция.Дебет.Субконто(2, ОС.Подразделение.Получить(ДатаДок));
        Операция.Дебет.Субконто(3, ОС.Мол.Получить(ДатаДок));
        Операция.Кредит.Счет = ОС.Группа.СчетБал.Получить(ДатаДок);
        Операция.Кредит.Субконто(1, ОС);
        Операция.Кредит.Субконто(2, ОС.Подразделение.Получить(ДатаДок));
        Операция.Кредит.Субконто(3, ОС.Мол.Получить(ДатаДок));
        Операция.Сумма = НачисленнаяАмортизация;
    КонецЕсли;

    //___Остаточная стоимость___
    Если ОстаточнаяСтоимость <> 0 тогда
        Операция.НоваяПроводка();
        Операция.СодержаниеПроводки = "Списана остат. стоим.";
        Операция.НомерЖурнала = "ОС";
        Операция.Дебет.Счет = глНайтиСчетик(СчетПоКоду("842",ПланыСчетов.Казахстан),ДатаДок);
        Операция.Дебет.Субконто(1, ИздержкиОбращения);
        Операция.Кредит.Счет = ОС.Группа.СчетБал.Получить(ДатаДок);
        Операция.Кредит.Субконто(1, ОС);
        Операция.Кредит.Субконто(2, ОС.Подразделение.Получить(ДатаДок));
        Операция.Кредит.Субконто(3, ОС.Мол.Получить(ДатаДок));
        Операция.Сумма = ОстаточнаяСтоимость;
    КонецЕсли;
    
    //Если ОС.НалоговаяГруппа.Выбран()=1 тогда
        Ит=СоздатьОбъект("БухгалтерскиеИтоги");
        Ит.ИспользоватьПланСчетов(ВыбратьПланСчетов(ДатаДок));
        Ит.ИспользоватьСубконто(ВидыСубконто.ОсновныеСредства, ОС, 2);
        //Ит.ИспользоватьСубконто(ВидыСубконто.НалоговыеГруппыОС, ОС.НалоговаяГруппа, 2);
        //Ит.ИспользоватьСубконто(ВидыСубконто.Подразделение, ОС, 2);
        Ит.ВыполнитьЗапрос(,ДатаДок, глНайтиСчетик(СчетПоКоду("ОС",ПланыСчетов.Казахстан),ДатаДок));
        ОстСтоим=Ит.СКД();
        
        Операция.НоваяПроводка();
        Операция.СодержаниеПроводки = "Списана остат. стоим.";
        Операция.НомерЖурнала = "ОС";
        //Операция.Дебет.Счет = СчетПоКоду("ОС2");
        //Операция.Дебет.Субконто(1, ОС);
        //Операция.Дебет.Субконто(2, ОС.НалоговаяГруппа);
        Операция.Кредит.Счет = глНайтиСчетик(СчетПоКоду("ОС",ПланыСчетов.Казахстан),ДатаДок);
        Операция.Кредит.Субконто(1, ОС);
        Операция.Кредит.Субконто(2, ОС.Подразделение.Получить(ДатаДок));
        Операция.Кредит.Субконто(3, ОС.Мол.Получить(ДатаДок));
//        Операция.Кредит.Субконто(2, ОС.НалоговаяГруппа);
        Операция.Сумма = ОстСтоим;
    
    
    Операция.Содержание = "Списание ОС № "+СокрЛ(НомерДок);
    Операция.СуммаОперации = БалансоваяСтоимость;
    Операция.Записать();
КонецПроцедуры
mister-x
рекомендую попрацювати із відлагоджувачем (отладчик): подивіться значення всіх субконт, рахунків і вам все стане зрозуміло
Домовик
в программе сохраняется история по МОЛ.
из кода:
ОС.Мол.Получить(ДатаДок)


на дату документа(раньше даты документа), который вы проводите, он может быть установлено пустое значение
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.