Имя: Пароль:
1C
1С v8
Обработка заполнения
,
0 Alexey vip
 
27.11.13
11:19
Добрый день. Возникла необходимость в обработку заполнения бизнес процесса в параметр ДанныеЗаполнения передавать массив ссылок и там уже обрабатывать. Собственно, в отладчике никакой ошибки нет, но после вываливания из отладчика возникает ошибка:
{Справочник.Файлы.Форма.ХранилищеФайлов.Форма(1261)}: Поле объекта недоступно для записи (ВыделенныеСтроки)
    СоздатьЗаданиеНаСервере(Элементы.Список.ВыделенныеСтроки);

Вот не понимаю чего он хочет. Точнее чего он там пытается с массивом сделать. Может кто знает?
1 vicof
 
27.11.13
11:23
ВыделенныеСтроки доступны только для чтения. Чего не ясно?
2 Alexey vip
 
27.11.13
11:27
Я их и читаю. И ничего в них не пишу. Я тупо взял массив и передал. И больше ничего не делал. И совершенно не ясно, что там и куда пытается записаться
3 vicof
 
27.11.13
11:28
Ну давай код.
4 Wobland
 
27.11.13
11:29
(2) а с массивом что делал?
5 Alexey vip
 
27.11.13
11:32
&НаКлиенте
Процедура СоздатьЗадание(Команда)
    
    СоздатьЗаданиеНаСервере(Элементы.Список.ВыделенныеСтроки);
    
КонецПроцедуры


&НаСервереБезКонтекста
Процедура СоздатьЗаданиеНаСервере(МассивФайлов)
    
    Если МассивФайлов.Количество() = 0 Тогда
    
        Возврат    
    
    КонецЕсли;     
    
    НовыйБизнесПроцесс = БизнесПроцессы.Задание.СоздатьБизнесПроцесс();
    НовыйБизнесПроцесс.Заполнить(МассивФайлов);
    
КонецПроцедуры

обработка заполнения вообще пустаяю
6 Rovan
 
гуру
27.11.13
11:45
(5) замени
&НаСервереБезКонтекста
на
&НаСервере
7 Alexey vip
 
27.11.13
12:04
(6) не помогло, да и не могло помочь.
8 grayshadow
 
27.11.13
12:08
а нахрена их передавать? разве Элементы.Список.ВыделенныеСтроки не существует на сервере?
9 Alexey vip
 
27.11.13
12:10
Передавать, чтобы в обработке заполнения бизнес процесс заполнился по нескольким объектам.
Как связан факт моей ошибки с тем, что Элементы.Список.ВыделенныеСтроки существует на сервере?
10 grayshadow
 
27.11.13
12:12
&НаКлиенте
Процедура СоздатьЗадание(Команда)
    
    Если Элементы.Список.ВыделенныеСтроки.Количество()= 0 Тогда
    
        Возврат    
    
    КонецЕсли;      

СоздатьЗаданиеНаСервере();
    
КонецПроцедуры


&НаСервереБезКонтекста
Процедура СоздатьЗаданиеНаСервере()
        
    
    НовыйБизнесПроцесс = БизнесПроцессы.Задание.СоздатьБизнесПроцесс();
    НовыйБизнесПроцесс.Заполнить(Элементы.Список.ВыделенныеСтроки);
    
КонецПроцедуры
11 grayshadow
 
27.11.13
12:12
все что передается на сервер, должно быть доступно для изменения
12 Alexey vip
 
27.11.13
12:15
(11) блин, большое спасибо, никогда об этом не подумал. Остался правда теоретический вопрос, чёж там изменеятся то... ну да ладно.
13 grayshadow
 
27.11.13
12:16
я тоже случайно опытным путем узнала:) и думаю, это косяк:)
14 Wobland
 
27.11.13
12:22
сервер не умеет знать, изменилось у него или нет. считает изменённым
15 grayshadow
 
27.11.13
12:26
так мог бы, сцабак, выдавать ошибку при попытке изменения переданного параметра на сервере, а не при передаче параметра:)
2 + 2 = 3.9999999999999999999999999999999...