У меня есть настройка экрана ввода данных о сотрудниках (EP305000), которая включает функцию загрузки в Excel в сетку вкладок Сведения.Я сделал это, добавив атрибут [PXImport (typeof (EPTimeCard))] к повторному объявлению представления «Деятельности» в расширении TimeCardMaint BLC следующим образом:
[PXImport(typeof(EPTimeCard))]
[PXViewName(PX.Objects.EP.Messages.TimeCardDetail)]
public PXSelectJoin<EPTimecardDetail,
InnerJoin<CREmployee,
On<CREmployee.userID, Equal<EPTimecardDetail.ownerID>>,
LeftJoin<CRActivityLink,
On<CRActivityLink.noteID, Equal<EPTimecardDetail.refNoteID>>,
LeftJoin<CRCase,
On<CRCase.noteID, Equal<CRActivityLink.refNoteID>>,
LeftJoin<PX.Objects.AR.Customer,
On<PX.Objects.AR.Customer.bAccountID, Equal<CRCase.customerID>>,
LeftJoin<PX.Objects.EP.TimeCardMaint.ContractEx,
On<PX.Objects.EP.TimeCardMaint.ContractEx.contractID, Equal<CRCase.contractID>>,
LeftJoin<PMProject,
On<PMProject.contractID, Equal<EPTimecardDetail.projectID>>>>>>>>,
Where<CREmployee.bAccountID, Equal<Current<EPTimeCard.employeeID>>,
And<EPTimecardDetail.weekID, Equal<Current<EPTimeCard.weekId>>,
And<EPTimecardDetail.trackTime, Equal<True>,
And<EPTimecardDetail.approvalStatus, NotEqual<ActivityStatusListAttribute.canceled>,
And<Where<EPTimecardDetail.timeCardCD, IsNull, Or<EPTimecardDetail.timeCardCD, Equal<Current<EPTimeCard.timeCardCD>>>>>>>>>,
OrderBy<Asc<EPTimecardDetail.date>>> Activities;
Я также установил свойство «AllowImport»сетки на «True».Кажется, это работает нормально, за исключением того, что поле «ProjectTask» загрузки не позволяет отображать - то есть, если вы проходите процесс импорта, когда вы попадаете в часть отображения полей, вы не можете отобразить поле Excel для ProjectTask.в ProjectTask сетки.Это просто не отображается.
Может ли это быть из-за того, что у исходного BLC есть метод делегата для «действий», которые я не воспроизводил в своем расширении?
В чем может быть причина запрета сопоставления с полем ProjectTask?