当前位置: 首页 > news >正文

智税集成2.0生成凭证

:::info
💡 整体业务流程
从A9服务器中取数,生成列表数据,写入到对方oracle数据库中。
:::

项目关键点

1.连接数据库

  1. 左连接连接本地SQLserver数据库、右连接要链接A9开票服务器的数据库
  2. 然后设想用SQLserver 自带的外部连接来连接oracle数据库。
<add key="RConnectionString" value="Provider=PostgreSQL OLE DB Provider;Password=AiSinO_618;User ID=fwkp_320901999999116_0;Data Source=192.168.2.153;Location=fwkp_320901999999116_0" />

微信图片_20231213143732.png

用外部连接连接oracle数据库

2.用语句验证取数

  1. 获取A9开票服务器数据
SELECT 
':sClientNo' as imTaxMachineNo, 
d.fpmxxh AS idIndex, 
m.fpdm || '-' || m.fphm AS imID, 
m.fpdm || '-' || m.fphm AS imsaleIDlist, 
's' AS imType, 
m.gfmc AS imCrpName, 
'' AS imCrpTaxNo, 
'' AS imCrpAddrTel, 
'' AS imCrpBankNo,
to_char(m.kprq,'YYYY-MM-DD') as imdate,
m.bz AS imremark, 
'' AS imOper, 
'' AS imChecker, 
'' AS imPayee, 
''AS imTaxrate, 
d.spmc as idgoodsname,
d.ggxh AS idModal, 
d.jldw AS idUnit, 
d.sl AS idCount, 
d.dj AS idPrice, 
cast(d.je as VARCHAR) AS idMoney, 
cast(d.se as VARCHAR) AS idTaxMoney, 
0 AS imIncludeTaxFlg, 
0 AS idMoneyIncludeTaxFlg, 
0 AS idPriceIncludeTaxFlg, 
d.flbm  AS idGoodsNo, 
cast (d.slv as numeric(20,2))*cast(100 as numeric(20,2))  AS idTaxRate,
m.gfmc as  idDefine7,
'' as  idDefine8, 
m.fphm  AS imSaleNo, 
m.fpdm || '-' || m.fphm   AS imSaleID, 
m.fpdm || '-' || m.fphm  AS idID, 
m.fpdm || '-' || m.fphm  AS idimID ,
'数据库' as imDefine10,
m.fpdm as imDefine9,
m.fphm  as imDefine8,
m.kpjh  as imDefine7,
m.zfbz  as imStatus,
m.fpzl  as imCurrType,
m.xfmc as imSaleName,
--(select top 1 spmc from xxfpTaxCardD dd where m.fpdm=dd.fpdm and m.fphm=dd.fphm) as  imDefine10,--
'' as imDefine4 --FROM skfp  m , skfp_mx  d
where  m.fphm=d.fphm
and   m.kprq between to_date(':s起始日期','YYYY-MM-DD') and to_date(':s截止日期','YYYY-MM-DD')
and m.kpjh= ':s开票点'
  1. 验证外部连接插入oracle 数据库
insert
into
openquery(ORCL,'select
"COMPANY","PREPAREDDATE","PK_BILL","ATTACHMENT_NUMBER","INDEXID","ACCOUNT_CODE","ABSTRACT_SM","DIRECTION","AMOUNT","FREETYPE1","FREEVALUE1","FREETYPE2","FREEVALUE2","FREETYPE3","FREEVALUE3","FREETYPE4","FREEVALUE4","FREETYPE5","FREEVALUE5","NCFLAG","NCINFO","TS","FPTYPE"
from
DF.TEMP_VOUCHER')
select
COMPANY,PREPAREDDATE,PK_BILL,ATTACHMENT_NUMBER,count,ACCOUNT_CODE,ABSTRACT_SM,DIRECTION,AMOUNT,FREETYPE1,FREEVALUE1,FREETYPE2,FREEVALUE2,FREETYPE3,FREEVALUE3,FREETYPE4,FREEVALUE4,FREETYPE5,FREEVALUE5,NCFLAG,NCINFO,TS,FPTYPE
from
TEMP_VOUCHER where bz<>'成功'

3.注意点

  1. 防止插入重复数据
select distinct * into #Tmp from TEMP_VOUCHER
drop table TEMP_VOUCHER
select * into TEMP_VOUCHER from #Tmp
drop table #Tmpalter table TEMP_VOUCHER add idAutoID int identity (1,1)
DBCC CHECKIDENT (TEMP_VOUCHER,reseed,1)
update TEMP_VOUCHER set count=t.RowNumber from (SELECTpk_bill+cast(idautoid as varchar(1000)) pkbill ,ROW_NUMBER()  OVER  (ORDER BY pk_bill+iddefine2+iddefine3+iddefine1+cast(indexid as varchar(1000)))  as  RowNumber FROM TEMP_VOUCHER where bz='')t where t.pkbill=TEMP_VOUCHER.pk_bill+cast(TEMP_VOUCHER.idautoid as varchar(1000)) and TEMP_VOUCHER.bz='' 
http://www.lryc.cn/news/409239.html

相关文章:

  • B4005 [GESP202406 四级] 黑白方块 【暴力枚举】【前缀和】
  • 深度学习趋同性的量化探索:以多模态学习与联合嵌入为例
  • 决策树与随机森林:比较与应用场景分析
  • C#用Aspose.Cells导出Excel,.NET导出Excel
  • 天猫番茄品类TOP1,复购率超40%,「一颗大」如何策划极致产品力?
  • Docker搭建私有仓库harbor(docker 镜像仓库搭建)
  • 面试题:MySQL 索引
  • 云计算day13
  • 2024年孝感中级职称报名开始了吗?
  • RAG技术之Router
  • linux系统通过修改sudo文件使普通用户拥有类似root用户权限
  • 基于PyCharm在Windows系统上远程连接Linux服务器中Docker容器进行Python项目开发与部署
  • TypeScript学习篇-类型介绍使用、ts相关面试题
  • 超详细!Jmeter性能测试
  • C语言经典习题24
  • SQL labs-SQL注入(三,sqlmap使用)
  • 统一认证与单点登录:简明概述与应用
  • MSPM0G3507学习笔记1:开发环境_引脚认识与点灯
  • 使用法国云手机进行面向法国的社媒营销
  • C++学习笔记——模板
  • 财务分析,奥威BI行计算助力财务解放报表工作
  • 文件写入、读出-linux
  • 环境搭建-Windows系统搭建Docker
  • k8s零零散散问题
  • The Llama 3 Herd of Models.Llama 3 模型论文全文
  • ChatGPT的原理和成本
  • 无刷电机的ESC电子速度控制模块夹紧铁芯或更换镇流器
  • OpenAI发布AI搜索惨遭翻车?新老搜索的较量愈演愈烈!
  • SpringBoot整合阿里云短信业务
  • Kubernetes安全--securityContext介绍