注册 登录
编程论坛 VFP论坛

如下图:请教一下这种报表则么实现?

weiyisc 发布于 2022-07-31 18:44, 2748 次点击
只有本站会员才能查看附件,请 登录
20 回复
#2
sdta2022-07-31 19:07
在VFP中计算好,根据需求再在报表中打印。
#3
weiyisc2022-07-31 19:13
以下是引用sdta在2022-7-31 19:07:47的发言:

在VFP中计算好,根据需求再在报表中打印。


VFP能这样能画报表不?。。。。因为里面的明细是活动的。不是固定的。
#4
sdta2022-07-31 19:41
可以啊
#5
weiyisc2022-07-31 20:14
回复 4楼 sdta
只有本站会员才能查看附件,请 登录


这种设计报表的时候,要怎么设计?
#6
my23182022-07-31 20:51
回复 5楼 weiyisc
可以考虑输出一个excel表

[此贴子已经被作者于2022-7-31 20:53编辑过]

#7
吹水佬2022-07-31 21:13
可不可以将“人员认定区县”由占一列改为各占一行,即作为区县块的小标题,这样各区县块数据看起来更清晰。
#8
a575985872022-07-31 21:51
回复 楼主 weiyisc
这种报表还是很容易实现的,关键是医保上的数据不好提取,国家医保局新的接口有局限性。
#9
nbwww2022-08-01 06:23
可以用libxl输出一个EXCEL文件  难度不大
#10
weiyisc2022-08-01 08:04
VFP报表尝试过,确实不能设计出这种样式。
#11
吹水佬2022-08-01 08:39
以下是引用weiyisc在2022-8-1 08:04:35的发言:

VFP报表尝试过,确实不能设计出这种样式。

可以通过报表的编程接口自己绘制,就看有无必要。

#12
吹水佬2022-08-01 08:51
回复 5楼 weiyisc
从报表数据结构看,应该可以按报表格式设计一个DBF,先将要输出的数据统计好放到DBF,再通过报表文件直接输出。
#13
shenlancwz2022-08-03 14:28
这个太简单,做两个细节带,然后做设置分组,数据环境中两个表做关联就可以。
#14
gs25367856782022-08-04 16:27
楼上的朋友,这东东真的做起来,也太花时间了。
#15
hu9jj2022-08-06 09:07
通过分组汇总可以做出类似的报表,但无法做到完全一致。
#16
shenlancwz2022-08-09 17:33
回复 14楼 gs2536785678
几条命令就可以解决
#17
mywisdom882022-08-10 08:39
楼主的报表,明显就是EXECL做的,左边的县区,是相同的合拼的;
如果,观山湖区,等不合拼,这个报表也很容易做,没难度。
也就是这样

观山湖区,脱贫...
观山湖区,特困...
观山湖区,最低...
观山湖区,普通...
观山湖区,.......
        ,小计
云岩区,
云岩区,脱贫...
云岩区,特困...
云岩区,最低...
云岩区,普通...
云岩区,.......
      ,小计   
只有本站会员才能查看附件,请 登录


[此贴子已经被作者于2022-8-10 08:47编辑过]

#18
mywisdom882022-08-10 08:52
但如果,一定要完全相同的,也就是左边的相同的单元格,要合拼的,在不合拼的基础上,导出到EXCEL去,然后通过程序合拼相同的单元格,好像应该可以。
最后,就是在EXCEL中打印出来
#19
mywisdom882022-08-10 09:14
做成这样,很容易
只有本站会员才能查看附件,请 登录

但打印分页方面,是每页都要求有红框的这些?这个就要好好设计了。
只有本站会员才能查看附件,请 登录

#20
吹水佬2022-08-10 10:38
DBF数据大概是这样,报表文件有些线条打印时加点条件应该就可以。
只有本站会员才能查看附件,请 登录

只有本站会员才能查看附件,请 登录

程序代码:
CREATE CURSOR bb (区县 c(10),类别 c(10),费用 I)
CREATE CURSOR tt (区县 c(10),类别 c(10),费用 I)
FOR i=1 TO 10
    INSERT INTO tt VALUES ("区县"+TRANSFORM(i%2+1),"类别"+TRANSFORM(i%3+1),i%2+1)
    INSERT INTO tt VALUES ("区县"+TRANSFORM(i%3+1),"类别"+TRANSFORM(i%7+1),i%3+1)
    INSERT INTO tt VALUES ("区县"+TRANSFORM(i%5+1),"类别"+TRANSFORM(i%10+1),i%5+1)
ENDFOR
SELECT DISTINCT 区县 FROM tt INTO CURSOR tmp
SCAN
    SELECT SPACE(10) 区县,类别,费用 FROM tt WHERE tt.区县==tmp.区县 INTO CURSOR tmp2 READWRITE
    SELECT "    小计" 类别,SUM(费用) 费用 FROM tmp2 INTO CURSOR tmp3
    INSERT INTO tmp2 (类别,费用) SELECT * FROM tmp3
    GO CEILING(RECCOUNT("tmp2")/2) IN "tmp2"
    REPLACE tmp2.区县 WITH tmp.区县 IN "tmp2"
    INSERT INTO bb SELECT * FROM tmp2
ENDSCAN
SELECT "    合计" 区县,SUM(费用) 费用 FROM tt INTO CURSOR tmp3
INSERT INTO bb (区县,费用) SELECT * FROM tmp3
SELECT * FROM bb
#21
weiyisc2022-08-18 16:50
感谢各位大佬的指导,最后还是输出电子表格。直接打印算了。呵呵,简单些。
1