Joined: 22 Feb 2002 Posts: 61 Location: Антонова О.В. Occupation: ЗАО "Биотехнотроник", программист Interests: Санкт-Петербург
Posted: 13 Dec 2005 16:39 Post subject: Задачка по изменению меню в "Расчеты-Договора"
Добрый день! Возникла вот какая задачка: есть модуль "Расчеты-Договора", в котором напрочь отсутствуют любые настройки по авторизации (хотя в принципе, если в cash.dbf забить что-нибудь вручную - пароль начинает спрашивать, но речь, к сожалению, не об этом). Ввели несколько видов договоров - например, договора закупки, продажи, тех.отделов и т.д. Начальству ну очень надо, чтобы люди, ведущие в этом модуле договора продажи (допустим), не могли увидеть ни одного договора закупки. Посмотрела, как все реализуется - в каталоге contract в соответствующей строчке cn_menu прописан вызов функции CN_Dogs() - без параметров, к сожалению. И судя по всему, эта функция берет все содержимое БД vidcontr (в котором и прописаны все введенные нами виды договоров) и выводит его в меню следующего уровня - и там уже по выбранному виду договоров прорисовывает основной экран работы с договорами. Если кто мало работал с этим модулем - та же ситуация и в "Товарах, готовая продукция", когда идет выбор вида движения после выбора пункта меню "Учет движения товаров". Может, кто-нибудь знает, как можно вклиниться в этот механизм, повесив проверку кода пользователя и выводя ему в меню только те строчки, которые ему позволено видеть? Была идея повесить вместо CN_DOGS вызов своего fileeval-а с фильтром на БД vidcontr, и уже оттуда вызывать CN_DOGS(), но нет уверенности, что все это будет достаточно надежно работать, особенно для пользователей, работающих в данный момент внутри модуля, или пытающихся что-то зарегистрировать на договор. Если же писать полностью свое меню, то придется отказаться от вызова CN_DOGS (он тоже выводит меню), а переписывать весь модуль ввода и редактирования договоров пока что-то не хочется. Есть ли у кого-нибудь мысли по этому поводу?
Joined: 27 Jun 2005 Posts: 1000 Location: Горбунов Константин Occupation: БЭСТ-Партнер Interests: СПб
Posted: 13 Dec 2005 16:48 Post subject:
Встроенной возможности авторизации к документу в БЭСТе нет - раз функция вызывается то дальше тока свой аналог написать или ждать реализацию подобного решения в БЭСТ-5.
Любые фильтры простейшим DBPUSH() уберутся, скоп еще вероятно продержится, но решение будет "кривое"
Joined: 22 Feb 2002 Posts: 61 Location: Антонова О.В. Occupation: ЗАО "Биотехнотроник", программист Interests: Санкт-Петербург
Posted: 13 Dec 2005 16:54 Post subject:
Да нет, имелось в виду не встроенной авторизацией воспользоваться, авторизацию я и сама напишу, а вот куда ее вклинить, чтоб потом не переписывать все, что в БЭСТ идет после вызова этой функции? Да, забыла написать - это БЭСТ-4 12.01 SP6.
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