"Я не программистка. Мне нужна ваша помощь.<br>Нашла в инете отчет по реализации по услугам а он не робит. помогите надо оч срочно(((<br><br>Вот исходник<br>Заранее спс!!!!!<br><br>НДС и себестоимость не надо и разницу тоже надо чтоб прост формировал по субконту за период и валюту тоже надо чтоб просто показывало сколько было и всего за месяц<br><br>//*******************************************<br>Процедура Сформировать()<br> строкаФильтра=ПериодСтр(НачДата,КонДата);<br> строкаФильтра=строкаФильтра+РазделительСтрок; <br> <br> Запрос=создатьОбъект("Запрос");<br> ТекстЗапроса="<br> |Период с НачДата по КонДата;<br> |ОбрабатыватьДокументы Проведенные;<br> |Док=Документ.РасходнаяНакладная.ТекущийДокумент,Документ.СуммовыеРазницы.Документ;<br> |ДокСР=Документ.СуммовыеРазницы.ТекущийДокумент;<br> |Кол=Документ.РасходнаяНакладная.Количество;<br> |Товар=Документ.РасходнаяНакладная.Товар;<br> |НДС=Документ.РасходнаяНакладная.НДС;<br> |НомерСтроки=Документ.РасходнаяНакладная.НомерСтроки;<br> |НомерСтрокиСР=Документ.СуммовыеРазницы.НомерСтроки;<br> |СуммаВсего=Документ.РасходнаяНакладная.Сумма;<br> |СуммаСНДС=Документ.РасходнаяНакладная.Всего;<br> |СумРазница=Документ.СуммовыеРазницы.Сумма;<br> |Группировка Док;<br> |Группировка Товар без Групп;<br> |Функция итНДС=сумма(НДС);<br> |Функция итКол=сумма(Кол);<br> |Функция итСумРазница=сумма(СумРазница);<br> |Функция итСуммаВсегоСНДС=сумма(СуммаСНДС); <br> |Функция итСуммаВсего=сумма(СуммаВсего);";<br> Если ВыбТовар.Выбран()=1 Тогда<br> ТекстЗапроса=ТекстЗапроса+"<br> |Условие (Товар в ВыбТовар);"; <br> строкаФильтра=строкаФильтра+РазделительСтрок+<br> "По товару: "+строка(ВыбТовар);<br> иначе<br> строкаФильтра=строкаФильтра+РазделительСтрок+<br> "По товару: ВСЕ"; <br> КонецЕсли; <br> <br> Если ВыбКонтрагент.Выбран()=1 Тогда<br> ТекстЗапроса=ТекстЗапроса+"<br> |Условие (Док.Контрагент в ВыбКонтрагент);";<br> строкаФильтра=строкаФильтра+РазделительСтрок+<br> "По контрагенту: "+строка(ВыбКонтрагент);<br> иначе <br> строкаФильтра=строкаФильтра+РазделительСтрок+<br> "По контрагенту: ВСЕ"; <br> КонецЕсли; <br> Если СуммыСНДС=1 Тогда<br> строкаФильтра=строкаФильтра+РазделительСтрок+<br> "Суммы включают НДС"; <br> КонецЕсли;<br> Запрос.Выполнить(ТекстЗапроса);<br> ит=создатьОбъект("ТаблицаЗначений");<br> Запрос.Выгрузить(ит,1,1);<br> //чч=0;<br> //ит.ВыбратьСтроку(чч);<br> <br> Таб=СоздатьОбъект("Таблица"); <br> Опер=создатьОбъект("Операция"); <br> <br> Таб.ВывестиСекцию("Шапка|Общая"); <br> Если ФормироватьСебестоимость=1 Тогда<br> Таб.ПрисоединитьСекцию("Шапка|Себестоимость");<br> КонецЕсли;<br> Ном=0; <br> итСуммаЗакупки=0;<br> итНДС=0;<br> итСуммаВсего=0;<br> итНаценка=0;<br> Пока Запрос.Группировка(1)=1 Цикл <br> ЦеныВДоговоре = 1; // в рублях<br> Договор=Запрос.Док.Договор;<br> Если Договор.Выбран() = 1 Тогда<br> Если ПустоеЗначение(Договор.ВалютаДоговора) = 0 Тогда<br> ЦеныВДоговоре = 2; // в валюте<br> КонецЕсли;<br> КонецЕсли; <br> Если ЦеныВДоговоре=2 Тогда<br> Валюта = Договор.ВалютаДоговора; <br> Кратность = Валюта.Кратность.Получить(Запрос.Док.ДатаДок);<br> Кратность = ?(Кратность=0, 1, Кратность); <br> КонецЕсли;<br> КурсВОтчет=ВыбВалюта.Курс.Получить(Запрос.Док.ДатаДок);<br> //сообщить(Запрос.ДокСР); <br> <br> //------------<br> //считаем суммовые разницы по документу<br> //<br> СумРазница=0;<br> Если НЕ(ПустоеЗначение(Запрос.ДокСР)=1) Тогда<br> Если Опер.НайтиОперацию(Запрос.ДокСР)=1 Тогда<br> Опер.ПолучитьПроводкуПоНомеру(Запрос.НомерСтрокиСР); <br> СумРазница=Опер.Сумма;<br> Если ЦеныВДоговоре=2 Тогда<br> Если КурсВОтчет<>0 Тогда<br> КратностьВОтчет = ВыбВалюта.Кратность.Получить(Запрос.Док.ДатаДок);<br> КратностьВОтчет = ?(КратностьВОтчет=0, 1, КратностьВОтчет); <br> СумРазница=СумРазница/КурсВОтчет*КратностьВОтчет;<br> КонецЕсли;<br> КонецЕсли; <br> КонецЕсли;<br> КонецЕсли;<br> //конец расчета СР<br> //----------------<br> <br> Если НЕ(Опер.НайтиОперацию(Запрос.Док)=1) Тогда<br> сообщить("Нет операции по документу: "+строка(Запрос.Док));<br> продолжить;<br> КонецЕсли; <br><br> Пока Запрос.Группировка(2)=1 Цикл <br> Если ПустоеЗначение(Запрос.Товар)=1 Тогда<br> Продолжить;<br> КонецЕсли;<br> Ном=Ном+1;<br> Опер.ПолучитьПроводкуПоНомеру(Запрос.НомерСтроки); <br> Если Опер.Кредит.Субконто(1)=Запрос.Товар Тогда<br> СуммаЗакупки=Опер.Сумма; <br> иначе<br> сообщить(строка(Запрос.Док)+". Проводки не соответсвуют документу. Необходимо перепровести документ");<br> КонецЕсли;<br><br> Если СуммыСНДС=1 Тогда<br> СуммаВсего=Запрос.итСуммаВсегоСНДС;<br> текСтавкаНДС=Запрос.Товар.СтавкаНДС.Получить(Запрос.Док.ДатаДок);<br> СуммаЗакупки=СуммаЗакупки*(1+текСтавкаНДС.Ставка/100);<br> иначе<br> СуммаВсего=Запрос.итСуммаВсего; <br> КонецЕсли;<br> Если ЦеныВДоговоре=2 Тогда<br> НДС=Запрос.итНДС*Запрос.Док.Курс/Кратность;<br> СуммаВсего=СуммаВсего*Запрос.Док.Курс/Кратность;<br> иначе<br> НДС=Запрос.итНДС;<br> СуммаВсего=СуммаВсего;<br> КонецЕсли;<br> Если КурсВОтчет<>0 Тогда <br> КратностьВОтчет = ВыбВалюта.Кратность.Получить(Запрос.Док.ДатаДок);<br> КратностьВОтчет = ?(КратностьВОтчет=0, 1, КратностьВОтчет); <br> СуммаЗакупки=СуммаЗакупки/КурсВОтчет*КратностьВОтчет;<br> НДС=НДС/КурсВОтчет*КратностьВОтчет;<br> СуммаВсего=СуммаВсего/КурсВОтчет*КратностьВОтчет;<br> КонецЕсли;<br> итСуммаЗакупки=итСуммаЗакупки+СуммаЗакупки;<br> итНДС=итНДС+НДС;<br> итСуммаВсего=итСуммаВсего+СуммаВсего;<br> Наценка=СуммаВсего-СуммаЗакупки;<br> итНаценка=итНаценка+Наценка;<br> Если СуммаЗакупки<>0 Тогда<br> ПроцНаценки=окр(Наценка/СуммаЗакупки*100,2);<br> иначе<br> ПроцНаценки=0;<br> КонецЕсли;<br> Таб.ВывестиСекцию("Строка|Общая"); <br> Если ФормироватьСебестоимость=1 Тогда<br> Таб.ПрисоединитьСекцию("Строка|Себестоимость");<br> КонецЕсли; <br> КонецЦикла; <br> Если СумРазница<>0 Тогда <br> итНаценка=итНаценка+СумРазница; <br> Ном=Ном+1;<br> ПечТовар="*** Сум.разница ***"; //+строка(Запрос.Док);<br> СРНаценка=СумРазница;<br> СРПроцНаценки=""""; //СумРазница/(?(СумРазница<0,-1,1)*СумРазница)*100;<br> Таб.ВывестиСекцию("СумРазница|Общая"); <br> Если ФормироватьСебестоимость=1 Тогда<br> Таб.ПрисоединитьСекцию("СумРазница|Себестоимость");<br> КонецЕсли; <br> КонецЕсли;<br> КонецЦикла; <br> Если итСуммаЗакупки<>0 Тогда<br> итПроцНаценки=окр(итНаценка/итСуммаЗакупки*100,2);<br> иначе<br> итПроцНаценки=0;<br> КонецЕсли; <br> Таб.ВывестиСекцию("Подвал|Общая"); <br> Если ФормироватьСебестоимость=1 Тогда<br> Таб.ПрисоединитьСекцию("Подвал|Себестоимость");<br> КонецЕсли;<br> Таб.ТолькоПросмотр(1);<br> Таб.Опции(0,0,0,0);<br> Таб.Показать("Отчет по реализации"); <br>КонецПроцедуры<br>"