Группа: Пользователи
Сообщений: 294
Спасибо сказали: 1 раз
Рейтинг: 0
1С Предприятие 7.7(сетевая версия) - 7.70.027 Конфигурация: Производство-Услуги-Бухгалтерия для Украины(7.70.010) В отчет выводится непонятная сумма, надо её (сумму) брать из трех разных видов документов "ПриходнаяНакладнаяЗапасы","ПриходнаяНакладнаяГТД", "ПриходнаяНакладнаяПрочие". Когда указываю документы "запасы" и "прочие", сумму считает правильно, как только добавляю еще и "гтд" вообще какую-то непонятную сумму выдает.
Если (Док.Вид() = "ПриходнаяНакладнаяЗапасы") ИЛИ (Док.Вид() = "ПриходнаяНакладнаяПрочие") Тогда (Док.Вид() = "ПриходнаяНакладнаяГТД") Тогда Док.ВыбратьСтроки(); Сумма = 0; Пока Док.ПолучитьСтроку() = 1 Цикл Если ПустоеЗначение(Док.КодДК) = 1 Тогда Продолжить; КонецЕсли; Если (ПустоеЗначение(ВыбКод) = 0)и((Лев(СокрЛП(Док.КодДК),СтрДлина(СокрЛП(ВыбКод))) <> СокрЛП(ВыбКод))или(СтрДлина(СокрЛП(ВыбКод))>СтрДлина(СокрЛП(Док.КодДК)))) Тогда Продолжить; КонецЕсли;
Табл.НоваяСтрока(); Табл.КодДК = Док.КодДК; Сумма = глПересчет(Док.СуммаСНДС,Док.Валюта,Док.ДатаДок,Гривня,Док.ДатаДок,Док.ДатаДок);// Док.СуммаСНДС; Если ПрошлГод = СокрЛП(ПериодСтр(НачГода(Док.ДатаДок),КонГода(Док.ДатаДок))) Тогда Табл.ПрошлФакт = Сумма; ИначеЕсли ЭтотГод = СокрЛП(ПериодСтр(НачГода(Док.ДатаДок),КонГода(Док.ДатаДок))) Тогда Табл.УстановитьЗначение(Табл.КоличествоСтрок(),"мес"+Строка(ДатаМесяц(Док.ДатаДок))+"_факт",Сумма); КонецЕсли; КонецЦикла; Иначе Сумма = 0; Если ПустоеЗначение(Док.Закупки) = 1 Тогда Продолжить; КонецЕсли; Если (ПустоеЗначение(ВыбКод) = 0)и((Лев(СокрЛП(Док.Закупки),СтрДлина(СокрЛП(ВыбКод))) <> СокрЛП(ВыбКод))или(СтрДлина(СокрЛП(ВыбКод))>СтрДлина(СокрЛП(Док.Закупки)))) Тогда Продолжить; КонецЕсли;
Если Док.Вид() = "ПлатежноеПоручение" Тогда Сумма = глПересчет(Док.СуммаСНДС,Док.РСчет.Валюта,Док.ДатаДок,Гривня,Док.ДатаДок,Док.ДатаДок);// Док.СуммаСНДС; Иначе Сумма = глПересчет(Док.СуммаВал,Док.РСчет.Валюта,Док.ДатаДок,Гривня,Док.ДатаДок,Док.ДатаДок);// Док.СуммаВал; КонецЕсли; Табл.НоваяСтрока(); Табл.КодДК = Док.Закупки; Если ПрошлГод = СокрЛП(ПериодСтр(НачГода(Док.ДатаДок),КонГода(Док.ДатаДок))) Тогда Табл.ПрошлФакт = Сумма; ИначеЕсли ЭтотГод = СокрЛП(ПериодСтр(НачГода(Док.ДатаДок),КонГода(Док.ДатаДок))) Тогда Табл.УстановитьЗначение(Табл.КоличествоСтрок(),"мес"+Строка(ДатаМесяц(Док.ДатаДок))+"_факт",Сумма); КонецЕсли; КонецЕсли;
Вторая строка так выглядит:
(Док.Вид() = "ПриходнаяНакладнаяПрочие") ИЛИ
1С Предприятие 7.7(сетевая версия) - 7.70.027,Конф: ПУБ(7.70.010)
Группа: Пользователи
Сообщений: 294
Спасибо сказали: 1 раз
Рейтинг: 0
Вот такое выдает: 2.6224 1 2.6224 1 1 1 1 1 1 1 1 1 1 1 2.7725 1 1 1 1 1 796.47 1 1 Т.е. это разные курсы были я так понимаю, только вот что за число 796, 47
разобралась, 796,47 курс по доллару Так что,получается все правильно работает?)
1С Предприятие 7.7(сетевая версия) - 7.70.027,Конф: ПУБ(7.70.010)
Группа: Пользователи
Сообщений: 294
Спасибо сказали: 1 раз
Рейтинг: 0
в том то и дело, что в документе ГТД в валюте например указывается курс 10руб=2,71 грн., в колонка СуммаСНДС сумма уже в грн, а в отчете выдается эта сумма в грн умноженная на 0,271, в общем заново почему то переводит, и получается например в доке 1 190 205грн, а в отчете 322 545,555
1С Предприятие 7.7(сетевая версия) - 7.70.027,Конф: ПУБ(7.70.010)
в общем заново почему то переводит, и получается например в доке 1 190 205грн, а в отчете 322 545,555
Не почему-то, а потому что в модуле так. Если во всех трех документах сумма уже в гривневом покрытии - тогда просто закомментируйте строки пересчета и сделайте
Пересчет суммы из одной валюты в другую. Очевидно автор подразумевал, что в документах валюта суммы зависит от реквизита документа Валюта и забыл, что многие из них в табличной части уже содержат пересчитанные суммы.
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!