Re: Из макроса узнать Id активного профиля или имя.

Доброго времени суток всем. Можно ли находясь в производстве, план пр-ва например узнать имя или идентификатор активного профиля? Чтото хелп перерыл но не нашел.......

Re: Из макроса узнать Id активного профиля или имя.

Профиль не доступен через API. А в контексте чего появилась такая задача?

Re: Из макроса узнать Id активного профиля или имя.

Стоит задача сделать набор выборок из системы, в зависимости от профиля.
Отсюда очень хочется получить список заказов и цехов отмеченных в данном профиле. По ИД профиля это делается очень просто.
Можете предложить другой способ решения задачи?

Re: Из макроса узнать Id активного профиля или имя.

План производства сам по себе содержит информацию о тех цехах, которые перечислены в профиле, или Набор выборок должен производится из информации, не попавшей в План производства?
Альтернативный подход - через API доступна информация о пользователе и его участии в группах документооборота (которые можно использовать и для своих настроек, например настроек макросов).

Re: Из макроса узнать Id активного профиля или имя.

Site2 писал(а):
Стоит задача сделать набор выборок из системы, в зависимости от профиля.
Отсюда очень хочется получить список заказов и цехов отмеченных в данном профиле. По ИД профиля это делается очень просто.
Можете предложить другой способ решения задачи?

Так а что за задача то? Что выбирать нужно и для чего в итоге?

Re: Из макроса узнать Id активного профиля или имя.

Константин, мне бы хотелось делать различные выборки из системы и крутить ими в различных направлениях.  Отчеты иногда бывают предельно сложные
Однако, в зависимости от профиля выборки делаются по разным заказам и цехам.

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

Re: Из макроса узнать Id активного профиля или имя.

Site2 писал(а):
делать различные выборки из системы и крутить ими в различных направлениях.

исчерпывающе.... :?
вопрос "зачем?" остался. Можете описать конкретную задачу/пример? Просто может есть какие-то способы ее решения более-менее готовые. Или может копать надо совсем в другом направлении...


Site2 писал(а):
Отчеты иногда бывают предельно сложные

можно пример посмотреть? Не отчета имеется в виду с точки зрения наборов данных и т.п., а желаемого результата (бланк, картинка, диаграмма и т.п.) с кратким хотя бы описанием, что это такое и зачем нужно.

Re: Из макроса узнать Id активного профиля или имя.

На самом деле различные формы отчетов возникают спонтанно.

Например, доводилось объединять в одном отчете как данные из плана изготовления и факта (группируя как подетально так и пооперационно) по профилю, причем иногда требуется подтянуть некоторые параметры номеклатуры, которые появляются из импорта + различные данные с ТП, например расцеховочный маршрут и.т.д.

Некоторые данные приходилось присоединять и сравнивать из наших действующих систем и.т.д.

Это тот небольшой список, с которым уже пересекались.

В дальнейшем наверняка потребуются какие-то другие данные...

Re: Из макроса узнать Id активного профиля или имя.

Ну например. Исходя из упоминавшейся уже вкладки "План производства\Отчет по трудоёмкости" требуется сделать три разновидности отчетов - подетальный(основной грид), по позичиям перечня ПСП (грид появляющийся при выборе "подробно") и итоговый по заказам. Причем к имеющимся на вкладке данным надо добавить еще информацию с закладки номенклатура "свод по номенклатуре", а также перечень деталей ограничить исходя из справочника номенклатуры (чтобы исключить материалы и т.д.) дабы не суммировать штуки с метрами и литрами...... Для выгрузки в отчет там половина данных недоступна, связанных обьектов нет. В теории можно наверное сделать макрос, который будет все это делать средствами АПИ, но учитывая размер профиля скорость его работы наверное не обрадует......

Re: Из макроса узнать Id активного профиля или имя.

Сводится все в принципе к необходимости иметь содержимое IN в условиях запросов
.... ORDER_ID in(.....
  CEHA_ID in(...
с привязкой к данному профилю.

Re: Из макроса узнать Id активного профиля или имя.

Не слушайте их, все можно!!! Только не средствами 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

Re: Из макроса узнать Id активного профиля или имя.

Станислав писал(а):
Не слушайте их, все можно!!! Только не средствами 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

а как на счёт того, что разработчик оставляет за собой право менять базу, в т.ч. имена таблиц, полей, связи и т.д.? при изменении всё глобально переписывать?

Re: Из макроса узнать Id активного профиля или имя.

Других вариантов нет, что поделаешь, если пользоваться средствами API - все либо работает медленнее , либо они вообще этого не предусмотрели. Приходится выкручиваться "крывыми методами"

Re: Из макроса узнать Id активного профиля или имя.

P.S. От кого-то слышал, что они хотят в своей базе вьюшки сделать, которые-то точно не должны менять результат запросов от обновления к обновлению. Пускай разработчики меня поправят, если я не то что-то услышал

Re: Из макроса узнать Id активного профиля или имя.

Станислав писал(а):
Не слушайте их, все можно!!! Только не средствами 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


Спасибо за ответ, это я знаю. Вот как раз ИД пользователя я хотел узнать в макросе, чтобы из макроса запустить процедурку и в качестве параметра передать ей ИД. Чтобы не заставлять пользователя выбирать из комбобокса.