Приветствую, ребят. Хочу добавить новый счет реализации. Документ ОтгрузкаМатериаловНаСторо ну
имеется 90.01, 90.12 (услуги), 79.1. Нужно в модуле дописать обработку для 79.2 счета. На форму добавить это поле с флажком - не проблема. Нужна сама обработка, вот модуль:
Код:
// ДобавитьСтрокуВТаблицуПереоценки()
// // {Изм., релиз 9.12.1 ПС 04.12.09  
Процедура ДобавитьСтрокуВТаблицуПереоценки(ЕстьКурсРазница, Счет, Субк1, Субк2, Субк3 = "", Валюта)
    Если ЕстьКурсРазница <> 0 Тогда
        глТаблицаСчетов.НоваяСтрока();
        глТаблицаСчетов.Счет = Счет;
        глТаблицаСчетов.Субконто1 = Субк1;
        глТаблицаСчетов.Субконто2 = Субк2;
        Если ПустоеЗначение(Субк3) = 0 Тогда
            глТаблицаСчетов.Субконто3 = Субк3;        
        КонецЕсли;
        глТаблицаСчетов.Валюта = Валюта;
    КонецЕсли;    
    
КонецПроцедуры // ДобавитьСтрокуВТаблицуПереоценки()
// пс}
//
Процедура ОбработкаПроведения()
    Перем ТаблицаПокупок,АвтоКП; 
    //
    Если КоличествоСтрок()=0 тогда 
        Предупреждение("Ни одной строки не введено!");
        СтатусВозврата(0);
        Возврат;
    КонецЕсли;    
    Если (ВидОтгрузки=0) Тогда // 
        Если СтатьяДоходаРасхода.Выбран()=0 Тогда
            Предупреждение("Выберите статью  дохода/расхода!");
            СтатусВозврата(0);
            Возврат;
        КонецЕсли;  
        
        //  1-е субконто - вид деятельности (новый реквизит) 
        Если (ДатаДок>Константа.ДатаНПС) и
        (ВидДеятельности.Выбран() = 0) Тогда
            
            Предупреждение("Выберите вид деятельности (1-е субконто для субсчетов 90.07 и 90.08 И 90.10)!");   
            СтатусВозврата(0);
            Возврат;                 
        КонецЕсли;
        
    КонецЕсли;   
    
    
        Если (_791=1) и
        (_9001= 1) Тогда
            
            Предупреждение("Выбрано два счета 79.1 и 90,01 одновременно !");   
            СтатусВозврата(0);
            Возврат;                 
        КонецЕсли;
        
     
    
    
    
    
    
    // {Изм., релиз 12.02.1 ПС 31.01.12 - с 2012 года отгрузка на счета 90.07 и 90.08, а не 91
    
    
    
    
    
    
    // Авт. кн. покупок
    юАвтоКП(1,АвтоКП,Договор,ТаблицаПокупок); 
    АвтоКП = ?((АвтоКП=1) И (ВидОтгрузки = 1) И (ДокументПоступления.Выбран()=1),1,0);
    //
    Если АвтоКП=1 Тогда
        // проверка начисления по счету АКП
        БИ = СоздатьОбъект("БухгалтерскиеИтоги"); 
        БИ.ИспользоватьСубконто(ВидыСубконто.Контрагенты, Получатель, 2);
        БИ.ИспользоватьСубконто(ВидыСубконто.Основание,Договор,2);
        БИ.ИспользоватьСубконто(ВидыСубконто.ДокПриобретения,ДокументПоступления,2);
        БИ.ВыполнитьЗапрос(ДокументПоступления.ДатаДок,ТекущийДокумент(),"АКП",,,,,1);
        Если БИ.КО()=0 Тогда // начисления не было
            АвтоКП = 0;
        КонецЕсли;
    КонецЕсли; 
    
    юПроверкаНДСтч(Контекст,2); // Проверка ставок НДС в ТЧ        
    
    // {Изм., релиз 9.12.1 ПЕ 30.11.09
    // для валютных возвратов
    Валютный=0;
    ЗнОкр=0;
    Курс = 1;
    КурсПоставки = 1; // ПС 03.12.09
    ЕстьКурсРазница = 0;  
    
    Если (Договор.Выбран()=1) тогда
        Если (Договор.Валютный=1) И (Договор.Валюта.Выбран()=1) и (ВидОтгрузки = 1) Тогда
            Валютный= 1;
            ЗнОкр   = 2;
            Курс    = ПолучитьКурс(Договор.Валюта, ДатаДок); // курс на дату возврата
            Если ДокументПоступления.Выбран() = 1 Тогда
                КурсПоставки = ПолучитьКурс(Договор.Валюта, ДокументПоступления.ДатаДок);
            Иначе
                КурсПоставки = Курс;
                Сообщить("Проводки по курсовым разницам сделайте самостоятельно, так как документ поступления не выбран","!");
            КонецЕсли;
            ЕстьКурсРазница = Курс - КурсПоставки; 
        КонецЕсли;
    КонецЕсли;
    // пе}     
    
    // {Изм., релиз 9.12.1 ПС 04.12.09  
    // Курс разницы 
    Если ЕстьКурсРазница <> 0  Тогда 
        // До проведения данного документа рекомендуется сначала выполнить переоценку задолженности по расчетам
        // с поставщиком.  
        глТаблицаСчетов.УдалитьСтроки();
    КонецЕсли;
    // пс}
    
    Если датаДок<Константа.ДатаНПС Тогда
        
        
        СчДох    = СчетПоКоду("91.1" ); 
        СчРасх   = СчетПоКоду("91.2" ); 
        СчНДС    = СчетПоКоду("91.3" ); 
        
    Иначе
        Если (_9001=0 )и  (_791=0) и (_9012=0)Тогда
            СчДох  = СчетПоКоду("90.07");
            ЕСЛИ  датаДок<Дата90 тОГДА
                СчНДС  = СчетПоКоду("90.72");  
                СчРасх = СчетПоКоду("90.08"); 
            ИНАЧЕ
                СчНДС  = СчетПоКоду("90.8");  
                СчРасх = СчетПоКоду("90.10"); 
            КОНЕЦЕСЛИ;    
            

        ИначеЕсли _9001=1 Тогда
        
            СчДох  = СчетПоКоду("90.01");
            СчНДС  = СчетПоКоду("90.02");  
            
            СчРасх = СчетПоКоду("90.04")
        ИначеЕсли _9012=1 Тогда
            
            СчДох  = СчетПоКоду("90.12");
            СчНДС  = СчетПоКоду("90.22");  
            
            СчРасх = СчетПоКоду("90.24")
            
            
            

        ИначеЕсли _791=1 Тогда
            
            ////  СчДох  = СчетПоКоду("90.01");
            СчНДС  = СчетПоКоду("79.4");  
            СчРасх = СчетПоКоду("79.1")
            
            
        КонецЕсли;
        
    КонецЕсли;
    
    
    
    
    СчАванса = СчетПоКоду("62.4" );
    Сч62     = СчетПоКоду("62.1");  // Изм., релиз 9.12.1 ПЕ 30.11.09
    
    // {Изм., релиз 9.12.1 ПЕ 30.11.09
    Если Валютный = 0 Тогда
        СчПоставщика = СчетПоКоду( "60.0" ); 
        СчДебитора   = СчетПоКоду( "76.1" );
    Иначе
        СчПоставщика = СчетПоКоду( "60.2" );
        СчДебитора   = СчетПоКоду( "76.2" );
    КонецЕсли;
    // пе} 
    
    ИтогНДС = Итог("НДС");
    
    //    Операция.СуммаОперации=0;  // Комм., релиз 9.12.1 ПЕ 30.11.09
    
    // Если есть хотя бы одна строка в многострочной части,
    // начинаем формировать проводки
    Если (ВидОтгрузки=0) Тогда // 
        ТЗ9 = СоздатьОбъект("ТаблицаЗначений");
        ВыгрузитьТабличнуюЧасть(ТЗ9, "СтавкаНДСспр,НДС,СуммаСНДС"); 
        ТЗ9.Свернуть("СтавкаНДСспр","НДС,СуммаСНДС"); 
        // Отпуск материалов покупателю
        ТЗ9.ВыбратьСтроки();
        Пока ТЗ9.ПолучитьСтроку()=1 Цикл
            /// нет дохода
            Если (_791=0) Тогда         
                
                Если ТЗ9.СуммаСНДС<>0 Тогда
                    // Формируем проводку на сумму отпущенных материалов в разрезе ставок НДС.
                    Операция.НоваяПроводка();
                    Операция.Дебет.Счет = Сч62;      // 62.1 - 91.1 // Изм., релиз 9.12.1 ПЕ 30.11.09
                    Операция.Дебет.Контрагенты=Получатель;
                    Операция.Дебет.Основание=Договор;
                    Если датаДок<Константа.датаНПС Тогда    
                        Операция.Кредит.Счет = СчДох; 
                        Операция.Кредит.Субконто(1,СтатьяДоходаРасхода); // 
                        Операция.Кредит.Субконто(2,ТЗ9.СтавкаНДСспр); // 
                    иначе
                        Если (_9001=0)и  (_9012=0) Тогда     
                            Операция.Кредит.Счет = СчДох; 
                            Операция.Кредит.ВидыДеятельности = ВидДеятельности; // 62.1(2) - 90.07
                            Операция.Кредит.ОбъектыСтроительства=Константа.Объект; //
                            Операция.Кредит.Субконто(3,СтатьяДоходаРасхода); //
                            Операция.Кредит.Субконто(4,ТЗ9.СтавкаНДСспр); // 
                        ИначеЕсли  (_9001=1) или (_9012=1) Тогда    
                            
                            Операция.Кредит.Счет = СчДох; 
                            Операция.Кредит.ВидыДеятельности = ВидДеятельности; // 62.1(2) - 90.07
                            Операция.Кредит.ОбъектыСтроительства=Константа.Объект; //
                            //    Операция.Кредит.Субконто(3,СтатьяДоходаРасхода); //
                            Операция.Кредит.Субконто(3,ТЗ9.СтавкаНДСспр); //               
                            
                            
                        КонецЕсли;    
                        Операция.СодержаниеПроводки = "Прочий доход по тек.деятельности"; 
                    КонецЕсли;    
                    Операция.НомерЖурнала = "МТ"; 
                    Операция.Сумма = ТЗ9.СуммаСНДС; //Итог( "СуммаСНДС" );
                КонецЕсли;
            КонецЕсли;
            
            Если ТЗ9.НДС<>0  Тогда     //                        91.3 - 68.25
                Операция.НоваяПроводка();
                Операция.НомерЖурнала = "МТ";
                Операция.СодержаниеПроводки = "Выделен НДС "+СокрЛП(ТЗ9.СтавкаНДСспр.Ставка)+"%";
                Если датаДок<Константа.ДатаНПС Тогда    
                    
                    Операция.Дебет.Счет   = СчНДС;                  
                    Операция.Дебет.Субконто(1,СтатьяДоходаРасхода);  
                    Операция.Дебет.Субконто(2,ТЗ9.СтавкаНДСспр); 
                Иначе
                    Если (_9001=0) и (_791=0) Тогда    
                        Операция.Дебет.Счет = СчНДС; 
                        Операция.Дебет.ВидыДеятельности = ВидДеятельности; // 62.1(2) - 90.07
                        Операция.Дебет.ОбъектыСтроительства=Константа.Объект; //
                        Операция.Дебет.Субконто(3,СтатьяДоходаРасхода); //
                        Операция.Дебет.Субконто(4,ТЗ9.СтавкаНДСспр); // 
                    ИначеЕсли  (_9001=1) или (_9012=1) Тогда
                        
                        Операция.Дебет.Счет = СчНДС; 
                        Операция.Дебет.ВидыДеятельности = ВидДеятельности; // 62.1(2) - 90.07
                        Операция.Дебет.ОбъектыСтроительства=Константа.Объект; //
                        //Операция.Дебет.Субконто(3,СтатьяДоходаРасхода); //
                        Операция.Дебет.Субконто(3,ТЗ9.СтавкаНДСспр); // 
                        
                    ИначеЕсли  _791=1 Тогда
                        
                        Операция.Дебет.Счет = СчНДС; 
                        Операция.Дебет.Контрагенты=Получатель;
                        Операция.Дебет.Основание=Договор;
                        
                        
                    КонецЕсли;    
                КонецЕсли;    
                
                
                Операция.Кредит.Счет = СчетПоКоду("68.25"); 
                Операция.Кредит.ПлатежиВбюджет=Перечисление.ПлатежиВбюджет.Налог;  
                Операция.Сумма = ТЗ9.НДС; //Итог("НДС");
            КонецЕсли;    
        КонецЦикла;
        
        // аванс
        //БухИт = СоздатьОбъект("БухгалтерскиеИтоги");
        //БухИт.ИспользоватьСубконто(ВидыСубконто.Контрагенты,Получатель,2);
        //БухИт.ИспользоватьСубконто(ВидыСубконто.Основание, Договор, 2);
        //БухИт.ВыполнитьЗапрос(ТекущийДокумент(),,СчАванса,,,,,"С");
        //
        //Аванс = БухИт.СНК();
        //
        //Если Аванс > 0 Тогда
        //    Операция.НоваяПроводка();
        //    Операция.Дебет.Счет = СчАванса;
        //    Операция.Дебет.Контрагенты  = Получатель;
        //    Операция.Дебет.Основание    = Договор;
        //    Операция.Кредит.Счет        = Сч62;  // Изм., релиз 9.12.1 ПЕ 30.11.09
        //    Операция.Кредит.Контрагенты = Получатель;
        //    Операция.Кредит.Основание   = Договор;
        //    
        //    ЗачетАванса = Мин(Итог("суммасндс"), Аванс);
        //    Операция.Сумма = ЗачетАванса;
        //    Операция.СодержаниеПроводки = "Зачтен аванс";
        //    Операция.НомерЖурнала = "МТ";
        //КонецЕсли;
    ИначеЕсли ДокументПоступления.Выбран()=1 тогда  
        // возврат поставщику
        СчПоставщика = ?(ДокументПоступления.ВидПоставщика = Перечисление.ВидПоставщика.Поставщики,
        СчПоставщика, СчДебитора); // Изм., релиз 9.12.1 ПЕ 30.11.09
    КонецЕсли;
    //////////     сторно        
    ////////Если (ВидОтгрузки=1) И (ИтогНДС<>0)  Тогда // возврат поставщику
    ////////    Операция.НоваяПроводка();
    ////////    Операция.НомерЖурнала = "МТ";
    ////////    Операция.СодержаниеПроводки = "Возврат НДС";
    ////////    Операция.Кредит.Счет = СчетПоКоду("18.3"); 
    ////////    Операция.Кредит.Субконто(1,Получатель); 
    ////////    Операция.Дебет.Счет = СчПоставщика;
    ////////    Операция.Дебет.Субконто(1,Получатель); 
    ////////    Операция.Дебет.Субконто(2,Договор);
    ////////    // {Изм., релиз 9.12.1 ПЕ 30.11.09  
    ////////    Если Валютный = 1 Тогда
    ////////        Операция.Валюта   = Договор.Валюта; 
    ////////        Операция.ВалСумма = ИтогНДС; 
    ////////        ДобавитьСтрокуВТаблицуПереоценки(ЕстьКурсРазница, СчПоставщика, Получатель, Договор, , Договор.Валюта); // ПС 04.12.09
    ////////    КонецЕсли;
    ////////    Операция.Сумма = ОКР(ИтогНДС*?(Валютный=1,КурсПоставки,1),0); // ПС 04.12.09
    ////////    // пе} 
    ////////КонецЕсли;     
    
    
        //             
    Если (ВидОтгрузки=1) И (ИтогНДС<>0)  Тогда // возврат поставщику
        Операция.НоваяПроводка();
        Операция.НомерЖурнала = "МТ";
        Операция.СодержаниеПроводки = "Возврат НДС";
        Операция.Дебет.Счет = СчетПоКоду("18.3"); 
        Операция.Дебет.Субконто(1,Получатель); 
        Операция.Кредит.Счет = СчПоставщика;
        Операция.Кредит.Субконто(1,Получатель); 
        Операция.Кредит.Субконто(2,Договор);
        // {Изм., релиз 9.12.1 ПЕ 30.11.09  
        Если Валютный = 1 Тогда
            Операция.Валюта   = Договор.Валюта; 
            Операция.ВалСумма = ИтогНДС; 
            ДобавитьСтрокуВТаблицуПереоценки(ЕстьКурсРазница, СчПоставщика, Получатель, Договор, , Договор.Валюта); // ПС 04.12.09
        КонецЕсли;
        Операция.Сумма = ОКР(ИтогНДС*?(Валютный=1,КурсПоставки,1),0)*(-1); // ПС 04.12.09
        // пе} 
    КонецЕсли; 
    
    
    
    ////////
    // Для дополнительного сервиса проверяем количество материала.
    // Если его не хватает - будем выдавать сообщение.
    БИ = СоздатьОбъект("БухгалтерскиеИтоги");
    БИ.ИспользоватьСубконто(ВидыСубконто.МестаХранения, МестоХранения, 2);
    БИ.ИспользоватьСубконто(ВидыСубконто.Сотрудники, Ответственный, 2);
    БИ.ИспользоватьСубконто(ВидыСубконто.Материалы);
    БИ.ВключатьСубсчета( 1 );
    БИ.ВыполнитьЗапрос(ТекущийДокумент(),, "10",,,,, 5);
    
    // Теперь формируем проводки для каждой строки документа
    Пока ПолучитьСтроку()=1 Цикл
        
        Если КоличествоОтпущено=0 Тогда
            // Если не указано количество отпускаемного материала, 
            // выдаем сообщение и проводку не формируем.
            Сообщить( "Строка " + СокрЛП( НомерСтроки )
            + ": не указано количество материала """
            +СокрЛП(Материал)+""". Проводка не записана!", "!");
            Продолжить;
        КонецЕсли;
        
        // Проверяем остаток материала.
        ОстКол = 0;
        ОстСум = 0;
        БИ.ПолучитьСчет(, Материал.СубСчет10 );
        Если БИ.ПолучитьСубконто(ВидыСубконто.Материалы,, Материал) = 1 Тогда
            ОстКол=БИ.СКД("К"); // Суммовой остаток, потребуется для расчета средней цены
            ОстСум=БИ.СКД("С");
        КонецЕсли;
        
        Если ОстКол=0 Тогда
            
            // Если отсутствует требуемый материал, выдаем сообщение, и проводку не формируем.
            //Сообщить( "Субчет " + СокрЛП( Материал.СубСчет10 )+ ", место хранения """+СокрЛП(МестоХранения)+""": нет материала """+СокрЛП(Материал)+""".", "!");
            Сообщить( "Субчет " + СокрЛП( Материал.СубСчет10 )
            + ", место хранения """+СокрЛП(МестоХранения)
            + ", ответственный """ +СокрЛП(Ответственный)
            +""": нет материала """+СокрЛП(Материал)+""".", "!");
            СтатусВозврата(0); Возврат;
        Иначе
            Если ОстКол < КоличествоОтпущено Тогда
                //Сообщить( "Субчет " + СокрЛП( Материал.СубСчет10 )+ ", место хранения """+СокрЛП(МестоХранения)+""": недостаточно материала """+СокрЛП(Материал)+""".", "!");
                Сообщить( "Субчет " + СокрЛП( Материал.СубСчет10 )
                + ", место хранения """+СокрЛП(МестоХранения)
                + ", ответственный """ +СокрЛП(Ответственный)
                +""": недостаточно материала """+СокрЛП(Материал)+""".", "!");
                СтатусВозврата(0); Возврат;
            КонецЕсли;
            
            Операция.НоваяПроводка();
            Операция.НомерЖурнала="МТ";
            Если (ВидОтгрузки=0) Тогда
                Операция.Кредит.Счет      = Материал.СубСчет10;
                Операция.Кредит.Материалы = Материал;
                Операция.Кредит.МестаХранения = МестоХранения;
                Операция.Кредит.Субконто(3,Ответственный);
            иначе
                Операция.Дебет.Счет      = Материал.СубСчет10;
                Операция.Дебет.Материалы = Материал;
                Операция.Дебет.МестаХранения = МестоХранения;
                Операция.Дебет.Субконто(3,Ответственный);
            КонецЕсли;
            Если (ВидОтгрузки=0) Тогда //                91.2 - 10.х
                Операция.Дебет.Счет = СчРасх; 
                Если ДатаДок<Константа.датаНПС Тогда
                    Операция.Дебет.Субконто(1,СтатьяДоходаРасхода); 
                Иначе
                    Если _791=0 Тогда    
                        
                        Операция.Дебет.Субконто(3,СтатьяДоходаРасхода); //
                        Операция.дебет.ОбъектыСтроительства=Константа.Объект; //
                        Операция.Дебет.ВидыДеятельности = ВидДеятельности; // 
                    Иначе
                        Операция.Дебет.Контрагенты=Получатель;
                        Операция.Дебет.Основание=Договор;
                        
                        
                        
                    КонецЕсли;
                    
                КонецЕсли;
                Если (ВидОтгрузки=0) Тогда    
                
                
                ОперацияСумма = 0;
                Если КоличествоОтпущено=ОстКол Тогда
                    // Если материал отпускается полностью,
                    // полностью списываем сумму
                    ОперацияСумма=ОстСум;
                Иначе
                    ОперацияСумма=Окр( ОстСум/ОстКол*КоличествоОтпущено, 2 );
                КонецЕсли;  
                Операция.Сумма = ОперацияСумма;
                Операция.СодержаниеПроводки = "Списан материал";
                УчетнаяЦена = ОперацияСумма/?(КоличествоОтпущено=0,1,КоличествоОтпущено);  
            Иначе
                
                    
                ОперацияСумма = 0;
                Если КоличествоОтпущено=ОстКол Тогда
                    // Если материал отпускается полностью,
                    // полностью списываем сумму
                    ОперацияСумма=-ОстСум;
                Иначе
                    ОперацияСумма=Окр( ОстСум/ОстКол*КоличествоОтпущено, 2 )*(-1);
                КонецЕсли;  
                Операция.Сумма = ОперацияСумма*(-1);
                Операция.СодержаниеПроводки = "Списан материал";
                УчетнаяЦена = ОперацияСумма/?(КоличествоОтпущено=0,1,КоличествоОтпущено)*(-1);  
                
            КонецЕсли;    
                
            Иначе //            возврат поставщику 60.1 (76.1) - 10.х
                ////Операция.Дебет.Счет = СчПоставщика;
                ////Операция.Дебет.Субконто(1,Получатель); 
                ////Операция.Дебет.Субконто(2,Договор); 
                ////// {Изм., релиз 9.12.1 ПЕ 30.11.09  
                ////Если Валютный = 1 Тогда
                ////    Операция.Валюта   = Договор.Валюта; 
                ////    Операция.ВалСумма = СуммаСНДС - НДС; 
                ////    ДобавитьСтрокуВТаблицуПереоценки(ЕстьКурсРазница, СчПоставщика, Получатель, Договор, , Договор.Валюта); // ПС 04.12.09
                ////КонецЕсли;
                ////Операция.Сумма= ОКР((СуммаСНДС - НДС)*?(Валютный=1,КурсПоставки,1),0); 
                ////// пе} 
                ////Операция.СодержаниеПроводки = "Возврат поставщику";
            
                
                    Операция.Кредит.Счет = СчПоставщика;
                Операция.Кредит.Субконто(1,Получатель); 
                Операция.Кредит.Субконто(2,Договор); 
                // {Изм., релиз 9.12.1 ПЕ 30.11.09  
                Если Валютный = 1 Тогда
                    Операция.Валюта   = Договор.Валюта; 
                    Операция.ВалСумма = СуммаСНДС - НДС; 
                    ДобавитьСтрокуВТаблицуПереоценки(ЕстьКурсРазница, СчПоставщика, Получатель, Договор, , Договор.Валюта); // ПС 04.12.09
                КонецЕсли;
                Операция.Сумма= ОКР((СуммаСНДС - НДС)*?(Валютный=1,КурсПоставки,1),0)*(-1); 
                // пе} 
                Операция.СодержаниеПроводки = "Возврат поставщику";
                
                
                Если (АвтоКП=1) Тогда
                    ТаблицаПокупок.НоваяСтрока();
                    ТаблицаПокупок.Товар = Материал; 
                    ТаблицаПокупок.Всего = СуммаСНДС;
                    ТаблицаПокупок.Сумма = Сумма; 
                    ТаблицаПокупок.НДС   = НДС;
                КонецЕсли;
            КонецЕсли;    
    Если (ВидОтгрузки=0) Тогда         
            Операция.Количество=КоличествоОтпущено;
            
    Иначе
            
    
            Операция.Количество=КоличествоОтпущено*(-1);
            
        
    КонецЕсли;    
        
            // Сумму операции будет считать, так как неизвестно, сколько материала
            // реально отпущено.
            //   Операция.СуммаОперации = Операция.СуммаОперации + Операция.Сумма;  // Комм., релиз 9.12.1 ПЕ 30.11.09
        КонецЕсли;
    КонецЦикла;
    
    //  Комм., релиз 9.12.1 ПЕ 30.11.09: сумма и содержание заполняются при записи
    //    Операция.СуммаОперации = Итог("СуммаСндс");  // И // Комм., релиз 9.12.1 ПЕ 30.11.09
    //    Операция.Содержание = ?(ВидОтгрузки=0,"Отпуск","Возврат")+" материалов/ "+Получатель; // Комм., релиз 9.12.1 ПЕ 30.11.09
    //
    Если АвтоКП=1 Тогда 
        юДляЗаполненияАвтоКнигиПокупок(Контекст, ТаблицаПокупок);
    КонецЕсли;
    
    // {Изм., релиз 9.12.1 ПС 04.12.09  
    // Курс разницы 
    Если ЕстьКурсРазница <> 0  Тогда
        Операция.ЗаписатьПроводки();
        глПереоценкаСчетов(Контекст, глТаблицаСчетов);
    КонецЕсли;
    // пс}
    
    Операция.Записать();
    
КонецПроцедуры