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

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

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С
Ошибся:
СтрокаТелефонов = "";
Для Каждого Текстрока Из КонтактТел Цикл
СтрокаТелефонов = СтрокаТелефонов + ТекСтрока.ТЕЛЕФОН + "; ";
КонецЦикла;
ОбластьМакета = Макет.ПолучитьОбласть("Телефон");
ОбластьМакета.Параметры.Телефон = СтрокаТелефонов;
ТабДок.Вывести(ОбластьМакета);


Теги:
 

Помогите выразить код Объект.Наименование = Объект.Подразделение + " " + Объект.Должность + " " + Объект.ФизическоеЛицо через строки.

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

Ответов: 3
Просмотров: 1148
Последний ответ 05 Мар 2019, 19:28
от Ledgik
Помогите срочно!! В вкладке "Сервис"--> "Журнал регистрации" отражаются все операции как можно определить сделаны ли операции "задним числом" и как вычислить первоначальную информацию какой расчет поменял на другой?

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

Ответов: 1
Просмотров: 6851
Последний ответ 24 Дек 2015, 15:34
от дфтын
Помогите правильно настроить справочник "Единицы измерения" и "Номенклатура"

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

Ответов: 1
Просмотров: 1370
Последний ответ 23 Янв 2019, 07:21
от Геннадий ОбьГЭС
На фото демонстрируется личная карточка сотрудника, но во столбце "ЗА ЯКИЙ ПЕРІОД " не показывает ничего, как это можно решить, помогите пожалуйста

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

Ответов: 9
Просмотров: 1640
Последний ответ 26 Июл 2018, 17:44
от alex0402
Помогите подобрать Back-office и Front-office

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

Ответов: 1
Просмотров: 7242
Последний ответ 07 Сен 2010, 12:01
от mohock

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

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

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


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

* Реклама

* Поиск

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

* Реклама

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

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

Геннадий ОбьГЭС Геннадий ОбьГЭС
77 Сообщений
Дмитрий Джей Дмитрий Джей
30 Сообщений
IL2016
30 Сообщений
oooo800
29 Сообщений
LexaK
25 Сообщений
antoneus antoneus
25 Сообщений
DmitriyF DmitriyF
17 Сообщений
Ann_
16 Сообщений
alexandr_ll
14 Сообщений
мадам брошкина
13 Сообщений

* Кто онлайн

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

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

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

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

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

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal