Re: Из макроса узнать Id активного профиля или имя.
Доброго времени суток всем. Можно ли находясь в производстве, план пр-ва например узнать имя или идентификатор активного профиля? Чтото хелп перерыл но не нашел.......
Вы не вошли. Пожалуйста, войдите или зарегистрируйтесь.
TechnologiCS → TechnologiCS → Использование TechnologiCS API → Из макроса узнать Id активного профиля или имя.
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Доброго времени суток всем. Можно ли находясь в производстве, план пр-ва например узнать имя или идентификатор активного профиля? Чтото хелп перерыл но не нашел.......
Профиль не доступен через API. А в контексте чего появилась такая задача?
Стоит задача сделать набор выборок из системы, в зависимости от профиля.
Отсюда очень хочется получить список заказов и цехов отмеченных в данном профиле. По ИД профиля это делается очень просто.
Можете предложить другой способ решения задачи?
План производства сам по себе содержит информацию о тех цехах, которые перечислены в профиле, или Набор выборок должен производится из информации, не попавшей в План производства?
Альтернативный подход - через API доступна информация о пользователе и его участии в группах документооборота (которые можно использовать и для своих настроек, например настроек макросов).
Site2 писал(а):
Стоит задача сделать набор выборок из системы, в зависимости от профиля.
Отсюда очень хочется получить список заказов и цехов отмеченных в данном профиле. По ИД профиля это делается очень просто.
Можете предложить другой способ решения задачи?
Так а что за задача то? Что выбирать нужно и для чего в итоге?
Константин, мне бы хотелось делать различные выборки из системы и крутить ими в различных направлениях. Отчеты иногда бывают предельно сложные
Однако, в зависимости от профиля выборки делаются по разным заказам и цехам.
При этом в выборках каждый раз перечислять все заказы и цехи, которые в профиле не всегда удобно. Куда удобнее было бы задавать на входе профиль и получать уже желаемый результат
Site2 писал(а):
делать различные выборки из системы и крутить ими в различных направлениях.
исчерпывающе.... :?
вопрос "зачем?" остался. Можете описать конкретную задачу/пример? Просто может есть какие-то способы ее решения более-менее готовые. Или может копать надо совсем в другом направлении...
Site2 писал(а):
Отчеты иногда бывают предельно сложные
можно пример посмотреть? Не отчета имеется в виду с точки зрения наборов данных и т.п., а желаемого результата (бланк, картинка, диаграмма и т.п.) с кратким хотя бы описанием, что это такое и зачем нужно.
На самом деле различные формы отчетов возникают спонтанно.
Например, доводилось объединять в одном отчете как данные из плана изготовления и факта (группируя как подетально так и пооперационно) по профилю, причем иногда требуется подтянуть некоторые параметры номеклатуры, которые появляются из импорта + различные данные с ТП, например расцеховочный маршрут и.т.д.
Некоторые данные приходилось присоединять и сравнивать из наших действующих систем и.т.д.
Это тот небольшой список, с которым уже пересекались.
В дальнейшем наверняка потребуются какие-то другие данные...
Ну например. Исходя из упоминавшейся уже вкладки "План производства\Отчет по трудоёмкости" требуется сделать три разновидности отчетов - подетальный(основной грид), по позичиям перечня ПСП (грид появляющийся при выборе "подробно") и итоговый по заказам. Причем к имеющимся на вкладке данным надо добавить еще информацию с закладки номенклатура "свод по номенклатуре", а также перечень деталей ограничить исходя из справочника номенклатуры (чтобы исключить материалы и т.д.) дабы не суммировать штуки с метрами и литрами...... Для выгрузки в отчет там половина данных недоступна, связанных обьектов нет. В теории можно наверное сделать макрос, который будет все это делать средствами АПИ, но учитывая размер профиля скорость его работы наверное не обрадует......
Сводится все в принципе к необходимости иметь содержимое IN в условиях запросов
.... ORDER_ID in(.....
CEHA_ID in(...
с привязкой к данному профилю.
Не слушайте их, все можно!!! Только не средствами API,а через ADODB цепляясь к базе и SQL-запросом достать все что нужно
P.S. Вот запрос, выдающий какие профиля назначены пользователю по его ID
Select NORDPROFILE.NORDERPROFILE_NAME AS Название, NORDPROFILE.NORDPROFILE_REM AS Комментарий
From NORDPROFILE, NORDPROFILE_USR
WHERE NORDPROFILE_USR.NORDPROFILE_ID = NORDPROFILE.NORDPROFILE_ID
AND NORDPROFILE_USR.USER_ID = 1163
Станислав писал(а):
Не слушайте их, все можно!!! Только не средствами API,а через ADODB цепляясь к базе и SQL-запросом достать все что нужно
P.S. Вот запрос, выдающий какие профиля назначены пользователю по его ID
Select NORDPROFILE.NORDERPROFILE_NAME AS Название, NORDPROFILE.NORDPROFILE_REM AS Комментарий
From NORDPROFILE, NORDPROFILE_USR
WHERE NORDPROFILE_USR.NORDPROFILE_ID = NORDPROFILE.NORDPROFILE_ID
AND NORDPROFILE_USR.USER_ID = 1163
а как на счёт того, что разработчик оставляет за собой право менять базу, в т.ч. имена таблиц, полей, связи и т.д.? при изменении всё глобально переписывать?
Других вариантов нет, что поделаешь, если пользоваться средствами API - все либо работает медленнее , либо они вообще этого не предусмотрели. Приходится выкручиваться "крывыми методами"
P.S. От кого-то слышал, что они хотят в своей базе вьюшки сделать, которые-то точно не должны менять результат запросов от обновления к обновлению. Пускай разработчики меня поправят, если я не то что-то услышал
Станислав писал(а):
Не слушайте их, все можно!!! Только не средствами API,а через ADODB цепляясь к базе и SQL-запросом достать все что нужно
P.S. Вот запрос, выдающий какие профиля назначены пользователю по его ID
Select NORDPROFILE.NORDERPROFILE_NAME AS Название, NORDPROFILE.NORDPROFILE_REM AS Комментарий
From NORDPROFILE, NORDPROFILE_USR
WHERE NORDPROFILE_USR.NORDPROFILE_ID = NORDPROFILE.NORDPROFILE_ID
AND NORDPROFILE_USR.USER_ID = 1163
Спасибо за ответ, это я знаю. Вот как раз ИД пользователя я хотел узнать в макросе, чтобы из макроса запустить процедурку и в качестве параметра передать ей ИД. Чтобы не заставлять пользователя выбирать из комбобокса.
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
TechnologiCS → TechnologiCS → Использование TechnologiCS API → Из макроса узнать Id активного профиля или имя.