Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 ноя 2024, 15:30

Преобразование ТабЗначВДерЗнач

Автор maxxi, 17 мая 2024, 14:25

0 Пользователей и 1 гость просматривают эту тему.

maxxi

&НаКлиенте
Процедура Команда1(Команда)
Команда1НаСервере();
КонецПроцедуры

&НаСервере
Процедура Команда1НаСервере()

Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| Клиенты.Ссылка КАК Ссылка,
| Клиенты.ЖШШИР КАК Процент
|ПОМЕСТИТЬ ВТ_Клиенты
|ИЗ
| Справочник.Клиенты КАК Клиенты
|ГДЕ
| Клиенты.Родитель В ИЕРАРХИИ(&Родитель)
| И НЕ Клиенты.ЭтоГруппа
| И Клиенты.Филиал.Наименование = ""1-филиал""
| И НЕ Клиенты.ПометкаУдаления
| И НЕ Клиенты.НеАктив
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ РАЗЛИЧНЫЕ
| Продажи.Клиент КАК Клиент,
| Продажи.Валюта КАК Валюта,
| СУММА(Продажи.Количество) КАК Количество,
| СУММА(Продажи.Сумма) КАК Сумма,
| СУММА(Продажи.СкидкаСумма) КАК СкидкаСумма
|ПОМЕСТИТЬ ВТ_Продажи
|ИЗ
| РегистрНакопления.Продажи КАК Продажи
|ГДЕ
| Продажи.Филиал.Наименование = ""1-филиал""
| И Продажи.Регистратор ССЫЛКА Документ.Расход_В_МногоВалюта
| И Продажи.Период МЕЖДУ НАЧАЛОПЕРИОДА(&НачДня, ДЕНЬ) И КОНЕЦПЕРИОДА(&КонДня, ДЕНЬ)
|
|СГРУППИРОВАТЬ ПО
| Продажи.Клиент,
| Продажи.Валюта
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ РАЗЛИЧНЫЕ
| КассагаПулТушуми.Клиент КАК Клиент,
| СУММА(ПриходВКассу.Сумма) КАК ПриходВКассу,
| ПриходВКассу.Валюта КАК Валюта
|ПОМЕСТИТЬ ВТ_ПриходВКассу
|ИЗ
| Документ.ПриходВКассу КАК ПриходВКассу
|ГДЕ
| ПриходВКассу.Проведен
| И ПриходВКассу.Филиал.Наименование = ""1-филиал""
| И ПриходВКассу.Дата МЕЖДУ НАЧАЛОПЕРИОДА(&НачДня, ДЕНЬ) И КОНЕЦПЕРИОДА(КонДня, ДЕНЬ)
|
|СГРУППИРОВАТЬ ПО
| ПриходВКассу.Клиент,
| ПриходВКассу.Валюта,
| ПриходВКассу.Курс
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ
| ВзаиморасчетыОстаткиИОбороты.Клиент КАК Клиент,
| ВзаиморасчетыОстаткиИОбороты.Валюта КАК Валюта,
| СУММА(ВзаиморасчетыОстаткиИОбороты.СуммаНачальныйОстаток) КАК НачОстаток,
| СУММА(ВзаиморасчетыОстаткиИОбороты.СуммаОборот) КАК СуммаОборот,
| СУММА(ВзаиморасчетыОстаткиИОбороты.СуммаПриход) КАК ПриходНам,
| СУММА(ВзаиморасчетыОстаткиИОбороты.СуммаРасход) КАК РасходОтНас,
| СУММА(ВзаиморасчетыОстаткиИОбороты.СуммаКонечныйОстаток) КАК ОконОстаток
|ПОМЕСТИТЬ ВТ_НачОстаток
|ИЗ
| РегистрНакопления.Взаиморасчеты.ОстаткиИОбороты(НАЧАЛОПЕРИОДА(&НачДня, ДЕНЬ), КОНЕЦПЕРИОДА(&КонДня, ДЕНЬ), Авто, , Клиент.Филиал.Наименование = ""1-филиал"") КАК ВзаиморасчетыОстаткиИОбороты
|ГДЕ
| ВзаиморасчетыОстаткиИОбороты.Клиент.Родитель В ИЕРАРХИИ(&Родитель)
| И НЕ ВзаиморасчетыОстаткиИОбороты.Клиент.ЭтоГруппа
|
|СГРУППИРОВАТЬ ПО
| ВзаиморасчетыОстаткиИОбороты.Клиент,
| ВзаиморасчетыОстаткиИОбороты.Валюта
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ РАЗЛИЧНЫЕ
| ВТ_НачОстаток.Клиент КАК Клиент,
| ВТ_НачОстаток.Валюта КАК Валюта,
| СУММА(ВТ_НачОстаток.НачОстаток) КАК НачОстаток,
| СУММА(ВТ_Продажи.Сумма) КАК РасходОтНас,
| СУММА(ВТ_НачОстаток.ОконОстаток) КАК ОконОстаток,
| СУММА(ВТ_Продажи.СкидкаСумма) КАК СкидкаСумма
|ПОМЕСТИТЬ ВТ_НачОстатокПродажи
|ИЗ
| ВТ_НачОстатокКАК ВТ_НачОстаток
| ЛЕВОЕ СОЕДИНЕНИЕ ВТ_Продажи КАК ВТ_Продажи
| ПО ВТ_НачОстаток.Клиент = ВТ_Продажи.Клиент
| И ВТ_НачОстаток.Валюта = ВТ_Продажи.Валюта
|
|СГРУППИРОВАТЬ ПО
| ВТ_НачОстаток.Клиент,
| ВТ_НачОстаток.Валюта
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ РАЗЛИЧНЫЕ
| ВзаиморасчетыОбороты.Клиент КАК Клиент,
| ВзаиморасчетыОбороты.Валюта КАК Валюта,
| СУММА(ВзаиморасчетыОбороты.СуммаПриход) КАК Расход,
| СУММА(ВзаиморасчетыОбороты.СуммаРасход) КАК Приход
|ПОМЕСТИТЬ ВТ_ПриходРасход
|ИЗ
| РегистрНакопления.Взаиморасчеты.Обороты(НАЧАЛОПЕРИОДА(&НачДня, ДЕНЬ), КОНЕЦПЕРИОДА(&КонДня, ДЕНЬ), Авто, ) КАК ВзаиморасчетыОбороты
|ГДЕ
| ВзаиморасчетыОбороты.Клиент.Филиал.Наименование = ""1-филиал""
| И ВзаиморасчетыОбороты.Клиент.Родитель В ИЕРАРХИИ(&Родитель)
| И НЕ ВзаиморасчетыОбороты.Клиент.ЭтоГруппа
|
|СГРУППИРОВАТЬ ПО
| ВзаиморасчетыОбороты.Клиент,
| ВзаиморасчетыОбороты.Валюта
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ РАЗЛИЧНЫЕ
| ВозвратТовара.Ссылка.Клиент КАК Клиент,
| ВозвратТовара.Ссылка.ДокументВалюта КАК ДокументВалюта,
| СУММА(ВозвратТовара.СуммаВозврата) КАК СуммаВозврата
|ПОМЕСТИТЬ ВТ_ВозвратТовара
|ИЗ
| Документ.ВозвратТовара.Товарлар КАК ВозвратТовара
|ГДЕ
| ВозвратТовара.Ссылка.Проведен
| И ВозвратТовара.Ссылка.Филиал.Наименование = ""1-филиал""
| И ВозвратТовара.Ссылка.Дата МЕЖДУ НАЧАЛОПЕРИОДА(&НачДня, ДЕНЬ) И КОНЕЦПЕРИОДА(&КонДня, ДЕНЬ)
|
|СГРУППИРОВАТЬ ПО
| ВозвратТовара.Ссылка.Клиент,
| ВозвратТовара.Ссылка.ДокументВалюта
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ РАЗЛИЧНЫЕ
| ВТ_Клиенты.Ссылка КАК Клиент,
| ВТ_ВТ_НачОстатокПродажи.Валюта КАК Валюта,
| СУММА(ВТ_ВТ_НачОстатокПродажи.НачОстаток) КАК Начостаток,
| СУММА(ВТ_ВТ_НачОстатокПродажи.ОконОстаток) КАК ОконОстаток,
| СУММА(ВТ_ВТ_НачОстатокПродажи.СкидкаСумма) КАК СкидкаСумма,
| ВТ_Клиенты.Процент КАК Процент
|ПОМЕСТИТЬ ВТ_Клиенты_ВТ_НачОстатокПродажи
|ИЗ
| ВТ_Клиенты КАК ВТ_Клиенты
| ЛЕВОЕ СОЕДИНЕНИЕ ВТ_ВТ_НачОстатокПродажи КАК ВТ_ВТ_НачОстатокПродажи
| ПО ВТ_КлиентыСсылка = ВТ_ВТ_НачОстатокПродажи.Клиент
|
|СГРУППИРОВАТЬ ПО
| ВТ_Клиенты.Ссылка,
| ВТ_ВТ_НачОстатокПродажи.Валюта,
| ВТ_Клиены.Процент
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ РАЗЛИЧНЫЕ
| СкидкаИБонусыТаблицаКлиент.Клиент КАК Клиент,
| СкидкаИБонусТаблицаКлиент.Валюта КАК Валюта,
| СУММА(СкидкаИБонусыТаблицаКлиент.СверкаСумма) КАК СверкаСумма
|ПОМЕСТИТЬ ВТ_СкидкаБонус
|ИЗ
| Документ.СкидкаИБонусы.ТаблицаКлиент КАК СкидкаИБонусыТаблицаКлиент
|ГДЕ
| СкидкаИБонусТаблицаКлиент.Ссылка.Дата МЕЖДУ НАЧАЛОПЕРИОДА(&НачДня, ДЕНЬ) И КОНЕЦПЕРИОДА(&КонДня, ДЕНЬ)
| И СкидкаИБонусыТаблицаКлиент.Ссылка.Проведен
| И СкидкаИБонусыТаблицаКлиент.Ссылка.Филиал.Наименование = ""1-филиал""
|
|СГРУППИРОВАТЬ ПО
| СкидкаИБонусыТаблицаКлиент.Клиент,
| СкидкаИБонусыТаблицаКлиент.Валюта
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ РАЗЛИЧНЫЕ
| ЗакрытьЗадолжность.КлиентРасход КАК КлиентРасход,
| ЗакрытьЗадолжность.ВалютаРасход КАК ВалютаРасход,
| СУММА(ЗакрытьЗадолжность.СуммаРасход) КАК СуммаРасход
|ПОМЕСТИТЬ ВТ_ЗакрытьЗадолжность
|ИЗ
| Документ.ЗакрытьЗадолжность КАК ЗакрытьЗадолжность
|ГДЕ
| ЗакрытьЗадолжность.Филиал.Наименование = ""1-филиал""
| И ЗакрытьЗадолжность.Дата МЕЖДУ НАЧАЛОПЕРИОДА(&НачДня, ДЕНЬ) И КОНЕЦПЕРИОДА(&КонДня, ДЕНЬ)
| И ЗакрытьЗадолжность.Проведен
|
|СГРУППИРОВАТЬ ПО
| ЗакрытьЗадолжность.КлиентРасход,
| ЗакрытьЗадолжность.ВалютаРасход
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ РАЗЛИЧНЫЕ
| ВТ_Клиенты_НачОстаток.Клиент КАК Клиент,
| ВТ_Клиенты_НачОстаток.Валюта КАК Валюта,
| ВТ_Клиенты_НачОстаток.БерадиганФоиз КАК Процент,
| СУММА(ВТ_Клиенты_НачОстаток.НачОстаток) КАК НачОстаток,
| СУММА(ВТ_ПриходРасход.Расход) КАК Расход,
| СУММА(ЕСТЬNULL(ВТ_Клиенты_НачОстаток.НачОстаток, 0) + ЕСТЬNULL(ВТ_ПриходРасход.Расход, 0)) КАК ОбщДолг,
| СУММА(ВозвратТовара.СуммаВозврата) КАК СуммаВозврата,
| СУММА(ВТ_Клиенты_НачОстаток.СкидкаСумма) КАК СкидкаСумма,
| СУММА(ПриходВКассу.ПриходВКассу) КАК ПриходВКассу,
| СУММА(ВТ_ЗакрытьЗадолжность.СуммаРасход) КАК СуммаРасход,
| СУММА(ВТ_СкидкаБонус.СверкаСумма) КАК БонусСумма,
| СУММА(ВТ_ПриходРасход.Приход) КАК Приход,
| СУММА(ВТ_Клиенты_НачОстаток.КонОстаток) КАК КонОстаток
|ИЗ
| ВТ_Клиенты_НачОстатокПродажи КАК ВТ_Клиенты_НачОстаток
| ЛЕВОЕ СОЕДИНЕНИЕ ВТ_ПриходРасход КАК ВТ_ПриходРасход
| ПО ВТ_Клиенты_НачОстаток.Клиент = ВТ_ПриходРасход.Клиент
| И ВТ_Клиенты_НачОстаток.Валюта = ВТ_ПриходРасход.Валюта
| ЛЕВОЕ СОЕДИНЕНИЕ ВозвратТовара КАК ВозвратТовара
| ПО ВТ_Клиенты_НачОстаток.Клиент = ВозвратТовара.Клиент
| И ВТ_Клиенты_НачОстаток.Валюта = ВозвратТовара.ДокументВалютаси
| ЛЕВОЕ СОЕДИНЕНИЕ ПриходВКассу КАК ПриходВКассу
| ПО ВТ_Клиенты_НачОстаток.Клиент = ПриходВКассу.Клиент
| И ВТ_Клиенты_НачОстаток.Валюта = ПриходВКассу.Валюта
| ЛЕВОЕ СОЕДИНЕНИЕ ВТ_ЗакрытьЗадолжность КАК ВТ_ЗакрытьЗадолжность
| ПО ВТ_Клиенты_НачОстаток.Клиент = ВТ_ЗакрытьЗадолжность.КлиентРасход
| И ВТ_Клиенты_НачОстаток.Валюта = ВТ_ЗакрытьЗадолжность.ВалютаРасход
| ЛЕВОЕ СОЕДИНЕНИЕ ВТ_СкидкаБонус КАК ВТ_СкидкаБонус
| ПО ВТ_Клиенты_НачОстаток.Клиент = ВТ_СкидкаБонус.Клиент
| И ВТ_Клиенты_НачОстаток.Валюта = ВТ_СкидкаБонус.Валюта
|
|СГРУППИРОВАТЬ ПО
| ВТ_Клиенты_НачОстаток.Клиент,
| ВТ_Клиенты_НачОстаток.Валюта,
| ВТ_Клиенты_НачОстаток.Процент
|
|УПОРЯДОЧИТЬ ПО
| Клиент,
| НачОстаток,
| КонОстаток";

Запрос.УстановитьПараметр("НачДня", НачДня);

Запрос.УстановитьПараметр("Родитель", Родитель);

Запрос.УстановитьПараметр("КонДня", КонДня);

РезультатЗапроса = Запрос.Выполнить();

Выборка = РезультатЗапроса.Выбрать();

тзтзРеквизит5.Очистить();

Пока Выборка.Следующий() Цикл

ТЧ=тзРеквизит5.Добавить();

ТЧ.Клиент=Выборка.Клиент;

ТЧ.Валюта=Выборка.Валюта;

ТЧ.НачОстаток=Выборка.НачОстаток;

ТЧ.Процент=Выборка.Процент;

ТЧ.КонОстаток=Выборка.КонОстаток;

ТЧ.ОбщДолг=Выборка.ОбщДолг;

ТЧ.ПродажиПлюсЗакрытьЗадолженность=Выборка.Расход;

ТЧ.ПриходВКассуПлюсВозвратТовара=Выборка.Приход;

ТЧ.ПолученныеДеньги=Выборка.ПриходВКассу;

ТЧ.ВозвратТовара=Выборка.СуммаВозврата;

ТЧ.Скидки=Выборка.СкидкаСумма;

ТЧ.ЗакрытьЗадолжность=Выборка.СуммаРасход;

ТЧ.БонусСумма=Выборка.БонусСумма;



////////////////////////////////////////////////////////////////////////////

Если ТЧ.Валюта.Наименование="$" Тогда

ТЧ.ВсегоПолученоВСумах=ТЧ.ПриходВКассуПлюсВозвратТовара*Курс;

Иначе

ТЧ.ВсегоПолученоВСумах=ТЧ.ПриходВКассуПлюсВозвратТовара;

КонецЕсли;

Если ТЧ.Валюта.Наименование="Сум" Тогда

ТЧ.ВсегоПолученоВДолларах=ТЧ.ПриходВКассуПлюсВозвратТовара/Курс;

Иначе

ТЧ.ВсегоПолученоВДолларах=ТЧ.ПриходВКассуПлюсВозвратТовара;

КонецЕсли;


КонецЦикла;

Для каждого ТЧ ИЗ тзРеквизит5 Цикл

Если ТЧ.Валюта.Наименование="Сум" Тогда

ТЧ.БонусСумма=Формат(ТЧ.БонусСумма,"ЧДЦ=0");

ТЧ.ПолученныеДеньги=Формат(ТЧ.ПолученныеДеньги,"ЧДЦ=0");

ТЧ.ВозвратТовара=Формат(ТЧ.ВозвратТовара,"ЧДЦ=0");

ТЧ.Скидки=Формат(ТЧ.Скидки,"ЧДЦ=0");

ТЧ.ЗакрытьЗадолжность=Формат(ТЧ.ЗакрытьЗадолжность,"ЧДЦ=0");

ТЧ.НачОстаток=Формат(ТЧ.НачОстаток,"ЧДЦ=0");

ТЧ.ПродажиПлюсЗакрытьЗадолженность=Формат(ТЧ.ПродажиПлюсЗакрытьЗадолженность,"ЧДЦ=0");

ТЧ.ОбщДолг=Формат(ТЧ.ОбщДолг,"ЧДЦ=0");

ТЧ.КонОстаток=формат(ТЧ.КонОстаток,"ЧДЦ=0");

КонецЕсли;

КонецЦикла;

тзРеквизит5.Сортировать("Клиент");

КонецПроцедуры

Cкажите пожалуйста, как эту ТЗ с данными преобразовать в ДЗ.

LexaK

maxxi, так элементарно же! в запросе включите Итоги (по нужным полям группировок)
и выполните такие команды (пример)

лкОбход = ОбходРезультатаЗапроса.ПоГруппировкамСИерархией;
лкРезультат = лкЗапрос.Выполнить().Выгрузить(лкОбход);

и как раз получаете дерево значений! которое можете загрузить в дерево значений формы
(при совпадении имен колонок, одна команда .Загрузить(лкРезультат))
если помогло нажмите: Спасибо!

maxxi

LexaK, так и делаю, если данные берутся прямо из Запроса получаю без проблем, но меня мучает вопрос как получить вычисляемые поля, например эту часть:

Если ТЧ.Валюта.Наименование="$" Тогда
           
            ТЧ.ВсегоПолученоВСумах=ТЧ.ПриходВКассуПлюсВозвратТовара*Курс;
           
        Иначе
           
            ТЧ.ВсегоПолученоВСумах=ТЧ.ПриходВКассуПлюсВозвратТовара;
           
        КонецЕсли;
       
        Если ТЧ.Валюта.Наименование="Сум" Тогда
           
            ТЧ.ВсегоПолученоВДолларах=ТЧ.ПриходВКассуПлюсВозвратТовара/Курс;
           
        Иначе
           
            ТЧ.ВсегоПолученоВДолларах=ТЧ.ПриходВКассуПлюсВозвратТовара;
           
        КонецЕсли;

       
    КонецЦикла;
   
    Для каждого ТЧ ИЗ тзРеквизит5 Цикл
       
        Если ТЧ.Валюта.Наименование="Сум" Тогда
   
            ТЧ.БонусСумма=Формат(ТЧ.БонусСумма,"ЧДЦ=0");
           
            ТЧ.ПолученныеДеньги=Формат(ТЧ.ПолученныеДеньги,"ЧДЦ=0");
       
            ТЧ.ВозвратТовара=Формат(ТЧ.ВозвратТовара,"ЧДЦ=0");       
           
            ТЧ.Скидки=Формат(ТЧ.Скидки,"ЧДЦ=0");
       
            ТЧ.ЗакрытьЗадолжность=Формат(ТЧ.ЗакрытьЗадолжность,"ЧДЦ=0");

            ТЧ.НачОстаток=Формат(ТЧ.НачОстаток,"ЧДЦ=0");
           
            ТЧ.ПродажиПлюсЗакрытьЗадолженность=Формат(ТЧ.ПродажиПлюсЗакрытьЗадолженность,"ЧДЦ=0");
           
            ТЧ.ОбщДолг=Формат(ТЧ.ОбщДолг,"ЧДЦ=0");
           
            ТЧ.КонОстаток=формат(ТЧ.КонОстаток,"ЧДЦ=0");
           
        КонецЕсли;   
           
    КонецЦикла;
   
    тзРеквизит5.Сортировать("Клиент");

LexaK

высисляемые поля можно вычислить:
1. сразу в запросе (использовать Выбор Когда ...)
2. или в цикле в обходе строк ДЗ
если помогло нажмите: Спасибо!

maxxi

LexaK,
Цитировать"2. или в цикле в обходе строк ДЗ"
с этого места по подробнее, пожалуйста.

LexaK

Цитата: maxxi от 17 мая 2024, 15:06с этого места по подробнее, пожалуйста.

есть такая команда Для каждого (пример)
Для каждого СтрокаДЗ Из ВашеДЗ Цикл
ОбработатьВложенныеСтроки(СтрокаДЗ);//рекурсивная процедура
КонецЦикла;
если помогло нажмите: Спасибо!

maxxi

LexaK,

&НаСервере

Процедура ОбходДереваДетально(ПереданноеДер)
   
    Для Каждого СтрПолученногоДерева Из ПереданноеДер.Строки Цикл
   
    Если СтрПолученногоДерева.Строки.Количество()>0 Тогда
         
         ОбходДереваДетально(СтрПолученногоДерева);
         
     КонецЕсли;
     
  КонецЦикла;
 
КонецПроцедуры


Скажите пожалуйста, например как обойти и совершить операции над этим кодом:

Если ТЧ.Валюта.Наименование="$" Тогда
           
   ТЧ.ВсегоПолученоВСумах=ТЧ.ПриходВКассуПлюсВозвратТовара*Курс;
           
 Иначе
           
   ТЧ.ВсегоПолученоВСумах=ТЧ.ПриходВКассуПлюсВозвратТовара;
           
КонецЕсли;
       
Если ТЧ.Валюта.Наименование="Сум" Тогда
           
    ТЧ.ВсегоПолученоВДолларах=ТЧ.ПриходВКассуПлюсВозвратТовара/Курс;
           
Иначе
           
    ТЧ.ВсегоПолученоВДолларах=ТЧ.ПриходВКассуПлюсВозвратТовара;
           
КонецЕсли;

не приходить в ум ничего((

LexaK

maxxi, а валюта у вас где? в групповой строке или в детальной?
если в групповой то запоминаете, делаете текущей под нее и курс запоминаете
и все что под ней вложено умножает на этот курс.
сколько всего валют?

примерную структуру дерЕва напишите, какая у вас получается

примерно так
&НаСервере

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

    Если СтрПолученногоДерева.Строки.Количество()>0 Тогда
         
         ОбходДереваДетально(СтрПолученногоДерева);
         
     КонецЕсли;
     
  КонецЦикла;
 
КонецПроцедуры

в модуле объявите

&НаСервере
Перем ТекущаяВалюта; //или реквизитом формы сделайте (тип Строка)
если помогло нажмите: Спасибо!

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск