程序:
sql.add('select 名称,sum(数量) 总数量, sum(金额) 总金额');
sql.Add('from company ');
sql.add(' where 名称= '''+trim(combobox1.text)+'''');
sql.Add(' group by 名称');从combobox中选择名称查询,库中明明有这条记录,为什么查不出来呢?
decisionquery、decisioncube、decisionsource、decisiongrid都设置好了
错误提示:
can not built decisioncube with empty dataset!

解决方案 »

  1.   

    先在查询分析器里执行一下你的SQL语句试试
      

  2.   

    to :zhangl_cn(不做和尚了!) 
    可以啊
      

  3.   

    用SQL.ADD的话。你最好在前面加条sql.clear语句。
    用combobox1.items.string[]试试
      

  4.   

    先close,然后sql.text,然后open,试试
    然后跟踪一下SQL看取到的是什么
      

  5.   

    改成combobox1.items.string[1]还是同样的提示错误
      

  6.   

    我认为应写为:
    sql.add('select 名称,sum(数量) as 总数量, sum(金额)  as 总金额');
    sql.Add('from company ');
    sql.add(' where 名称= '+''''+trim(combobox1.text)+'''');
    sql.Add(' group by 名称')
    这样可以没问题了
      

  7.   

    注意sql语句应写对,该空格的空格
      

  8.   

    改成:sql.add(' where 名称= '+''''+trim(combobox1.text)+'''');
    还是 empty dataset
      

  9.   

    show一下 ,可能是sql语句的错误
      

  10.   

    试试
    sql.add('select 名称,sum(数量) as 总数量, sum(金额)  as 总金额');
    sql.Add('from company ');
    //sql.add(' where 名称= '+''''+trim(combobox1.text)+'''');
    sql.Add(' group by 名称')
    再试试
    sql.add('select 名称,sum(数量) as 总数量, sum(金额)  as 总金额');
    sql.Add('from company ');
    //sql.add(' where 名称= '+''''+trim(combobox1.text)+'''');
    //sql.Add(' group by 名称')
    再试试
    sql.add('select *‘);
    sql.Add('from company ');
    //sql.add(' where 名称= '+''''+trim(combobox1.text)+'''');
    //sql.Add(' group by 名称')
      

  11.   

    var
      cbox:string;sql.clear;
    sql.add('select 名称,sum(数量) as 总数量, sum(金额)  as 总金额 from company');
    sql.add(' where 名称= :cbox group by 名称');
    paramters.paramByName('cbox').value:= Trim(combobox1.text);
    试试。