Имя: Пароль:
 
1C
 
почему не могу установить ДополнительныеСвойства объектам?
0 inkvizitr
 
27.11.18
15:47
Процедура СписокПриАктивизацииСтроки(Элемент)
МассивСтрок = Элементы.Список.ВыделенныеСтроки;
Если МассивСтрок.Количество() > 1 Тогда
    test(МассивСтрок);      
КонецЕсли;


&НаСервере
Процедура test(МассивСтрок)
                Для каждого Строка Из МассивСтрок Цикл
                               Документ = Строка.Ссылка.ПолучитьОбъект();
                               Документ.ДополнительныеСвойства.Свойство("ГрупповоеПерепроведение", Истина);
                КонецЦикла;    
КонецПроцедуры
1 inkvizitr
 
27.11.18
15:49
т.е. есть документ к примеру поступление, из формы списка выбираю более 2-х записей и хочу им присвоить дополнительные свойства, в строке "Документ = Строка.Ссылка.ПолучитьОбъект();" тип ДокументОбъект
2 PR
 
27.11.18
15:49
Что это?
3 inkvizitr
 
27.11.18
15:50
Это тестовый пример, для того, чтобы при выделения документов с имитировать групповое перепроведение
4 PR
 
27.11.18
15:51
(1) А нахрена ты получаешь объект, устанавливаешь допсвойство объекта и... и всё?
Зашел в магазин, попросил взвесить полкило ливерной и... и ушел
5 inkvizitr
 
27.11.18
15:51
т.е. групповое перепроведение выделенных документов одного типа
6 PR
 
27.11.18
15:52
(3) Да нет, это у тебя хрень какая-то
При перепроведении объект будет заново получаться
7 inkvizitr
 
27.11.18
15:52
(4) а как тогда правельнее?
8 Homer
 
27.11.18
15:52
(0)За такой код надо выгонять с работы
9 inkvizitr
 
27.11.18
15:53
я в рабочию базу и не пишу, я разбираюсь с доп свойствами
10 Ник080808
 
27.11.18
15:54
(0)        Для каждого Строка Из МассивСтрок Цикл
                               Документ = Строка.Ссылка.ПолучитьОбъект();
                               Документ.ДополнительныеСвойства.Свойство("ГрупповоеПерепроведение", Истина);
                Документ.Записать(РежимЗаписи.Проведение);
КонецЦикла; - так разве не работает?
11 inkvizitr
 
27.11.18
15:54
мне нужно, чтобы при выделении в форме списка более двух документов, у документов появился у доп. свойств ГрупповоеПерепроведение", Истина
12 PR
 
27.11.18
15:55
(7) Правильнее будет через и
13 Ник080808
 
27.11.18
15:56
(9) допсвойства существуют у объекта в пределах его "жизни". То есть в процедуре при записи ты в допсвойтва передаешь некие данные которые можешь получить после записи в обработке проведения и так далее. Но это не реквизит, данные не хранятся в бд.
14 inkvizitr
 
27.11.18
15:56
(12) давай еще будем пунктуацию разбирать
15 inkvizitr
 
27.11.18
15:58
(13) смотри, я допустим из того примера который привел здесь, поставил точку останова на КонецЦикла, при первой итерации он все равно не присвоил свойство
16 inkvizitr
 
27.11.18
15:58
т.е. как бы предел его жизни не закончен был
17 Вафель
 
27.11.18
15:59
из списка это никакое не групповое
18 Вафель
 
27.11.18
16:00
можно еще команду проведения подменить
19 hhhh
 
27.11.18
16:00
(14) Документ.ДополнительныеСвойства.Свойство("ГрупповоеПерепроведение", Истина);  

- это ты читаешь свойство. А тебе наоборот, надо присвоить значение. Открой всё=таки синтакс-помощник.
20 inkvizitr
 
27.11.18
16:01
(18) хорошо массовое перепроведение
21 inkvizitr
 
27.11.18
16:01
(19) сейчас еще раз открою
22 inkvizitr
 
27.11.18
16:02
(19) ДокументОбъект.<Имя документа> (DocumentObject.<Имя документа>)
ДополнительныеСвойства (AdditionalProperties)
Использование:

Только чтение.
Описание:

Тип: Структура.
Может использоваться в тех случаях, когда необходимо хранить некоторые значения, связанные с объектом, на время выполнения некоторых операций, без изменения объекта. Например, при обработке событий в подписке на события.

Доступность:

Сервер, толстый клиент, внешнее соединение, мобильное приложение(сервер).
23 Homer
 
27.11.18
16:04
(22) религия не позволяет поиск сделать в базе по ДополнительныеСвойства и посмотреть как работает метод
24 inkvizitr
 
27.11.18
16:05
открой типовую обработку ГрупповоеПерепроведениеДокументов и посмотри
25 inkvizitr
 
27.11.18
16:06
(23) вот пример из типовой обработки
ДокументОбъект.ДополнительныеСвойства.Вставить("ГрупповоеПерепроведение", Истина);
26 inkvizitr
 
27.11.18
16:06
(23) в модуле менеджера
27 inkvizitr
 
27.11.18
16:06
(8) напиши код за который не выгоняют с работы
28 Вафель
 
27.11.18
16:07
тебе нужно команду проведения подменять стандартная никакие доп свойства не устанввливает
29 hhhh
 
27.11.18
16:08
(22) ну.

Структура (Structure)
Свойство (Property)
Синтаксис:

Свойство(<Ключ>, <НайденноеЗначение>)
Параметры:

<Ключ> (обязательный)

Тип: Строка.
Ключ для поиска свойства.
<НайденноеЗначение> (необязательный)

Тип: Произвольный.
В данный параметр возвращается найденное значение. Если ключа нет в структуре, то возвращается Неопределено.
Возвращаемое значение:

Тип: Булево.
Истина - ключ найден; Ложь в противном случае.
Описание:

Получает значение элемента по указанному имени, а также проверяет, имеется ли указанное свойство.


"Получает значение" !!!
30 inkvizitr
 
27.11.18
16:10
(29) блин, точно!!!
31 inkvizitr
 
27.11.18
16:10
(29) хорошо а как тогда пишется в эти доп. свойства
32 Homer
 
27.11.18
16:11
(31) тебе неоднократно сказали в модули самого документа
33 inkvizitr
 
27.11.18
16:14
(32) хорошо, в каком именно? модуле объекта, менеджера, формы?
34 Homer
 
27.11.18
16:21
(33) Поиском в типовой конфигурации посмотри, там все написано понятно.
У меня складывается чувство, что ты не понимаешь для чего используется ДополнительныеСвойства.
35 inkvizitr
 
27.11.18
16:23
аа.. все заработало
36 inkvizitr
 
27.11.18
16:23
(29) ты гений
37 VladZ
 
27.11.18
16:23
(0) "Процедура test(МассивСтрок)" - будешь так делать, к тебе придут "чОрные 1С-ники и сделают больно".
38 inkvizitr
 
27.11.18
16:24
(29) блин там же тип структура, вообще я тупил, вместо Свойство надо было Вставить
39 inkvizitr
 
27.11.18
16:25
(37) Это все тестовый пример, произошел затуп, для общего понимания, набросал простой тестовый пример, не переживай не приедут
40 Ник080808
 
27.11.18
16:25
(38) только тебе это не поможет)
41 inkvizitr
 
27.11.18
16:25
(40) почему
42 Ник080808
 
27.11.18
16:26
(39) вот ты выделяешь сто строк и нажимаешь провести. Как ты допсвойства поставишь?
43 Homer
 
27.11.18
16:27
(42) он при выделении поставит и проведет сразу. Так же все делают
44 inkvizitr
 
27.11.18
16:27
(42) да, хороший вопрос
45 inkvizitr
 
27.11.18
16:29
(43) тут с проведением немного у меня все сложнее будет, но это щас надо перекурить
46 Ник080808
 
27.11.18
16:33
(43) а если выделили не для проведения?)
47 Ник080808
 
27.11.18
16:34
(45) в чем суть задачи?
48 Homer
 
27.11.18
16:35
(46) так не бывает, выделил значит проводи.
(47) предыдущую его тему посмотри и улыбнись
49 inkvizitr
 
27.11.18
16:37
(46) идея такая, есть подписка на событие которая немного модифицирует эти документы, т.е при разовом перепроведении срабатывает стандартное проведение, если 2 и более документов, должна срабатывать подписка на событие, у источника в доп. свойствах должно быть ("ГрупповоеПерепроведение", Истина); там в подписке по этому признаку должно срабатывать условие
50 Ник080808
 
27.11.18
16:38
(48) а я хочу пометить на удаление)))
51 Вафель
 
27.11.18
16:40
а как можно у выделенного поставить доп свойство? или выделил и сразу провел? а если просто скролл делаешь?
52 Ник080808
 
27.11.18
16:41
(49) ну это не логично: ты выделил один документ. Провел, отработала подписка, выделил два документа, не отработала, потом опять один отработала. Что такое делает подписка?
53 inkvizitr
 
27.11.18
16:45
(52) там есть самописный реквизит, который имеет признак булево, смысл в том, что при повторном проведении данный признак меняется, и в логике это есть правильно, но.. при групповом перепроведении не важно как оно осуществляется, через групповую обработку или если даже провести 2а документа одного вида, этот реквизит трогать не стоит
54 inkvizitr
 
27.11.18
16:45
в 1с нет такого метода или свойства групповое перепроведение, вот и пытаюсь колхозить
55 inkvizitr
 
27.11.18
17:00
буду чего ни будь дальше придумывать
56 Ник080808
 
27.11.18
17:01
(53) "смысл в том, что при повторном проведении данный признак меняется, и в логике это есть правильно" - так делай наоборот. В форме документа перед записью проверяешь проведен документ или нет и пиши допсвойство - проведение документа из формы. При проведении анализируй и меняй свой реквизит, ибо все что проведено не из формы документа считается групповым перепроведением)
57 inkvizitr
 
27.11.18
17:12
(56) а ты гений