Как сделать невидимым поле поиска?
Я хочу взять значение из поля поиска. Но я не хочу сделать это поле невидимым. Мой код такой:
public void lookup()
{
Query query = new Query();
QueryBuildDataSource queryBuildDataSource;
QueryBuildRange queryBuildRange;
SysTableLookup sysTableLookup = SysTableLookup::newParameters(tableNum(MYTable), this);
sysTableLookup.addLookupField(fieldNum(MYTable, FieldTableA));
sysTableLookup.addLookupField(fieldNum(MYTable, FieldTableB));
sysTableLookup.addLookupField(fieldNum(MYTable, RecId), true);
queryBuildDataSource = query.addDataSource(tableNum(MYTable));
sysTableLookup.parmQuery(query);
sysTableLookup.performFormLookup();
}
Итак, мне нужно заполнить поле RecID, но я не хочу видеть RecId в моем поиске.
Возможно?
Или другой вопрос: возможно ли получить два значения для одной и той же записи, в моем случае получить значения из MyTable.FieldTableA и Mytable.FieldTableB?
2 ответа
Нет, это невозможно при стандартном поиске, насколько я могу судить. Вы можете увидеть, как он создает динамическую форму поиска здесь:
\Classes\SysTableLookupBase\buildGrid
Вы можете сделать свою собственную форму поиска.
Перечитав свой вопрос, вы захотите сделать обычную и базовую функциональность.
Это называется использованием Referenced Data Sources
, Увидеть ниже:
https://msdn.microsoft.com/en-us/library/gg845085.aspx
Вы можете посмотреть, как адреса (LogisticsPostalAddress
) хранятся на объектах, таких как SalesTable
видеть.