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

Автор Тема: Как связать Справочник и Список Документов на Начальной странице  (Прочитано 937 раз)

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

Оффлайн Алексей2014

  • *
  • Сообщений: 48
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2014-06-15
  • Сайт: 
  • Профессия: Ученик 1С
Подскажите пож - След. настройка - на Начальную страницу выводятся две колонки. В первой расположен справочник организаций. Во второй колонке документы расчетов с организациями. Нужно, чтобы при изменении текущей строки организации из первой колонки, во второй колонке устанавливалась текущая строка на первый документ расчетов с этой организацией.


Оффлайн vitasw

  • *****
  • Сообщений: 2546
  • РЕПУТАЦИЯ: 309
  • КПД: 12%
  • Регистрация: 2015-02-10
  • Сайт: 
  • Профессия: Программист 1С
След. настройка - на Начальную страницу выводятся две колонки.

Подробнее пожалуйста. Это может быть 2 разных формы, а может быть одна форма с двумя табличными полями. В первом случае - нельзя, во втором - можно.

Оффлайн Алексей2014

  • *
  • Сообщений: 48
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2014-06-15
  • Сайт: 
  • Профессия: Ученик 1С
Подробнее пожалуйста. Это может быть 2 разных формы, а может быть одна форма с двумя табличными полями. В первом случае - нельзя, во втором - можно.
Это действительно 2 разные формы - первая колонка форма списка справочника, вторая колонка форма списка документов.
Если в Начальной странице используется режим 2х колонок по другому и не может быть. В каждой колонке своя форма.
Значит остается создавать отдельную обработку, где городить форму с двумя табличными частями - в первой справочник списком, во второй документы списком?

Оффлайн vitasw

  • *****
  • Сообщений: 2546
  • РЕПУТАЦИЯ: 309
  • КПД: 12%
  • Регистрация: 2015-02-10
  • Сайт: 
  • Профессия: Программист 1С

Оффлайн Алексей2014

  • *
  • Сообщений: 48
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2014-06-15
  • Сайт: 
  • Профессия: Ученик 1С
да
а если не торопиться с ответом, а зайти через получить программно список открытых форм, и уже затем, таким образом, залезть во вторую форму программно и отсортировать по данным первой формы! осталось за малым - как это будет в коде?

Оффлайн ilnur75

  • ***
  • Сообщений: 105
  • РЕПУТАЦИЯ: 9
  • КПД: 9%
  • Регистрация: 2016-03-13
  • Сайт: 
  • Профессия: Ученик 1С
сделайте как вариант вывод во 2-колонку не форму списка документов. а форму отчета "Список документов" , в отчете создайте форму ,добавьте  сначала реквизит табличный документ , закиньте его в элементы, для формы примените обработчик события ПриСозданииНаСервере, запросом получите нужные данные. Форму выносите на раб.стол.

Оффлайн Алексей2014

  • *
  • Сообщений: 48
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2014-06-15
  • Сайт: 
  • Профессия: Ученик 1С
сделайте как вариант вывод во 2-колонку не форму списка документов. а форму отчета "Список документов" , в отчете создайте форму ,добавьте  сначала реквизит табличный документ , закиньте его в элементы, для формы примените обработчик события ПриСозданииНаСервере, запросом получите нужные данные. Форму выносите на раб.стол.
выглядит не очень оптимально. может проще подключить обработчик события. без всяких доп. отчетов?

Оффлайн Dethmontt

  • Денис
  • Модератор
  • *****
  • Сообщений: 2801
  • РЕПУТАЦИЯ: 537
  • КПД: 19%
  • Адын Эс
  • Регистрация: 2010-11-01
  • Сайт: 
  • Профессия: Программист 1С
Алексей2014, вообще самый простой вариант решения задачи, это создание формы обработки где разместить два списка (организации и документы) и при активизации строки в таб1 устанавливать отбор на Таб2

Но мы не ищем легких путей =)))

Итак задача, есть две формы на начальной странице, необходимо при активизации строки в одной форме, устанавливать отбор в другой форме (единственная сложность научить общаться формы и именно из нужного нам места)

Реализация:

Форма списка справочника Организации
&НаКлиенте
Процедура СписокПриАктивизацииСтроки(Элемент)

//Нужно определить что активизация именно с рабочей обрасти начальной страницы
Если ЭтаФорма.Окно = Неопределено или ЭтаФорма.Окно.НачальнаяСтраница Тогда

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

//Оповещаем открытые формы об активизации строки в форме списка справочника Организации
Оповестить("АктивизацияСтрокиСправочникаОрганизации", СтруктураДанных, ЭтаФорма);

КонецЕсли;

КонецПроцедуры

Форма списка документов Документ1:
&НаКлиенте
Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник)

РаботаСФормамиКлиент.ОбработчикОповещенияУстановкаОтбораПоОрганизации(ЭтаФорма, ИмяСобытия, Параметр, Источник);

КонецПроцедуры

ОМ РаботаСФормамиКлиент (галка "Только клиент упр. приложение"):
Процедура ОбработчикОповещенияУстановкаОтбораПоОрганизации(Форма, ИмяСобытия, Параметр, Источник) Экспорт 

//Проверяем что за событие вызвало этот обработчик
Если ИмяСобытия = "АктивизацияСтрокиСправочникаОрганизации" Тогда //Это оповещение об отборе
//Проверяем что эта форма находиться на рабочей области начальной страницы
Если Форма.Окно = Неопределено или Форма.Окно.НачальнаяСтраница Тогда
//Устанавливаем отбор
УстановитьОтборСпискаДокументов(Форма.Список, Параметр);
КонецЕсли;
КонецЕсли;

КонецПроцедуры


Процедура УстановитьОтборСпискаДокументов(Список, СтруктураДанных) Экспорт

//Поле для отбора
ПолеКомпоновки = Новый ПолеКомпоновкиДанных(СтруктураДанных.Имя);

//Проверяем возможность установки отбора
Если Список.Отбор.ДоступныеПоляОтбора.НайтиПоле(ПолеКомпоновки) <> Неопределено Тогда

ЭлементОтбора = Неопределено;
//Ищем уже установленный отбор
Для каждого Элемент Из Список.Отбор.Элементы Цикл

Если Элемент.ЛевоеЗначение = ПолеКомпоновки Тогда
ЭлементОтбора = Элемент;
Прервать;
КонецЕсли;

КонецЦикла;

//Добавляем отбор если его еще нету
Если ЭлементОтбора = Неопределено Тогда
ЭлементОтбора = Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
КонецЕсли;

//Устанавливаем значения
ЭлементОтбора.ЛевоеЗначение = ПолеКомпоновки;
ЭлементОтбора.ПравоеЗначение = СтруктураДанных.Значение;
ЭлементОтбора.Использование = СтруктураДанных.Использование;

КонецЕсли;

КонецПроцедуры

Добавлено: 17 Авг 2016, 03:29

//Ах, да! Чуть не забыл. Что бы строчка ниже отработала, нужно в свойствах динамического списка (на форме списка справочника Организации) напротив поля Ссылка - поставить галочку "Использовать всегда"
СтруктураДанных.Значение = ТекДанные.Ссылка;
//можно конечно переписать на более универсальную функцию, но это будет лишний
Добавлено: 17 Авг 2016, 03:30

вызов сервера, да и лень мне
Если долго всматриваться в учебник...то в голову может прийти мысль его открыть!

Последний раз редактировалось: Dethmontt; 17 Авг 2016, 03:30. Причина: Объединение сообщений

Оффлайн vitasw

  • *****
  • Сообщений: 2546
  • РЕПУТАЦИЯ: 309
  • КПД: 12%
  • Регистрация: 2015-02-10
  • Сайт: 
  • Профессия: Программист 1С
вот-вот и я о том же. Вместо того чтобы сделать одну форму с 2-мя таблицами, будем рвать гланды через ж**у. проще сразу сказать "низя" чем почему "можно, но не нужно."

Оффлайн Dethmontt

  • Денис
  • Модератор
  • *****
  • Сообщений: 2801
  • РЕПУТАЦИЯ: 537
  • КПД: 19%
  • Адын Эс
  • Регистрация: 2010-11-01
  • Сайт: 
  • Профессия: Программист 1С
проще сразу сказать "низя" чем почему "можно, но не нужно."
А если разные пользователи захотят видеть разные типы документов с таким же отбором, под каждого будем обработку пилить?
Добавлено: 17 Авг 2016, 11:14

поэтому - есть задача! Есть - решение!
Если долго всматриваться в учебник...то в голову может прийти мысль его открыть!


Теги:
 

Что такое "Список Значений", "Таблица значений" и "Дерево Значений"?

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

Ответов: 6
Просмотров: 5785
Последний ответ 23 Дек 2011, 16:43
от sergeevds
Как создать нескольких документов "расчет при увольнении" на основании кадрового документа "увольнение" как Отпуска

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

Ответов: 3
Просмотров: 2604
Последний ответ 21 Мар 2015, 20:24
от дфтын
Не работает структура подчиненности документов "Требование-накладная" и "Передач

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

Ответов: 0
Просмотров: 3777
Последний ответ 10 Мар 2011, 07:36
от sv_stas_sv
Реквизит "Ссылка" у справочников и документов

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

Ответов: 3
Просмотров: 2507
Последний ответ 29 Май 2013, 16:24
от leklerk
"Дубляж" документов реализации в ВзаиморасчетыКомпанииОстаткиИОбороты

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

Ответов: 0
Просмотров: 1558
Последний ответ 24 Янв 2014, 13:55
от mspuz

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

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

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


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

* Реклама

Смотрите бесплатно более 300 видеоуроков по работе в 1С:Бухгалтерия 8 и 1C:ЗУП 8 ред. 3.0

СМОТРЕТЬ >>

* Поиск

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

* Реклама

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

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

Геннадий ОбьГЭС Геннадий ОбьГЭС
96 Сообщений
Dethmontt Dethmontt
71 Сообщений
alex0402
66 Сообщений
MuI_I_Ika MuI_I_Ika
61 Сообщений
wise wise
57 Сообщений
ilyay ilyay
39 Сообщений
Сергей Федоров Сергей Федоров
36 Сообщений
magnifico61
22 Сообщений
BuhRust
21 Сообщений
ilnur75
21 Сообщений

* Кто онлайн

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

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

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

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

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

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal