if  TbCheck1.Locate('GLRYDM;KHH',VarArrayOf([TbSource1['GLRYDM'],TbSource1['KHH']]),[loCaseInsensitive]) and Tbcheck1['']='f'
报错信息为
'Invalid variant type conversion'不知错在何处?
其中两个paradox表的‘glrydm’,‘’和‘khh’均为alpha型,是不是locate不可以带变量?

解决方案 »

  1.   

    应该是这里错误吧Tbcheck1['']='f'
    这是什么类型?
      

  2.   

    改为if  TbCheck1.Locate('GLRYDM;KHH',VarArrayOf([TbSource1['GLRYDM'],TbSource1['KHH']]),[loCaseInsensitive]) and Tbcheck1[''].AsString='f'后,报错‘variant does not reference an automation object’。另外请问.AsString只用于数据及的强制类型转换吗?为什么其他变量不可以。
      

  3.   

    应该用Tbcheck1.fieldbyname('').asstring='f'吧.
      

  4.   

    应该是Tbcheck1.fieldbyname('').asstring='f'吧.