Имя: Пароль:
1C
1C 7.7
v7: Встроенная обработка "Проведение документов"
, ,
0 DrRaptor
 
10.10.13
11:31
У многих документов в модуле проведения используются вопросы для предотвращения некорректных проводок. При запуске встроенной обработки проведения документов на каждом таком вопросе обработка делает паузу и ждет ответа, соответственно на ночь такую обработку не запустить - нужно отвечать на вопросы. Вариант решения:
Встроить условие, что при определенном состоянии среды вопрос задаваться не будет.

Отсюда к вам вопросы:
1) Есть ли встроенная переменная отражающая процесс проведения документов встроенной обработкой?
2) Можно ли как-то иначе исключить возникновение вопросов при массовом проведении документов?
1 Гефест
 
10.10.13
11:33
1) Есть
2) Оторвать руки тому, кто в проведении вопросов налепил
2 v4442
 
10.10.13
11:33
Какая конфигурация
3 ДенисЧ
 
10.10.13
11:34
"У многих документов в модуле проведения используются вопросы для предотвращения некорректных проводок"

Десять лет строгого расстрела без права переписки
4 DrRaptor
 
10.10.13
11:44
Конфигурация самописная с нуля.
А как интересно обойтись без вопросов, если они возникают по мере проведения? У меня 10 различных условий. Что, весь модуль проведения повторять в модуле формы для проверки выполнения условий???
Что за идиотская привычка вместо помощи начинать обсиралово?
5 пипец
 
10.10.13
11:47
(4) Оо при чем тут обсиралово ? чотко вполне сказали - это все равно что вопрос про закрытый переезд ... а можно проехать ? ответ - да езжай ... или на отбойник или поездом
6 1Сергей
 
10.10.13
11:47
(4) Документ либо может провестись, либо не может. третьего не дано. Не нужны вопросы в проведении. Просто прими это как факт
7 ALoHA
 
10.10.13
11:48
Она запускается только в монопольном режиме. Проверять на монопольность.
8 Mikeware
 
10.10.13
11:58
(3) уточню: десять лет расстрела через повешенье!
9 пипец
 
10.10.13
11:59
гыгы а еще прикольно если вопрос с таймаутом ;))) ваще жесть
10 ДенисЧ
 
10.10.13
12:00
(8) Откуда такая нечеловеческая жестокость
11 DrRaptor
 
10.10.13
12:03
Ну да, про монопольность я сразу и подумал.
Я уже видел как пишут "супер умные программисты": вместо встраивания условия по изменению переменной с перебором вариантов значений тупо 20 раз повторяют если-тогда с разными значениями, так что не нужно умничать.
Вот мой пример: сделка заключена в евро, расчет должен быть в рублях, а расчет взяли и провели частично в долларах, а частично в фунтах. В итоге - 4 валюты и поэтапная оплата. И давайте еще добавим сюда соглашение о снижении объема поставки по сделке. Образуются хвосты из-за курсовых разниц, округления и прочего. Откуда 1С знает нужно эти хвосты списывать или просто в документе неверную сумму указали? Как здесь без диалога обойтись?
12 VladZ
 
10.10.13
12:05
(11) При записи проверять.
13 VladZ
 
10.10.13
12:06
+12 А проводить уже нужно то, что записано....
14 mikecool
 
10.10.13
12:09
(11) нужно обойтись без диалогов при проведении
пока не поймешь этого - вон из профессии!
15 VladZ
 
10.10.13
12:10
(14) Этот вопрос я бы первым задавал на собеседовании. Возможно, дальнейшие вопросы не имели бы смысла...
16 Зойч
 
10.10.13
12:13
(11) Пока один отвечает, все остальные могут идти курить
17 Холст
 
10.10.13
12:15
Процедура ОбработкаПроведения(<?>)
КонецПроцедуры
Синтаксис:
ОбработкаПроведения(<Знач>)
Назначение:
Предопределенная процедура обработки проведения документа в любом режиме.
Параметры:
<Знач> - идентификатор переменной, которая получает значение из процедуры Провести.
Замечание:
Данная процедура может располагаться только в модулях документов.

Провести(<?>,);
Синтаксис:
Провести(<Режим>,<Знач>)
<Знач> - выражение произвольного типа, которое передается при запуске предопределенной процедуры ОбработкаПроведения (необязателен, по умолчанию - пусто).

в Знач указываешь признак что проведение массовое и что не надо спрашивать вопросы
18 DrRaptor
 
10.10.13
12:15
При записи все проверять нереально, да и параметры в самом документе не зависят от курсовых разниц и округлений. Грубо говоря, оплата 100 руб была по факту (что тут проверять то?), но в 1С ее нельзя провести, поскольку в учете остается долг перед контрагентом 0,02 коп из-за округлений. И что? не записывать документ? Записать то мы его должны, а вот проводить не можем. Да можно ввести переменную, разрешающую дальнейшее проведение, но тогда весь модуль проведения с его условиями и вопросами нужно повторять в модуле формы. Это нормально?
19 пипец
 
10.10.13
12:16
вроде не пятница ;)))
20 DrRaptor
 
10.10.13
12:20
(17) Спасибо, но главный то вопрос - как определить, что проведение массовое?
21 Гефест
 
10.10.13
12:20
(18) Если документ криво заполнен, нужно отменить проведение и сообщить пользователю о косяках. Пусть исправит и проведет еще раз. А не ждать ответа с висящей транзакцией
22 DrRaptor
 
10.10.13
12:23
Документ то не криво заполнен!!!! Он просто не может быть проведен из-за накопившихся ошибок. И пользователь должен решить критические это ошибки или нет и ошибки ли это вообще. 1С не может само принимать такие решения.
23 Зойч
 
10.10.13
12:29
(18) как то же в бухии, ут, в упп проводят с курсовыми разницами
24 пипец
 
10.10.13
12:29
чойта не может ? пусть пишит в лог - можно даже писать в отчет с логом проведения - пропускать проблемный документ и выводить на экран таблицу с возможностью прочитать каменты и зайти в не проведен7ный документ
ЗЫ но ми таки как висигда хатим гланды через ... (с)
25 Холст
 
10.10.13
12:31
ГрупповаяОбработка()
Синтаксис:
ГрупповаяОбработка()
Назначение:
Возвращает флаг групповой обработки: 1 - групповое обработка, 0 - иначе.
Замечание:
Метод доступен только в Модуле документа в предопределенной процедуре ОбработкаПроведения.
Подробнее см. в документации, глава 'Работа с Документами'
26 DJ Anthon
 
10.10.13
12:31
(22) не понимаешь, что тебе говорят? нельзя так писать модули проведения. и вообще самописки так писать нельзя.
27 Ёпрст
 
10.10.13
12:32
(0)
1.все вопросы задавать ДО проведения
2. в коде смотреть флаг ГрупповаяОбработка()
28 Ёпрст
 
10.10.13
12:33
Если оставишь вопрос в ОбработкаПроведения, жди, скоро за тобой придут или санитары, или пользователи, чтоб яйки дверкой прищемить.
29 Maximysis
 
10.10.13
12:35
Я правильно понял: в обработке проведения вопрос, ответ на  который влияет на значения проводок!?!
30 DrRaptor
 
10.10.13
12:42
(29) и на значение проводок тоже.
Типа: "Списывать весь остаток задолженности в рублях или пропорционально количеству оплачиваемого товара?"
31 Maximysis
 
10.10.13
12:44
(30)реквизит способ списания, по умолчанию часто использующийся.
32 Maximysis
 
10.10.13
12:46
а если хочешь дальше "быдлокодить" то

Если ИмяПользователя()<> "ЮзерАвтопроведения" тогда
Вопрос(...)
КонецЕсли;

добавь ко всем вопросам проведения, но правильней как (17) передавать значение ФлагВопроса.
33 VladZ
 
10.10.13
12:51
(30) Мля... Завязывай с 1С! Не твое это...
34 1Сергей
 
10.10.13
12:52
(30) т.е. если ты на ночь запустил восстановление последовательности, то домой ты в этот день не пойдёшь?
35 Сияющий Асинхраль
 
10.10.13
12:54
Про расстрел через повешение правильно сказали. Я бы тоже руки оторвал уникуму, который вопросы в модуле проведения ставит, если надо что-то уточнить в модуле проведения добавляй реквизиты на форму, в табличную часть, короче, все условия проведения должны быть определены до проведения...
36 1Сергей
 
10.10.13
12:55
(35) + и зафиксированы... А то потом будут справедливые замечания, что "ваша одинеска неправильно считает"
37 Maximysis
 
10.10.13
13:12
а если юзер в момент проведения не нажмет да или нет. то Писец блокировка базы...
38 Попытка1С
 
10.10.13
13:20
Коленку автору прострелить уже предлагали?
39 ЧессМастер
 
10.10.13
13:20
(0) вопросы для предотвращения некорректных проводок надо задавать в модуле ПриЗаписи() а не при проведении
40 1Сергей
 
10.10.13
13:20
(39) А ПриЗаписи разве ещё нет транзакции?
41 mikecool
 
10.10.13
14:10
пахнет разводом
42 Bigbro
 
10.10.13
14:23
судя по ответам автора - он всерьез..
43 ЧессМастер
 
10.10.13
14:23
(40) есть конечно. но запись быстрее проведения
44 ЧессМастер
 
10.10.13
14:24
я боюсь представить какой АД в такой конфе при работе - дикие постоянные "ожидание блокировки таблицы журналов"
45 Mikeware
 
10.10.13
14:26
(30) а если "при определенном состоянии среды вопросы задаваться не будут" - откуда тогда программа должна знать, "Списывать весь остаток задолженности в рублях или пропорционально количеству оплачиваемого товара?"
46 Mikeware
 
10.10.13
14:29
(40) процедура ПриЗаписи() фактически работает до записи. ибо в ней ты можешь отменить запись.
47 mikecool
 
10.10.13
14:30
(46) но транзакция то при этом уже началась?
48 NS
 
10.10.13
14:35
В ПриЗаписи() нет блокировки 1SJOURN
49 1Сергей
 
10.10.13
14:37
(46) что удивительно, в ОбработкаПроведения тоже можно отменить запись
50 NS
 
10.10.13
14:37
(47) Если висит предупреждение в модуле документа, то все курят бамбук, если в ПриЗаписи() - то остальные могут спокойно создавать, записывать и проводить документы.
51 Ёпрст
 
10.10.13
14:43
(47) нет
52 Mikeware
 
10.10.13
14:49
(47) нет. _до_ записи.
(49) запись - не отменишь. Только проведение, или запись в проведении...
53 Эльниньо
 
10.10.13
15:08
Ветку не читал. Про коленку и стенку уже было?
54 ТеньД
 
10.10.13
17:28
(30) Результат проведения дока зависит от ответов юзера при проведении? Поясни, как будет проводить их обработка? Кто будет ей отвечать на вопросы?
55 Злопчинский
 
10.10.13
23:47
автору никто не объяснил, что проведение - это отражение сути хозяйственной операции. хозяйственная операция может состоять из совокупности хозяйственных операций поменьше. основная "характеристика" хозяйственной операции - ее предопределенность, то есть всегда известен порядок выполнения хозяйственной операции.
.
если впроведении надобность задавать вопросы - то явно, не все в порядке в консерватории. и наивно полагать, что юзер осмысливает вопрос ему заданный и каждый раз в уме решает задачку. чтобы определить правильный ответ на заданный вопрос. юзер тупо жмет что привычнее.
.
а к тому, что прострелить коленку - ну что вы на пианиста насели - играет как умеет. Расстрелять их всю консерваторию -надо в первую очередь, особенно дирижера. пианист сам умрет - негде будет выступать
56 Voronve
 
10.10.13
23:52
(0) И часто у тебя абстрактная Марьванна запуская на проведение такой документ уходит пить цай ?
57 КонецЦикла
 
11.10.13
02:25
(55) Да, но забавно и то, что если вопрос задается при каждом проведении, то при повторном проведении юзверь может ответить иначе. А если будет робот отвечать, то вообще приплыли.
58 Злопчинский
 
11.10.13
03:02
Вы не понимаете!!! это большая ПЕЧАТНАЯ МАШИНКА!!!!!
Машинистки нет - печать не осуществляется... А машинистка - грамотная, орфографию, пунктуацию, грамматику и прочее - знаетъ!!