Форум программистов, компьютерный форум, киберфорум
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.64/22: Рейтинг темы: голосов - 22, средняя оценка - 4.64
0 / 0 / 0
Регистрация: 15.10.2013
Сообщений: 85
1

Заполнение параметров табличного документа

15.10.2013, 10:49. Просмотров 4372. Ответов 6
Метки нет (Все метки)

Добрый день. Есть такая проблемка. Есть документ "Анкета", регистр сведений "данные анкеты", ПВХ "ВопросыАнкеты".
В документе используются вопросы с ПВХ и при проведение записываются в регистр.
Допустим в ПВХ есть такие вопросы:
Стаж, Семейное положение, Образование, ФИО.
В документе используются все эти вопросы, но я заполнил только:
Стаж, Образование. После проведение появилась запись в регистре.

Регистр имеет структуру:
Измерение:
Анкета - ссылка на документ;
Вопрос - ссылка на ПВХ;

Ресурсы:
Ответ - Характеристика.ВопросыДляАнкетирования.


В модуле менеджера документа в процедуре "Печать" запрос достает данные и возвращает мне в таком виде
Заполнение параметров табличного документа



Пробывал заполнить параметры табл. документа таким образом
1C
1
Область.Параметры.Заполнить(Выборка);
но так не прокатило т.к поля выборки не совпадают с параметрами таб.документа.

Что посоветуете как решить эту проблему?

проблема заполнить параметры макета

Думал сделать тип такого чтот, но эт не оптимально и очень очень глупо
1C
1
2
3
Если Выборка.Вопрос= ПланыВидовХарактеристик.ВопросыДляАнкетирования.АнкетыКонтрагента_СведенияОРаботе_Стаж.Наименование Тогда
            ОбщаяИнформация.Параметры.Стаж = Выборка.Ответ;
        КонецЕсли;
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
15.10.2013, 10:49
Ответы с готовыми решениями:

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

Поле табличного документа
В поле табличного документа загружаю файл Excel. Делее нужно выбирать нужные ячейки из нужных...

Печать табличного документа
Здравствуйте. Существует табличный документ, состоящий из 2-ух страниц. Как програмно реализовать...

Формат ячейки табличного документа
Всем доброго времени суток! Есть такая ситуация: Формируется некий отчет, данные которого...

6
0 / 0 / 0
Регистрация: 15.10.2013
Сообщений: 5
15.10.2013, 11:28 2
Сделай параметры в макете такими же как смысловое окончание Вопроса...

АнкетыКонтрагента_СведенияОРаботе_Стаж ------ Стаж
АнкетыКонтрагента_СведенияОРаботе_Возраст -----Возраст
АнкетыКонтрагента_СведенияОРаботе_СемейноеПоложение ----- СемейноеПоложение


ТекПараметр=Прав(Выборка.Вопрос.Наименование,СтрДлина(Выборк а.Вопрос.Наименование)-СтрДлина( "АнкетыКонтрагента_СведенияОРаботе_");//Получил имя заполняемого параметра
ОбщаяИнформация.Параметры[ТекПараметр]=Выборка.Ответ;// заполнил его

Устроит?
0
0 / 0 / 0
Регистрация: 15.10.2013
Сообщений: 85
15.10.2013, 12:15  [ТС] 3
Цитата Сообщение от qwer_str Посмотреть сообщение
Сделай параметры в макете такими же как смысловое окончание Вопроса...
АнкетыКонтрагента_СведенияОРаботе_Стаж ------ Стаж
АнкетыКонтрагента_СведенияОРаботе_Возраст -----Возраст
АнкетыКонтрагента_СведенияОРаботе_СемейноеПоложение ----- СемейноеПоложение
ТекПараметр=Прав(Выборка.Вопрос.Наименование,СтрДлина(Выборк а.Вопрос.Наименование)-СтрДлина( "АнкетыКонтрагента_СведенияОРаботе_");//Получил имя заполняемого параметра
ОбщаяИнформация.Параметры[ТекПараметр]=Выборка.Ответ;// заполнил его
Устроит?

думаю да, спасибо.
А можете подсказать как вырезать из строки определенную часть т.е от конца строки до определенного символа?

вот например:
лол_лол_мир -- мир
лол_олололоолол_работа -- работа
л_аааа_аааа_аааа_аа -- аа

Добавлено через 11 минут
тут надо использовать функцию Прав(), но вот как определить количество символов до первого знака "_" не пойму...
0
849 / 648 / 111
Регистрация: 01.11.2012
Сообщений: 2,378
15.10.2013, 12:19 4
Если с конца, то перебором символов с помощью Прав(). Можно также через функцию найти, но искать до последнего символа. Как вам удобнее
1
0 / 0 / 0
Регистрация: 15.10.2013
Сообщений: 85
15.10.2013, 12:51  [ТС] 5
Цитата Сообщение от Xomych Посмотреть сообщение
Если с конца, то перебором символов с помощью Прав(). Можно также через функцию найти, но искать до последнего символа. Как вам удобнее
а можете показать хотя бы примерно как будет это в коде с помощью перебора используя функцию Прав()?
не особо пойму как применить перебор символов до первого знака "_"

Добавлено через 18 минут
Можно применить функцию Найти(Строка), но она вернет номер символа только первого подчеркивания, но а если их будет н-е количество в строке, то как определить номер последнего знака?

Добавлено через 8 минут
сделал вот так:
1C
1
2
3
4
5
Результат = Найти(ТекВопросПВХ,"_");
            Пока Результат > 0  Цикл
                ТекВопросПВХ = Сред(ТекВопросПВХ, Результат + 1);
                Результат = Найти(ТекВопросПВХ,"_");  
            КонецЦикла;
хотя скорей всего тут можно было сделать проще
0
849 / 648 / 111
Регистрация: 01.11.2012
Сообщений: 2,378
15.10.2013, 12:57 6
1C
1
2
3
4
5
6
7
8
9
10
Функция ПолучитьПоследнююПозициюСимволаВСтр(Стр,Симв)
    ДлСтр=СтрДлина(Стр);
    n=0;
    while СтрДлина(Стр)>0 do
        if Прав(Стр,1)=Симв then return (ДлСтр-n); endif;
        Стр=Лев(Стр,СтрДлина(Стр)-1);
        n=n+1;
    enddo;  
    return 0;
КонецФункции
Где Стр ваша Строка, Симв - искомый символ
0
2951 / 1763 / 82
Регистрация: 03.11.2011
Сообщений: 8,280
15.10.2013, 16:48 7
1C
1
2
ф=СтрЗаменить(Строка,"_",Символы.ПС);
ПозицияПоследнего=СтрДлина(Строка)-СтрДлина(СтрПолучитьСтроку(ф,СтрКоличествоСтрок(ф)));
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
15.10.2013, 16:48

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

Группировки строк табличного документа 1c 8.1
Необходимо сделать группировку строк в табличном документе. Чтобы можно было пользователю...

Формирование табличного документа из макета
Осваиваю печать в табличный док-т. Почитал в толстой книжке: Область.Параметры.Клиент_Адрес =...

Обработка Загрузка данных из табличного документа
Добрый день! Работаем с УТ 11, с обычными формами. С диска ИТС взяли обработку:” Загрузка данных...

Печать табличного документа на разных принтерах
Всем доброго времени суток! Формирую программно табличный документ: Макет =...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.