企业发票异常分析

1、数据组成

(1)增值税发票数据,文件名zzsfp

(2)发票对应货物明细数据,文件名zzsfp_hwmx

(3)企业信息,文件名nsrxx

2、数据字段说明

1zzsfp表字典

字段名称

字段含义

数据类型

备注

fp_nid

发票id

String

发票唯一标识

xf_id

销方识别号

String

企业唯一身份标识

gf_id

购方识别号

String

企业唯一身份标识

je

金额

Double

 

se

税额

Double

 

jshj

价税合计

Double

 

kpyf

开票月份

String

 

kprq

开票日期

String

 

zfbz

作废标志

String

‘Y’代表作废

 

 

zzsfp表内容($ less zzsfp

 

2zzsfp_hwmx

字段名称

字段含义

数据类型

备注

fp_nid

发票id

String

发票唯一标识

date_key

开票月份

String

 

hwmc

货物名称

String

 

ggxh

规格型号

String

 

dw

单位

String

 

sl

数量

Double

 

dj

单价

Double

 

je

金额

Double

 

se

税额

Double

 

spbm

商品编码

String

 

zzsfp_hwmx表内容($ less zzsfp_hwmx)

 

3nsrxx

字段名称

字段含义

数据类型

备注

hydm

行业代码

String

 

nsr_id

纳税人id

String

企业唯一身份标识

djzclx_dm

登记注册类型代码

String

网上可查阅相关代码含义

kydjrq

开业登记日期

String

 

xgrq

修改日期

String

给企业打标签的时间

label

标签

String

‘0’代表正常企业

‘1’代表问题企业

nsrxx表内容($ less nsrxx)

 

 

3、关联数据的必要说明

(1)zzsfp表可通过fp_nid进行关联

(2)zzsfp表可通过xf_id或者gf_id与nsrxx中的nsr_id进行关联,分离出销项发票表和进项发票表

一、     测试要求:

1、数据导入:

   要求将三个样表文件中的数据导入HIVE数据仓库中。

2、数据分析:

   企业异常的判断标准参考:

    (1)企业增值税发票进项与出项严重不符即出现只出不进或者只进不出的企业;

    (2)企业发票数据与详细流水信息不符;

    (3)个人上网查阅企业异常信息数据标准;

create table eleven1

(nsr_id String)

ROW format delimited fields terminated by ',' STORED AS TEXTFILE;

create table eleven2

(nsr_id String)

ROW format delimited fields terminated by ',' STORED AS TEXTFILE;

 

 

 

insert overwrite table eleven1

select * from (select n.nsr_id

               from nsrxx n inner join zzsfp z

                             on n.nsr_id= z.xf_id

               group by n.nsr_id) as form1;

           

 

insert overwrite table eleven2

select * from (select n.nsr_id

               from nsrxx n inner join zzsfp z

                            on z.gf_id=n.nsr_id

               group by n.nsr_id) as form2;

 

 

insert overwrite table eleven3

select count(*) from (select a.xf_id,a.je-b.je as aaa

from eleven1 a inner join eleven2 b

  on a.xf_id=b.gf_id) as form1

where aaa>0;

 

select a

from eleven1.xf_id as a

where a not in eleven2.gf_id b;

 

create table eleven3

(id String)

ROW format delimited fields terminated by ',' STORED AS TEXTFILE;

 

create table eleven4

(id String)

ROW format delimited fields terminated by ',' STORED AS TEXTFILE;

create table eleven5

(id String)

ROW format delimited fields terminated by ',' STORED AS TEXTFILE;

 

 

insert overwrite table eleven3

select eleven1.nsr_id from eleven1 where eleven1.nsr_id not in (select nsr_id from eleven2);

insert overwrite table eleven4

select eleven2.nsr_id from eleven2 where eleven2.nsr_id not in (select nsr_id from eleven1);

 

insert into table eleven5

select eleven2.nsr_id from eleven2 where eleven2.nsr_id not in (select nsr_id from eleven1);

 

 

3、处理结果入库:

   将上述异常标准的结果分别汇总统计,并将结果数据导出到mySQL数据库中。

   最终结果参考提示:

          最终给出的数据情况

企业总数:33,829

非正常企业总数:318

bin/sqoop export \

--connect jdbc:mysql://master:3306/mysql \

--username root \

--password 000000 \

--table eleven \

--num-mappers 1 \

--export-dir /user/hive/warehouse/eleven5 \

--input-fields-terminated-by ","

 

 

            

posted @ 2021-10-01 23:18  xjspyx  阅读(83)  评论(0编辑  收藏  举报