Имя: Пароль:
1C
 
СКД вычисляемое поле, как передать значение из Параметры в Вычислямые поля
0 adamst
 
26.11.18
16:45
в 1С 8.3 в СКД как передать параметр, конкретнее дату с формы (дату которую выберет пользователь), получаю данные в СКД из "Наборы данных объект", т.е не запросом, а из таблицы значений программным способом, хочу сформировать "Вычисляемые поля" уже в СКД, но в вычислении нужно использовать дату, которую введет пользователь.

Пробовал "&" подставить вначале не прокатывает.

https://clip2net.com/clip/m68255/0cb3f-clip-108kb.png
https://clip2net.com/clip/m68255/bc0c3-clip-111kb.png
1 adamst
 
26.11.18
16:46
на скринах вычисление не производится, просто хотя бы данные передать...
2 adamst
 
26.11.18
16:49
примерный код для формирования скд, есть кривые моменты, но не вдаюсь в подробности :)

Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка)
    СтандартнаяОбработка = Ложь;
    //НастройкиКомпоновки = КомпоновщикНастроек.Настройки;
    НастройкиКомпоновки = КомпоновщикНастроек.ПолучитьНастройки() ;
    КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
    //проверить получение настроек из макета
    МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, НастройкиКомпоновки);
    //ПараметрДанных = КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("ПериодДатаОкончания");
    //ПараметрДанных = КомпоновщикНастроек.ПользовательскиеНастройки.Элементы.Найти("ПериодДатаОкончания");
    ПараметрДанных = КомпоновщикНастроек.ПользовательскиеНастройки.Элементы.Получить(0);// .Найти("ПериодДатаОкончания");
      ПериодДатаОкончания=Дата(ПараметрДанных.Значение);
    ПараметрДанных.Использование=Истина;
    //ПараметрДанных = КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы.Найти("Организация");
    //ПараметрДанных = КомпоновщикНастроек.ПользовательскиеНастройки.Элементы.Найти("Организация");
    ПараметрДанных = КомпоновщикНастроек.ПользовательскиеНастройки.Элементы.Получить(1);
    выбОрганизация=ПараметрДанных.Значение;
    ПараметрДанных.Использование=Истина;
    
    ПараметрыПолученияСотрудниковОрганизаций = КадровыйУчет.ПараметрыПолученияСотрудниковОрганизацийПоСпискуФизическихЛиц();
    ПараметрыПолученияСотрудниковОрганизаций.Организация         = выбОрганизация;
//    ПараметрыПолученияСотрудниковОрганизаций.Подразделение         = Объект.Подразделение;
    ПараметрыПолученияСотрудниковОрганизаций.НачалоПериода         = Дата(ПериодДатаОкончания); //Период.ДатаОкончания;
    ПараметрыПолученияСотрудниковОрганизаций.ОкончаниеПериода     = Дата(ПериодДатаОкончания); //Период.ДатаОкончания;
        
    ПараметрыПолученияСотрудниковОрганизаций.КадровыеДанные = "Организация,Должность,Подразделение";
    //ПараметрыПолученияСотрудниковОрганизаций.ПодработкиРаботниковПоТрудовымДоговорам = ПолучитьФункциональнуюОпцию("ИспользоватьПодработки");
    втзСотрудники = Новый ТаблицаЗначений;
    втзСотрудники = КадровыйУчет.СотрудникиОрганизации(Истина, ПараметрыПолученияСотрудниковОрганизаций);
    ВнешниеНаборы = Новый Структура("втзСотрудники",втзСотрудники);
    
    ПроцессорКомпоновки = Новый ПроцессорКомпоновкиДанных;
    ПроцессорКомпоновки.Инициализировать(МакетКомпоновки, ВнешниеНаборы);
    
    ПроцессорВывода =  Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
    
    ПроцессорВывода.УстановитьДокумент(ДокументРезультат);
    ПроцессорВывода.Вывести(ПроцессорКомпоновки);
КонецПроцедуры
3 sapphire
 
26.11.18
17:11
(0) Добавить колонку в ТЗ религия не позволяет?
4 adamst
 
26.11.18
17:15
(3) конечно можно было бы, но это не по феншую
хочется СКД научиться пользоваться
5 Windyhead
 
26.11.18
17:24
(4) Все зависит от того где этот параметр будет участвовать.
1) Можно определить пользовательское поле с участием этого параметра, но тогда он не сможешь использовать его при расчете ресурсов.
2) Можешь определить второй набор данных и в виде запроса с этим параметром, и настроить связь наборов.
6 adamst
 
26.11.18
17:38
(5) прихожу к выводу что (3) был прав и не надо искать сложных путей
единственное что может подойти это только ТЗ конвертировать в запрос и там уже больше возможностей...
7 Windyhead
 
26.11.18
18:52
(6) Вообще как в https://clip2net.com/clip/m68255/0cb3f-clip-108kb.png все работает нормально у себя только что проверил, только добавьте в ресурсы его без функции. иначе только в поле группировки будет выводится значение.
Закон Брукера: Даже маленькая практика стоит большой теории.