Имя: Пароль:
1C
1С v8
Как заблокировать Запись, непроведенного документа ? 1С 8.1
,
0 Vesnuha
 
15.10.14
02:35
1С 8.1.
Скажите пожалуйста, как можно ограничить возможность Записи документов, не запрещая при этом возможность их проведения ?

У меня пользователи создают документы, записывают их, но не проводят. Делают это задним числом, что сказывается на отчетности.

Нужно что бы можно было либо:
- Документ создать можно, записать, но выйти -  не проведя, нельзя.
- Документ создать можно, но кнопки записать нет вообще, есть только Провести.

(проблема в том что Провести - насколько я знаю включает в себя и Записать, поэтому блокируя Запись, в процедуре "ПередЗакрытием" , у меня и проведение блокируется.   Помогите пожалустаа!!!
1 Андрюха
 
15.10.14
04:01
Нажатие на кнопку ОК переопредели своей процедурой, в которой присваивай значение гобальной переменной модуля формы, например Проведение = Истина, а ПриЗаписи проверя, если Не Проведение, то блокируй запись.
2 Sasha_Rapira
 
15.10.14
04:11
(0) Форма документа - ПриЗаписиПерепроводить
3 Vesnuha
 
15.10.14
04:18
Так как при попытке что то править в документе, появляется служебное сообщение:  Сохранять или нет ?   -  сохранение через него - обходит запрет, наверное лучше второй вариант.


to   Sasha_Rapira  -   где это выставить ?
4 Sasha_Rapira
 
15.10.14
04:21
Документ типовой или нет?

Открываете конфигуратор, в дереве ищете документ, у него открываете Форма документа. Нажмите/выделите саму форму и в свойствах "ПриЗаписиПерепроводить".
5 Sasha_Rapira
 
15.10.14
04:22
(3) привет Амурску от комсы =)
6 Vesnuha
 
15.10.14
04:26
ПРивет - привет !!    ПРоверила ! ... такая галочка стоит уже. и  стояла ранее.   НАписано что документ будет проводиться, при записи, ЕСЛИ УЖЕ БЫЛ проведен!!    А речь о новых доках! (см.проблему в первом топе)   .
7 Sasha_Rapira
 
15.10.14
04:30
(6) на самом деле всё легко. Вас остается только одна - сделать что бы при закрытии нового документа он проверял на проведение.

Щас помогу
8 Sasha_Rapira
 
15.10.14
04:35
Вариантов решения очень много, сделаем как вы хотели.

Я работаю с 8.2, но думаю пойдет и на 8.1

Процедура ПриОткрытии()
    
    Если ЭтоНовый() Тогда
        ЭтаФорма.ЭлементыФормы.ОсновныеДействияФормы.Кнопки.Действие1.Доступность = Ложь;
    КонецЕсли;
    
КонецПроцедуры

Модуль формы документа.
9 Vesnuha
 
15.10.14
04:36
Сделала так:

Процедура ПередЗаписью(РежимЗаписи, РежимПроведения)

Если Ссылка.Проведен  = Ложь Тогда
             Если  Ссылка.Разрш1 =  Ложь  Тогда
                Предупреждение("Запрещено оставлять непроведенные документы. ");
                Отказ = Истина;
КонецЕсли;    
    КонецЕсли;

(в скобках (Режим записи, режим проведения) еще стояло Отказ, но я убрала)

Но две проблемы:   Блокируется как запись, так и проведение. оба (обе)

+ если пытаюсь мухлевать, окно:  Документ изменен, сохранить, да ? нет, сохраняет сам ...
10 Vesnuha
 
15.10.14
04:36
не успела прочесть, секунду
11 Sasha_Rapira
 
15.10.14
04:36
(9) прочтите (8) к стати вам нужно указать имя ВАШЕЙ кнопки Записать которая, она везде разная
12 Sasha_Rapira
 
15.10.14
04:40
У вас останется одна проблема (если человек закроет через крестик) его спросит про запись документа.
13 Vesnuha
 
15.10.14
04:43
Да, работает !  За листинг Действие 1 -  большое спасибо!
А вот защиты от дурака - нет ((((((   крестиком можно закрыть .....
14 Sasha_Rapira
 
15.10.14
04:45
Ну и такой вариант:


Модуль формы

Процедура ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения)
    
    РежимЗаписи = РежимЗаписиДокумента.Проведение;

КонецПроцедуры

Попробуйте на 8.1
15 Vesnuha
 
15.10.14
04:45
А есть какая нибудь виндовая или программная (1с-ная) отсечка, не дающая сохранять по крестику ?

Такая фишка есть во всяких МикрософтОфис и прочих, когда правленный документ не закрывается, не попытавшись сохраниться (да,нет,отмена) ...   может есть что то способное блокировать такое сохранение ?
16 Sasha_Rapira
 
15.10.14
04:46
(15) прочтите (14)
17 Vesnuha
 
15.10.14
04:53
Процедура ПередЗаписью(РежимЗаписи, РежимПроведения, Отказ)
    
      РежимЗаписи = РежимЗаписиДокумента.Проведение;


сделала вот так.   не помогло.  Спрашивает - да,нет,отмена,   да-  выходит но док падает непроведенный.  но сохраненный ((((
18 Sasha_Rapira
 
15.10.14
05:00
Можете тимвивер запустить? Что бы я глянул
19 Sasha_Rapira
 
15.10.14
05:01
У меня (14) работает полностью, я бы не кинул нерабочий код. Создаю новый, закрываю на крестик, он спрашивает, жму сохранить и сразу проводит
20 Vesnuha
 
15.10.14
05:10
!!! получилось. Переписала процедуру заново и пошло ) Сбойнуло что-то, прежний текст никак не отличался ((

Спасибо за участие, и за тим вьювер )  тут пока сисадмина допросишься, поседеешь !



(вы еще не уходите ?    у меня еще тема, насчет отчета (уже месяц с ним борюсь, щас будут публиковать ))
21 Sasha_Rapira
 
15.10.14
05:12
(2) обращайтесь. всегда помогу "своим" =) можете вконтакте добавить и т.д. я каждый день на работе, будет свободное время, буду вам подсказывать.


Ссылку на тему отчета
22 Тындр
 
15.10.14
05:18
(14) а теперь попробуйте отменить проведение или пометить на удаление )) билет в один конец ))
23 Sasha_Rapira
 
15.10.14
05:21
(22) полегчало?

Процедура ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения)
    
    Если РежимЗаписи = РежимЗаписиДокумента.Запись Тогда
        РежимЗаписи = РежимЗаписиДокумента.Проведение;
    КонецЕсли;


КонецПроцедуры
24 Vesnuha
 
15.10.14
05:32
to   Тындр  - предусмотрительно!
но тут внутренний нюанс -  после того как документ все же проведен (а мы добивались именно этого), далее другими процедурами создается дочерний платежный документ, и это главная задача. Вот его уже, никто никуда не денет, там у меня просто запрет на удаление.
Главное что бы не висели первоначальные - записанные, но непроведенные доки.

to   Sasha_Rapira - и за Это спасибо ) вписала!  сейчас обкатаю доконца

кстати: Как сделать выборку по строкам в табличной части документа
25 Vesnuha
 
15.10.14
08:37
я не знаю как и кому написать - в мою вторую тему войти не могу.  Есть администратор кто это прочтет и посмотрит что не так ?    я залогинена на сайте, но когда перехожу по ссылке:  
Как сделать выборку по строкам в табличной части документа

- открывается тема, а мне предлагают войти или зарегистрироваться.  ввожу имя пароль, выкидывает меня на главную форума.  захожу в тему свою - опять так же.  я уже браузер поменяла и пароль сохранила, бестолку
26 Asmody
 
15.10.14
08:43
(25) ctrl+f5
27 Sasha_Rapira
 
15.10.14
08:50
(26) та же фигня)) выкидывает с форума, это фиксить будут? или пофиг
28 Krolik Bezobraznik
 
15.10.14
08:56
(15) По поводу закрытия формы по крестику я решил подобную проблему так. В обработке формы передЗакрытием СтандартнаяОбработка = Ложь; Посмотрите в эту сторону если вопрос еще актуален.
29 Sasha_Rapira
 
15.10.14
08:57
(28) не актуален, умные люди делают так (23)
30 Krolik Bezobraznik
 
15.10.14
08:58
(29) Не мне ваш умный вариант не подойдет, у меня были иные задачи =)
31 hhhh
 
15.10.14
09:22
(24) то, что вы придумали - это полнейший дурдом. Пользователи вас или повесят или четвертуют.

Например, ошибочно ввели документ, у вас они не смогут удалить. Потом, если большой документ, строчек 100 и по какой-то причине не проводится, они реально не смогут его сохранить, чтобы второй раз не набирать.
32 Vesnuha
 
15.10.14
10:24
давайте по порядку:
to hhhh -  Здраво рассуждаете, но заметьте - задача ограничения касается не всей конфигурации в целом, а одного лишь типа документов. С которым работают люди одной должности. У них не будет 100 строк в этом документе, да и - кто мешает им - набить хоть 200 строк и! - провести, сохранив тем самым. И никто не обижен. Ничто не пропало.
А при грамотной работе - ошибочных документов будет раз два и обчелся. Надо что-то удалить ? Обратятся куда-нужно, заодно и выяснится - кто и зачем мухлюет в базе.
Извините - головой надо думать.

to    Krolik Bezobraznik -  спасибо и вам за совет.
33 Vesnuha
 
15.10.14
10:25
to   Sasha_Rapira - в соседнюю тему мою не могу зайти, скинуть то что у меня уже есть. У вас цикл , естественно в общем виде, я буду прорываться на форум !!!
34 Зеленый пень
 
15.10.14
10:26
(0) А как наличие непроведенных документов влияет на отчетность?
35 Vesnuha
 
15.10.14
10:28
Да, с целью обмануть порядок и план своей работы, пользователи набивают документы, а проводят их задним числом.
36 hhhh
 
15.10.14
10:50
(32) обычно бывает так, что ошибки при проведении. Особенно когда будут обновления потом. Очень важна возможность просто сохранить документ из 200 строк, не проводя.
37 DirecTwiX
 
15.10.14
10:55
(34) +

(35) Так запретить неоперативное проведение может быть?

Первые отвечающие напомнили анекдот, который вчера начальник рассказал :)

"Яблоня. На ней яблоко. Запустили обезьяну. Та увидела яблоко, подбежала, потрясла раз - яблоко не упало. Потрясла два - яблоко висит. Оглянулась, нашла палку, кинула - яблоко упало.
Далее запустили прапорщика. Потряс раз - не упало, потряс два - не упало. Ему и говорят: "Может подумать стоит?".

Да чего тут думать - трясти надо."
38 Зеленый пень
 
15.10.14
11:05
(35) К чему тогда весь огород?
Запрет проведения в закрытом периоде есть в любой типовой.