2016-06-15 3 views
1

여러 개의 사용자 지정 선택기가있는 사용자 지정 화면이있어서 드롭 다운 목록을 기반으로 선택하는 내용이 변경됩니다.사용자 지정 선택기 과제

내가 구현 한 해결책은 앞의 경우에 표시됩니다. Dynamically changing PXSelector in Acumatica (감사합니다).

나의 도전은 두 가지이다 : 드롭 다운 선택 "없음 조회가"없는 경우

1.) 나는이 PXSelector 속성은 본질적으로 제거하려면 - 그냥 텍스트 입력을 떠나. 이것이 가능할 지 확실하지 않은 경우 ...

2.) 셀렉터 중 하나 (프로젝트라고 가정 해 봅시다)가 선택되면 다음 선택기 (작업을 가정 해 봅시다)를 선택하여 프로젝트가 선택되었습니다.

덕분에 많은 ...

답변

1

1) 나는이 작업을 수행 할 수있는 유일한 방법은 자신의 속성을 만드는 것입니다 생각합니다. 그런

뭔가 :

public class PXSelectorTextEditAttribute : PXSelectorAttribute 
{ 
    bool selectorMode; 
    public PXSelectorTextEditAttribute(Type type, bool selectorOn):base(type) 
    { 
     selectorMode = selectorOn; 
    } 
    public override void FieldVerifying(PXCache sender, PXFieldVerifyingEventArgs e) 
    { 
     if(selectorMode) 
     base.FieldVerifying(sender, e); 
    } 

    public static void SwitchSelectorMode(PXSelectorTextEditAttribute attribute, bool onOff) 
    { 
     attribute.selectorMode = onOff; 
    } 
} 

당신은에와 속성의 '선택'부분을 끌 수있을 것입니다. 필드 검증을 해제하면 간단한 텍스트 편집기 필드와 마찬가지로 필드에 값을 입력 할 수 있습니다. 그러나 필드의 오른쪽 끝에있는 조회 단추가 계속 표시됩니다. 어떻게 숨길 지 모르겠습니다.

2)이 동작은 쉽게 구현할 수 있습니다. '또한 돈 Or<Current<Filter.cashAccountID>, isNull>

을 추가하여 cashaccount이 정의되지 않은 경우 모든 기록을 보려면

[PXSelector(typeof(Search<CABankTran.tranID, Where<CABankTran.cashAccountID, Equal<Current<Filter.cashAccountID>>>>))] 

는 다음 방금 where 절을 수정 : 당신은 (cashaccount에 따라 예)처럼 뭔가가 필요합니다 aspx의 PXSelector에 AutoRefresh="true"을 추가하는 것을 잊지 마십시오. 선택기가 없으면 선택기는 내부의 새로 고침을 누를 때까지 레코드 목록을 유지합니다.

+0

감사 Dmitry. 도움이되었습니다. – pmfith

관련 문제