本帖最后由 Dreamsly 于 2010-01-30 18:34:49 编辑

解决方案 »

  1.   

    DepartN:=UserRQuery.fieldbyname('Depart').Value
    改成以下试试
    DepartN:=UserRQuery.fieldbyname('Depart').AsString;
      

  2.   

    我估计你用的是Access吧?把那个string值Trim一下,DepartN:= Trim(UserRQuery.fieldbyname('Depart').Value);
      

  3.   

    DepartN:=UserRQuery.fieldbyname('Depart').Value
    这句话是正确
    我把if  DepartN='销售部' then这句话去掉 if 后就能正常运行把 信息传递过来
      

  4.   

    在if 前面加一句ShowMessage(DepartN),看看是否是因为字段值包含空格或其它信息导致对比字符串不正确如果是,在存储部门信息之前进行处理.
      

  5.   

    楼上的补充:比如说你用的MSSQL,字段使用的Char,如果在保存过程中,
    字段长度不足定义长度,会以空格补充,导致程序中对比不正确.
    一,对比时使用Trim去掉空格
    二,字段采用varchar