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

Справочник открытие формы вместо, стандартной обработки редактирования

Автор leftmails, 24 авг 2012, 12:19

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

leftmails

Приветствую уважаемые друзья!
У меня возникла проблема с выполнением одной операции, к сожалению поиск ни чего не дал и вынужден воспользоваться вышей помощью..
Делаю:
Справочник документов, при попытки реализовать замену стандартной обработки на открытие формы -  не получается.
Действия:
В табличной форма, где выводится список, ставлю событие Выбор и пишу в нем:
   СтандартнаяОбработка = Ложь;
   Форм = Справочники.Исходящее_письмо.ПолучитьФорму("ФормаВыбора");
           Форм.Открыть();

Не могу переместить данные с выбранной строки  в форму "ФормаВыбора".

Пожалуйста подскажите как можно сделать?

leftmails


Klyacksa

"Справочник документов"? Это как?
Что куда переместить?

Если я правильно понимаю, хочется чтобы по двойному клику списка, открывалась ФормаВыбора, в которой было заполнено все данными текущей строки первой формы? А чем не устраивает обычный подход - ФормаСписка->ФормаЭлемента?
xxx: Спасибо! Я бы загуглил, но ты интересней. Материшься. Злишься. Послать можешь...

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

leftmails

Совершенно верно.
Сказать не устраивает нельзя, просто я вижу это так: большая часть элементов должна быть доступна только для чтения. А некоторые для редактирования.
Планируется привязка прикрепления файла и открытие оригинала документа по ссылке (ссылка сохранится в реквизите) а при клике на кнопку откроет в формате Word.
Планировал сделать это в отдельной форме. Но к сожалению не получается(

Klyacksa

Разграничение на чтение/редактирование, в общем случае, настраивается с помощью прав доступа.
Не совсем понятно, зачем все-таки своя форма?

Делаем обычную форму элемента, добавляем туда кнопку для открытия файла...

Вы сваливаете несколько задач в кучу, перемешиваете и все усложняете.

Разделите задачи и решайте их отдельно:
1. Уровень доступа к элементу (чтение/запись) - решается настройкой прав, если же не получается обобщить алгоритм определения доступа, то заводим реквизит, в котором храним - на чтение или на запись...
2. Открытие элемента, исходя из уровня доступа к нему - если п.1 решен через права, то здесь происходит все автоматически, а если по-другому - то ПриОткрытии устанавливаем ТолькоПросмотр у формы элемента, делов-то.
3. Привязка и открытие файла оригинала дока в Ворде - нужно решить вопрос хранения (скорее всего реквизит с типом Хранилище значения, либо общий дополнительный справочник с привязкой к нашему элементу), и вопрос открытия.
xxx: Спасибо! Я бы загуглил, но ты интересней. Материшься. Злишься. Послать можешь...

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

leftmails

п.2 стоит
п.3 будет просто ссылка, сам документ хранится на диске и открывается при помощи Объект.Application
Сама суть моего справочника, создается письмо и сохраняется в этом справочнике, в дальнейшем когда надо (найти письмо)-открыть какую либо запись (в этом справочнике) Отображаются основные элементы, и у всех была возможность изменить реквезит - указать ссылку на дополнительный фаил.
Не знаю почему, но в этдельном окне хочется реализовать..

Klyacksa

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

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

leftmails

Хмм, у меня даже не получается  при клике вывести данные в Сообщить(" ");
Как можно вывести Номер, Наименование?

Klyacksa

Мне кажется, Вы меня не слышите.
Не надо перехватывать ничего. Просто сделайте стандартную форму списка и стандартную форму элемента. Сделайте их основными. Список и элемент будут открываться.

Про вывод Номера и Наименования: хоть бы код привели, как вы что выводите. Мало ли, что именно у Вас там не получается.
Откуда вызывается Сообщить()? При двойном клике элемента в списке? Тогда примерно так:
ТекущиеДанные=СправочникСписок.ТекущиеДанные;
Сообщить(""+ТекущиеДанные.Номер+": "+ТекущиеДанные.Наименование);
xxx: Спасибо! Я бы загуглил, но ты интересней. Материшься. Злишься. Послать можешь...

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

leftmails

Klyacksa извеняюсь если не правильно сформулировал свой вопрос.

Я просто хотел получить данные в выделенной строки (2клика мышкой) через событие "Выбор", чтоб можно было передать в другую форму, может это не логично, но мне так очень надо.
У меня получилось:


Данные=Элементыформы.СправочникСписок.ТекущаяСтрока;
КолонкаНомер=Данные.Номер;
Сообщить(КолонкаНомер);
ФормаВыбора.ЭлементыФормы.Надпись1.Заголовок=КолонкаНомер;
ФормаВыбора.Открыть();

Я новичек в программиовании 1С, немного не хватает опыта видать, сравниваю с другими языками программирования как Си и делфи...

Благодарю за помощь!

Теги:

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

Рейтинг@Mail.ru

Поиск