|
Как установить/Заполнить в Задаче ссылку на нужный предмет | ☑ | ||
---|---|---|---|---|
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, допиленный под строительство
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |