Дата проводки и дата записи документа

1. troshin71 06.07.18 09:39 Сейчас в теме
Добрый день уважаемы коллеги, возникла проблема, при создание документа есть дата записи документа, она ставится автоматически, я создал на форме документа еще один тип "Дата2" и назвал его дата проводки. Подскажите пожалуйста как сделать что бы при нажатие провести и закрыть "дата проводки" автоматически записывала время.Спасибо большое!
По теме из базы знаний
Найденные решения
34. enschede 06.07.18 11:51 Сейчас в теме
(33) Дата записи документа - это ведь стандартный реквизит "Дата"? Предположу, что документ проводится в оперативном режиме, поэтому дата обновляется. Если вы хотите в стандартном реквизите сохранить дату записи документа, то оперативный режим проведения нужно отключить.
troshin71; +1 Ответить
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
37. Doreng 27 08.07.18 21:43 Сейчас в теме
(1) Вообще не понятна проблема -
(1)
при создание документа есть дата записи документа, она ставится автоматически,

не дата записи, а дата создания( если не менялось)

(1)
я создал на форме документа еще один тип "Дата2" и назвал его дата проводки.

Это еще зачем? Дату последней проводки можно вытащить из проводок документа в регистрах

(1)
Подскажите пожалуйста как сделать что бы при нажатие провести и закрыть "дата проводки" автоматически записывала время.Спасибо большое!

Если Вы хотите иметь информацию о времени и датах проводки документа, тогда вернее использовать регистр
Что то типа
Процедура ОбработкаПроведения(Отказ, РежимПроведения)
СделатьКакуюТоФигню()
КонецПроцедуры

Процедура СделатьКакуюТоФигню()
Если КакойтоРеквизит = КакомуТоУсловию Тогда
НаборЗаписей = РегистрыСведений.МойРегистрЗаписий.СоздатьНаборЗаписей();
НаборЗаписей.Отбор.Документ.Установить(ЭтотОбъект.Ссылка);
НаборЗаписей.Прочитать();
НоваяЗапись = НаборЗаписей.Добавить();
НоваяЗапись.Документ = ЭтотОбъект.Ссылка;
НоваяЗапись.Дата = ТекущаяДата();
НоваяЗапись.КтоПровел = ТекущийПользователь();
НаборЗаписей.Записать();
КонецЕсли;
КонецПроцедуры
Показать

Таким образом получите лог проведений документа и кто проводил
2. DimDiemon 79 06.07.18 09:48 Сейчас в теме
в обработке проведения Дата2=ТекущаяДата()
4. troshin71 06.07.18 09:59 Сейчас в теме
9. starjevschik 06.07.18 10:32 Сейчас в теме
(2) это неправильно, в обработке проведения все уже записано. Менять реквизиты можно только ПередЗаписью, дальше уже поздно.
10. troshin71 06.07.18 10:34 Сейчас в теме
(9)я сделал перед записью, но мне выдает ошибку

Значение не является значением объектного типа (Проведение)
12. starjevschik 06.07.18 10:36 Сейчас в теме
(10) насколько я вижу, тут надо либо а) пойти учиться или хотя бы почитать что-нибудь про 1с или б) попросить кого-нибудь, это работа рублей на двести.
11. troshin71 06.07.18 10:34 Сейчас в теме
(9) он даже теперь мне записать документ не дает
3. user658743_shevado 2 06.07.18 09:52 Сейчас в теме
Лучше перед записую, но поставить проверку на режим записи = проведение
5. troshin71 06.07.18 10:00 Сейчас в теме
(3) а по подробнее можно?
6. lishniy 132 06.07.18 10:11 Сейчас в теме
(5) Если изменять реквизит в обработке проведения, появиться признак изменения документа. После проведения при закрытии будет спрашивать "Сохранить или нет"
7. user658743_shevado 2 06.07.18 10:12 Сейчас в теме
Модуль обьекта, обработчик собі тия «ПередЗаписью»
Если РежимЗаписиДокумента = режимзаписи.Проведение тогда
Дата2=ТекущаяДата()
КонецЕсли
8. troshin71 06.07.18 10:26 Сейчас в теме
(7)При записи документа (не проводки) Пишет ошибку:
Значение не является значением объектного типа (Проведение)
13. enschede 06.07.18 10:36 Сейчас в теме
(8) Наверно, правильнее будет "РежимЗаписиДокумента.Проведение".
Если РежимЗаписи = РежимЗаписиДокумента.Проведение Тогда
 ДатаПроводки = ТекущаяДата();
КонецЕсли;
15. troshin71 06.07.18 10:43 Сейчас в теме
(13)Именно так и сделал, а он ругается и выдает ошибку
18. troshin71 06.07.18 11:08 Сейчас в теме
(13)Сделал так ошибка пропала, но теперь он обе дата проводит датой проводки:

Если РольДоступна ("ПолныеПрава")
Тогда
ДатаПроводки = ТекущаяДата();
РежимПроведения = Истина;
КонецЕсли;
22. enschede 06.07.18 11:12 Сейчас в теме
(18) Что-то вы уже, кажется, всех запутали. Уже непонятно как вы сделали и что теперь не получается.
14. user658743_shevado 2 06.07.18 10:41 Сейчас в теме
(8)только должно біть Перед записью, правильній синтаксис в коментарии 13
16. troshin71 06.07.18 10:48 Сейчас в теме
(14) Если РежимЗаписиДокумента = РежимЗаписиДокумента.Проведение
Тогда
ДатаПроводки = ТекущаяДата();
КонецЕсли;
17. user658743_shevado 2 06.07.18 11:06 Сейчас в теме
(16)посмотрите, есть ли параметр «РежимЗаписи» в процедуре ПередЗаписью, бівает что он не определен. Тогда можно сделать подписку на собітие, там он точно будет
19. troshin71 06.07.18 11:08 Сейчас в теме
20. troshin71 06.07.18 11:08 Сейчас в теме
(17)Сделал так ошибка пропала, но теперь он обе дата проводит датой проводки:

Если РольДоступна ("ПолныеПрава") 
Тогда 
ДатаПроводки = ТекущаяДата(); 
РежимПроведения = Истина; 
КонецЕсли;
21. enschede 06.07.18 11:09 Сейчас в теме
(16) А где расположен код? В модуле формы, модуле объекта? В процедуре "ПередЗаписью"? Почему "РежимЗаписиДокумента"? У процедуры "ПередЗаписью" параметр называется "РежимЗаписи" как в (13)
23. troshin71 06.07.18 11:13 Сейчас в теме
(21) код расположен в модуле формы, Процедура ПередЗаписью
24. enschede 06.07.18 11:15 Сейчас в теме
(23) Если в модуле формы, значит форма обычная, неуправляемая?
25. troshin71 06.07.18 11:16 Сейчас в теме
(24)форма обычная, неуправляемая
27. enschede 06.07.18 11:19 Сейчас в теме
(25) Уже стало понятно в каком контексте вы работаете. Может, попробуете еще раз сформулировать вопрос? С чистого листа опишите ситуацию, а-то последние ваши сообщения сбили с толку уже. Непонятно, что вы сейчас пишите в коде и какая у вас проблема.
26. troshin71 06.07.18 11:18 Сейчас в теме
(24) Наверно забыл сказать, что у меня элемнты формы доступны по ролям, дата проводки доступна только роле (ПолныеПрава) и проведение документа доступно так же ПолнымПравам
28. enschede 06.07.18 11:21 Сейчас в теме
(26) Так понятнее откуда взялось "Если РольДоступна ("ПолныеПрава") ". Но все же напишите снова ваш код целиком и опишите ту проблему, которая на данный момент возникает.
30. troshin71 06.07.18 11:30 Сейчас в теме
(28) Есть форма документа "заявка на работы" Заходит пользователь с правами Бухгалтер.
Создает заявку на работу. у него доступны Элементы формы (ФИО,Должность,Подразделение, категория срочности, описание проблемы) он их заполняет, и записывает документ (не проводит, так как ему нельзя проводить этот документ, (стандартный реквезит ДАТА записывает время записи документа). Заходит пользователь с ролью ("ПолныеПрава") ему не доступны Элемнты формы (ФИО,Должность,Подразделение, категория срочности, описание проблемы), а только доступны (ДатаПроводки, решение проблемы, ответственный, статус заявки). он их заполняет если работа выполнена и проводит. Так вот дата проводки это дата решения проблемы, что бы начальство понимало когда была решена проблема.

Процедура ПередЗаписью (Отказ. режимЗаписи, РежимПроведения)
     Если РольДоступна ("ПолныеПрава") 
Тогда 
     ДатаПроводки = ТекущаяДата(); 
     РежимПроведения = Истина; 
КонецЕсли;
КонецПроцедуры
32. enschede 06.07.18 11:44 Сейчас в теме
(30) Так а что сейчас не работает?
33. troshin71 06.07.18 11:48 Сейчас в теме
(32)сейчас он стирает дату записи документа и ставит датой проводки, т.е получается две
одинаковые даты
34. enschede 06.07.18 11:51 Сейчас в теме
(33) Дата записи документа - это ведь стандартный реквизит "Дата"? Предположу, что документ проводится в оперативном режиме, поэтому дата обновляется. Если вы хотите в стандартном реквизите сохранить дату записи документа, то оперативный режим проведения нужно отключить.
troshin71; +1 Ответить
35. troshin71 06.07.18 12:49 Сейчас в теме
(34) огромнейшее спасибо за вашу помощь и нервы!!!Все получилось спасибо еще раз!
36. enschede 06.07.18 12:51 Сейчас в теме
(35) Не за что. Отлично, что все получилось.
31. troshin71 06.07.18 11:40 Сейчас в теме
(28)Сказали что бы дата проводки сама заполнялась при проведение документа
29. Xershi 1486 06.07.18 11:22 Сейчас в теме
При проведении выполняется процедура записи, поэтому время будет одинаковое, а вот когда просто перезапишите, то даты будут разные.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот