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

Автор Тема: Помогите с Макетом и параметрами  (Прочитано 6670 раз)

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

Оффлайн AxOn

  • **
  • Сообщений: 82
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2010-10-04
  • Сайт: 
Привет. Помогите плизз.

У меня выберается контрагент из списка и в зависмости от него нужно что бы изменялись и соответствующие параметры в макете.
Если одинаковые имена  у контрагентов. Как это можно сделать?

МакетДата = ЭлементыФормы.Дата.Значение;
   ТабДок = новый ТабличныйДокумент;
   Макет = Документы.ЗаказПоставщику.ПолучитьМакет("МакетЗаказПоставщику");
   Шапка = Макет.ПолучитьОбласть("Шапка");
   Шапка.Параметры.МНомер = МакетНомер;
   Шапка.Параметры.МДата = МакетДата;
   
   СписокОрганизация = ЭлементыФормы.СписокОрганизация.Значение;
   Контрагенты = Макет.ПолучитьОбласть("Контрагенты");
   
//Возможно вам покажется что я написал какую-то нелепецу = )
           Контрагенты.Параметры.МСписокОрганизация = СписокОрганизация;
   СписокОрганизация = Справочники.Контрагенты = СписокОрганизация;
   СписокОрганизация.ПолучитьФорму(????????????
   
   
   
    ТабДок.Вывести(Контрагенты);
   ТабДок.Вывести(Шапка);
   ТабДок.Показать();


Оффлайн progmikon

  • *****
  • Сообщений: 2090
  • РЕПУТАЦИЯ: 371
  • КПД: 18%
  • Регистрация: 2010-10-09
  • Компания: http://progmikon.blogspot.com/
  • Профессия: Программист 1С
Чем точнее вы формулируете вопрос, тем с большей долей вероятности вам помогут.
"У меня выберается контрагент из списка и в зависмости от него нужно что бы изменялись и соответствующие параметры в макете."
Если вы имеете ввиду значение параметров в макете, в данном случае, как я понял, параметр "Контрагенты", области "Контрагенты", то

   СписокОрганизация = ЭлементыФормы.СписокОрганизация.Значение;
   Контрагенты = Макет.ПолучитьОбласть("Контрагенты");
   
          Контрагенты.Параметры.МСписокОрганизация = СписокОрганизация;

Что вы хотели сделать дальше - для меня загадка...
   СписокОрганизация = Справочники.Контрагенты = СписокОрганизация;
   СписокОрганизация.ПолучитьФорму(????????????

Оффлайн AxOn

  • **
  • Сообщений: 82
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2010-10-04
  • Сайт: 
progmikon что бы в зависимости от выбора из списка организации. Параметры её менялись автаматически в макете.
как ещё написать... Имя организации ИНН. адрес итп. Я делаю макет на примере Накладной товаров.

Оффлайн progmikon

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

Если у вас все характеристики в одной области, тогда
ОбластьМакета = Макет.ПолучитьОбласть("Контрагент");
ОбластьМакета.Параметры.Заполнить(СписокОрганизация); //главное чтобы у вас имена реквизитов и областей совпадали.

Оффлайн progmikon

  • *****
  • Сообщений: 2090
  • РЕПУТАЦИЯ: 371
  • КПД: 18%
  • Регистрация: 2010-10-09
  • Компания: http://progmikon.blogspot.com/
  • Профессия: Программист 1С
Или вопрос в том, как изменить значения в уже открытом макете?

Оффлайн progmikon

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

Процедура КнопкаСформироватьНажатие(Кнопка)
   ТАбдок = ЭлементыФормы.ПолеТабличногоДокумента1;
   Область = ТабДок.НайтиТекст("Покупатель");
   Если ТипЗнч(Область) = Тип("Неопределено") Тогда
      Макет  =ПолучитьМакет("Макет");
      ОбластьМакета = Макет.ПолучитьОбласть("Строка");
      ОбластьМакета.Параметры.Контрагент = ПолеВвода1;
      ТабДок.Вывести(ОбластьМакета);
      ТабДок.Показать(Истина);
   Иначе
      ИмяОбласти = Область.Имя;
      ПозСтр = Найти(ИмяОбласти, "R");
      ПозКол = Найти(ИмяОбласти, "C");
      Стр = Сред(ИмяОбласти, 2, ПозКол-2);
      Кол = Число(Сред(ИмяОбласти, ПозКол+1))+1;
      ТабДок.Область("R" + Стр + "C" + Кол).Текст = ПолеВвода1;
   КонецЕсли;
КонецПроцедуры

В нем есть несколько допущений:
1)  у меня есть в макете  есть область с именем "Строка". В ней первая колонка  содержит текст "Покупатель", а следующая колонка параметр "контрагент". Именно по этому  Кол = Число(Сред(ИмяОбласти, ПозКол+1))+1. в зависимости от расположения ваших областей, вы должны поправить это выражение.
2) строка "покупатель" находится в одной ячейке. (для области необходимо дописать определение позиции).
3) если стр и кол >100 необходимо их дополнительно почистить от непечатаемых символов

Оффлайн AxOn

  • **
  • Сообщений: 82
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2010-10-04
  • Сайт: 
всё спасибо разобрался. Сейчас немогу разобраться как присвоить табличные значения в макет
Контрагент = Справочники.Контрагенты.НайтиПоНаименованию(СписокОрганизация);

и среди элементов формы есть таблица КонтактТел. Как вытащить из неё значения строк

Наимен = Контрагент.КонтактТел.Наимен.ФУНКЦИИИИИИ , почти все перепробовал немогу присвоить значения

Оффлайн progmikon

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

Оффлайн progmikon

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

Оффлайн progmikon

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


Теги:
 

Помогите срочно!! В вкладке "Сервис"--> "Журнал регистрации" отражаются все операции как можно определить сделаны ли операции "задним числом" и как вычислить первоначальную информацию какой расчет поменял на другой?

Автор 2ronРаздел Пользователям "1С - Предприятие 8"

Ответов: 1
Просмотров: 4292
Последний ответ 24 Дек 2015, 15:34
от дфтын
Помогите подобрать Back-office и Front-office

Автор avrnskРаздел Пользователям "1С - Предприятие 8"

Ответов: 1
Просмотров: 5551
Последний ответ 07 Сен 2010, 12:01
от mohock
Помогите с отчётами в УТ 10.3. (Ведомость по товарам и ведомость по заказам)

Автор chum710Раздел Пользователям "1С - Предприятие 8"

Ответов: 2
Просмотров: 5887
Последний ответ 28 Мар 2012, 13:02
от chum710
Помогите с отчетом "Валовая прибыль"

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

Ответов: 4
Просмотров: 4366
Последний ответ 10 Сен 2015, 13:57
от Dm109
помогите с отчетом "характеристики контрагентов"

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

Ответов: 2
Просмотров: 1978
Последний ответ 07 Дек 2016, 15:53
от Kironten

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

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

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


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

* Реклама

* Поиск

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

* Реклама

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

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

Геннадий ОбьГЭС Геннадий ОбьГЭС
179 Сообщений
ilyay ilyay
75 Сообщений
oleg-x
51 Сообщений
alex0402
49 Сообщений
andron81_81
39 Сообщений
AIFrame
37 Сообщений
MuI_I_Ika MuI_I_Ika
34 Сообщений
BuhRust
30 Сообщений
Golickoff Golickoff
28 Сообщений
Dima Dddd Dima Dddd
26 Сообщений

* Кто онлайн

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

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

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

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

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

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal