2009-11-11 4 views
0

AX가 양식과 격자를 생성 할 때 모든 조회가 올바르게 채워지지만 조회 항목의 ID가 양식에 표시됩니다. 의미있는 값을 확인하는 유일한 방법은 필드를 클릭하는 것입니다. 실제로 이상적인 것은 아닙니다. ID 번호 대신 폼의 조회 값을 표시하는 방법이 있습니까?Axapta : 조회 필드에 ID 대신 문자열 값이 표시됩니까?

"tableB"양식에서 tableA_id 대신 tableA_value를 표시하고 싶습니다.

TABLEA

  • tableA_id (INT - 독특한)
  • tableA_value (문자열 - 고유하지 않은)

TableB의

  • tableB_id (INT - 독특한)
  • tableA_id (int - tableA와의 관계)
  • tableB_datafields (기타)

감사

답변

1

은 조회 자체의 값을 변경하는 방법을 찾을 수 없습니다, 그래서 조회가 변경 될 때마다 업데이트 그 옆에 정적 필드를 넣어.

표시 방법을 표 A에 : 여기에 내가 그 일을 결국 방법은

display [datatype] lookupName(tableA _tableA) 
{ 
    ; 
    return tableB::find(_tableA.[tableA id column]).[tableB string column]; 
} 

표 B에 방법을 찾기 :

static tableB find([datatype] [lookup variable], boolean _forUpdate = false, 
ConcurrencyModel _concurrencyModel = ConcurrencyModel::Auto) 
{ 
[TableB] [tableB]; 

if ([lookup variable]) 
{ 
    if (_forUpdate) 
    { 
     tableB.selectForUpdate(_forUpdate); 
     if (_concurrencyModel != ConcurrencyModel::Auto) 
     { 
      tableB.concurrencyModel(_concurrencyModel); 
     } 
    } 

    select firstonly tableB 
     where tableB.[lookup column] == [lookup variable]; 
} 
return tableB; 

}

추가 된 테이블 A와 B로 모두 양식의 데이터 소스.

양식에 문자열 필드를 추가했습니다.

테이블 A를 필드의 DataSource로, lookupName을 DataMethod로 설정하십시오.

은 조회 필드에 수정 된 방법은 정적 필드 업데이트 원인 추가 :이 사람을 도움이

element.redraw(); 

희망을.

관련 문제