|
v7: Вывести столбец курс валют. ПУБ 7.7 | ☑ | ||
---|---|---|---|---|
0
Pechka
29.08.12
✎
08:11
|
Доброе утро..Формирую отчет "Движения по счетам",выходят столбцы - контрагент,договор,первичный документ (напр, реализация от 05.07.12) и нужен столбец рядом "курсы валют",то есть напротив каждой даты чтоб курс выходил. 05.07.12 - 32.2065. Как это сделать,помогите пожалуйста
|
|||
1
SED
29.08.12
✎
08:51
|
ТвойДокумент.Валюта.Курс.Получить(ТвойДокумент.ДатаДок)
|
|||
2
Pechka
29.08.12
✎
09:03
|
документ записан только на печатной форме у меня - <Ит.Операция.Документ>,в программе про него ничего не сказано,есть договор - <Ит.Субконто(2)>..Я не понимаю,как записать это все?
|
|||
3
SED
29.08.12
✎
09:07
|
Ит.Операция.Документ.Валюта.Курс.Получить(Ит.Операция.Документ.ДатаДок)
|
|||
4
KUBIK
29.08.12
✎
09:11
|
(3) Это когда у дока есть реквизит "Валюта".
ТС наверное проще задачу надо: выводить курсы какой-то валюты(???) на дату дока |
|||
5
Pechka
29.08.12
✎
09:50
|
у документа есть реквизит - ВалютаЦен только,самой Валюта нет.. и ругается на ДатаДок - Переменная не определена (ДатаДок)
|
|||
6
Pechka
29.08.12
✎
10:09
|
вот мой код,посмотрите пожалуйста,сначала выводятся пустые строки контрагентов,договоров, в строках документа пишется- объект не найден,курс выходит напротив этих строк,а ниже уже перечисление документов- реализация,но рядом курс - 0.000
Функция ПоказатьКурс() Перем Стр; Если Валюта.Выбран() = 1 Тогда Стр = Валюта.Курс.Получить(); Иначе Стр = ""; КонецЕсли; Возврат Стр; КонецФункции // ПоказатьКурс() Процедура Сформировать() Таб = СоздатьОбъект("Таблица"); Таб.ИсходнаяТаблица("Сформировать"); Расшифровка = СоздатьОбъект("СписокЗначений"); Расшифровка.Установить("Отчет", "Сформировать"); Расшифровка.Установить("ДатаНач", ВыбНачПериода); Расшифровка.Установить("ДатаКон", ВыбКонПериода); Расшифровка.Установить("Валюта", Валюта); Сч= СоздатьОбъект("Счет"); Ит = СоздатьОбъект("БухгалтерскиеИтоги"); Ит.ИспользоватьСубконто(ВидыСубконто.Контрагенты); Ит.ИспользоватьСубконто(ВидыСубконто.Договоры); Ит.ИспользоватьКорСубконто(Сч.ВидСубконто(1),, 1); Ит.ИспользоватьКорСубконто(Сч.ВидСубконто(2),, 1); Ит.ИспользоватьКорСубконто(Сч.ВидСубконто(3),, 1); Ит.ВключатьСубсчета(-1,-1); Ит.ВыполнитьЗапрос(ВыбНачПериода, ВыбКонПериода,"62,76.5",,,3,"Проводка", "С"); ИстВал = СоздатьОбъект("Периодический"); ИстВал.ИспользоватьОбъект("Курс",Валюта); Таб.ВывестиСекцию("Заголовок"); Таб.ВывестиСекцию("Шапка"); Таб.Опции(0,0,Таб.ВысотаТаблицы(),0); // ИстВал.ВыбратьЗначения(ВыбНачПериода,ВыбКонПериода); //Ит.Операция.Документ.Валюта.Курс.Получить(Ит.Операция.Документ.ДатаДок) = 1 Цикл Пока ИстВал.ПолучитьЗначение()=1 Цикл Таб.ВывестиСекцию("Строка"); КонецЦикла; Ит.ВыбратьСубконто(1); Пока Ит.ПолучитьСубконто(1) = 1 Цикл Ит.ВыбратьСубконто(2); Пока Ит.ПолучитьСубконто(2) = 1 Цикл ДоговорСУчастием3Лиц = Ит.Субконто(2).КМ_ДоговорСУчастием3Лиц; Если (ДоговорСУчастием3Лиц <> ВыбДоговорСУчастием3Лиц) и (Ит.Субконто(2) <> ВыбДоговорСУчастием3Лиц) Тогда Продолжить; КонецЕсли; // Ит.ВыбратьСчета(); Пока Ит.ПолучитьСчет() = 1 Цикл Ит.ВыбратьКорСчета(); Пока Ит.ПолучитьКорСчет() = 1 Цикл Субконто1 = ""; Субконто2 = ""; Субконто3 = ""; Если Ит.КорСчет.КоличествоСубконто()>0 Тогда Ит.ВыбратьКорСубконто(1); Пока Ит.ПолучитьКорСубконто(1) = 1 Цикл Если Ит.КорСчет.КоличествоСубконто()>1 Тогда Ит.ВыбратьКорСубконто(2); Пока Ит.ПолучитьКорСубконто(2) = 1 Цикл Если (Ит.Субконто(1) = Ит.КорСубконто(1)) и (Ит.Субконто(2) = Ит.КорСубконто(2)) Тогда Продолжить; КонецЕсли; Если Ит.КорСчет.КоличествоСубконто()>2 Тогда Ит.ВыбратьКорСубконто(3); Пока Ит.ПолучитьКорСубконто(3) = 1 Цикл Ит.ВыбратьПериоды(1); Пока Ит.ПолучитьПериод() = 1 Цикл Если Ит.ВыбранаПоДт() = 1 Тогда СчетДт = Ит.Счет; СчетКт = Ит.КорСчет; Иначе СчетДт = Ит.КорСчет; СчетКт = Ит.Счет; КонецЕсли; Если (Ит.КорДО("С")<>0) или (Ит.КорКО("С")<>0) Тогда Субконто1 = Ит.КорСубконто(1); Субконто2 = Ит.КорСубконто(2); Субконто3 = Ит.КорСубконто(3); Таб.ВывестиСекцию("Строка"); КонецЕсли; КонецЦикла; КонецЦикла; Иначе Ит.ВыбратьПериоды(1); Пока Ит.ПолучитьПериод() = 1 Цикл Если Ит.ВыбранаПоДт() = 1 Тогда СчетДт = Ит.Счет; СчетКт = Ит.КорСчет; Иначе СчетДт = Ит.КорСчет; СчетКт = Ит.Счет; КонецЕсли; Если (Ит.КорДО("С")<>0) или (Ит.КорКО("С")<>0) Тогда Субконто1 = Ит.КорСубконто(1); Субконто2 = Ит.КорСубконто(2); Субконто3 = Ит.КорСубконто(3); Таб.ВывестиСекцию("Строка"); КонецЕсли; КонецЦикла; КонецЕсли; КонецЦикла; Иначе Ит.ВыбратьПериоды(1); Пока Ит.ПолучитьПериод() = 1 Цикл Если Ит.ВыбранаПоДт() = 1 Тогда СчетДт = Ит.Счет; СчетКт = Ит.КорСчет; Иначе СчетДт = Ит.КорСчет; СчетКт = Ит.Счет; КонецЕсли; Если (Ит.КорДО("С")<>0) или (Ит.КорКО("С")<>0) Тогда Субконто1 = Ит.КорСубконто(1); Субконто2 = Ит.КорСубконто(2); Субконто3 = Ит.КорСубконто(3); Таб.ВывестиСекцию("Строка"); КонецЕсли; КонецЦикла КонецЕсли; КонецЦикла; Иначе Ит.ВыбратьПериоды(1); Пока Ит.ПолучитьПериод() = 1 Цикл Если Ит.ВыбранаПоДт() = 1 Тогда СчетДт = Ит.Счет; СчетКт = Ит.КорСчет; Иначе СчетДт = Ит.КорСчет; СчетКт = Ит.Счет; КонецЕсли; Если (Ит.КорДО("С")<>0) или (Ит.КорКО("С")<>0) Тогда Таб.ВывестиСекцию("Строка"); КонецЕсли; КонецЦикла; ИстВал.ВыбратьЗначения(ВыбНачПериода,ВыбКонПериода); Пока ИстВал.ПолучитьЗначение()=1 Цикл Таб.ВывестиСекцию("Строка"); КонецЦикла; КонецЕсли; КонецЦикла; КонецЦикла; КонецЦикла; КонецЦикла; Таб.ТолькоПросмотр(1); Таб.Показать("Сформировать",""); КонецПроцедуры //}}БУХГАЛТЕРСКИЙ ЗАПРОС Процедура ПриОткрытии() Если глФлагРасшифровки = 1 Тогда Обновить = глОбновить; ВыбНачПериода = глРасшифровка.Получить("ДатаНач"); ВыбКонПериода = глРасшифровка.Получить("ДатаКон"); Валюта = глРасшифровка.Получить("Валюта"); Если Обновить <> 0 Тогда Таб = глТаблица; КонецЕсли; Если Обновить <> 2 Тогда Сформировать(); СтатусВозврата(0); Возврат; КонецЕсли; Иначе Обновить = 0; //{{ИНИЦИАЛИЗАЦИЯ БУХГАЛТЕРСКОГО ЗАПРОСА(Сформировать) ВыбНачПериода = НачалоПериодаБИ(); ВыбКонПериода = КонецПериодаБИ(); //{{ИНИЦИАЛИЗАЦИЯ БУХГАЛТЕРСКОГО ЗАПРОСА Если Валюта.Выбран()=0 Тогда ВосстановитьЗначение("Сформировать",Валюта); КонецЕсли; КонецЕсли; КонецПроцедуры |
|||
7
SED
29.08.12
✎
11:54
|
в документах есть реквизит "Курс" можно в печ форме просто добавитиь <Ит.Операция.Документ.Курс>
|
|||
8
SED
29.08.12
✎
12:02
|
Либо через Договор.Валюта
|
|||
9
Pechka
29.08.12
✎
12:36
|
в печ форме добавила ИстВал.ЗначениеНаДату(Ит.Операция.Документ.ДатаДок)- получилось) спасибо!
|
|||
10
Pechka
29.08.12
✎
13:06
|
помогите пожалуйста еще вычислить Количество документа,также столбец,чтоб вышел
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |