helpf.pro
Регистрация

v8: Работа с гиперссылками

Ermak
08.09.2011 12:36Прочитано: 6964
В форме документа нужно сделать гиперссылку на документ "СчетНаОплатуПоставщика" посмотрел на пример как делается в документе "ПоступлениеТоваровУслуг"

Код 1C v 8.х
 Процедура ГиперссылкаСчетФактураНажатие(Элемент)

РаботаСДиалогами.ВвестиСчетФактуру(ЭтотОбъект, ЭтаФорма, "СчетФактураПолученный");

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


Но у меня не получилось, выдает ошибку.
Подскажите пожалуйста.
Yandex
Возможно, вас также заинтересует
Реклама на портале
E_Migachev
08.09.2011 14:06Ответ № 1
Открой общий модуль РаботаСДиалогами там нужно создать процедуру ВвестиСчетФактуру, по аналогии с Поступлением
и покажи код ввода поступления
Ermak
08.09.2011 14:46Ответ № 2
вылезла ошибка не понятная вообще

{ОбщийМодуль.УчетНДС.Модуль(967)}: Ошибка при вызове метода контекста (Выполнить)
ВыборкаИзЗапроса = Запрос.Выполнить().Выбрать();
по причине:

по причине:
{(4, 2)}: Таблица не найдена "Документ.СчетНаОплатуПоставщика.ДокументыОснования"
<<?>>Документ.СчетНаОплатуПоставщика.ДокументыОснования Как ТЧ_Документов
E_Migachev
08.09.2011 16:47Ответ № 3
(2) Ermak, что-то ты сломал *09
Ermak
08.09.2011 17:47Ответ № 4
Эта ошибка вылезает когда я нажимаю на гиперссылку, если не нажимаю все работает нормально
E_Migachev
09.09.2011 10:36Ответ № 5
нельзя просто скопировать функцию от другого документа и применить ее к этому, обязательно нужно ее изменить под новый документ
давай код по которому вводится - посмотрим
Ermak
09.09.2011 11:14Ответ № 6
В общем модуле

Код 1C v 8.х
 Процедура ВвестиСчетПоставщика(ДокументОбъект, ФормаДокумента, ВидСчетПоставщика = "СчетНаОплатуПоставщика", РазрешитьВыборСФнаАванс = Истина) Экспорт

Если (Не ДокументОбъект.Проведен) и (Не ДокументОбъект.ПометкаУдаления) Тогда
Ответ = Вопрос("Счет нельзя вводить на основании не проведенного документа! Провести документ?", РежимДиалогаВопрос.ДаНет);

Если Ответ = КодВозвратаДиалога.Да Тогда

Попытка

// выполняем проведение документа
Если НЕ ФормаДокумента.ЗаписатьВФорме(РежимЗаписиДокумента.Проведение) Тогда
Возврат;
КонецЕсли;

Исключение
Возврат;
КонецПопытки;

Иначе
Возврат;
КонецЕсли;

КонецЕсли;

//Если ДокументОбъект.Метаданные().Реквизиты.Найти("ОтражатьВБухгалтерскомУчете") <> Неопределено
// И Не ДокументОбъект.ОтражатьВБухгалтерскомУчете Тогда
// Предупреждение("Счет-фактуру нельзя вводить на основании документа, не отражаемого в бухгалтерском учете");
// Возврат;
//КонецЕсли;

//Попытаемся найти счет-фактуру
СчетФактура = УчетНДС.НайтиПодчиненныйДокумент(ДокументОбъект.Ссылка, ВидСчетПоставщика, РазрешитьВыборСФнаАванс);

ОбъектСчетаФактуры = Неопределено;

//Если потерпели неудачу, то необходимо ввести новый документ
//Если (НЕ ЗначениеЗаполнено(Счет))
// И (Не ДокументОбъект.ПометкаУдаления) Тогда
// //Вводим новый документ на основании нашего
// Если ДокументОбъект.Модифицированность() Тогда
// Предупреждение("Документ был изменен! Сначала следует записать документ!");
// Возврат;
// КонецЕсли;
//
// ОбъектСчета = Документы[ВидСчетПоставщика].ПолучитьФормуНовогоДокумента( , ФормаДокумента, Строка(ДокументОбъект));
// ОбъектСчета.ДокументыОснования.Очистить();
// ОбъектСчета.ДополнительныеСвойства.Вставить("НеЗаполнятьСчетФактуруНаАванс");
// ОбъектСчета.Заполнить(ДокументОбъект.Ссылка);
// // Откроем форму для редактирования счета-фактуры
// ОбъектСчета.Открыть();
//
//ИначеЕсли ЗначениеЗаполнено(Счет) Тогда
// // Откроем форму для редактирования счета-фактуры
// Счет.ПолучитьФорму( , ФормаДокумента, Строка(ДокументОбъект)).Открыть();
//
//Иначе
// Предупреждение("На основании документов, помеченных на удаление, ввод счетов-фактур не предусмотрен.");
//
//КонецЕсли;

КонецПроцедуры // ВвестиСчетФактуру()


В форме

Код 1C v 8.х
 Процедура ГиперссылкаСчетНажатие(Элемент)
РаботаСДиалогами.ВвестиСчетПоставщика(ЭтотОбъект, ЭтаФорма, "СчетНаОплатуПоставщика");

КонецПроцедуры
E_Migachev
16.08.2012 17:29Ответ № 7
все просто, размещаем надпись
title
В свойствах галочку - гиперссылка
title
и код обработчика
Код 1C v 8.х
 Процедура ДокументДоставкиГиперссылкаНажатие(Элемент)
ФормаДоставки = ДокументДоставки.ПолучитьФорму("ФормаДокумента", Элемент, Элемент);
Если ФормаДоставки.Открыта() Тогда
ФормаДоставки.Активизировать();
Иначе
ФормаДоставки.Открыть();
КонецЕсли;
КонецПроцедуры
Bell
16.08.2012 17:46Ответ № 8
в глобальнике делаешь
Код 1C v 8.х
 Процедура СоздатьНовыйДокумент(ИмяДокумента, ВидОперации = Неопределено) Экспорт

ДокументОбъект = Документы[ИмяДокумента].СоздатьДокумент();
ФормаДокумента = ДокументОбъект.ПолучитьФорму();
Если ВидОперации <> Неопределено Тогда
ДокументОбъект.ВидОперации = ВидОперации;
КонецЕсли;
ФормаДокумента.Открыть();

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


в форме
Код 1C v 8.х
 Процедура ГиперссылкаСчетНажатие(Элемент)

РаботаСДокументами.СоздатьНовыйДокумент("СчетНаОплатуПоставщика");

КонецПроцедуры
Подсказка: Щелникни по Имени пользователя напротив ответа, и тем самым покажешь, что сообщение адресовано ему.
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.