Acumatica - Как добавить фильтр PostalCode в Location Selector - PullRequest
0 голосов
/ 04 октября 2019

Мы добавили CustomerLocationID на экран «Заказ на продажу» и хотим отфильтровать его по почтовому индексу, а также по обычному LocationID и названию местоположения. Из того, что я прочитал, это должно быть так же просто, как добавить PostalCode к FastFilterFields в Grid, но это не работает. Я подумал, что, возможно, установка AllowSearch в true будет работать, но это не так. Это на самом деле возможно, или я делаю что-то не так?

<px:PXSegmentMask CommitChanges="True" ID="edCustomerLocationID" runat="server" AutoRefresh="True" DataField="CustomerLocationID" DataSourceID="ds" > <GridProperties FastFilterFields="PostalCode" /> <GridProperties AllowSearch="True" /></px:PXSegmentMask>

1 Ответ

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

Поле Почтовый индекс не включено в таблицу Местоположение . Он включен в таблицу Address .

. Вы можете объединить обе таблицы с помощью этого запроса:

Select * from Location
inner join Address
on
Address.CompanyID = Location.CompanyID
and Address.AddressID = Location.DefAddressID

В вашем сценарии вы, скорее всего, используете атрибут [LocationID ()] для вашего поля. Этот атрибут инкапсулирован и не является простой модификацией.

Я бы рекомендовал переопределить атрибуты поля с помощью базовых атрибутов, например

[PXDBInt]

[PXUIFIeld],и т. д.

Что касается селектора, убедитесь, что вы объединяете 2 таблицы с условием объединения, включенным выше. Помните, что это должен быть [PXDimensionSelector] с DimensionName = "LOCATION"

...