Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
16 Дек 2017, 21:54
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: Программная установка параметров СКД  (Прочитано 24347 раз)

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

Оффлайн |R|U|D|E|N

  • ***
  • Сообщений: 217
  • РЕПУТАЦИЯ: 3
  • КПД: 1%
  • Регистрация: 2011-01-09
  • Компания: Virtual-Kernel | KVM | Xen
  • Профессия: Разработчик 1С
Добрый день.

Есть Общая "Схема компоновки данных" у которой есть один "Параметр" - Контрагент. Так вот значение этого параметра мне необходимо установить из встроенного языка?

Подскажите пожалуйста(в виде кода) как получить Общую схему компоновки данных и установить значение параметра "Контрагент"?

За раннее спасибо!




Оффлайн progmikon

  • *****
  • Сообщений: 2090
  • РЕПУТАЦИЯ: 371
  • КПД: 18%
  • Регистрация: 2010-10-09
  • Компания: http://progmikon.blogspot.com/
  • Профессия: Программист 1С
Если мне не изменяет мой склероз:
ПараметрНачПериода = КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы[1]; //первый параметр
ПараметрНачПериода.Значение = ТекущаяДата();
ПараметрНачПериода.Использование = Истина;

Последний раз редактировалось: progmikon; 04 Мар 2011, 08:11

Оффлайн cska-fanat-kz

  • 1С:Специалист
  • Глобальный модератор
  • *****
  • Сообщений: 5745
  • РЕПУТАЦИЯ: 1099
  • КПД: 19%
  • Красная армия всех сильней!
  • Регистрация: 2010-11-06
    • Skype: cska-fanat-kz81
  • Сайт: cska-fanat-kz.ucoz.kz
  • Профессия: Разработчик 1С
Простите за буквоедство...

КомпОновщикНастроек
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Оффлайн |R|U|D|E|N

  • ***
  • Сообщений: 217
  • РЕПУТАЦИЯ: 3
  • КПД: 1%
  • Регистрация: 2011-01-09
  • Компания: Virtual-Kernel | KVM | Xen
  • Профессия: Разработчик 1С
Спасибо progmikon именно это мне и надо было!

Только я не могу понять, как эти настройки установить для конкретной схемы компоновки данных?

Поясню:

//Получаю схему компоновки данных
СхемаКомпоновкиДанных =  ПолучитьОбщийМакет("СхемаКомпоновкиДанных_ИсторияКонтрагента");

//А теперь я просто передаю парамтры? Как то связать эти параметры с полученной выше СКД не надо? Все так должно работать?
ПараметрКонтрагент = КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы[1];
ПараметрКонтрагент.Значение = Контрагент;
ПараметрКонтрагент.Использование = Истина;

//ну и далее уже стандартно
Настройки = СхемаКомпоновкиДанных.НастройкиПоУмолчанию;
   
   
   
       
//Формируем макет компоновки данных
КомпоновщикМакета = Новый КомпоновщикМакетаКомпоновкиДанных;
МакетКомпоновки = КомпоновщикМакета.Выполнить(СхемаКомпоновкиДанных, Настройки);
   
//выполним компоновку данных
ПроцессорКомпоновкиДанных = Новый ПроцессорКомпоновкиДанных;
ПроцессорКомпоновкиДанных.Инициализировать(МакетКомпоновки);
   
   
//Выводим результат компоновки в табличный документ.
ДокументРезультат = Новый ТабличныйДокумент;
ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;
   
ПроцессорВывода.УстановитьДокумент(ДокументРезультат);
ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных);
   
ДокументРезультат.ОтображатьСетку = Ложь;
ДокументРезультат.ОтображатьЗаголовки = Ложь;
ДокументРезультат.Показать();


Подскажите где не правильно?                     

Оффлайн |R|U|D|E|N

  • ***
  • Сообщений: 217
  • РЕПУТАЦИЯ: 3
  • КПД: 1%
  • Регистрация: 2011-01-09
  • Компания: Virtual-Kernel | KVM | Xen
  • Профессия: Разработчик 1С
Вот полный код:

	СхемаКомпоновкиДанных =  ПолучитьОбщийМакет("СхемаКомпоновкиДанных_ИсторияКонтрагента");

ПараметрКонтрагент = КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы[0];
ПараметрКонтрагент.Значение = Контрагент;
ПараметрКонтрагент.Использование = Истина;



//Получаем настройки по умолчанию
Настройки = СхемаКомпоновкиДанных.НастройкиПоУмолчанию;



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

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


//Выводим результат компоновки в табличный документ.
ДокументРезультат = Новый ТабличныйДокумент;
ПроцессорВывода = Новый ПроцессорВыводаРезультатаКомпоновкиДанныхВТабличныйДокумент;

ПроцессорВывода.УстановитьДокумент(ДокументРезультат);
ПроцессорВывода.Вывести(ПроцессорКомпоновкиДанных);

ДокументРезультат.ОтображатьСетку = Ложь;
ДокументРезультат.ОтображатьЗаголовки = Ложь;
ДокументРезультат.Показать();

Подскажите, что не так?

Оффлайн |R|U|D|E|N

  • ***
  • Сообщений: 217
  • РЕПУТАЦИЯ: 3
  • КПД: 1%
  • Регистрация: 2011-01-09
  • Компания: Virtual-Kernel | KVM | Xen
  • Профессия: Разработчик 1С
После попытки сохранения приведенного выше кода, выскакивает ошибка:

{Документ.АктПриемаОборудования.Форма.ФормаДокумента.Форма(39,23)}: Переменная не определена (КомпоновщикНастроек)
   ПараметрКонтрагент = <<?>>КомпоновщикНастроек.Настройки.ПараметрыДанных.Элементы[1]; (Проверка: Толстый клиент (обычное приложение))

Оффлайн cska-fanat-kz

  • 1С:Специалист
  • Глобальный модератор
  • *****
  • Сообщений: 5745
  • РЕПУТАЦИЯ: 1099
  • КПД: 19%
  • Красная армия всех сильней!
  • Регистрация: 2010-11-06
    • Skype: cska-fanat-kz81
  • Сайт: cska-fanat-kz.ucoz.kz
  • Профессия: Разработчик 1С
КомпоновщикНастроек - это свойство у Отчета.

В вашем случае попробуйте так:

СхемаКомпоновкиДанных =  ПолучитьОбщийМакет("СхемаКомпоновкиДанных_ИсторияКонтрагента");
СхемаКомпоновкиДанных.Параметры[0].Значение = <<Значение>>;
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Оффлайн |R|U|D|E|N

  • ***
  • Сообщений: 217
  • РЕПУТАЦИЯ: 3
  • КПД: 1%
  • Регистрация: 2011-01-09
  • Компания: Virtual-Kernel | KVM | Xen
  • Профессия: Разработчик 1С
cska-fanat-kz, не могли бы Вы дописать код)

чета форум глючит немного....

Оффлайн cska-fanat-kz

  • 1С:Специалист
  • Глобальный модератор
  • *****
  • Сообщений: 5745
  • РЕПУТАЦИЯ: 1099
  • КПД: 19%
  • Красная армия всех сильней!
  • Регистрация: 2010-11-06
    • Skype: cska-fanat-kz81
  • Сайт: cska-fanat-kz.ucoz.kz
  • Профессия: Разработчик 1С
...[0].Значение = <<Значение>>;
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Оффлайн |R|U|D|E|N

  • ***
  • Сообщений: 217
  • РЕПУТАЦИЯ: 3
  • КПД: 1%
  • Регистрация: 2011-01-09
  • Компания: Virtual-Kernel | KVM | Xen
  • Профессия: Разработчик 1С
Спасибо cska-fanat-kz! Вы просто гений!

Полностью рабочий вариант:

//Получаем значение реквизита документа
Контрагент = ДокументОбъект.Поставщик;
//Получаем СКД и передаем ей параметр   
СхемаКомпоновкиДанных =  ПолучитьОбщийМакет("СхемаКомпоновкиДанных_ИсторияКонтрагента");
СхемаКомпоновкиДанных.Параметры[0].Значение = Контрагент;



Всем Спасибо. Тема закрыта.


Теги:
 

Установка ориентации страницы "Ландшафт"

Автор summerРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 0
Просмотров: 4683
Последний ответ 11 Янв 2011, 11:05
от summer
Внешняя обработка для документа "Установка цен номенклатуры"

Автор MArrРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 9
Просмотров: 4472
Последний ответ 05 Апр 2015, 08:21
от blackmoon89
Установка цены продажи из документа "Поступление товаров и услуг" как?

Автор grandistokРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 1
Просмотров: 1783
Последний ответ 13 Май 2014, 16:34
от cska-fanat-kz
Розница 2.0 Установка способа оплаты в документе Реализация товаров и услуг

Автор Natascha1990Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 0
Просмотров: 2735
Последний ответ 19 Мар 2013, 14:36
от Natascha1990
Установка даты запрета редактирования, как расширить выбором конкретных документов

Автор Саша ЛибертиРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 6
Просмотров: 3070
Последний ответ 13 Июн 2014, 11:24
от Саша Либерти

* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
157 Сообщений
ilyay ilyay
66 Сообщений
alex0402
53 Сообщений
AIFrame
51 Сообщений
andron81_81
44 Сообщений
oleg-x
44 Сообщений
BuhRust
33 Сообщений
MuI_I_Ika MuI_I_Ika
32 Сообщений
Golickoff Golickoff
31 Сообщений
Dima Dddd Dima Dddd
24 Сообщений

* Кто онлайн

  • Точка Гостей: 220
  • Точка Скрытых: 0
  • Точка Пользователей: 2
  • Точка Сейчас на форуме:

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal