Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
29 сен 2024, 03:18

Добовление реквизитов на форму из встроенного языка.

Автор |R|U|D|E|N, 07 фев 2011, 16:13

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

|R|U|D|E|N

Есть еще два вопроса.

Буду рад любой помощи!

Первый вопрос:

Необходимо создать колонки в ТабличномПоле, и сделать чтоб они ссылались на необходимые справочники или перечисления?

И второй Вопрос:

Моя форма выполненна в виде мастера. Тойсть на каждой странице вопрос и поля ввода для ответов. Все это работает на отлично. Только вот в конце при нажатии кнопки Завершить мне необходимо передать все собранные ответы в существующий документ. Тойсть при нажатии Завешить, эта форма мастера закрывается, открывается форма необходимого мне документа и в соответствующие поля документа поподают собранные мастером ответы. Как мне это сделать??

Klyacksa

ЦитироватьНеобходимо создать колонки в ТабличномПоле, и сделать чтоб они ссылались на необходимые справочники или перечисления?

ЭлементыФормы.ТабПоле.Колонки.Добавить("ИмяКолонки",Тип("СправочникСсылка.ИмяСправочника"))
ЭлементыФормы.ТабПоле.СоздатьКолонки()

ЦитироватьМоя форма выполненна в виде мастера. Тойсть на каждой странице вопрос и поля ввода для ответов. Все это работает на отлично. Только вот в конце при нажатии кнопки Завершить мне необходимо передать все собранные ответы в существующий документ. Тойсть при нажатии Завешить, эта форма мастера закрывается, открывается форма необходимого мне документа и в соответствующие поля документа поподают собранные мастером ответы.
При нажатии на Завершить:
Этаформа.Закрыть();
Документ=Документы.ИмяДокумента.СоздатьДокумент();
Документ.НужныйРеквизит=НужноеЗначение;
// ... заполняем так же все нужные нам значения
Документ.ПолучитьФорму().Открыть();
xxx: Спасибо! Я бы загуглил, но ты интересней. Материшься. Злишься. Послать можешь...

Мысль - это оргазм мозга. Кто способен его испытать - получают истинное наслаждение, остальным приходится имитировать

cska-fanat-kz

Уважаемая Klyacksa!
Мне кажется что вторая задача немного по другому решается...
Весь в нюанс в алгоритме взаимодействия "Документа" и "Окна Мастера":
сперва открывается "Документ" а у него на форме кнопка "Окно Мастера"
юзер нажимает, окно открывается, делает настройки, а они потом "залетают" в "Документ".
Я веду к тому, что создавать новый документ после закрытия формы не надо.

Скорее так:
1. Действия по кнопке "Открыть форму Мастера":
      ФормаНастройки = Обработки.МастерНастройки.ПолучитьФорму();
      РезультатНастройки = ФормаНастройки.ОткрытьМодально();
2. Действия по кнопке "Завершить" формы настройки:
      СтруктураНастройки = Новый Структура;
      СтруктураНастройки.Вставить("Параметр1", Параметр1);
      ...
      Закрыть(СтруктураНастройки);
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Klyacksa

2cska-fanat-kz
Ну не надо и не надо :)
На сколько я поняла, вопрос стоял в заполнении нужных параметров, а куда уж там их будут заполнять - в уже существующий док или в новый - сути не меняет.

Кстати, позволю себе процитировать нашего задаче-творца:
ЦитироватьТойсть при нажатии Завешить, эта форма мастера закрывается, открывается форма необходимого мне документа ...

То есть при работе с мастером, форма документа все-таки закрыта.
xxx: Спасибо! Я бы загуглил, но ты интересней. Материшься. Злишься. Послать можешь...

Мысль - это оргазм мозга. Кто способен его испытать - получают истинное наслаждение, остальным приходится имитировать

cska-fanat-kz

Цитата: Klyacksa от 11 фев 2011, 12:58
2cska-fanat-kz
Ну не надо и не надо :)
На сколько я поняла, вопрос стоял в заполнении нужных параметров, а куда уж там их будут заполнять - в уже существующий док или в новый - сути не меняет.

Кстати, позволю себе процитировать нашего задаче-творца:
ЦитироватьТойсть при нажатии Завешить, эта форма мастера закрывается, открывается форма необходимого мне документа ...

То есть при работе с мастером, форма документа все-таки закрыта.

Без Творца будем долго спорить, ему таки нужно вмешатся.
На тему цитаты можно предложить такой вариант:
1. Юзер жмет кнопку "Создать Документ"
2. Но открывается не форма Документа а окно обработки "Мастер Начальных настроек".
    Вызов можно разместить в ПередОткрытием.
3. Юзер делает настройки, нажимает "Завершить"
4. Далее открывается форма документа с нужными настройками
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Klyacksa

Да, либо перед открытием, либо действительно по кнопке из дока - открытие формы мастера модально.
Правда, при вашем подходе, у пользователя не остается варианта на отказ от такого заполнения. На отказ от мастера.

ЦитироватьБез Творца будем долго спорить, ему таки нужно вмешатся.
Отнюдь, думаю, спорить не о чем :)
Когда вопрос ставится не точно, есть два варианта:
1. Уточнить постановку задачи (что обязательно приходится делать при работе с клиентами, иначе есть риск переделывать задачу по вновь открывшимся обстоятельствам)
2. Либо решить задачу с наиболее заинтересовавшего ракурса (ИМХО, что в данном случае, вполне уместно)
xxx: Спасибо! Я бы загуглил, но ты интересней. Материшься. Злишься. Послать можешь...

Мысль - это оргазм мозга. Кто способен его испытать - получают истинное наслаждение, остальным приходится имитировать

cska-fanat-kz

Цитата: Klyacksa от 11 фев 2011, 13:15
Да, либо перед открытием, либо действительно по кнопке из дока - открытие формы мастера модально.
Правда, при вашем подходе, у пользователя не остается варианта на отказ от такого заполнения. На отказ от мастера.

ЦитироватьБез Творца будем долго спорить, ему таки нужно вмешатся.
Отнюдь, думаю, спорить не о чем :)
Когда вопрос ставится не точно, есть два варианта:
1. Уточнить постановку задачи (что обязательно приходится делать при работе с клиентами, иначе есть риск переделывать задачу по вновь открывшимся обстоятельствам)
2. Либо решить задачу с наиболее заинтересовавшего ракурса (ИМХО, что в данном случае, вполне уместно)

3. Либо решать задачу, учтя все возможные (по мере возможности нюансы) ;)

Почему нельзя отказаться?
Вполне можно нажать на форме Мастера кнопку Закрыть (или крестик справа вверху).
В этом случае РезультатНастройки будет равен Неопределено.
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Klyacksa

Цитировать3. Либо решать задачу, учтя все возможные (по мере возможности нюансы)
+1 ;)

ЦитироватьВполне можно нажать на форме Мастера кнопку Закрыть (или крестик справа вверху).
В этом случае РезультатНастройки будет равен Неопределено.
Да, но это нужно предусмотреть заранее
xxx: Спасибо! Я бы загуглил, но ты интересней. Материшься. Злишься. Послать можешь...

Мысль - это оргазм мозга. Кто способен его испытать - получают истинное наслаждение, остальным приходится имитировать

cska-fanat-kz

Цитата: Klyacksa от 11 фев 2011, 13:43
Цитировать3. Либо решать задачу, учтя все возможные (по мере возможности нюансы)
+1 ;)

ЦитироватьВполне можно нажать на форме Мастера кнопку Закрыть (или крестик справа вверху).
В этом случае РезультатНастройки будет равен Неопределено.
Да, но это нужно предусмотреть заранее

Я думаю большинство программистов 1С после
РезультатНастройки = ФормаНастройки.ОткрытьМодально();

"верит в лучшее" и пишет
Если РезультатНастройки <> Неопределено Тогда... )))
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Klyacksa

Выше упомянутая "вера в лучшее" - это ни что иное, как хороший стиль программирования, что не всегда тривиально для многих, особенно на форумах.

P.S. Уважаемый, не цитируй так много текста, читать же неудобно...
Сорри за офф.
xxx: Спасибо! Я бы загуглил, но ты интересней. Материшься. Злишься. Послать можешь...

Мысль - это оргазм мозга. Кто способен его испытать - получают истинное наслаждение, остальным приходится имитировать

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск