Вход | Регистрация
 

После проведения документа

После проведения документа
Я
   Мафусаил
 
25.10.19 - 15:48
Привет, есть такая задача, скажем если документ проведен с определенным набором данных, тогда нужно поменять значение реквизита в документе основания.
Как вы реализуете такой функционал? Как правильнее это делать?  

1. После записи в форме - не годиться, формирование документа может быть программным, да и групповая обработка не запустит функцию
2. В момент проведения, тоже не нравиться, т.к. проведение в проведение может вызывать конфликты
3. Перед запись - нету 100% уверенности, что документ был сформирован правильно и провелся
4. Добавить план обмена, регать изменения документа и потом их обходить циклом.

Как бы вариант №4 мне нравиться больше всех, но не нравиться, то что это надо постоянно запускать, чуть ли не ежесекундно, что бы моментально менялся реквизит у документа основания.

Может быть у вас есть свой вариант? более оптимальный и правильный?
 
 
   ДенисЧ
 
1 - 25.10.19 - 15:52
Вынести реквизиты из документов в РС.
   shuhard
 
2 - 25.10.19 - 15:52
(0)[тогда нужно поменять значение реквизита в документе основания.]
я использую оба варианта:
- модуль перед записью набора данных регистра, в который пишется при проведении
- фоновое задание раз в 1 час, которое добивает конфликты

но правильно выносить такие реквизиты в Рг сведений
   Мафусаил
 
3 - 25.10.19 - 16:00
Согласен, на счет регистра сведений, действительно хороший и правильный вариант. А если это всё же реквизит документа и желания переделывать нету?
   ДенисЧ
 
4 - 25.10.19 - 16:01
(3) Надо сделать так, чтобы желание появилось...
   Мафусаил
 
5 - 25.10.19 - 16:08
Но тогда не удобно взаимодействовать с данным реквизитом, делать отбор в списке и т.д.
   Deon
 
6 - 25.10.19 - 16:10
(5) В каком таком списке отбор неудобный?
   Мафусаил
 
7 - 25.10.19 - 16:11
(6) да банально в списке документов, активировать ячейку и отбор по текущей колонке
   hhhh
 
8 - 25.10.19 - 16:11
(5) но с другой стороны, если этот документ в закрытом периоде остался, а его нужно перепровести получается, вас бухгалтерия съест за это, да и медленнее это всё, перепроводить документы из-за одного реквизита.
   Михаил Козлов
 
9 - 25.10.19 - 16:27
(7) Судя по всему ОФ?
   Мафусаил
 
10 - 25.10.19 - 16:35
(9) обычные формы? да, они самые
   shuhard
 
11 - 25.10.19 - 16:44
(8) смена реквизита с загрузка=истина в режиме записи не требует открытия периода и не даёт проведения

использование реквизит неизбежное следстие использования типового журнала
   Мафусаил
 
12 - 25.10.19 - 16:48
(11) вот и я об этом
   trooba
 
13 - 25.10.19 - 16:51
(0) Подписка
   shuhard
 
14 - 25.10.19 - 16:52
(12) иди пилить, чё время тратить
   Мафусаил
 
15 - 25.10.19 - 16:58
(13) там нету после проведения/записи
   trooba
 
16 - 25.10.19 - 16:59
(15) ПриПроведении, но она сработает после проведения в модуле объекта
   VladZ
 
17 - 25.10.19 - 17:01
(0) "если документ проведен с определенным набором данных, тогда нужно поменять значение реквизита в документе основания." - не нужно так делать.
   lodger
 
18 - 25.10.19 - 17:03
более оптимальный и правильный в (1).
   ptiz
 
19 - 25.10.19 - 17:04
(0) В обработке проведения. И отрабатывать удаление проведения.
   Мафусаил
 
20 - 25.10.19 - 17:09
(18) тогда для пользователя взаимодействие с этим реквизитом становиться адским
   Мафусаил
 
21 - 25.10.19 - 17:13
нету сортировки, нету отбора, просто информативное поле
   Жан Пердежон
 
22 - 25.10.19 - 17:18
п.2 - не раскрыт, зачем проведение (а не запись) при проведении и какие конфликты?
   Мафусаил
 
23 - 25.10.19 - 17:24
(22) по какой нибудь причине, при записи документа основания может сработать отказ = истина, и это распространяется на текущее проведение и не даёт провести текущий документ.
   Жан Пердежон
 
24 - 25.10.19 - 17:32
(23) не убедительно
   Мафусаил
 
25 - 25.10.19 - 17:35
(24) а ты попробуй, провести документ который не проводиться, в проведение другого документа
   asady
 
26 - 25.10.19 - 18:17
(0) архитектора на мыло.
(1)+1
   Мафусаил
 
27 - 25.10.19 - 18:29
(26) Объясни тогда пожалуйста, с точки зрения пользователя, который хочет делать отборы, сортировки по реквизиту, как он это будет делать?
   Cyberhawk
 
28 - 25.10.19 - 18:48
(23) Тогда никак в одной транзакции делать это нельзя.
Максимум что делать в транзакции проведения - добавлять кандидата для пост-обработки в очередь (регистр).
Далее уже РЗ обрабатывает кандидатов.
   shuhard
 
29 - 25.10.19 - 19:20
(27) зевая
тебе уже сто раз ответили - не умеешь делать свои журналы со своими сортировками - меняй реквизит
   unregistered
 
30 - 25.10.19 - 19:46
(5) Открой для себя характеристики. Кнопочка такая на вкладке "Данные" окна свойств документа. В типовых там заполнена только одна строчка - для связи с регистром допреквизитов. Никто не запрещает запилить свой регистр и определить его как характеристику для твоего документа. Поля из него автоматически станут доступными в формах списков.

Второй вариант - воспользоваться типовым регистром допреквизитов. В актуальных версиях БСП появилась возможность давать этим допреквизитам предопределенные имена, что в свою очередь позволяет работать с этими допреквизитами программно из кода. Опять таки все допреквизиты доступны в стандартных формах списков документов.

Хотя фиг тебя знает - что у тебя за конфигурация, есть ли в ней БСП и какой она версии...
 
 Рекламное место пустует
   lodger
 
31 - 26.10.19 - 20:17
(20) это уж насколько погромизд-1с постарается. может адским, а может и бесшовно, быстро и неощутимо.
   Cyberhawk
 
32 - 26.10.19 - 21:25
(30) "В актуальных версиях БСП появилась возможность давать этим допреквизитам предопределенные имена" // Красиво было на бумаге (с) :)


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