Главная
Новый форум
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Смена операции движения

 
Post new topic   Reply to topic   printer-friendly view     Forum Index -> Программирование в БЭСТ-4
View previous topic :: View next topic  
Author Message
Andr_V



Joined: 11 Aug 2007
Posts: 6
Location: Andr_V
Occupation: опт
Interests: Н.Новгород

PostPosted: 13 Nov 2007 16:33    Post subject: Смена операции движения Reply with quote

Добрый день!
В реестре документов расхода на запись подключена программа. Но если по F5 сделать замену операции движения, то прога не отрабатывает. Есть ли надежда на подключение программ, навешанных на события проверка, запись документа к операциям по F5? Или может есть какой способ сделать это сейчас? (Б4+ 12.01 SP32)
Заранее спасибо за ответы.
Back to top
View user's profile Send private message
nordk



Joined: 27 Jun 2005
Posts: 1000
Location: Горбунов Константин
Occupation: БЭСТ-Партнер
Interests: СПб

PostPosted: 13 Nov 2007 16:36    Post subject: Reply with quote

Смена операции меняет расчет проводок.
А я всегда говорил что делать проводки на запись не есть гуд
Back to top
View user's profile Send private message Send e-mail
Andr_V



Joined: 11 Aug 2007
Posts: 6
Location: Andr_V
Occupation: опт
Interests: Н.Новгород

PostPosted: 13 Nov 2007 16:58    Post subject: Reply with quote

Проводки я не трогаю. При смене операции меняется кореспондирующий счет, а это мне и надо обрабатыва
Back to top
View user's profile Send private message
nordk



Joined: 27 Jun 2005
Posts: 1000
Location: Горбунов Константин
Occupation: БЭСТ-Партнер
Interests: СПб

PostPosted: 13 Nov 2007 17:04    Post subject: Reply with quote

Как Вы хотите его обрабатывать ?
Back to top
View user's profile Send private message Send e-mail
Andr_V



Joined: 11 Aug 2007
Posts: 6
Location: Andr_V
Occupation: опт
Interests: Н.Новгород

PostPosted: 13 Nov 2007 18:37    Post subject: Reply with quote

Есть куча счетов для кучи менеджеров, для каждого меджера три счета (типа 6201,6202,6203, групповой ввод аналитики), проводки делаются на один из счетов от выбранного типа документа (тут все нормально). Т.к. у типовой операции корр/счет один (6201), то при записи программа при необходимости пишет в mdoc->schet_a и mdocm->schet_a счет проводки (иначе по F10 справка неправильная). Вот тут при смене операции по F5 проводки-то делаются нужные, а в schet_a пишется кор/счет. Такой заты
Back to top
View user's profile Send private message
nordk



Joined: 27 Jun 2005
Posts: 1000
Location: Горбунов Константин
Occupation: БЭСТ-Партнер
Interests: СПб

PostPosted: 13 Nov 2007 19:54    Post subject: Reply with quote

Попробуйте в типовую операцию вставить проводку с формулой на харборе. А там задействуйте переменную которая будет семафорить, что сейчас проводка создается не при записи документа. А дальше думаю Вы знаете что и как. Есть еще событие на вход в реестр кстат
Back to top
View user's profile Send private message Send e-mail
Andr_V



Joined: 11 Aug 2007
Posts: 6
Location: Andr_V
Occupation: опт
Interests: Н.Новгород

PostPosted: 14 Nov 2007 17:21    Post subject: Reply with quote

Программа из проводки будет запускаться сколько строк в документе (при настройке создавать проводки по каждой строке) и как узнать, что было F5? В событии на вход в реестр нажатие F5 отловить не получилось.
И еще про F5: изменение документа никак не регистрируется в журнале, а изменения могут быть серьезными. В частности при проверке документа перед записью у нас отслеживается чтобы отпускная цена со всеми скидками не была ниже некоторой определенной, иначе сохранить документ не получится. А если по F5 выбрать замену отпускных цен то никакая проверка естественно не отрабатывает и никаких данных о совершившем это не сохраняется. Очень хотелось бы чтоб действия по F5 записывались в журна
Back to top
View user's profile Send private message
nordk



Joined: 27 Jun 2005
Posts: 1000
Location: Горбунов Константин
Occupation: БЭСТ-Партнер
Interests: СПб

PostPosted: 15 Nov 2007 13:56    Post subject: Reply with quote

Объясняю
Andr_V wrote:
Программа из проводки будет запускаться сколько строк в документе (при настройке создавать проводки по каждой строке) и как узнать, что было F5?

Можно узнать что она создавалась не из документа.
И сделать это можно следующим образом.
При входе в документ объявить переменную логическую скажем в
.T. а при событии запись возвращать ее в .f.
Тогда проводка будет видеть либо .f. либо вообще не видеть переменную в случае когда создавалась вне документа.

Quote:
В событии на вход в реестр нажатие F5 отловить не получилось.

А здесь тоже надо по-другому мыслить.
Вам ведь надо что ? Вам надо отловить факт замены операции.
А стало быть в некую переменную кладете значение код документа+номердокумента а во вторую код операции
И если в результате у вас при выполнении события код и номер документа не сменился то сравниваем код операции. Если он сменился стало быть это она и есть F5.
А Вы как отловить пытались ?

И еще про F5: изменение документа никак не регистрируется в журнале, а изменения могут быть серьезными. В частности при проверке документа перед записью у нас отслеживается чтобы отпускная цена со всеми скидками не была ниже некоторой определенной, иначе сохранить документ не получится. А если по F5 выбрать замену отпускных цен то никакая проверка естественно не отрабатывает и никаких данных о совершившем это не сохраняется. Очень хотелось бы чтоб действия по F5 записывались в журнал.[/quote]
Back to top
View user's profile Send private message Send e-mail
Andr_V



Joined: 11 Aug 2007
Posts: 6
Location: Andr_V
Occupation: опт
Interests: Н.Новгород

PostPosted: 15 Nov 2007 17:23    Post subject: Reply with quote

Отловить пытался известно как:
Code:
i:=lastkey()
do case
case i=K_F5
...

И если отметить несколько документов, то событие на вход в реестр возникнет один раз и при этом данные из mdoc будут считаны в соответствии с активной строкой на экране (которая может быть вообще не отмеченной). Способ не пройдет. С контролем отпускных цен вообще беда. Нет ли какого хитрого способа отключить в F5 пункт про цены? Вот если б при F5 обрабатывались события этих проблем не было бы.
Back to top
View user's profile Send private message
nordk



Joined: 27 Jun 2005
Posts: 1000
Location: Горбунов Константин
Occupation: БЭСТ-Партнер
Interests: СПб

PostPosted: 15 Nov 2007 17:40    Post subject: Reply with quote

Andr_V wrote:
Отловить пытался известно как:
Code:
i:=lastkey()
do case
case i=K_F5
...

Вы были бы правы если бы последней клавишей ENTER не нажимали

Quote:
И если отметить несколько документов, то событие на вход в реестр возникнет один раз

Оно будет возникать при каждом нажатии INS. А значит в массив можно положить строки которые надо проверить.

Других способов н
Back to top
View user's profile Send private message Send e-mail
Display posts from previous:   
Post new topic   Reply to topic   printer-friendly view     Forum Index -> Программирование в БЭСТ-4 All times are GMT + 4 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © phpBB Group

Rambler
Rambler's Top100 Рейтинг@Mail.ru