|
v7: Валюта в отчете | ☑ | ||
---|---|---|---|---|
0
kouki
09.09.11
✎
12:59
|
Здравствуйте, Гуру 1с.))) Сталкнулся с такой проблеммой. на предприятии с определенного момента начали продавать за евро. И хотят, чтобы это евро попадало в отчет. В отчете вроде подкоректировал но блин... какой то глюк счс скину код только не ругайте... длинный гадина
ТекстЗапроса = "//{{ЗАПРОС(Показать) |Обрабатывать НеПомеченныеНаУдаление; |Период с НачДата по КонДата; |РасходСоСклада = Документ.РасходСоСкладаВБелорусскихРублях.ТекущийДокумент, | Документ.РасходСоСкладаВВалюте.ТекущийДокумент; |Получатель = Документ.РасходСоСкладаВБелорусскихРублях.Получатель, | Документ.РасходСоСкладаВВалюте.Получатель; |Продукция = Документ.РасходСоСкладаВБелорусскихРублях.Продукция, | Документ.РасходСоСкладаВВалюте.Продукция; |Скидка = Документ.РасходСоСкладаВБелорусскихРублях.Скидка, | Документ.РасходСоСкладаВВалюте.Скидка; |Валюта = Документ.РасходСоСкладаВБелорусскихРублях.Валюта, | Документ.РасходСоСкладаВВалюте.Валюта; |ДатаТТН = Документ.РасходСоСкладаВБелорусскихРублях.ДатаТТН, | Документ.РасходСоСкладаВВалюте.ДатаТТН; |ДатаТТН1 = Документ.РасходСоСкладаВБелорусскихРублях.ДатаТТН1, | Документ.РасходСоСкладаВВалюте.ДатаТТН1; |ДатаТТН2 = Документ.РасходСоСкладаВБелорусскихРублях.ДатаТТН2, | Документ.РасходСоСкладаВВалюте.ДатаТТН2; |ДатаТТН3 = Документ.РасходСоСкладаВБелорусскихРублях.ДатаТТН3, | Документ.РасходСоСкладаВВалюте.ДатаТТН3; |НомерТТН = Документ.РасходСоСкладаВБелорусскихРублях.НомерТТН, | Документ.РасходСоСкладаВВалюте.НомерТТН; |НомерТТН1 = Документ.РасходСоСкладаВБелорусскихРублях.НомерТТН1, | Документ.РасходСоСкладаВВалюте.НомерТТН1; |НомерТТН2 = Документ.РасходСоСкладаВБелорусскихРублях.НомерТТН2, | Документ.РасходСоСкладаВВалюте.НомерТТН2; |НомерТТН3 = Документ.РасходСоСкладаВБелорусскихРублях.НомерТТН3, | Документ.РасходСоСкладаВВалюте.НомерТТН3; |НомерТН2 = Документ.РасходСоСкладаВБелорусскихРублях.НомерТН2, | Документ.РасходСоСкладаВВалюте.НомерТН2; |НомерТН21 = Документ.РасходСоСкладаВБелорусскихРублях.НомерТН21, | Документ.РасходСоСкладаВВалюте.НомерТН21; |НомерТН22 = Документ.РасходСоСкладаВБелорусскихРублях.НомерТН22, | Документ.РасходСоСкладаВВалюте.НомерТН22; |НомерТН23 = Документ.РасходСоСкладаВБелорусскихРублях.НомерТН23, | Документ.РасходСоСкладаВВалюте.НомерТН23; |Количество = Документ.РасходСоСкладаВБелорусскихРублях.Количество, | Документ.РасходСоСкладаВВалюте.Количество; |Количество1 = Документ.РасходСоСкладаВБелорусскихРублях.Количество1, | Документ.РасходСоСкладаВВалюте.Количество1; |Количество2 = Документ.РасходСоСкладаВБелорусскихРублях.Количество2, | Документ.РасходСоСкладаВВалюте.Количество2; |Количество3 = Документ.РасходСоСкладаВБелорусскихРублях.Количество3, | Документ.РасходСоСкладаВВалюте.Количество3; |ВсегоСНДС = Документ.РасходСоСкладаВБелорусскихРублях.ВсегоСНДС, | Документ.РасходСоСкладаВВалюте.ВсегоСНДС; |ВсегоСНДС1 = Документ.РасходСоСкладаВБелорусскихРублях.ВсегоСНДС1, | Документ.РасходСоСкладаВВалюте.ВсегоСНДС1; |ВсегоСНДС2 = Документ.РасходСоСкладаВБелорусскихРублях.ВсегоСНДС2, | Документ.РасходСоСкладаВВалюте.ВсегоСНДС2; |ВсегоСНДС3 = Документ.РасходСоСкладаВБелорусскихРублях.ВсегоСНДС3, | Документ.РасходСоСкладаВВалюте.ВсегоСНДС3; |Условие (((ДатаТТН>=НачДата) и (ДатаТТН<=КонДата)) или ((ДатаТТН1>=НачДата) и (ДатаТТН1<=КонДата)) или ((ДатаТТН2>=НачДата) и (ДатаТТН2<=КонДата)) или ((ДатаТТН3>=НачДата) и (ДатаТТН3<=КонДата))); |Группировка Продукция упорядочить по Продукция.Наименование; |Группировка РасходСоСклада упорядочить по РасходСоСклада.НомерДок без групп; |"//}}ЗАПРОС ; Если ПоРоссии = 1 Тогда ТекстЗапроса = ТекстЗапроса + "Условие(Найти(НРег(Получатель.ПолноеНаименование()),""россия"")>0);"; ИначеЕсли ПоСНГ = 1 Тогда ТекстЗапроса = ТекстЗапроса + "Условие(Найти(НРег(Получатель.ПолноеНаименование()),""снг"")>0);"; ИначеЕсли ПоДалЗар = 1 Тогда ТекстЗапроса = ТекстЗапроса + "Условие(Найти(НРег(Получатель.ПолноеНаименование()),""зарубеж"")>0);"; КонецЕсли; // Если ошибка в запросе, то выход из процедуры Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда Возврат; КонецЕсли; //формирование таблицы значения последние добавления по евро ТЗ = СоздатьОбъект("ТаблицаЗначений"); ТЗ.НоваяКолонка("Группа"); ТЗ.НоваяКолонка("Продукция"); ТЗ.НоваяКолонка("БелКол"); ТЗ.НоваяКолонка("БелСум"); ТЗ.НоваяКолонка("РосКол"); ТЗ.НоваяКолонка("РосСум"); ТЗ.НоваяКолонка("РосВБелСум"); ТЗ.НоваяКолонка("ДолКол"); ТЗ.НоваяКолонка("ДолСум"); ТЗ.НоваяКолонка("ДолВБелСум"); ТЗ.НоваяКолонка("ЕвроКол"); ТЗ.НоваяКолонка("ЕвроСум"); ТЗ.НоваяКолонка("ЕвроВБелСум"); СпрВал = СоздатьОбъект("Справочник.Валюты"); Пока Запрос.Группировка(1) = 1 Цикл Пока Запрос.Группировка(2) = 1 Цикл Если ПустоеЗначение(Запрос.НомерТТН)=0 Тогда Если (Запрос.ДатаТТН>=НачДата) и (Запрос.ДатаТТН<=КонДата) Тогда Если Запрос.Валюта.Код = "974" Тогда ТЗ.НоваяСтрока(); ТЗ.Группа = Запрос.Продукция.Группа; ТЗ.Продукция = Запрос.Продукция; ТЗ.БелКол = Запрос.Количество; ТЗ.БелСум = Запрос.ВсегоСНДС; ТЗ.РосКол = 0; ТЗ.РосСум = 0; ТЗ.РосВБелСум = 0; ТЗ.ДолКол = 0; ТЗ.ДолСум = 0; ТЗ.ДолВБелСум = 0; ТЗ.ЕвроКол = 0; ТЗ.ЕвроСум = 0; ТЗ.ЕвроВБелСум = 0; //новые строчки ИначеЕсли Запрос.Валюта.Код = "643" Тогда СпрВал.НайтиПоКоду("840"); КурсВал = СпрВал.ТекущийЭлемент().Курс.Получить(Запрос.ДатаТТН); ТЗ.НоваяСтрока(); ТЗ.Группа = Запрос.Продукция.Группа; ТЗ.Продукция = Запрос.Продукция; ТЗ.БелКол = 0; ТЗ.БелСум = 0; ТЗ.РосКол = Запрос.Количество; ТЗ.РосСум = Запрос.ВсегоСНДС; ТЗ.РосВБелСум = Окр(Запрос.Валюта.Курс.Получить(Запрос.ДатаТТН)*Запрос.ВсегоСНДС,0,1); ТЗ.ДолКол = 0; ТЗ.ДолСум = Окр(Окр(Запрос.Валюта.Курс.Получить(Запрос.ДатаТТН)*Запрос.ВсегоСНДС,0,1)/КурсВал,0,1); ТЗ.ДолВБелСум = 0; ТЗ.ЕвроКол = 0; ТЗ.ЕвроСум = 0; ТЗ.ЕвроВБелСум = 0; ИначеЕсли Запрос.Валюта.Код = "840" Тогда СпрВал.НайтиПоКоду("643"); КурсВал = СпрВал.ТекущийЭлемент().Курс.Получить(Запрос.ДатаТТН); ТЗ.НоваяСтрока(); ТЗ.Группа = Запрос.Продукция.Группа; ТЗ.Продукция = Запрос.Продукция; ТЗ.БелКол = 0; ТЗ.БелСум = 0; ТЗ.РосКол = 0; ТЗ.РосСум = Окр(Окр(Запрос.Валюта.Курс.Получить(Запрос.ДатаТТН)*Запрос.ВсегоСНДС,0,1)/КурсВал,0,1); ТЗ.РосВБелСум = 0; ТЗ.ДолКол = Запрос.Количество; ТЗ.ДолСум = Запрос.ВсегоСНДС; ТЗ.ДолВБелСум = Окр(Запрос.Валюта.Курс.Получить(Запрос.ДатаТТН)*Запрос.ВсегоСНДС,0,1); ТЗ.ЕвроКол = 0; ТЗ.ЕвроСум = 0; ТЗ.ЕвроВБелСум = 0; //----- новая для Евро ИначеЕсли Запрос.Валюта.Код = "978" Тогда СпрВал.НайтиПоКоду("840"); КурсВал = СпрВал.ТекущийЭлемент().Курс.Получить(Запрос.ДатаТТН); ТЗ.НоваяСтрока(); ТЗ.Группа = Запрос.Продукция.Группа; ТЗ.Продукция = Запрос.Продукция; ТЗ.БелКол = 0; ТЗ.БелСум = 0; ТЗ.РосКол = 0; ТЗ.РосСум = 0; ТЗ.РосВБелСум = 0; ТЗ.ДолКол = 0; ТЗ.ДолСум = Окр(Окр(Запрос.Валюта.Курс.Получить(Запрос.ДатаТТН)*Запрос.ВсегоСНДС,0,1)/КурсВал,0,1); ТЗ.ДолВБелСум = 0; ТЗ.ЕвроКол = Запрос.Количество; ТЗ.ЕвроСум = Запрос.ВсегоСНДС; ТЗ.ЕвроВБелСум = Окр(Запрос.Валюта.Курс.Получить(Запрос.ДатаТТН)*Запрос.ВсегоСНДС,0,1); //----- новая для Евро КонецЕсли; КонецЕсли; КонецЕсли; Если ПустоеЗначение(Запрос.НомерТТН1)=0 Тогда Если (Запрос.ДатаТТН1>=НачДата) и (Запрос.ДатаТТН1<=КонДата) Тогда Если Запрос.Валюта.Код = "974" Тогда ТЗ.НоваяСтрока(); ТЗ.Группа = Запрос.Продукция.Группа; ТЗ.Продукция = Запрос.Продукция; ТЗ.БелКол = Запрос.Количество1; ТЗ.БелСум = Запрос.ВсегоСНДС1; ТЗ.РосКол = 0; ТЗ.РосСум = 0; ТЗ.РосВБелСум = 0; ТЗ.ДолКол = 0; ТЗ.ДолСум = 0; ТЗ.ДолВБелСум = 0; ТЗ.ЕвроКол = 0; ТЗ.ЕвроСум = 0; ТЗ.ЕвроВБелСум = 0; ИначеЕсли Запрос.Валюта.Код = "643" Тогда СпрВал.НайтиПоКоду("840"); КурсВал = СпрВал.ТекущийЭлемент().Курс.Получить(Запрос.ДатаТТН1); ТЗ.НоваяСтрока(); ТЗ.Группа = Запрос.Продукция.Группа; ТЗ.Продукция = Запрос.Продукция; ТЗ.БелКол = 0; ТЗ.БелСум = 0; ТЗ.РосКол = Запрос.Количество1; ТЗ.РосСум = Запрос.ВсегоСНДС1; ТЗ.РосВБелСум = Окр(Запрос.Валюта.Курс.Получить(Запрос.ДатаТТН1)*Запрос.ВсегоСНДС1,0,1); ТЗ.ДолКол = 0; ТЗ.ДолСум = Окр(Окр(Запрос.Валюта.Курс.Получить(Запрос.ДатаТТН1)*Запрос.ВсегоСНДС1,0,1)/КурсВал,0,1);; ТЗ.ДолВБелСум = 0; ТЗ.ЕвроКол = 0; ТЗ.ЕвроСум = 0; ТЗ.ЕвроВБелСум = 0; ИначеЕсли Запрос.Валюта.Код = "840" Тогда СпрВал.НайтиПоКоду("643"); КурсВал = СпрВал.ТекущийЭлемент().Курс.Получить(Запрос.ДатаТТН1); ТЗ.НоваяСтрока(); ТЗ.Группа = Запрос.Продукция.Группа; ТЗ.Продукция = Запрос.Продукция; ТЗ.БелКол = 0; ТЗ.БелСум = 0; ТЗ.РосКол = 0; ТЗ.РосСум = Окр(Окр(Запрос.Валюта.Курс.Получить(Запрос.ДатаТТН1)*Запрос.ВсегоСНДС1,0,1)/КурсВал,0,1); ; ТЗ.РосВБелСум = 0; ТЗ.ДолКол = Запрос.Количество1; ТЗ.ДолСум = Запрос.ВсегоСНДС1; ТЗ.ДолВБелСум = Окр(Запрос.Валюта.Курс.Получить(Запрос.ДатаТТН1)*Запрос.ВсегоСНДС1,0,1); ТЗ.ЕвроКол = 0; ТЗ.ЕвроСум = 0; ТЗ.ЕвроВБелСум = 0; //----- новая для Евро ИначеЕсли Запрос.Валюта.Код = "978" Тогда СпрВал.НайтиПоКоду("840"); КурсВал = СпрВал.ТекущийЭлемент().Курс.Получить(Запрос.ДатаТТН); ТЗ.НоваяСтрока(); ТЗ.Группа = Запрос.Продукция.Группа; ТЗ.Продукция = Запрос.Продукция; ТЗ.БелКол = 0; ТЗ.БелСум = 0; ТЗ.РосКол = 0; ТЗ.РосСум = 0; ТЗ.РосВБелСум = 0; ТЗ.ДолКол = 0; ТЗ.ДолСум = Окр(Окр(Запрос.Валюта.Курс.Получить(Запрос.ДатаТТН)*Запрос.ВсегоСНДС,0,1)/КурсВал,0,1); ТЗ.ДолВБелСум = 0; ТЗ.ЕвроКол = Запрос.Количество; ТЗ.ЕвроСум = Запрос.ВсегоСНДС; ТЗ.ЕвроВБелСум = Окр(Запрос.Валюта.Курс.Получить(Запрос.ДатаТТН)*Запрос.ВсегоСНДС,0,1); //----- новая для Евро КонецЕсли; КонецЕсли; КонецЕсли; Если ПустоеЗначение(Запрос.НомерТТН2)=0 Тогда Если (Запрос.ДатаТТН2>=НачДата) и (Запрос.ДатаТТН2<=КонДата) Тогда Если Запрос.Валюта.Код = "974" Тогда ТЗ.НоваяСтрока(); ТЗ.Группа = Запрос.Продукция.Группа; ТЗ.Продукция = Запрос.Продукция; ТЗ.БелКол = Запрос.Количество2; ТЗ.БелСум = Запрос.ВсегоСНДС2; ТЗ.РосКол = 0; ТЗ.РосСум = 0; ТЗ.РосВБелСум = 0; ТЗ.ДолКол = 0; ТЗ.ДолСум = 0; ТЗ.ДолВБелСум = 0; ТЗ.ЕвроКол = 0; ТЗ.ЕвроСум = 0; ТЗ.ЕвроВБелСум = 0; ИначеЕсли Запрос.Валюта.Код = "643" Тогда СпрВал.НайтиПоКоду("840"); КурсВал = СпрВал.ТекущийЭлемент().Курс.Получить(Запрос.ДатаТТН2); ТЗ.НоваяСтрока(); ТЗ.Группа = Запрос.Продукция.Группа; ТЗ.Продукция = Запрос.Продукция; ТЗ.БелКол = 0; ТЗ.БелСум = 0; ТЗ.РосКол = Запрос.Количество2; ТЗ.РосСум = Запрос.ВсегоСНДС2; ТЗ.РосВБелСум = Окр(Запрос.Валюта.Курс.Получить(Запрос.ДатаТТН2)*Запрос.ВсегоСНДС2,0,1); ТЗ.ДолКол = 0; ТЗ.ДолСум = Окр(Окр(Запрос.Валюта.Курс.Получить(Запрос.ДатаТТН2)*Запрос.ВсегоСНДС2,0,1)/КурсВал,0,1);; ТЗ.ДолВБелСум = 0; ТЗ.ЕвроКол = 0; ТЗ.ЕвроСум = 0; ТЗ.ЕвроВБелСум = 0; ИначеЕсли Запрос.Валюта.Код = "840" Тогда СпрВал.НайтиПоКоду("643"); КурсВал = СпрВал.ТекущийЭлемент().Курс.Получить(Запрос.ДатаТТН2); ТЗ.НоваяСтрока(); ТЗ.Группа = Запрос.Продукция.Группа; ТЗ.Продукция = Запрос.Продукция; ТЗ.БелКол = 0; ТЗ.БелСум = 0; ТЗ.РосКол = 0; ТЗ.РосСум = Окр(Окр(Запрос.Валюта.Курс.Получить(Запрос.ДатаТТН2)*Запрос.ВсегоСНДС2,0,1)/КурсВал,0,1); ; ТЗ.РосВБелСум = 0; ТЗ.ДолКол = Запрос.Количество2; ТЗ.ДолСум = Запрос.ВсегоСНДС2; ТЗ.ДолВБелСум = Окр(Запрос.Валюта.Курс.Получить(Запрос.ДатаТТН2)*Запрос.ВсегоСНДС2,0,1); ТЗ.ЕвроКол = 0; ТЗ.ЕвроСум = 0; ТЗ.ЕвроВБелСум = 0; //----- новая для Евро ИначеЕсли Запрос.Валюта.Код = "978" Тогда СпрВал.НайтиПоКоду("840"); КурсВал = СпрВал.ТекущийЭлемент().Курс.Получить(Запрос.ДатаТТН); ТЗ.НоваяСтрока(); ТЗ.Группа = Запрос.Продукция.Группа; ТЗ.Продукция = Запрос.Продукция; ТЗ.БелКол = 0; ТЗ.БелСум = 0; ТЗ.РосКол = 0; ТЗ.РосСум = 0; ТЗ.РосВБелСум = 0; ТЗ.ДолКол = 0; ТЗ.ДолСум = Окр(Окр(Запрос.Валюта.Курс.Получить(Запрос.ДатаТТН)*Запрос.ВсегоСНДС,0,1)/КурсВал,0,1); ТЗ.ДолВБелСум = 0; ТЗ.ЕвроКол = Запрос.Количество; ТЗ.ЕвроСум = Запрос.ВсегоСНДС; ТЗ.ЕвроВБелСум = Окр(Запрос.Валюта.Курс.Получить(Запрос.ДатаТТН)*Запрос.ВсегоСНДС,0,1); //----- новая для Евро КонецЕсли; КонецЕсли; КонецЕсли; Если ПустоеЗначение(Запрос.НомерТТН3)=0 Тогда Если (Запрос.ДатаТТН3>=НачДата) и (Запрос.ДатаТТН3<=КонДата) Тогда Если Запрос.Валюта.Код = "974" Тогда ТЗ.НоваяСтрока(); ТЗ.Группа = Запрос.Продукция.Группа; ТЗ.Продукция = Запрос.Продукция; ТЗ.БелКол = Запрос.Количество3; ТЗ.БелСум = Запрос.ВсегоСНДС3; ТЗ.РосКол = 0; ТЗ.РосСум = 0; ТЗ.РосВБелСум = 0; ТЗ.ДолКол = 0; ТЗ.ДолСум = 0; ТЗ.ДолВБелСум = 0; ТЗ.ЕвроКол = 0; ТЗ.ЕвроСум = 0; ТЗ.ЕвроВБелСум = 0; ИначеЕсли Запрос.Валюта.Код = "643" Тогда СпрВал.НайтиПоКоду("840"); КурсВал = СпрВал.ТекущийЭлемент().Курс.Получить(Запрос.ДатаТТН3); ТЗ.НоваяСтрока(); ТЗ.Группа = Запрос.Продукция.Группа; ТЗ.Продукция = Запрос.Продукция; ТЗ.БелКол = 0; ТЗ.БелСум = 0; ТЗ.РосКол = Запрос.Количество3; ТЗ.РосСум = Запрос.ВсегоСНДС3; ТЗ.РосВБелСум = Окр(Запрос.Валюта.Курс.Получить(Запрос.ДатаТТН3)*Запрос.ВсегоСНДС3,0,1); ТЗ.ДолКол = 0; ТЗ.ДолСум = Окр(Окр(Запрос.Валюта.Курс.Получить(Запрос.ДатаТТН3)*Запрос.ВсегоСНДС3,0,1)/КурсВал,0,1);; ТЗ.ДолВБелСум = 0; ТЗ.ЕвроКол = 0; ТЗ.ЕвроСум = 0; ТЗ.ЕвроВБелСум = 0; ИначеЕсли Запрос.Валюта.Код = "840" Тогда СпрВал.НайтиПоКоду("643"); КурсВал = СпрВал.ТекущийЭлемент().Курс.Получить(Запрос.ДатаТТН3); ТЗ.НоваяСтрока(); ТЗ.Группа = Запрос.Продукция.Группа; ТЗ.Продукция = Запрос.Продукция; ТЗ.БелКол = 0; ТЗ.БелСум = 0; ТЗ.РосКол = 0; ТЗ.РосСум = Окр(Окр(Запрос.Валюта.Курс.Получить(Запрос.ДатаТТН3)*Запрос.ВсегоСНДС3,0,1)/КурсВал,0,1); ; ТЗ.РосВБелСум = 0; ТЗ.ДолКол = Запрос.Количество3; ТЗ.ДолСум = Запрос.ВсегоСНДС3; ТЗ.ДолВБелСум = Окр(Запрос.Валюта.Курс.Получить(Запрос.ДатаТТН3)*Запрос.ВсегоСНДС3,0,1); ТЗ.ЕвроКол = 0; ТЗ.ЕвроСум = 0; ТЗ.ЕвроВБелСум = 0; //----- новая для Евро ИначеЕсли Запрос.Валюта.Код = "978" Тогда СпрВал.НайтиПоКоду("840"); КурсВал = СпрВал.ТекущийЭлемент().Курс.Получить(Запрос.ДатаТТН); ТЗ.НоваяСтрока(); ТЗ.Группа = Запрос.Продукция.Группа; ТЗ.Продукция = Запрос.Продукция; ТЗ.БелКол = 0; ТЗ.БелСум = 0; ТЗ.РосКол = 0; ТЗ.РосСум = 0; ТЗ.РосВБелСум = 0; ТЗ.ДолКол = 0; ТЗ.ДолСум = Окр(Окр(Запрос.Валюта.Курс.Получить(Запрос.ДатаТТН)*Запрос.ВсегоСНДС,0,1)/КурсВал,0,1); ТЗ.ДолВБелСум = 0; ТЗ.ЕвроКол = Запрос.Количество; ТЗ.ЕвроСум = Запрос.ВсегоСНДС; ТЗ.ЕвроВБелСум = Окр(Запрос.Валюта.Курс.Получить(Запрос.ДатаТТН)*Запрос.ВсегоСНДС,0,1); //----- новая для Евро КонецЕсли; КонецЕсли; КонецЕсли; Если ПустоеЗначение(Запрос.НомерТН2)=0 Тогда Если (Запрос.ДатаТТН>=НачДата) и (Запрос.ДатаТТН<=КонДата) Тогда Если Запрос.Валюта.Код = "974" Тогда ТЗ.НоваяСтрока(); ТЗ.Группа = Запрос.Продукция.Группа; ТЗ.Продукция = Запрос.Продукция; ТЗ.БелКол = Запрос.Количество; ТЗ.БелСум = Запрос.ВсегоСНДС; ТЗ.РосКол = 0; ТЗ.РосСум = 0; ТЗ.РосВБелСум = 0; ТЗ.ДолКол = 0; ТЗ.ДолСум = 0; ТЗ.ДолВБелСум = 0; ТЗ.ЕвроКол = 0; ТЗ.ЕвроСум = 0; ТЗ.ЕвроВБелСум = 0; ИначеЕсли Запрос.Валюта.Код = "643" Тогда СпрВал.НайтиПоКоду("840"); КурсВал = СпрВал.ТекущийЭлемент().Курс.Получить(Запрос.ДатаТТН); ТЗ.НоваяСтрока(); ТЗ.Группа = Запрос.Продукция.Группа; ТЗ.Продукция = Запрос.Продукция; ТЗ.БелКол = 0; ТЗ.БелСум = 0; ТЗ.РосКол = Запрос.Количество; ТЗ.РосСум = Запрос.ВсегоСНДС; ТЗ.РосВБелСум = Окр(Запрос.Валюта.Курс.Получить(Запрос.ДатаТТН)*Запрос.ВсегоСНДС,0,1); ТЗ.ДолКол = 0; ТЗ.ДолСум = Окр(Окр(Запрос.Валюта.Курс.Получить(Запрос.ДатаТТН)*Запрос.ВсегоСНДС,0,1)/КурсВал,0,1);; ТЗ.ДолВБелСум = 0; ТЗ.ЕвроКол = 0; ТЗ.ЕвроСум = 0; ТЗ.ЕвроВБелСум = 0; ИначеЕсли Запрос.Валюта.Код = "840" Тогда СпрВал.НайтиПоКоду("643"); КурсВал = СпрВал.ТекущийЭлемент().Курс.Получить(Запрос.ДатаТТН); ТЗ.НоваяСтрока(); ТЗ.Группа = Запрос.Продукция.Группа; ТЗ.Продукция = Запрос.Продукция; ТЗ.БелКол = 0; ТЗ.БелСум = 0; ТЗ.РосКол = 0; ТЗ.РосСум = Окр(Окр(Запрос.Валюта.Курс.Получить(Запрос.ДатаТТН)*Запрос.ВсегоСНДС,0,1)/КурсВал,0,1); ; ТЗ.РосВБелСум = 0; ТЗ.ДолКол = Запрос.Количество; ТЗ.ДолСум = Запрос.ВсегоСНДС; ТЗ.ДолВБелСум = Окр(Запрос.Валюта.Курс.Получить(Запрос.ДатаТТН)*Запрос.ВсегоСНДС,0,1); ТЗ.ЕвроКол = 0; ТЗ.ЕвроСум = 0; ТЗ.ЕвроВБелСум = 0; //----- новая для Евро ИначеЕсли Запрос.Валюта.Код = "978" Тогда СпрВал.НайтиПоКоду("840"); КурсВал = СпрВал.ТекущийЭлемент().Курс.Получить(Запрос.ДатаТТН); ТЗ.НоваяСтрока(); ТЗ.Группа = Запрос.Продукция.Группа; ТЗ.Продукция = Запрос.Продукция; ТЗ.БелКол = 0; ТЗ.БелСум = 0; ТЗ.РосКол = 0; ТЗ.РосСум = 0; ТЗ.РосВБелСум = 0; ТЗ.ДолКол = 0; ТЗ.ДолСум = Окр(Окр(Запрос.Валюта.Курс.Получить(Запрос.ДатаТТН)*Запрос.ВсегоСНДС,0,1)/КурсВал,0,1); ТЗ.ДолВБелСум = 0; ТЗ.ЕвроКол = Запрос.Количество; ТЗ.ЕвроСум = Запрос.ВсегоСНДС; ТЗ.ЕвроВБелСум = Окр(Запрос.Валюта.Курс.Получить(Запрос.ДатаТТН)*Запрос.ВсегоСНДС,0,1); //----- новая для Евро КонецЕсли; КонецЕсли; КонецЕсли; Если ПустоеЗначение(Запрос.НомерТН21)=0 Тогда Если (Запрос.ДатаТТН1>=НачДата) и (Запрос.ДатаТТН1<=КонДата) Тогда Если Запрос.Валюта.Код = "974" Тогда ТЗ.НоваяСтрока(); ТЗ.Группа = Запрос.Продукция.Группа; ТЗ.Продукция = Запрос.Прод |
|||
1
kouki
09.09.11
✎
13:00
|
+ семерка. Неактуально но Я в РБ... тут все неактуально)))))
|
|||
2
1Сергей
09.09.11
✎
13:03
|
что за глюк-то?
|
|||
3
kouki
09.09.11
✎
13:05
|
Значит в отчете Евро так и не появилось. Если честно с первого взгляда мне показалось что там работы то на пару минут. Дописать Евро и все.. но не тут то было.. Значит я проверяю на отладчике то на поинт где код = "978" ниразу не попадает. Хотя документы с валютой евро имеются за дату.
|
|||
4
kouki
09.09.11
✎
13:06
|
А и скажите. В запросе не стоял период. Я дописал. Это же правильно. Ато все документы перелопачивал запрос
|
|||
5
Ёпрст
09.09.11
✎
13:11
|
(0) И где этому вас вообще учат ?
Будете торговать в другой валюте, будете заводить новый вид документа ? Полный пэ. |
|||
6
kouki
09.09.11
✎
13:11
|
А может я что-то недопонял????=//
|
|||
7
kouki
09.09.11
✎
13:13
|
(5) Да вроде документа два всего: расход в Бел рублях и расход в валюте.. А вот уже в другом доке ставится какая именно валюта... Возможно вы не так поняли. + все уже написано было
|
|||
8
Ёпрст
09.09.11
✎
13:21
|
(7) и зафига нужен второй документ, когда всё можно учитывать в 1 виде документа ?
|
|||
9
kouki
09.09.11
✎
13:40
|
(8) Ну менять тут все как то не очень хочеться тем более вопрос то не по количкству документов
|
|||
10
Ёпрст
09.09.11
✎
14:02
|
(9) да я вижу.
Отчет поди написан школьником ? Нахрена еще раз проверять то, что в условии запроса задано ? Нафига по 20 раз писать один и тот же код, когда разница только в поиске валюты ? |
|||
11
Ёпрст
09.09.11
✎
14:03
|
+10 за строчки кода что ли оплата у вас ?
:) |
|||
12
kouki
09.09.11
✎
15:01
|
Может и школьником... И я такой же школьник... ТАк скажите мне что тут урезать то??????
|
|||
13
kouki
09.09.11
✎
15:02
|
(10) + Если общая отчетность по всем валютам походу вот и выходит 20-ка))))))
|
|||
14
Ёпрст
09.09.11
✎
15:03
|
(12) ну по-уму, весь код в топку.
|
|||
15
kouki
09.09.11
✎
15:06
|
Ох блин(((((((( Епта...
|
|||
16
kouki
09.09.11
✎
15:07
|
Ну работало же епта!!!!!! и пофигу что школьник писал.... А может лучше поправить????
|
|||
17
kouki
09.09.11
✎
15:12
|
Я понимаю, что можно и упростить. но пока просто решить проблему в этой версии
|
|||
18
kouki
09.09.11
✎
15:19
|
А и еще объясните пожалуйста одну вещь
|
|||
19
kouki
09.09.11
✎
15:19
|
ИначеЕсли Запрос.Валюта.Код = "643" Тогда
СпрВал.НайтиПоКоду("840"); КурсВал = СпрВал.ТекущийЭлемент().Курс.Получить(Запрос.ДатаТТН1); ТЗ.НоваяСтрока(); ТЗ.Группа = Запрос.Продукция.Группа; ТЗ.Продукция = Запрос.Продукция; ТЗ.БелКол = 0; ТЗ.БелСум = 0; ТЗ.РосКол = Запрос.Количество1; ТЗ.РосСум = Запрос.ВсегоСНДС1; ТЗ.РосВБелСум = Окр(Запрос.Валюта.Курс.Получить(Запрос.ДатаТТН1)*Запрос.ВсегоСНДС1,0,1); ТЗ.ДолКол = 0; ТЗ.ДолСум = Окр(Окр(Запрос.Валюта.Курс.Получить(Запрос.ДатаТТН1)*Запрос.ВсегоСНДС1,0,1)/КурсВал,0,1);; ТЗ.ДолВБелСум = 0; ТЗ.ЕвроКол = 0; ТЗ.ЕвроСум = 0; ТЗ.ЕвроВБелСум = 0; |
|||
20
kouki
09.09.11
✎
15:19
|
Вот нафига если валюта = RUR еще в долларах результат смотреть?????
|
|||
21
Ёпрст
09.09.11
✎
15:20
|
(16) отладчик в рукти и вперёд, смотреть, чему же всё таки равно Запрос.Валюта.Код у тебя, это для начала.
|
|||
22
Ёпрст
09.09.11
✎
15:21
|
(20) смотри, какая валюта у тебя основная, видать весь учет ведётся в баксах :) и потом пересчет всегда по курсу.
А так, хз.. |
|||
23
kouki
09.09.11
✎
15:24
|
Ну все таки покупают у нас больше в Беларусских)))) Типо отечественный производитель!!!)))))
|
|||
24
kouki
09.09.11
✎
15:27
|
Ну я в принципе понял на отладчике и сижу... счас отлавлю... Но просто интересно то. что я то дописал одно условие по евро... оно ж идентично по идее как и с баксами.. Блин баксы идут евро нет...ААААААА!!!!!!!!!!!!!!!! но ничего мы не сдаемся))))
|
|||
25
kouki
12.09.11
✎
11:50
|
А зачем вообще номер ТН проверять?????типо отгружено что???
|
|||
26
kouki
12.09.11
✎
12:38
|
(21) Значит на отдладчике проверил.. И увидел то, что документы в которых шел расчет валютой не видит запрос вообще(((
|
|||
27
kouki
12.09.11
✎
12:38
|
ТОлько национальную валюту и все
|
|||
28
kouki
12.09.11
✎
13:03
|
странно почему такая фигня.. ведь запрос вроде правильный
|
|||
29
kouki
12.09.11
✎
13:21
|
долары попадают а евро нет((((блин(((
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |