| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛 | 
共有 919 人关注过本帖
标题:求助如何按凭证类型月份分类统计凭证张数
只看楼主 加入收藏
jmlwy
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2026-9-17
收藏
 问题点数:0 回复次数:13 
求助如何按凭证类型月份分类统计凭证张数
求助根据凭证记录按凭证类型月份分类统计凭证张数,保存另一个凭证统计文件。
图片附件: 游客没有浏览图片的权限,请 登录 或 注册

图片附件: 游客没有浏览图片的权限,请 登录 或 注册

凭证分类统计.zip (342.49 KB)
文件名称:PZLX2025.DBF是需要生成的统计凭证张数文件,文件名:A_Z2025.DBF凭证记录。
说明:字段PZLXJC凭证简称,PZNO1至PZNO12字段类型数值代表从1至12月。                                
PZLXDM    PZLXJC    PZLXMC    PZJFKM_1    PZJFKM_2    PZDFKM_1    PZDFKM_2    PZBYKM_1    PZBYKM_2    PZBWKM_1    PZBWKM_2    PZNO1    PZNO2    PZNO3    PZNO4    PZNO5    PZNO6    PZNO7    PZNO8    PZNO9    PZNO10    PZNO11    PZNO12   
001    记账    记账凭证                                    9     14     12     13     12     13     13     14     13     13     14     13     0
002    收款    收款凭证                                    0     0     0     0     0     0     0     0     0     0     0     0     0
003    付款    付款凭证                                    0     0     0     0     0     0     0     0     0     0     0     0     0
004    转账    转账凭证                                    0     0     0     0     0     0     0     0     0     0     0     0     0
002    票据    记账凭证                                    0     0     0     0     0     0     12     0     10     8     9     11     0
说明:1、字段PZH,左1-4位凭证的简称,例如:收款、付款、记账、转账、票据,从第5-7位是凭证号。                                                                                            
     2、字段PZRQ字符类型共6位,左1-2位凭证的月份、左第3-4位凭证月份、5-6位凭证日期,例:9 9 29,表示9月29日。                                                                                            
     3、字段WLDRQ日期类型凭证的记账日期。                                                                                            
     4、例如以下凭证记录统计的凭证类型记账、票据,9月份记账凭证6张,票据凭证10张                                                                                            
PZH    PZRQ    FJZS    JD    KMDM    WLDM    BMDM    DFKM    ZY    WBDM    WB    SL    HL    DJ    RMB    YSPZ    SR    SH    JSR    XMDM    JZR    WLDRQ    PZHZBZ    PZHZKMDY
记账   1     9 929    1    借    1002001            1133    收货款        0    0    0    0    6901.96        1    1            1    2025-9-29        
记账   1     9 929    1    贷    1133001            1002,5503    收货款        0    0    0    0    1901.69        1    1            1    2025-9-29        
记账   1     9 929    1    贷    1133001            1002,5503    收货款        0    0    0    0    5000        1    1            1    2025-9-29        
记账   2     9 9 8    1    借    5502005                付货款        0    0    0    0    204            1            1    2025-9-8        
记账   2     9 9 8    1    借    5502005                付货款        0    0    0    0    18.6            1            1    2025-9-8        
记账   2     9 9 8    1    贷    1002001                付货款        0    0    0    0    2454.67            1            1    2025-9-8        
记账   3     9 913    1    借    2151                付货款        0    0    0    0    400            1            1    2025-9-13        
记账   3     9 913    1    贷    1002001                付货款        0    0    0    0    400            1            1    2025-9-13        
记账   4     9 9 8    1    借    4101002                应付货款        0    0    0    0    1940.63            1            1    2025-9-8        
记账   4     9 9 8    1    借    217100101                应付货款        0    0    0    0    252.28            1            1    2025-9-8        
记账   4     9 9 8    1    贷    2121020                应付货款        0    0    0    0    2192.91            1            1    2025-9-8        
记账   5     9 9 9    1    借    5502002                应付货款        0    0    0    0    19.86            1            1    2025-9-9        
记账   5     9 9 9    1    贷    2121014                应付货款        0    0    0    0    20.46            1            1    2025-9-9        
记账   6     9 9 9    1    借    5502002                应付货款        0    0    0    0    18.7            1            1    2025-9-9        
记账   6     9 9 9    1    贷    2121014                应付货款        0    0    0    0    18.7            1            1    2025-9-9        
票据   1     9 9 5    1    借    112001                收票据5306491001512202        0    0    0    0    11784    5306491001512202        1            1    2025-9-5        
票据   1     9 9 5    1    借    112001                收票据5309881002044202        0    0    0    0    188544    5309881002044202        1            1    2025-9-5        
票据   2     9 9 9    1    借    112001                收票据5313651070075202        0    0    0    0    300000    5313651070075202        1            1    2025-9-9        
票据   2     9 9 9    1    借    203035                付票据5313651070075202        0    0    0    0    300000    5313651070075202        1            1    2025-9-9        
票据   3     9 910    1    借    203035                付票据5306589000018202        0    0    0    0    400000    5306589000018202        1            1    2025-9-10        
票据   3     9 910    1    贷    112001                付票据5306589000018202        0    0    0    0    400000    5306589000018202        1            1    2025-9-10        
票据   4     9 911    1    借    112001                收票据5103589037505202        0    0    0    0    250000    5103589037505202        1            1    2025-9-11        
票据   4     9 911    1    借    112001                收票据5103589037505202        0    0    0    0    150000    5103589037505202        1            1    2025-9-11        
票据   5     9 913    1    借    203035                付票据5103589037505202        0    0    0    0    150000    5103589037505202        1            1    2025-9-13        
票据   5     9 913    1    借    203035                付票据5103589037505202        0    0    0    0    250000    5103589037505202        1            1    2025-9-13        
票据   6     9 915    1    借    112001                收票据5309589000025202        0    0    0    0    136722.6    5309589000025202        1            1    2025-9-15        
票据   6     9 915    1    贷    113039                收票据5309589000025202        0    0    0    0    136722.6    5309589000025202        1            1    2025-9-15        
票据   7     9 920    1    借    203035                付票据5309589000025202        0    0    0    0    136722.6    5309589000025202        1            1    2025-9-20        
票据   7     9 920    1    贷    112001                付票据5309589000025202        0    0    0    0    136722.6    5309589000025202        1            1    2025-9-20        
票据   8     9 928    1    借    112001                收票据5313229000207202        0    0    0    0    400000    5313229000207202        1            1    2025-9-28        
票据   8     9 928    1    借    203035                付票据5313229000207202        0    0    0    0    400000    5313229000207202        1            1    2025-9-28        
票据   9     9 929    1    借    112001                收票据5309589000025202        0    0    0    0    226000    5309589000025202        1            1    2025-9-29        
票据   9     9 929    1    贷    113006                收票据5309589000025202        0    0    0    0    226000    5309589000025202        1            1    2025-9-29        
票据  10     9 930    1    借    203020                付票据5309589000025202        0    0    0    0    50000    5309589000025202        1            1    2025-9-30        
票据  10     9 930    1    贷    112001                付票据5309589000025202        0    0    0    0    50000    5309589000025202        1            1    2025-9-30        

搜索更多相关主题的帖子: 类型 分类 月份 字段 统计 
2026-09-19 15:53
jmlwy
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2026-9-17
收藏
 得分:0 
请哪位大侠能否出手相助,在凭证记录取出按月统计各类凭证的最大值,保存另一个文件。
2026-09-24 12:49
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:451
帖 子:11667
专家分:43678
注 册:2014-5-20
收藏
 得分:0 
先不考虑效率,看看有什么方法可以统计出结果。
逐条记录按条件统计一下看看。
2026-09-24 15:18
wengjl
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:109
帖 子:2404
专家分:4302
注 册:2007-4-27
收藏
 得分:0 
这个统计应该是不难的,问题的难度在于楼主的描述不够精准,让人感觉懵懵的

只求每天有一丁点儿的进步就可以了
2026-09-24 16:39
jmlwy
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2026-9-17
收藏
 得分:0 
非常感谢回复。
图片附件: 游客没有浏览图片的权限,请 登录 或 注册

图片附件: 游客没有浏览图片的权限,请 登录 或 注册
2026-09-24 20:20
jmlwy
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2026-9-17
收藏
 得分:0 
附件:1、凭证记录A_Z2025.DBF、2、需要生成的统计文件PZLX2025.DBF
凭证分类统计.zip (342.49 KB)
2026-09-24 20:35
wengjl
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:109
帖 子:2404
专家分:4302
注 册:2007-4-27
收藏
 得分:0 
SET engi 70

SELECT SUBSTR(pzh,1,4) as pzh,coun(*) ,;
       sum(IIF(MONTH(wldrq)=1,1,0)) as pzno1,sum(IIF(MONTH(wldrq)=2,1,0)) as pzno2,sum(IIF(MONTH(wldrq)=3,1,0)) as pzno3,;
       sum(IIF(MONTH(wldrq)=4,1,0)) as pzno4,sum(IIF(MONTH(wldrq)=5,1,0)) as pzno5,sum(IIF(MONTH(wldrq)=6,1,0)) as pzno6,;
       sum(IIF(MONTH(wldrq)=7,1,0)) as pzno7,sum(IIF(MONTH(wldrq)=8,1,0)) as pzno8,sum(IIF(MONTH(wldrq)=9,1,0)) as pzno9,;
       sum(IIF(MONTH(wldrq)=10,1,0)) as pzno10,sum(IIF(MONTH(wldrq)=11,1,0)) as pzno11,sum(IIF(MONTH(wldrq)=12,1,0)) as pzno12 ;
       from a_z2025 grou by pzh

只求每天有一丁点儿的进步就可以了
2026-09-28 10:12
jmlwy
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2026-9-17
收藏
 得分:0 
以下是引用wengjl在2026-9-28 10:12:03的发言:

SET engi 70

SELECT SUBSTR(pzh,1,4) as pzh,coun(*) ,;
       sum(IIF(MONTH(wldrq)=1,1,0)) as pzno1,sum(IIF(MONTH(wldrq)=2,1,0)) as pzno2,sum(IIF(MONTH(wldrq)=3,1,0)) as pzno3,;
       sum(IIF(MONTH(wldrq)=4,1,0)) as pzno4,sum(IIF(MONTH(wldrq)=5,1,0)) as pzno5,sum(IIF(MONTH(wldrq)=6,1,0)) as pzno6,;
       sum(IIF(MONTH(wldrq)=7,1,0)) as pzno7,sum(IIF(MONTH(wldrq)=8,1,0)) as pzno8,sum(IIF(MONTH(wldrq)=9,1,0)) as pzno9,;
       sum(IIF(MONTH(wldrq)=10,1,0)) as pzno10,sum(IIF(MONTH(wldrq)=11,1,0)) as pzno11,sum(IIF(MONTH(wldrq)=12,1,0)) as pzno12 ;
       from a_z2025 grou by pzh

非常感谢!可以帮忙编写完整代码吗?
2026-09-28 19:58
jmlwy
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2026-9-17
收藏
 得分:0 
使用以上代码,计算结果不正确,需要求字段“PZH”前4位的唯一值,再求字段“PZH”第5位至8位字符转数值,每月的最大值。
图片附件: 游客没有浏览图片的权限,请 登录 或 注册


2026-09-28 21:23
chychychy
Rank: 4
等 级:业余侠客
帖 子:671
专家分:220
注 册:2015-4-18
收藏
 得分:0 
还是上面的高手说的:描述不够精准,让人感觉懵懵的。我是下面这样想的,不知是否准确,其中第二步我也不会,是求助AI帮忙得到的
程序代码:
*========================================================*
* 程序名:TJPZLX.PRG
* 数据源表:A_Z2025(别名 pzs)
* 统计结果输出表:PZLX2025(别名 lx)
*  第一步: 从 A_Z2025 提取凭证类型简称, 写入 PZLX2025
*  第二步: 逐月统计各类型最大凭证号, 填入 PZNO1[color=#808080]~PZNO12[/color]
*========================================================*
CLEAR
SET TALK OFF
SET SAFETY OFF
CLOSE ALL

* 打开数据源表、统计结果输出表
USE A_Z2025  IN 0 ALIAS pzs 
USE PZLX2025 IN 0 ALIAS lx 
SELECT lx
ZAP  && 清空历史统计数据

* 第一步:从pzh提取不重复的凭证类型:前两个汉字 ,然后写入要统计的结果表
SELECT DISTINCT SUBSTR(pzh,1,4) AS jc ;
    FROM pzs ;
    WHERE NOT EMPTY(ALLTRIM(pzh)) ;
    INTO CURSOR curLX
*BROWSE &&测试用,完成后注释掉
SELECT curLX
SCAN
    INSERT INTO lx (pzlxjc) VALUES (curLX.jc)
ENDSCAN

* 第二步:逐月统计每种凭证类型的最大凭证号,回填PZNO1[color=#808080]~PZNO12[/color]

SELECT lx
SCAN
    lcType = ALLTRIM(lx.pzlxjc)  && 当前循环凭证类型简称

* 循环1[color=#808080]~12月份[/color]
    FOR lnMonth = 1 TO 12
        lcField = "PZNO" + ALLTRIM(STR(lnMonth))
        lnMaxNo = 0  && 默认值初始为0

* 遍历源表,筛选【当月[color=#808080]+当前凭证类型】记录,提取凭证数字编号求最大[/color]
        SELECT pzs
        SCAN FOR ALLTRIM(SUBSTR(pzrq,1,2)) == ALLTRIM(STR(lnMonth)) ;
                AND SUBSTR(pzh,1,4) == lcType
            lnPzNo = VAL(SUBSTR(pzh,7,2))
            IF lnPzNo > lnMaxNo
                lnMaxNo = lnPzNo
            ENDIF
        ENDSCAN

* 回填当月最大凭证号到结果表对应字段
        SELECT lx
        REPLACE &lcField WITH lnMaxNo
    ENDFOR
ENDSCAN

* 浏览统计结果
SELECT lx
BROWSE TITLE "统计结果" NOMODIFY

2026-09-29 14:37
快速回复:求助如何按凭证类型月份分类统计凭证张数
数据加载中...
 
   
关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.020334 second(s), 10 queries.
Copyright©2004-2026, BCCN.NET, All Rights Reserved