| 
    
        
     
     | 
    
  | 
Как установить/Заполнить в Задаче ссылку на нужный предмет | ☑ | ||
|---|---|---|---|---|
| 
    0
    
        YaMal77    
     15.11.24 
            ✎
    10:58 
 | 
         
        Всем привет!
 
        Подскажите как установить/Заполнить в Задаче ссылку на нужный предмет Пытаюсь сделать так как написано ниже,ничего не устанавливается Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
		Бп = БизнесПроцессы.Исполнение.СоздатьБизнесПроцесс();
		Бп.ЗаполнитьПоШаблонуИПредмету(Справочники.ШаблоныИсполнения.НайтиПоКоду("ДО-0002"),ВыборкаДетальныеЗаписи.Ссылка,Справочники.Пользователи.НайтиПоНаименованию("Пользователь"));
		Бп.Наименование ="Обработка строительного объекта:" + ВыборкаДетальныеЗаписи.Ссылка;
		Бп.Дата=ТекущаяДата();  
		//		Бп.ИсточникДанных.Ссылка = ВыборкаДетальныеЗаписи.Ссылка;
		Бп.Предметы[0].Предмет =   ВыборкаДетальныеЗаписи.Ссылка;
		Бп.Записать();
		Бп.Старт();
	
		
	КонецЦикла;     | 
|||
| 
    1
    
        ReaLg    
     гуру 
    15.11.24 
            ✎
    10:52 
 | 
         
        (0) Проверь типы. Если тип Бп.Предметы[0].Предмет не может быть равен типу  ВыборкаДетальныеЗаписи.Ссылка не будет заполнятся.     
         | 
|||
| 
    2
    
        YaMal77    
     15.11.24 
            ✎
    10:57 
 | 
         
        (1) ///Проверь тип
 
        Там тип Неопределено  | 
|||
| 
    3
    
        Волшебник    
     15.11.24 
            ✎
    10:58 
 | 
         
        (2) ну и?     
         | 
|||
| 
    4
    
        YaMal77    
     15.11.24 
            ✎
    11:03 
 | 
         
        Пытаюсь сделать так
 
        Мультипредметность.ПередатьПредметыПроцессу(Бп, ВыборкаДетальныеЗаписи.Ссылка); СтартПроцессовСервер.СтартоватьПроцесс(Бп);  | 
|||
| 
    5
    
        YaMal77    
     15.11.24 
            ✎
    11:04 
 | 
         
        тоже не устанавливается     
         | 
|||
| 
    6
    
        Мультук    
     гуру 
    15.11.24 
            ✎
    11:03 
 | 
         
        (0)
 
        В чём проблема сходить в отладке в Бп.ЗаполнитьПоШаблонуИПредмету и посмотреть что, куда и как там присваивается?  | 
|||
| 
    7
    
        Garykom    
     гуру 
    15.11.24 
            ✎
    11:07 
 | 
         Бп.Предметы[0].Предмет =   ВыборкаДетальныеЗаписи.Ссылка; 
весело  | 
|||
| 
    8
    
        Garykom    
     гуру 
    15.11.24 
            ✎
    11:08 
 | 
         
        Предметы это ТЧ
 
        может сначала новую строку а не 0-ю в цикле?  | 
|||
| 
    9
    
        Garykom    
     гуру 
    15.11.24 
            ✎
    11:10 
 | 
         Бп.ЗаполнитьПоШаблонуИПредмету(Справочники.ШаблоныИсполнения.НайтиПоКоду("ДО-0002"),ВыборкаДетальныеЗаписи.Ссылка,Справочники.Пользователи.НайтиПоНаименованию("Пользователь")); 
это тоже прикольно ладно говнокод так он без полнейшего понимания хотя бы основ  | 
|||
| 
    10
    
        YaMal77    
     15.11.24 
            ✎
    11:09 
 | 
         
        (6) ///и посмотреть что, куда и как там присваивается?
 
        там всё красиво,предмет передается и устанвливается но когда смотришь результат В Получаемой задаче, пусто  | 
|||
| 
    11
    
        YaMal77    
     15.11.24 
            ✎
    11:11 
 | 
         
        (8)Предметы это ТЧ
 
        ////может сначала новую строку а не 0-ю в цикле? В цикле одно значение  | 
|||
| 
    12
    
        YaMal77    
     15.11.24 
            ✎
    11:14 
 | 
         
        Бп = БизнесПроцессы.Исполнение.СоздатьБизнесПроцесс();
 
        Бп.ЗаполнитьПоШаблонуИПредмету(Справочники.ШаблоныИсполнения.НайтиПоКоду("ДО-002"),ВыборкаДетальныеЗаписи.Ссылка,Справочники.Пользователи.НайтиПоНаименованию("Пользователь")); Бп.Наименование ="Обработка строительного объекта:" + ВыборкаДетальныеЗаписи.Ссылка; Бп.Дата=ТекущаяДата(); // Бп.ИсточникДанных.Ссылка = ВыборкаДетальныеЗаписи.Ссылка; ///Бп.Предметы[0].Предмет = ВыборкаДетальныеЗаписи.Ссылка; Мультипредметность.ПередатьПредметыПроцессу(Бп, ВыборкаДетальныеЗаписи.Ссылка); СтартПроцессовСервер.СтартоватьПроцесс(Бп); Тоже самое  | 
|||
| 
    13
    
        Garykom    
     гуру 
    15.11.24 
            ✎
    11:14 
 | 
         
        (9)+  
        Справочники.Пользователи.НайтиПоНаименованию("Пользователь")
в курсе при наличии в базе нескольких записей "Пользователь Иванов" "Пользователь Петров" "Пользователь Сидоров" "Пользователь" НайтиПоНаименованию без параметра ", Истина" - найдет по первым символам? И вернет скорее хз что, например "Пользователь Иванов" А еще можно поискать по пустой строке "" .НайтиПоНаименованию("")
В этом случае любая запись может вернуться )) ибо они все с "" (пустой строки) начинаются  | 
|||
| 
    14
    
        Garykom    
     гуру 
    15.11.24 
            ✎
    11:16 
 | 
         
        (11)  
        В цикле одно значение 
нюню у тебя же Пока ВыборкаДетальныеЗаписи.Следующий() Цикл а не Если ВыборкаДетальныеЗаписи.Следующий() Цикл  | 
|||
| 
    15
    
        YaMal77    
     15.11.24 
            ✎
    11:21 
 | 
         
        (13) Я знаю что говнокод, пока оставил для отладки, позже переделаю нормально
 
        ПользователиИнформационнойБазы.ТекущийПользователь()  | 
|||
| 
    16
    
        YaMal77    
     15.11.24 
            ✎
    11:19 
 | 
         
        (14)Запрос для отладки возвращает одно значение
 
        мне больше пока не нужно  | 
|||
| 
    17
    
        Garykom    
     гуру 
    15.11.24 
            ✎
    11:21 
 | 
         
        (16) ты же сам написал в (2) "Там тип Неопределено" для Бп.Предметы[0].Предмет
 
        что ты хочешь? строку добавь в ТЧ Предметы а уже затем .Предмет заполняй  | 
|||
| 
    18
    
        Мультук    
     гуру 
    15.11.24 
            ✎
    11:22 
 | 
         
        (15) 
 
        В строчке ставим точку останова Бп.Предметы[0].Предмет = ВыборкаДетальныеЗаписи.Ссылка; В табло вписываем строки Бп.Предметы[0].Предмет ТипЗНЧ(Бп.Предметы[0].Предмет) ВыборкаДетальныеЗаписи.Ссылка ТипЗНЧ(ВыборкаДетальныеЗаписи.Ссылка) И показываем 1) скриншот из табло 2) скриншт описание типа реквизита "Предмет" из таб.части "Предметы"  | 
|||
| 
    19
    
        YaMal77    
     15.11.24 
            ✎
    11:23 
 | 
         
        (17)Там уже есть строка с индексом ноль[0] а предмет имеет тип неопределенно
 
        Поэтому я так и написал Бп.Предметы[0].Предмет = ВыборкаДетальныеЗаписи.Ссылка;  | 
|||
| 
    20
    
        YaMal77    
     15.11.24 
            ✎
    11:30 
 | 
         
        (18)
 
    
Бп.Предметы[0].ИмяПредмета = СтроительныйОбъект Бп.Предметы[0].НомерСтроки = 1 Бп.Предметы[0].Предмет = неопределено Бп.Предметы[0].РольПредмета = Основной(Перечисл.) 
  | 
|||
| 
    22
    
        YaMal77    
     15.11.24 
            ✎
    11:29 
 | 
         
        Скрин в отладчике     
    
  | 
|||
| 
    23
    
        Волшебник    
     15.11.24 
            ✎
    11:30 
 | 
         
        Мы когда выйдем из этой когнитивной ловушки?
 
        1. Предмет имеет тип "неопределено" 2. Как установить предмет?  | 
|||
| 
    24
    
        YaMal77    
     15.11.24 
            ✎
    11:33 
 | 
         
        ТипЗНЧ(Бп.Предметы[0].Предмет)    Не определено    Тип
 
        ТипЗНЧ(ВыборкаДетальныеЗаписи.Ссылка) Строительные объекты Тип  | 
|||
| 
    25
    
        YaMal77    
     15.11.24 
            ✎
    11:35 
 | 
         
        Киньте, пожалуйста в меня какой ни будь пример по заполнению БП с заполнением предмета     
         | 
|||
| 
    26
    
        YaMal77    
     15.11.24 
            ✎
    11:40 
 | 
         
        Мне нужно просто установить значение ссылки в Задачу как на скрине.     
    
  | 
|||
| 
    27
    
        Мультук    
     гуру 
    15.11.24 
            ✎
    11:44 
 | 
         
        (26) 
 
    
>> скриншт описание типа реквизита "Предмет" из таб.части "Предметы" См пример 
  | 
|||
| 
    28
    
        YaMal77    
     15.11.24 
            ✎
    11:51 
 | 
         
        (27) Мультук,Спасибо!     
         | 
|||
| 
    29
    
        Волшебник    
     15.11.24 
            ✎
    11:51 
 | 
         
        (24) Если реквизит составного типа, то его значение по умолчанию = Неопределено.     
         | 
|||
| 
    30
    
        Garykom    
     гуру 
    15.11.24 
            ✎
    11:53 
 | 
         
        (25) Бесполезно кидать, не поймешь
 
        У тебя .Предмет составного типа, поэтому отображает Неопределено А ТипЗнч(ВыборкаДетальныеЗаписи.Ссылка) = "Строительные объекты" С чего взял что твои "Строительные объекты" находятся в составном типе ПредметСправочникСсылка.УведомленияПрограммы, СправочникСсылка.ТемыОбсуждений, СправочникСсылка.Контрагенты, СправочникСсылка.Проекты, СправочникСсылка.ПротоколыМероприятий, ДокументСсылка.ВходящееПисьмо, ДокументСсылка.ИсходящееПисьмо, СправочникСсылка.Файлы, СправочникСсылка.ВходящиеДокументы, ДокументСсылка.Бронь, СправочникСсылка.ВнутренниеДокументы, СправочникСсылка.СообщенияОбсуждений, СправочникСсылка.ИсходящиеДокументы, СправочникСсылка.Мероприятия, СправочникСсылка.ПроектныеЗадачи  | 
|||
| 
    31
    
        YaMal77    
     15.11.24 
            ✎
    12:12 
 | 
         
        (30)///С чего взял что твои "Строительные объекты" находятся в составном типе Предмет
 
        Да, Строительных объектов там не было, их нужно добавить в тип данных. потому что справочник не типовой  | 
|||
| 
    32
    
        YaMal77    
     15.11.24 
            ✎
    12:30 
 | 
         
        (27)всё получилось,Спасибо Мультук, прочитав всё снова,понял как же жестко я тупил))
 
    
Хотя всё было перед глазами Бп = БизнесПроцессы.Исполнение.СоздатьБизнесПроцесс(); ///говнод,исправлю позже ) Бп.ЗаполнитьПоШаблонуИПредмету(Справочники.ШаблоныИсполнения.НайтиПоКоду("ДО-0002"),ВыборкаДетальныеЗаписи.Ссылка,ПользователиИнформационнойБазы.ТекущийПользователь()); Бп.Наименование ="Обработка строительного объекта:" + ВыборкаДетальныеЗаписи.Ссылка; Бп.Дата=ТекущаяДата(); Мультипредметность.ПередатьПредметыПроцессу(Бп, ВыборкаДетальныеЗаписи.Ссылка); СтартПроцессовСервер.СтартоватьПроцесс(Бп); 
  | 
|||
| 
    33
    
        Garykom    
     гуру 
    15.11.24 
            ✎
    12:49 
 | 
         
        (32) ну да ВыборкаДетальныеЗаписи.Ссылка - это у тебя не Предмет а ПроцессИсточник оказался     
         | 
|||
| 
    34
    
        YaMal77    
     15.11.24 
            ✎
    16:15 
 | 
         
        (33) нет Справочник ссылка Строительные объекты     
    
  | 
|||
| 
    35
    
        Valdis2007    
     15.11.24 
            ✎
    16:15 
 | 
         
        (0) давай начнем с объявления типового решения     
         | 
|||
| 
    36
    
        Garykom    
     гуру 
    15.11.24 
            ✎
    14:18 
 | 
         
        (35) нечто на основе ДО
 
        отраслевая под строительство или допиленная своими справочниками  | 
|||
| 
    37
    
        YaMal77    
     15.11.24 
            ✎
    16:12 
 | 
         
        ДО 3.0 типовой релиз 14, допиленный под строительство     
         | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |