Фильтр в Acumatica не соответствует безопасности на уровне строк - PullRequest
0 голосов
/ 02 октября 2019

, пожалуйста, помогите мне: (

Поле Pricecode на экране Sale-price-sheet (AR202010) в acumatica. Когда я выбираю priceType = customer, код цены показывает всех клиентов и не следует уровню строкиБезопасность, которую я установил.

Я просматривал некоторые поля клиентов на другом экране, но фильтр по-прежнему корректен.

Извините, я плохо разбираюсь в английском, надеюсь, все понимают, что яЯ говорю. Большое спасибо.

1 Ответ

0 голосов
/ 08 октября 2019

Вероятно, это ошибка в Acumatica, и я бы предложил открыть кейс по этой проблеме, чтобы они могли это исправить в следующем выпуске. В то же время вы можете создать PXGraphExtension из ARPriceWorksheetMaint и переопределить представление CustomerCode, чтобы добавить ограничения группы Customer.

public class ARPriceWorksheetMaintExtension : PXGraphExtension<ARPriceWorksheetMaint>
{

    #region Views

    public PXSelectJoin<BAccount,
                                    InnerJoin<Customer, On<Customer.bAccountID, Equal<BAccount.bAccountID>>>,
                                    Where2<
                                            Where<Match<Customer, Current<AccessInfo.userName>>>,
                                            And<
                                                Where<BAccount.type, Equal<BAccountType.customerType>,
                                                    Or<BAccount.type, Equal<BAccountType.combinedType>>>>>> customerCode;

    #endregion

}

В фрагменте кода я создал представление кода customerCode (с строчной буквой c)который переопределит представление CustomerCode Acumatica. На мой взгляд, я добавил Inner Join to Customer, чтобы я мог добавить Match <> для Customer, который будет применять групповые ограничения для выбора. Это изменит запрос атрибута селектора, потому что в ARPriceWorksheetMaint Acumatica переопределяет метод ExecuteSelect, чтобы изменить BQL для использования BQL представления CustomerCode.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...