您的视图需要包含格式 Name|ID 的值(这是一个管道符号),以实现您想要的。
列值:
Benz|1
Fiat|2
Yamaha|3
回复您的评论:最佳实践(性能方面)是,在您的视图中使用公式创建一个单独的列Name + "|" + ID
(您可以隐藏它,如果您将视图用于用户和 DBColumn,顺便说一句,这将是不好的做法) .
如果您不想这样做,那么您的公式可能如下所示:
_names := @DbColumn("" : "NoCache"; ""; "myview"; 2);
_ids := @DbColumn("" : "NoCache"; ""; "myview"; 1);
_names + "|" + @Text(_ids)
如果您曾经了解 Notes 的工作原理,那么您真的应该接受 Lotus Notes 设计方面的培训,因为这些都是基础知识。
上面的公式在很多方面都不好:
- “NoCache”的使用是一个真正的性能杀手。不要在大型应用程序中这样做
- 进行两次查找而不是一次查找会使您的响应时间加倍
- 每个查找都必须进行错误处理,否则如果其中有错误,您的表单将不再打开。
- 如果您的 DBColumn 返回大于 32k 的数据(大列表),由于 Lotus Notes 中的字段限制,整个事情都会失败
执行此操作的“最佳实践”方法(忽略可能的 32k 错误)是:
使用公式创建具有(隐藏的)第三列的视图Name + "|" + ID
使用此代码:
_view := "myview";
_col := 3;
_lkp := @DBColumn( "" : "Cache" ; "" ; _view; _col );
@If( @IsError( _lkp ) ; "" ; _lkp )