Форум программистов, компьютерный форум, киберфорум
1С: Собственные программы
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.98/55: Рейтинг темы: голосов - 55, средняя оценка - 4.98
60 / 30 / 5
Регистрация: 22.05.2012
Сообщений: 102
1
1C 8.x (тонкий)

Создание ссылки на реквизит в табличной части

12.05.2014, 23:58. Показов 11078. Ответов 23
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Такая беда есть справочник Дисциплины в котором есть табличная часть Темы и Реквизит НаименованиеТемы. есть документ Текущая успеваемость студентов, в нем нужно сделать ссылку на справочник ДисциплиныТабличная часть и собственно этот реквизит. прикрепляю базу, помогите плиз
Вложения
Тип файла: zip InfoBase.zip (813.5 Кб, 23 просмотров)
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.05.2014, 23:58
Ответы с готовыми решениями:

Вывод суммы из табличной части в реквизит
Как это сделать ?

Как сослаться на реквизит табличной части?
У меня есть документ, Заказы, в нем 2 табличные части запчасти заказа, и Заказанные услуги, в...

Запись первой строки табличной части в в реквизит
Подскажите пожалуйста как программно записать первую строку из табличной части документа в реквизит.

Как осуществить перенос сведений в реквизит табличной части.
Добрый день! Есть документ с табличной частью, в табличной части 2 реквезита: реквизит1(...

23
2955 / 1767 / 82
Регистрация: 03.11.2011
Сообщений: 8,280
13.05.2014, 00:51 2
Фига се рэп... Тимоти обзавидовался бы... По крайней мере так же непонятна цель. Надо вытащить ТЧ справочника в док?
Цитата Сообщение от irifka2012 Посмотреть сообщение
и собственно этот реквизит
он как-то отдельно?

Добавлено через 9 минут
Не пойму проблемы. Путь к данным в таб.поле "Дисциплины.тч..." - не устраивает?
1
60 / 30 / 5
Регистрация: 22.05.2012
Сообщений: 102
13.05.2014, 14:05  [ТС] 3
Путь устраивает вполне, только вот я не могу понять куда его вписать???
0
21 / 21 / 3
Регистрация: 22.04.2014
Сообщений: 112
13.05.2014, 14:51 4
irifka2012, Что - то как - то не понятно... Вам нужно вытащить из справочника Дисциплины ТЧ - и куда его поместить??? На форму документа??? или какой - то конкретный реквизит из тч вывести на форму???

У вас в объекте есть уже ссылка на справочник дисциплины.
1C
1
Объект.Дисциплины.Темы //  - вот она табличная часть
1
208 / 182 / 31
Регистрация: 24.10.2011
Сообщений: 744
13.05.2014, 15:17 5
Я бы подменил событие выбора темы, вставил бы туда выбор из списка заполненного темами выбранной дисциплины.
1
60 / 30 / 5
Регистрация: 22.05.2012
Сообщений: 102
13.05.2014, 18:05  [ТС] 6
В общем все что мне точно нужно описано в картинке, я не совсем понимаю как это правильно реализовать
очень жду ответа
Миниатюры
Создание ссылки на реквизит в табличной части  
0
60 / 30 / 5
Регистрация: 22.05.2012
Сообщений: 102
13.05.2014, 18:22  [ТС] 7
так не выбирается почему то

Добавлено через 4 минуты
кто-нибудь откликнитесь???
0
208 / 182 / 31
Регистрация: 24.10.2011
Сообщений: 744
13.05.2014, 19:00 8
Обработчики событий элементов формы, где находятся вы в курсе?
0
60 / 30 / 5
Регистрация: 22.05.2012
Сообщений: 102
13.05.2014, 23:11  [ТС] 9
да в курсе
Цитата Сообщение от Volexovich Посмотреть сообщение
Обработчики событий элементов формы, где находятся вы в курсе?
0
208 / 182 / 31
Регистрация: 24.10.2011
Сообщений: 744
14.05.2014, 10:59 10
Лучший ответ Сообщение было отмечено irifka2012 как решение

Решение

Вот пример выбора из списка наименования темы:
Кликните здесь для просмотра всего текста

1C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
&НаКлиенте
Процедура ВедомостьТемаНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка)
    СтандартнаяОбработка = Ложь;
    ВыбЗн = ЭтаФорма.ВыбратьИзМеню(ПолучитьСписокТем());
    Если ВыбЗн = неопределено Тогда
        Возврат; 
    КонецЕсли;
    // тут делаете с вашей выбранной темой что хотите
КонецПроцедуры
 
&НаСервере
Функция ПолучитьСписокТем()
    СписокТем = Новый СписокЗначений;
    Для каждого СтрокаТема из Объект.Дисциплина.Темы Цикл
        СписокТем.Добавить(СтрокаТема.НаименованиеТемы,СтрокаТема.НаименованиеТемы);
    КонецЦикла;
    Возврат СписокТем;
КонецФункции

А вообще у Вас неудобно реализовано сопряжение дисциплин и тем, я бы создал их различными справочниками и темы бы выбирал в табличной части дисциплин. Тогда бы и не было танцев с бубнами. Сейчас, в случае анализа документов успеваемости по теме вы получите жесткий геморрой при сопряжении тем и дисциплин, потому что придется "вручную" искать тему в дисциплине (по ссылке получить не удастся потому что темы тупо таблица со строковыми параметрами).
1
60 / 30 / 5
Регистрация: 22.05.2012
Сообщений: 102
29.05.2014, 14:51  [ТС] 11
Есть справочник Студенты, в котором хранятся данные о студентах различных групп, В документ нужно вывести студентов только выбранной в нем группы, как это можно сделать подскажите с синтаксисом запроса
Миниатюры
Создание ссылки на реквизит в табличной части  
0
Эксперт 1С
3057 / 2004 / 524
Регистрация: 25.06.2009
Сообщений: 6,964
29.05.2014, 14:53 12
irifka2012, Группа - это справочник? Как он связан со справочником Студенты?
0
60 / 30 / 5
Регистрация: 22.05.2012
Сообщений: 102
29.05.2014, 15:32  [ТС] 13
нет группа это реквизит в справочнике студенты
0
Эксперт 1С
3057 / 2004 / 524
Регистрация: 25.06.2009
Сообщений: 6,964
29.05.2014, 15:35 14
1C
1
2
3
4
5
6
7
Запрос = Новый Запрос("ВЫБРАТЬ
 |  Студенты.Ссылка
 |ИЗ
 |  Справочник.Студенты КАК Студенты
 |ГДЕ
 |      Студенты.Группа = &Группа");
Запрос.УстановитьПараметр("Группа",Объект.Группа);//поле из документа
0
60 / 30 / 5
Регистрация: 22.05.2012
Сообщений: 102
29.05.2014, 16:17  [ТС] 15
можно ли переделать этот запрос, на событие при изменении?????

1C
1
2
3
4
5
6
7
Запрос = Новый Запрос("ВЫБРАТЬ
*|* Студенты.Ссылка
 |ИЗ
*|* Справочник.Студенты КАК Студенты
 |ГДЕ
 | * * *Студенты.Группа = &Группа");
Запрос.УстановитьПараметр("Группа",Объект.Группа)
0
Эксперт 1С
3057 / 2004 / 524
Регистрация: 25.06.2009
Сообщений: 6,964
29.05.2014, 16:22 16
irifka2012, с запросом все нормально. Вам при печати надо получать студентов?
Цитата Сообщение от irifka2012 Посмотреть сообщение
на событие при изменении?????
Изменение чего?
Покажите ваш код.
0
60 / 30 / 5
Регистрация: 22.05.2012
Сообщений: 102
29.05.2014, 16:30  [ТС] 17
1C
1
2
3
4
5
6
7
8
9
Процедура ГруппаПриИзменении(Элемент)
    //// Вставить содержимое обработчика.
     Пока Объект.Ведомость.Студенты <>0  Цикл
    Если Объект.Группа=Объект.Ведомость.Студенты.Группа тогда
        Объект.Ведомость.Вставить(Объект.Ведомость.Студенты) ;
        КонецЕсли
        конецЦикла
 
КонецПроцедуры
Только он не работает, смысл в том чтобы обработчик просматривал справочник студенты и вписывал в табл часть только студентов выбранной группы, или это бред??
А и еще я сделала группы как перечисления чтоб было легче
0
Эксперт 1С
3057 / 2004 / 524
Регистрация: 25.06.2009
Сообщений: 6,964
29.05.2014, 16:38 18
irifka2012, у вас на скрине - табличный документ. А по коду - заполнение табличной части. Поясняйте, что вам нужно-таки.
1C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
&НаКлиенте
Процедура ГруппаПриИзменении(Элемент)
    //// Вставить содержимое обработчика.
    ЗаполнитьТЧНаСервере(); 
КонецПроцедуры
 
&НаСервере
Процедура ЗаполнитьТЧНаСервере()
 Объект.Ведомость.Очистить();
 Запрос = Новый Запрос("ВЫБРАТЬ
 |  Студенты.Ссылка КАК Студенты
 |ИЗ
 |  Справочник.Студенты КАК Студенты
 |ГДЕ
 |      Студенты.Группа = &Группа");
 Запрос.УстановитьПараметр("Группа",Объект.Группа);
 Выборка = Запрос.Выполнить().Выбрать();
 Пока Выборка.Следующий() Цикл
    НовСтр = Объект.Ведомость.Добавить();
    НовСтр.Студенты = Выборка.Студенты;
 КонецЦикла;
КонецПроцедуры
Добавлено через 52 секунды
Цитата Сообщение от irifka2012 Посмотреть сообщение
А и еще я сделала группы как перечисления чтоб было легче
и в чем легче стало??
0
60 / 30 / 5
Регистрация: 22.05.2012
Сообщений: 102
29.05.2014, 16:49  [ТС] 19
нужно заполнение табличной части в документе, не в печати

Добавлено через 4 минуты
К сожалению, при выполнении этого события табличная часть не заполняется
0
Эксперт 1С
3057 / 2004 / 524
Регистрация: 25.06.2009
Сообщений: 6,964
29.05.2014, 16:51 20
irifka2012, базу?
1
29.05.2014, 16:51
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
29.05.2014, 16:51
Помогаю со студенческими работами здесь

Как вывести поле из строки табличной части справочника в реквизит документа?
Есть справочник ФизЛица с таблчной частью образование и документ Учет с реквизитом-образование (не...

Как получить значение реквизита одного справочника и перенести их в реквизит табличной части другого
Добрый день, очень сильно нужна помощь.... Есть справочник &quot;ВидыУслуг&quot;, реквизит &quot;Тариф&quot; ...

Как из одного документа перенести значение из табличной части в реквизит другого документа?
Только начинаю осваивать 1С, учебная задача. Есть два документа &quot;Индивидуальный заказ&quot; и...

Написать функцию, которая вернет реквизит "содержание" в табличной части услуги
Процедура Реквизит1ПриИзменении(Элемент) а=1; Строка=&quot;&quot;; ИсходнаяСтрока=Объект.Реквизит1;...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru