Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Проведение Документа Реализация

Проведение Документа Реализация
Я
   V1rus93
 
09.07.19 - 15:39
Помогите решить задачку. У меня в форме списка Реализация Товаров и услуг есть колонка печать. Я создал регистр сведения и записываю туда документы(проведенные) которые были напечатаны. Но при перепроведении документов документ пропадает из регистра и флажок в колонке печать. Как можно заблокировать или создать запрос на проверку "существует ли документ в регистре" перед проведением. Или если документ уже существует в регистре чтобы он при перепроводке не пропадал.
[url=https://radikal.ru/big/2ia3srve9dzhq][img]https://b.radikal.ru/b39/1907/8c/269c5043b274t.jpg[/img][/url]
 
 
   V1rus93
 
1 - 09.07.19 - 15:40
   CHerypga
 
2 - 09.07.19 - 15:46
думается мне что регистр сведений подчинен регистратору, и есть подписка на событие ОбработкаУдаленияПроведенияДокумента
хотя кто знает что там в УТ, тем более на Украине
   V1rus93
 
3 - 09.07.19 - 15:48
(2) Вы правы Регистратором регистра сведений является Реализация Товаров и Услуг.
Процедура ОбработкаУдаленияПроведения(Отказ)
    
    ОбщегоНазначения.УдалитьДвиженияРегистратора(ЭтотОбъект, Отказ);
    
КонецПроцедуры
   V1rus93
 
4 - 09.07.19 - 15:56
Я просто недавно изучаю программирование в 1с. И был бы рад помощи в данном вопросе. Я так понимаю проще всего будет сделать просто запрет на удаление из регистра "Печать Документов" если этот документ уже есть там?
   hhhh
 
5 - 09.07.19 - 16:11
(4) создай регистр сведений не подчиненный регистратору. не надо подчинять.
   V1rus93
 
6 - 09.07.19 - 16:18
(5) Без регистратора он просто не привязывается к документу. Может тут просто сделать проверку на существование документа?
// Запись РС ПечатьДокумента

    НаборЗаписей = РегистрыСведений.ПечатьДокументов.СоздатьНаборЗаписей();

    НаборЗаписей.Отбор.Регистратор.Установить(ЭтотОбъект.Ссылка);
    
    НоваяЗапись = НаборЗаписей.Добавить();

    НоваяЗапись.Период = ЭтотОбъект.Дата;
    НоваяЗапись.Ответственный = ПараметрыСеанса.ТекущийПользователь;
    НоваяЗапись.ДатаПечати = ТекущаяДата();    
    НаборЗаписей.Записать();    
    
    НаборЗаписей.Прочитать();
       НаборЗаписей.Очистить();
    НоваяЗапись = НаборЗаписей.Добавить();
   hhhh
 
7 - 09.07.19 - 16:21
(6) так документ сделать измерением регистра, вот и привяжется.
   V1rus93
 
8 - 09.07.19 - 16:26
(7) А можно по подробней? Удаляем регистратор, создаем измерение с типом документ "Реализация Товаров и услуг", а что дальше?
   Daluvan
 
9 - 09.07.19 - 16:30
(8) А если просто не удалять движения?
   V1rus93
 
10 - 09.07.19 - 16:33
(9) Удаление движений: "Не удалять автоматически" в документе
 
 Рекламное место пустует
   Daluvan
 
11 - 09.07.19 - 16:35
(10) ну это распространится на все движения.
   Daluvan
 
12 - 09.07.19 - 16:39
(10) Нужно как выше писали сделать регистр "без регистратора".
   V1rus93
 
13 - 09.07.19 - 16:46
(12) Ну можно же просто удалить регистратор из уже существующего регистра. И привязать регистр через "Измерения". Но что дальше?
В "Обработке заполнения" куда отправляет нас конструктор движения ничего не сказано за регистр "Печать документов". Я просто не опытный видимо и не догоняю как это сделать
   Daluvan
 
14 - 09.07.19 - 16:51
(13) В ручную писать
   Daluvan
 
15 - 09.07.19 - 16:52
(13) Создать запись - заполнить запись регистра
   V1rus93
 
16 - 09.07.19 - 16:54
(15) Я понял, спасибо за помощь. Буду пробовать !

Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Рекламное место пустует