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

Получение документа по сс

Автор Vdmit, 22 авг 2018, 16:05

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

Vdmit

1. Вопрос первый правильно ли я сохраняю ссылку на документ в регистр сведений
&НаСервере
Процедура ЗаписатьШтрихкодПропуск(ШтрихКодПропуск);      
Запись=РегистрыСведений.ШтрихКодПропуск.СоздатьМенеджерЗаписи();
Запись.ШтрихКод=ШтрихКодПропуск;
Запись.НомерПропуска=ЭтаФорма.Объект.Номер;
Запись.СсылкаНаПропуск=Объект.Ссылка;
Запись.Записать();
КонецПроцедуры

2. Как мне получить документ, выбрав конкретную ссылку ???

пробовал так, получаю ссылку

&НаСервере
   
Функция ПоискПропускаПоШтрихКоду(Штрих) Экспорт;   
   Запрос = Новый Запрос;
   Запрос.Текст =
      "ВЫБРАТЬ
      |   ШтрихКодПропуск.СсылкаНаПропуск.Ссылка КАК СсылкаНаПропуск      
      |ИЗ
      |   РегистрСведений.ШтрихКодПропуск КАК ШтрихКодПропуск
      |ГДЕ
      |   ШтрихКодПропуск.ШтрихКод = &ШтрихКод";
   
   Запрос.УстановитьПараметр("ШтрихКод", Штрих);
   
   РезультатЗапроса = Запрос.Выполнить();
   
   Выборка = РезультатЗапроса.Выбрать();
   
   Если Выборка.Следующий() Тогда
   Возврат  Выборка.СсылкаНаПропуск;
здес пытался вместо возврат сначало получить документ
Док=Выборка.СсылкаНаПропуск.ПолучитьОбъект();
   НЕ РАБОТАЕТ РУГАЕТСЯ !!! на метод
    КонецЕсли;







wise

(0) а ЕСЛИ документ НОВЫЙ и ссылки ещё НЕТ...?{Запись.СсылкаНаПропуск=Объект.Ссылка;}

а ЭТО{ ШтрихКодПропуск.СсылкаНаПропуск.Ссылка КАК СсылкаНаПропуск } ссылка на ссылку
достаточно: "ШтрихКодПропуск.СсылкаНаПропуск КАК СсылкаНаПропуск" ведь ТипЗнч("ШтрихКодПропуск.СсылкаНаПропуск") и есть ссылка на объект...
Представьте себе, какая была бы тишина, если бы люди говорили только то, что знают

Vdmit

Цитата: wise от 22 авг 2018, 16:19
(0) а ЕСЛИ документ НОВЫЙ и ссылки ещё НЕТ...?{Запись.СсылкаНаПропуск=Объект.Ссылка;}
Функция срабатывает по событию ПослеЗаписиНаСервере, пустых записей нет при создании новых документов.

а ЭТО{ ШтрихКодПропуск.СсылкаНаПропуск.Ссылка КАК СсылкаНаПропуск } ссылка на ссылку
достаточно: "ШтрихКодПропуск.СсылкаНаПропуск КАК СсылкаНаПропуск" ведь ТипЗнч("ШтрихКодПропуск.СсылкаНаПропуск") и есть ссылка на объект...

ШтрихКодПропуск.СсылкаНаПропуск так называется в регистре сведений в данных ресурс и там я хотел хранить соответствие Штрихкодов и ссылок на Документ ПРопускНаВъезд

Добавлено: 22 авг 2018, 17:29


Цитата: Vdmit от 22 авг 2018, 17:06
Цитата: wise от 22 авг 2018, 16:19
(0) а ЕСЛИ документ НОВЫЙ и ссылки ещё НЕТ...?{Запись.СсылкаНаПропуск=Объект.Ссылка;}
Функция срабатывает по событию ПослеЗаписиНаСервере, пустых записей нет при создании новых документов.

а ЭТО{ ШтрихКодПропуск.СсылкаНаПропуск.Ссылка КАК СсылкаНаПропуск } ссылка на ссылку
достаточно: "ШтрихКодПропуск.СсылкаНаПропуск КАК СсылкаНаПропуск" ведь ТипЗнч("ШтрихКодПропуск.СсылкаНаПропуск") и есть ссылка на объект...
Да лишнее !!! Исправил!

ШтрихКодПропуск.СсылкаНаПропуск так называется в регистре сведений в данных ресурс и там я хотел хранить соответствие Штрихкодов и ссылок на Документ ПРопускНаВъезд

Проблема в том,что я получил ссылку из регистра сведении КАК СсылкаНаПропуск
но как мне ПолучитьОбъект сам документ для чтения или редактирования
Эта фича не срабатывает из примера
Объект = ВыбДокумент.ПолучитьОбъект();
в моем случае
Объект = СсылкаНаПропуск.ПолучитьОбъект();


AIFrame

Цитата: wise от 22 авг 2018, 16:19а ЭТО{ ШтрихКодПропуск.СсылкаНаПропуск.Ссылка КАК СсылкаНаПропуск } ссылка на ссылку
При обращении к объекту Ссылка и будет возвращена. Тут разница только в 6 лишних символах, так что такого страшного явления, как "Ссылка на ссылку" не произойдет.

Теги:

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

Рейтинг@Mail.ru

Поиск