Имя: Пароль:
1C
1С v8
СуммаНДС у документа РеализацияТоваровуслуг
0 djyarilo007
 
25.07.11
09:43
Записываю ТЧ документа Реализация товаров услуг. В ручную пересчитываю СуммуНДС, когда делаю Сообщить(суммандс) он выводит число, но на форме не прописывается((( Почему может быть такое?

докреал = документы.РеализацияТоваровУслуг.создатьдокумент();
       тз = новый таблицазначений;
           тз.колонки.Добавить("номенклатура");
           тз.колонки.Добавить("Количество");
           
           
       докприх = документы.РасходныйОрдерНаТовары.Выбрать() ;  //приходный ордер
       пока докприх.Следующий() цикл
           если докприх.ДокументПередачи = ссылка тогда
               
               для каждого стрприх из докприх.Товары цикл
                    стра =тз.добавить();
              стра.Номенклатура = стрприх.номенклатура;
              стра.количество = стрприх.количество;
             
               конеццикла;    
                       
           конецесли;
       конеццикла;
       
       
        тз.Свернуть("номенклатура", "Количество");
        Для Каждого ТекущаяСтрока Из тз Цикл    
       
        докреал.дата = докприх.Дата;

        докреал.ОдобренАдминистрацией = истина;
       докреал.ОдобренБухгалтерией = истина;
       докреал.ОтражатьВУправленческомУчете = истина;
       докреал.Сделка = ссылка.Ссылка;
       докреал.Организация = ссылка.Организация;
       докреал.Контрагент = ссылка.Контрагент;
       докреал.Склад = ссылка.СкладГруппа;
       докреал.ДоговорКонтрагента = ссылка.ДоговорКонтрагента;
        докреал.ВалютаДокумента = ссылка.ВалютаДокумента;
        докреал.КурсВзаиморасчетов = ссылка.КурсВзаиморасчетов;
        докреал.КратностьВзаиморасчетов = ссылка.КратностьВзаиморасчетов;
        докреал.ВидПередачи = перечисления.ВидыПередачиТоваров.ПоОрдеру;
        докреал.Ответственный = ссылка.Ответственный;
        докреал.ВидОперации = Перечисления.ВидыОперацийРеализацияТоваров.ПродажаКомиссия;
        докреал.СуммаВключаетНДС = ссылка.СуммаВключаетНДС;
        докреал.УчитыватьНДС = ссылка.УчитыватьНДС;
       

       для каждого основа из ссылка.Товары цикл
           
           если основа.Номенклатура = ТекущаяСтрока.Номенклатура тогда
           стркоа = докреал.товары.добавить();        
             стркоа.Номенклатура = основа.номенклатура;
       
           стркоа.ЕдиницаИзмерения =основа.ЕдиницаИзмерения;
           стркоа.Коэффициент = основа.Коэффициент;
           стркоа.Цена = основа.Цена;
           стркоа.ЕдиницаИзмеренияМест = основа.ЕдиницаИзмеренияМест;                
           стркоа.количество =  ТекущаяСтрока.количество;
           стркоа.Сумма = стркоа.количество *стркоа.цена;
          стркоа.СпособСписанияОстаткаТоваров = перечисления.СпособыСписанияОстаткаТоваров.СоСклада;
           стркоа.СтавкаНДС = основа.СтавкаНДС;
           если основа.СтавкаНДС = перечисления.СтавкиНДС.НДС18 тогда
               
           ндс =18;
           сумма = стркоа.Сумма/(1+ндс/100);
           стркоа.СуммаНДС =0;

           конецесли;
            стркоа.СуммаНДС = стркоа.Сумма -   сумма;
           
           
           
             конецесли;
             
           
      КонецЦикла;
             для каждого основа1 из ссылка.Услуги цикл
           строка = докреал.Услуги.Добавить();
           строка.Номенклатура = основа1.Номенклатура;
           строка.Содержание=основа1.Содержание;
           строка.количество=основа1.количество;
           строка.цена  =основа1.цена;
           строка.сумма =основа1.сумма;
           стркоа.СуммаНДС =основа1.СуммаНДС  ;
           строка.СтавкаНДС =основа1.СтавкаНДС ;
           
           строка.ПроцентАвтоматическихСкидок   =основа1.ПроцентАвтоматическихСкидок;
           строка.ПроцентСкидкиНаценки  =основа1.ПроцентСкидкиНаценки    ;
           строка.ЗаказПокупателя   =ссылка.Ссылка    ;
           стркоа.ЗначениеУсловияАвтоматическойСкидки=основа1.ЗначениеУсловияАвтоматическойСкидки  ;
           строка.УсловиеАвтоматическойСкидки  =основа1.УсловиеАвтоматическойСкидки       ;
       

           конеццикла
           

   конеццикла;
   
       докприх1 = документы.РасходныйОрдерНаТовары.Выбрать() ;  //приходный ордер
       пока докприх1.Следующий() цикл
             
           если докприх1.ДокументПередачи = ссылка тогда
               докреал.Записать(режимзаписидокумента.Проведение);
               
                   //в расходник пытаемся запихнуть эту реализаци
                докприхоб1 = докприх1.ПолучитьОбъект();
               докприхоб1.ДокументПередачи = докреал.Ссылка;
                докприхоб1.Записать();

               а=0;
           
           конецесли;
                     
       конеццикла;
       если а = 0 тогда
   докреализация = документы.РеализацияТоваровУслуг.Выбрать();
   пока докреализация.Следующий() цикл
   если докреализация = докреал тогда
           сообщить("ага");
   конецесли;    
   конеццикла  ;
   
           
           
   форма = докреал.получитьформу();
   форма.ТоварыСтавкаНДСПриИзменении();
   форма.Открыть();
     
 
 
    конецесли;    
    если а = 1 тогда
       сообщить("По заказу Покупателя нет ни одного Расходного Ордера, Реализацию Создать не удалось");
       
   конецесли;
1 djyarilo007
 
26.07.11
10:45
решил сам