Имя: Пароль:
1C
1С v8
Как запомнить введенные в табличную часть строки
0 DenSpb
 
19.09.12
15:46
У документа есть табличная часть. Только что введенные строки можно редактировать. Когда форму закрыли, то эти строки уже нельзя редактировать. Как запомнить только что введенные строки?
1 Mort
 
19.09.12
15:47
Какой садизм.
2 DenSpb
 
19.09.12
15:49
(1) Я не написал деталей зачем это нужно, но это очень нужно
3 Mort
 
19.09.12
15:50
делай булевый признак в ТЧ.
4 DenSpb
 
19.09.12
15:51
(3) А как снимать признак?
5 yanejsh
 
19.09.12
15:52
права выдай
6 DenSpb
 
19.09.12
15:52
(3) вот я поставил признак что это новая строка. Как его снимать?
7 DenSpb
 
19.09.12
15:52
(5) в смысле права вадай?
8 yanejsh
 
19.09.12
15:53
как форму закрыл - так и снимай признак
9 Mort
 
19.09.12
15:53
(7) Водительские наверное...

(4) Признак "только просмотр". перед записью ставишь для всех строк в Истину.
10 yanejsh
 
19.09.12
15:53
(7) в смысле можно редактировать не только что введенные строки только человеку с определенными правами
11 DenSpb
 
19.09.12
15:54
(10) 82 - обычное приложение
12 DenSpb
 
19.09.12
15:54
(9) пока форму не закрыли, можно редактировать строку, даже если записали документ
13 yanejsh
 
19.09.12
15:55
ну и что?
14 Reset
 
19.09.12
15:55
Это он телепатирует незаданные вопросы ;)
15 DenSpb
 
19.09.12
15:56
(13) в смысле ну и что?
16 Mort
 
19.09.12
15:56
Мда... Однозначно садизм. И не важно, какая предметная область задачи.
17 yanejsh
 
19.09.12
15:57
(15) в обычном приложении нельзя сделать анализ прав?
18 GROOVY
 
19.09.12
15:57
(12) При открытии формы установи флаг у всех существующих, что их нельзя редактировать.
19 GROOVY
 
19.09.12
15:58
(17) В обычном приложении права на уровне реквизитов не работают.
20 Mort
 
19.09.12
15:59
(19) Имелось ввиду для определенных ролей не вводить ограничение на редактирование.
А вообще мрак. Пользователь лишается возможности правки строк по факту закрытия формы.
21 yanejsh
 
19.09.12
16:00
ну старый дедовский метод все равно сработает
22 DenSpb
 
19.09.12
16:03
(18) хорошая идея. Надо будет сделать реквизит формы, типа таблица значений. Туда поместить те, которые нельзя редактировать и проверять перед началом редактирования строки если ли она в этой таблице. Если нет, то можно редактировать. Похоже что так сработает:) Спасибо:)
23 ОператорПК
 
19.09.12
16:05
(22) а как идентифицироват строки? , например их начали двигать вверх/вниз....
24 DenSpb
 
19.09.12
16:10
(23) Получается вводить новый идентификатор строки, отличный от номера. Или вводить не таблицу значений, а еще одну табличную часть, хотя тоже фигня получается. Лучше идентификатор строки ввести
25 DenSpb
 
19.09.12
16:14
(22) либо писать строки, которые нельзя редактировать не в таблицу значений(там поиск только по одной колонке), а в регистр сведений, чтобы можно было по нескольким параметрам искать...Гемор короче, но очень надо.
26 Сергей Д
 
19.09.12
16:19
Как вариант - вводить не напрямую в ТЧ, а в таблицу значений, у которой будет дополнительный столбец ЭтоНовая. При сохранени и ТЗ переписывается в ТЧ. При открытии ТЧ читается в ТЗ.
27 m-serg74
 
19.09.12
16:23
(25) ПриОткрытии все строки в массив, ПередНачаломРедактирования проверить если эта строка есть в массиве - Отказ
28 DenSpb
 
19.09.12
16:23
(26) а если пользователь не нажал на ЗАписать, тогда получается, что ничего не сохранится.
29 m-serg74
 
19.09.12
16:23
и пофиг сортировки и прочее
30 DenSpb
 
19.09.12
16:24
(27) а как в массиве искать строку?
31 m-serg74
 
19.09.12
16:24
(29) к (27)+
32 m-serg74
 
19.09.12
16:25
а как все в массиве ищут?
Если ТвойМассив.Найти(ТекСтр) <> Неопределено Тогда Отказ = Истина
33 DenSpb
 
19.09.12
16:26
(32) ты имеешь ввиду что массив поместить именно строки, ведь элементом массива может быть любое значение?
34 m-serg74
 
19.09.12
16:28
там будут ссылки на строки
35 DenSpb
 
19.09.12
16:30
(34) да, похоже что сработает:)
36 m-serg74
 
19.09.12
16:32
99%
37 Сергей Д
 
19.09.12
16:40
(28) Если пользователь не нажал Записать, то и ТЧ не сохранится.
38 m-serg74
 
19.09.12
16:55
(35) ну как попробовал?
39 DenSpb
 
19.09.12
16:59
(38) немного отвлекся, сейчас попробую
40 m-serg74
 
19.09.12
17:00
ну вот((( мы так переживаем а ты отвлекаешься)))
41 DenSpb
 
19.09.12
17:14
(40) проверил, все получилось. Спасибо большое!:)
42 m-serg74
 
19.09.12
17:14
удачи
43 Classic
 
19.09.12
17:18
Сравнивай ЭтотОбъект() с Ссылкой
44 Stim213
 
19.09.12
17:21
делается просто - добавляешь поле "пользователь" в ТЧ. которое заполняешь после записи документа текущим пользователем.

соответственно, редактировать можно только строки с незаполненным пользователем. и ты имеешь историю изменений строк документа
45 m-serg74
 
19.09.12
17:32
(44) читай внимательно надо не после записи запрет, а после закрытия формы
46 Stim213
 
19.09.12
17:35
(45) а как можно закрыть форму с введенными строками, без записи объекта, интересно)
47 m-serg74
 
19.09.12
17:36
наоборот можно записать но продолжить редактирование своих строк
48 Stim213
 
19.09.12
17:37
записал - пнх. строки заблокировались. только так, имхо
49 m-serg74
 
19.09.12
17:38
(48) да решено уже на самом деле
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс