主题:关于条件表达式
独钓一江水
[专家分:0] 发布于 2008-05-28 21:11:00
表格grid1的数据源为:表<库存>,其内容如下:
药品编号 药品名称 规格 剂型 批号 库存数量 ......
1 安络血 1mg 片剂 200801 50 ......
2 安络血 1mg 针剂 199901 60 ......
1 安络血 1mg 片剂 201002 100
2 安络血 1mg 针剂 200801 200 ......
编号、名称、规格、剂型均相同的视为同一种药,同一种药有不同的批号
目的一:如何设置gird1,使不同批号的同一种药的库存总量少于200时,其前景色以红色显示
即如上表中的第一条与第三条记录显示为红色
目的二:在另一查询表单中,查询库存总量(同一种药不同批号的库存量的总和)少于200的
药品,显示于grid中,查询条件要如何写
回复列表 (共5个回复)
沙发
cbl518 [专家分:57140] 发布于 2008-05-29 00:39:00
在另一查询表单中,查询库存总量(同一种药不同批号的库存量的总和)少于200的
药品,显示于grid中,查询条件要如何写
SELECT 药品编号,药品名称,规格,剂型,批号,SUM(库存数量) AS 总库存数 FROM 库存 ;
GROUP BY 批号药,品编号 HAVING 总库存数<200 INTO CURSOR temp1
板凳
cbl518 [专家分:57140] 发布于 2008-05-29 00:54:00
目的一:如何设置gird1,使不同批号的同一种药的库存总量少于200时,其前景色以红色显示
即如上表中的第一条与第三条记录显示为红色
SELECT TRIM(药品名称-批号),SUM(库存数量) AS 总库存数 FROM 库存 ;
GROUP BY 批号药,品编号 HAVING 总库存数<200 INTO ARRAY A1
显示为红色条件表达式:
IIF(ASCAN(A1,TRIM(药品名称-批号) )>0, RGB(255,0,0),RGB(255,255,255))
3 楼
cbl518 [专家分:57140] 发布于 2008-05-29 00:55:00
目的一:如何设置gird1,使不同批号的同一种药的库存总量少于200时,其前景色以红色显示
即如上表中的第一条与第三条记录显示为红色
SELECT TRIM(药品名称-批号),SUM(库存数量) AS 总库存数 FROM 库存 ;
GROUP BY 1 HAVING 总库存数<200 INTO ARRAY A1
显示为红色条件表达式:
IIF(ASCAN(A1,TRIM(药品名称-批号) )>0, RGB(255,0,0),RGB(255,255,255))
4 楼
独钓一江水 [专家分:0] 发布于 2008-05-29 12:54:00
谢谢老师,我先试试.
5 楼
fyyylyl [专家分:8550] 发布于 2008-05-29 17:56:00
Select 药品编号,Sum(库存数量) As 库存总量 Into Table 库存总量
Index On 药品编号 Tag 药品编号
以“库存总量”作为另一表单grid的数据源;
Select 库存
Set Relation To 药品编号 Into 库存总量
.Gird1.Refresh:
This.SetAll("DynamicForecolor","IiF(库存总量.库存总量<200,RGB(255,0,0),RGB(0,0,0))", "Column")
我来回复