Не удалось найти (вам не хватает директивы использования или ссылки на сборку?)

Я только что создал новое поле на экране SOOrder и хочу взять значение userRole по умолчанию для текущего входа пользователя в это текстовое поле, но оно получило ошибку выше. Это моя кодировка:

 //Layout Editor: SO301000 (Sales Orders)
 [PXDBString(64)]
 [PXDefault(typeof(Coalesce<Search<UsersInRoles.userName,  Where<UsersInRoles.userName, Equal<Current<AccessInfo.userName>>>>, 
        Search<BAccount.ownerID, Where<BAccount.bAccountID, Equal<Current<SOOrder.customerID>>>>>), 
        PersistingCheck = PXPersistingCheck.Nothing)]
 [PXUIField(DisplayName="Current User" , Enabled = false)]

 error: Cannot implicitly convert type 'PX.Data.PXResultset' to 'PX.SM.UsersInRoles' in file: Code#SOOrderEntry(80)
 error: 'PX.Data.PXRowSelectingEventArgs' does not contain a definition for 'NewValue' and no extension method 'NewValue' accepting a first argument of type 'PX.Data.PXRowSelectingEventArgs' could be found (are you missing a using directive or an assembly reference?) in file: Code#SOOrderEntry(83)

Пожалуйста помоги!!!


person YSP    schedule 07.07.2016    source источник


Ответы (1)


Users и UsersInRoles DAC расположены в пространстве имен PX.SM. Вы должны либо использовать using PX.SM;, либо каждый раз указывать пространство имен для этих классов, например PX.SM.UsersInRoles.username

P.S. Некоторые буквы имеют неправильный регистр в вашем примере:

UsersInRoles.userName -> UsersInRoles.username

Users.userName -> Users.username

Users.PKID -> Users.pKID

person Dmitrii Naumov    schedule 07.07.2016
comment
Я уже добавил используя PX.SM; в разделе «Настройка бизнес-логики», но по-прежнему получаю ту же ошибку. - person YSP; 07.07.2016
comment
Можете ли вы добавить полное содержимое файла к вопросу? Это будет полезно. Также можно попробовать второй способ. Это работает? - person Dmitrii Naumov; 07.07.2016
comment
На экране SOOrder я хочу добавить новое поле, в котором хранится userRole текущего входа пользователя, но SOOrder имеет только идентификатор владельца, поэтому мне нужно присоединиться к другим, таким как UsersInRole, для получения имени пользователя. Я отредактирую свой вопрос выше, поэтому, пожалуйста, проверьте его. - person YSP; 07.07.2016