화면의 특정 입력란을 사용 중지 할 때를 결정할 수있는 청구서 및 조정에 맞춤 드롭 다운 입력란이 있습니다. 다음과 같은 논리를 사용하고 있는데, 작동하지 않는 것 같습니다 (주석 처리 된 행은 작동하지 않습니다). 나는 사용자 필드에 true로 commitchanges를 설정 한 - 그리고 나는 그것이 타격을 받고있어 확인하기 위해 코드를 강화했습니다청구서 및 조정에서 입력란을 사용할 수 없습니다.
protected virtual void APInvoice_UsrPOStatus_FieldUpdated(PXCache sender, PXFieldUpdatedEventArgs e)
{
var apr = (APRegister)e.Row;
if (apr == null) return;
var aprext = PXCache<APRegister>.GetExtension<APRegisterExt>(apr);
if (aprext == null) return;
if (aprext.UsrPOstatus != "Open")
{
PXUIFieldAttribute.SetEnabled<APRegister.docType>(sender, apr, false);
PXUIFieldAttribute.SetEnabled<APRegister.refNbr>(sender, apr, false);
//PXUIFieldAttribute.SetEnabled<APInvoice.docType>(Base.Document.Cache, null, false); //(OpenSourceDataDetail.Cache, null, true);
//PXUIFieldAttribute.SetEnabled<APInvoice.refNbr>(Base.Document.Cache, null, false);
}
}
내가 오류를 얻을 수 없지만, 아무 일도 발생하지 않습니다. 이 필드를 비활성화 할 수 있습니까?
APInvoice를 사용할 지 APRegister를 사용 할지도 확실하지 않습니다.
APInvoice는 APRegister에서 상속됩니다. 나는 기본 그래프를 따르고 타입 캐스팅을 피하기 위해 APInvoice를 사용할 것입니다. –