我想确定字段值的前两个字符是否与值的有限列表之一匹配,即(“RG”,“HC”,“LP”等)可能是这些值的5-10个。我不在乎它是哪一个,只是它是“有效的”。如何在BQL中执行TSQL CHARINDEX或TSQL IN?
在SQL中,我可以用CHARINDEX或IN做到 - 我怎么用BQL做到这一点?
我大概可以做一个SWITCH/CASE,但看起来效率不高,就像这样拼出来。
具体来说,我想对于一个场做到这一点的DBCalced属性:上面犯规
[PXDBCalced(typeof(Switch<Case<Where<Substring<INItemLotSerial.lotSerialNbr,int1, int2>, In<EDType>>, Substring<INItemLotSerial.lotSerialNbr,int1, int2>>, StringEmpty>), typeof(string))]
的在好像做什么,我期待 - 不知道它是什么打算或如何使用<>因为我没有发现文档。我将EDType定义为一个常量字符串,其中所有值都以逗号分隔。
感谢
你想用它做什么?有一个布尔型字段,如果是这样的话,返回True/False?或者对这个计算的字段运行查询?请提供关于上下文的更多信息,但不清楚你为什么要这么做:) – Gabriel
我想让这个字段从记录中的另一个字段派生出来 - 如果前两个字符匹配我的标准值之一,然后使用那些否则字符会将字段留空。 – mag
你有没有想过使用FieldUpdated事件(在这种情况下,我认为它是INItemLotSerial_LotSerialNbr_FieldUpdated)简单地设置其他字段使用普通的C#代码? – Gabriel