Имя: Пароль:
1C
 
Как изменить признак модифицированности документа?
0 pececillo
 
06.03.09
20:23
Здравствуйте.

При входе в форму документа производятся некоторые действия, которые устанавливают признак модифицированности документа в 1.

А как можно этот признак отменить, с тем чтобы при нажатии на кнопку "Закрыть" не было запроса о сохранении документа?
1 АЛьФ
 
06.03.09
20:25
2(0) Не производить "некоторые действия".
2 pececillo
 
06.03.09
20:26
Аа! Понятно!

А если всё-таки?
3 Cthulhu
 
06.03.09
20:29
НачатьТранзакцию(); Записать(); ОтменитьТранзакцию(); // :[|||||||||]:
4 pececillo
 
06.03.09
20:32
Нет, мне надо, чтобы если форма была просто открыта, документ не записывался. А если клиент что-то менял, то чтобы всё происходило как обычно-задавался вопрос о сохранении.
5 pececillo
 
06.03.09
20:38
Мне надо какую-нибудь простая хрень типа
Форма.Модифицированность(0)
6 KRV
 
06.03.09
20:41
ЖКК
7 pececillo
 
06.03.09
20:42
Что такое ЖКК?
8 Cthulhu
 
06.03.09
20:42
(4): "мальчег, ты не тормаzzz.. ты - йакарь!"
в (3) нифига и не записывается...
9 pececillo
 
06.03.09
20:47
(8) спасибо. Для такого Ньютона как ты ещё раз поясняю:

НачатьТранзакцию(); Записать(); ОтменитьТранзакцию(); - вообще никогда ничего не запишет.

А мне надо, чтобы до той поры, пока пользователь сам ничего не менял в документе, он и не записывался.
Но вот если он что-то изменил, тогда при нажатии кнопки "закрыть" его спросили, сохранять ли документ.
10 KRV
 
06.03.09
20:53
фотку в студию!
11 pececillo
 
06.03.09
20:55
(10) Я тебя поцелую. Потом. Если захочешь.
12 KRV
 
06.03.09
20:55
не, не надо...
13 Cthulhu
 
06.03.09
21:06
(9): пожалуйста. Для такой альтернативно одаренной личности как ты поясняю.

в (3) дан предельно корректный и верный ответ на вопрос, который задан ("Как изменить признак модифицированности документа?").

в (9) выясняется, что на самом деле(!) интересует вопрос "как узнать, поменял ли пользователь что-нибудь в документе?".

Задавай правильные вопросы.
15 Classic
 
06.03.09
22:51
(9)
"
НачатьТранзакцию(); Записать(); ОтменитьТранзакцию(); - вообще никогда ничего не запишет.
"

А флаг модифицированности снимет?
17 pececillo
 
06.03.09
23:13
(16) Офигительную траву куришь!
18 pececillo
 
06.03.09
23:17
(15) Это работает, только прибавляет секунд 10-15 к времени открытия документа. Неприемлемо.
19 los_hooliganos
 
06.03.09
23:24
особо тяжелый случай.

создай копию и открой её. при записи сравнивай.
20 FN
 
07.03.09
00:14
В FormEx по-моему есть команда снятия модифицированности формы...
22 zak555
 
07.03.09
01:26
(0)
1. какие действия?
2. что за конфа?
3. типовая или как?
23 1Сергей
 
07.03.09
07:41
Если юзверь ничего не делал в документе, а флаг модифицированности (звездень) всё-таки появился, то ошибка в коде. Меняй её
24 Mikeware
 
07.03.09
08:01
Ошибка там же, где и обычно? :-)
25 1Сергей
 
07.03.09
08:27
точно
26 ДенисЧ
 
07.03.09
08:53
А всё-таки в (1) самый правильный ответ. Что это за ПриОткрытии() такое, что документ меняет?
27 Cthulhu
 
07.03.09
12:05
(23),(26): дело в том, что это совершенно не обязательно именно "ошибка".. модифицированность взводит иногда код, который качается только интерфейса и фактически не изменяет данных..
28 ДенисЧ
 
07.03.09
12:10
(27) Когда код не меняет данные, он не меняет модифицированность.
29 Cthulhu
 
07.03.09
12:25
(28): даже если не спорить с тобой (при твоей неправоте;)): вариант документа с двумя таб.частями загнанными в данных в композитную таб.часть, и при визуализации раскидываемыми по закладкам (в зависимости от закладки в мн.части изменяется состав показываемых колонок МнЧ и строки) - нука сделай без изменения модифицированности?..
30 Mikeware
 
07.03.09
12:58
(29) Это не совсем хороший метод представления второй табчасти
31 Cthulhu
 
07.03.09
13:04
(30): это как раз совсем хороший метод для подходящих случаев... если под "хорошестью" понимать достижение желаемого результата (полное сохранение штатной функциональности работы с МнЧ) при минимуме трудозатрат затрат (как на рисование работы с ТЗ на морде, например).. ))))
32 Mikeware
 
07.03.09
13:15
(31)Есть объект ДопРеквизиты, и допТабЧасть,в которых хранятся реквизиты и доп.табчасти. Для работы с доп. табчастями используется ТабличноеПоле.
33 Cthulhu
 
07.03.09
13:48
(32): мы об 1с вроде бы а не о сторонних поделках..
34 Mikeware
 
07.03.09
13:50
(33) Ну, и "множественность ТЧ" штатно не предусмотрена.
Я с тем же успехом могу сказать про (29)- "мы говорим не об извратах". :-)
35 Cthulhu
 
07.03.09
14:16
(34): "множественность ТЧ" - это не функционал, а задача, которая достаточно часто встречается в предметной области, и которую нужно решать в 1с.. способов шения немного, и я привел достаточно реальный способ решения этой задачи в рамках 1с, при реализации которого возникает проблема, являющаяся темой топика... так что мух и котлеты сваливай в кучу и занимайся передёргиваниями с другими собеседниками, умник..
36 pececillo
 
07.03.09
14:57
Я же не прошу дать мне совет, как лучше сделать? Также я не прошу опытных определить степень моих знаний и умений.

Я просто спрашиваю:

Можно ли программно установить признак модифицированности в "0"?

(3) - это один из вариантов, но он очень затормаживает выход из документа.

Вот и всё. Если кто-то умеет, подскажите, а не умеете (или это невозможно) - не надо.
37 Злопчинский
 
07.03.09
14:59
формексом можно!
38 Mikeware
 
07.03.09
15:01
(35) Я тоже привел достаточно удобный и многократно реализованый.
зы. закусывать надо...
(36) Агрессивность дятлов возрастает. ключевое слово - FormEx. Если это не поможет  - то "aпстена"
39 pececillo
 
07.03.09
15:02
(37) я формексом только кое-какие данные подсвечиваю, другими возможностями не пользуюсь. Если знаете как, подскажите. (Конечно не поленюсь и почитать :) )
40 Злопчинский
 
07.03.09
15:13
СбросМодифицированности / ResetModify
Синтаксис: СбросМодифицированности()
Описание: Сбрасывает флаг модифицированности для текущей формы.
41 Cthulhu
 
07.03.09
15:27
(38): привел только на словах и вне штатніх средств, я тебе єто уже говорил... советы свои непрошенные совершенно спокойно можешь засунуть обратно в организьм..
(36): вполне возможно ускорить запись в отменяемой транзакции - если ввести переменную модуля - флаг отказа от проверок при записи.. к тому же замедление записи - это само по себе проблема которую неплохо бы решить вне(!) зависимости от использования данного метода решения совсем другой проблемы...
42 pececillo
 
07.03.09
16:21
(40) Спасибо :)
43 Злопчинский
 
07.03.09
16:25
Пжста..
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший