Вход | Регистрация
 

Вывод на форму настроект СКД, отборов

Вывод на форму настроект СКД, отборов
Я
   NIGHTHUNTER
 
14.09.21 - 09:34
Как вывести на форму параметры СКД, что бы задавать их универсально?
При формировании макетов СКД, программным образом.
То есть, разные макеты СКД, формируются программно из одно отчета.
Можно ли сделать автоматическое проставление их параметров с формы?
В зависимости от выбора макета. Пока только понимаю, что в ручную прописывать все.
   УдавВПопугаях
 
1 - 14.09.21 - 09:40
по кнопке сменить текущую схему, в компоновщик загрузить настройки, поиграться
   NIGHTHUNTER
 
2 - 14.09.21 - 10:26
(1) как поиграться?
   NIGHTHUNTER
 
3 - 14.09.21 - 10:29
(1) То есть на форме будут автоматически меняться поля, параметры, в зависимости от выбранного значения макета в списке на форме?
   ДенисЧ
 
4 - 14.09.21 - 10:36
Взять форму отчета из БСП (и вообще всю подсистему).
Там именно так и делается
   NIGHTHUNTER
 
5 - 14.09.21 - 10:40
(4) у меня список на форме, который соответствует схемам скд.
Думал делать все программно, но решил как то сделать универсально.
Форму эту взял, а дальше как?
   NIGHTHUNTER
 
6 - 14.09.21 - 10:43
запутался нафиг!
   ДенисЧ
 
7 - 14.09.21 - 10:44
(5) А теперь отложи форму, возьми шариковую ручку и лист бумаги А4
   NIGHTHUNTER
 
8 - 14.09.21 - 10:47
(7) Ок
   NIGHTHUNTER
 
9 - 14.09.21 - 10:48
(7) Знать бы как с пользой его использовать.

То есть самому это не сделать?
   NIGHTHUNTER
 
10 - 14.09.21 - 10:49
(9)+ Нужна именно общая форма ФормаОтчета. Я хотел сделать независимо.
   hhhh
 
11 - 14.09.21 - 10:53
(10) делаешь ctrl-C, ctrl-v. И у тебя в отчете уже своя форма.
   NIGHTHUNTER
 
12 - 14.09.21 - 10:54
(7) что с листом делать и ручкой?
   NIGHTHUNTER
 
13 - 14.09.21 - 10:54
(11) Это понятно, а как сделать то что я хочу? я не понимаю
   ДенисЧ
 
14 - 14.09.21 - 10:55
(12) Идёшь в отдел кадров, они тебе подскажут.
   hhhh
 
15 - 14.09.21 - 11:01
(14) у ливингстара нет отдела кадров. он шабашит.
   NIGHTHUNTER
 
16 - 14.09.21 - 11:04
(11) Что даст мне эта форма?
Я взял эту форму и перенес в обработку. ну она же ссылается на разный мехамнизм конфигураций. А если вне его?

Что нужно:

1. на форме список имеющихся макетов СКД, табличное поле для вывода СКД и кнопка.
2. Хочется, при выборе макетов в списке СКД, на форме появлялись\менялись параметры этих СКД.

Как это сделать? И возможно ли? Как то с трудом дается заметил что.
   ДенисЧ
 
17 - 14.09.21 - 11:05
(16) Обогийадумне!
После загрузки схемы читаешь её отборы и параметры и программно добавляешь поля...
   NIGHTHUNTER
 
18 - 14.09.21 - 11:10
(17) После загрузки схемы куда? Пока у меня просто список предполагаемых макетов или макет. И пример программно формируемого отчета СКД.

//
&НаСервере
Процедура СформироватьНаСервере(ТаблДок, ВариантСКД)
    ОбъектОтчет   = РеквизитФормыВЗначение("Отчет");
    //

    //ОСКД          = ОбъектОтчет.ПолучитьМакет("ОсновнаяСхемаКомпоновкиДанных");

    ОСКД          = ОбъектОтчет.ПолучитьМакет(ВариантСКД);
    //

    НастройкиОСКД = ОСКД.НастройкиПоУмолчанию;
    //

    //НастройкиОСКД = КомпоновщикНастроек.ПолучитьНастройкиОСКД();

    //

    ПараметрыДанныхОСКД = НастройкиОСКД.ПараметрыДанных.Элементы;
    //

    ЭлементНачалоПериода               = ПараметрыДанныхОСКД.Найти("НачалоПериода");
    ЭлементНачалоПериода.Использование = Истина;
    ЭлементНачалоПериода.Значение      = НачалоМесяца(ТекущаяДата());
    //

    ЭлементКонецПериода               = ПараметрыДанныхОСКД.Найти("КонецПериода");
    ЭлементКонецПериода.Использование = Истина;
    ЭлементКонецПериода.Значение      = КонецМесяца(ТекущаяДата());
    //

    ЭлементСчет                       = ПараметрыДанныхОСКД.Найти("Счет");
    ЭлементСчет.Использование         = Истина;
    ЭлементСчет.Значение              = ПланыСчетов.Хозрасчетный.ТоварыНаСкладах;
    //

    //КомпоновщикНастроекДанных = Новый КомпоновщикНастроекКомпоновкиДанных;

    //КомпоновщикНастроекДанных.Инициализировать(Новый ИсточникДоступныхНастроекКомпоновкиДанных(ОСКД));

    //КомпоновщикНастроекДанных.ЗагрузитьНастройкиОСКД(ОСКД.НастройкиОСКДПоУмолчанию);

    //КомпоновщикНастроекДанных.ЗагрузитьПользовательскиеНастройкиОСКД(Отчет.КомпоновщикНастроек.ПользовательскиеНастройкиОСКД);

    //

    КомпоновщикМакетаОСКД = Новый КомпоновщикМакетаКомпоновкиДанных;
    //

    //Макет = КомпоновщикМакетаОСКД.Выполнить(ОСКД, КомпоновщикНастроекДанных.ПолучитьНастройкиОСКД());

    Макет = КомпоновщикМакетаОСКД.Выполнить(ОСКД, НастройкиОСКД);
    //

    ПроцессорКомпоновкиОСКД = Новый ПроцессорКомпоновкиДанных;
    ПроцессорКомпоновкиОСКД.Инициализировать(Макет);
    //

    ТаблДок.Очистить();
    //

    ПроцессорВыводаОСКД = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
    ПроцессорВыводаОСКД.УстановитьДокумент(ТаблДок);
    ПроцессорВыводаОСКД.Вывести(ПроцессорКомпоновкиОСКД);
КонецПроцедуры
//
   NIGHTHUNTER
 
19 - 14.09.21 - 11:11
(18+) тут параметры конечно статичные с примера.
Я по этому и задумался, что как бы их автоматизировать вывод на форму.
А то вот так под каждый макет придется писать, не разумно как то.
   hhhh
 
20 - 14.09.21 - 11:19
(19) ну "список имеющихся макетов СКД" - это же тоже какая-то невероятная бредятина, поэтому не волнуйтесь, всё разумно.
   NIGHTHUNTER
 
21 - 14.09.21 - 11:20
(20) А как????? Созданы разные макеты. Под них нужно сделать параметры задать, программно хотя бы. Какая бредятина?
   NIGHTHUNTER
 
22 - 14.09.21 - 11:21
(20) Лучше натолкните на выполнение, что бы я пробовал делал и развивал результат.
   polosov
 
23 - 14.09.21 - 11:27
   toypaul
 
24 - 14.09.21 - 11:52


Список тем форума
 
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.