--保存主表
MERGE INTO dbo.DeliveryReceiving AS t
USING @ReceiveMainDt AS s
ON t.Id=s.id
WHEN MATCHED
THEN UPDATE SET --一行五个字段
t.Amount=s.Amount,t.OperId=s.OperId,t.OperDate=GETDATE(),t.OperBranchId=s.OperBranchId
WHEN NOT MATCHED BY TARGET
THEN INSERT (Id,[Type],IOFlag,BranchId,DCBranchId,VoucherId,Amount,OperId,OperDate,OperBranchId,Memo)
VALUES
(s.id,s.[Type],s.IOFlag,s.BranchId,s.DCBranchId,s.VoucherId,s.Amount,s.OperId,GETDATE(),s.OperBranchId,s.Memo);
--保存明细表
MERGE INTO dbo.DeliveryReceivingEntry AS t
USING @ReceiveDetailDt AS s
ON t.SheetId=s.SheetId AND t.FlowId=s.FlowID
WHEN MATCHED
THEN UPDATE SET --匹配时更新
t.ReceiveQty=s.ReceiveQty,t.SubAmt=s.SubAmt,t.DetailsOperDate=GETDATE()
WHEN NOT MATCHED BY TARGET
THEN INSERT(SheetId,Sequence,ItemId,Barcode,UnitId,ReceiveQty,UnitFactor,ActualQty,ActualPrice,RetailPrice,SubAmt,TaxRate,Memo,ShelfId,BatchNo,ValidityDate,DetailsOperDate)
VALUES
(s.SheetId,s.Sequence,s.ItemId,s.Barcode,s.UnitId,s.ReceiveQty,s.UnitFactor,s.ActualQty,s.ActualPrice,s.RetailPrice,s.SubAmt,s.TaxRate,s.Memo,s.ShelfId,s.BatchNo,s.ValidityDate,GETDATE())
WHEN NOT MATCHED BY SOURCE AND T.SheetId=@Id
THEN DELETE ;

2019.06.28 MERGE INTO备忘的更多相关文章

  1. Nmap备忘单:从探索到漏洞利用(Part 4)

    这是我们的Nmap备忘单的第四部分(Part 1. Part 2. Part 3).本文中我们将讨论更多东西关于扫描防火墙,IDS / IPS 逃逸,Web服务器渗透测试等.在此之前,我们应该了解一下 ...

  2. Python中利用函数装饰器实现备忘功能

    Python中利用函数装饰器实现备忘功能 这篇文章主要介绍了Python中利用函数装饰器实现备忘功能,同时还降到了利用装饰器来检查函数的递归.确保参数传递的正确,需要的朋友可以参考下   " ...

  3. linux 指令备忘

    linux 指令备忘 1.ls [选项] [目录名 | 列出相关目录下的所有目录和文件 -a 列出包括.a开头的隐藏文件的所有文件 -A 通-a,但不列出"."和"..& ...

  4. JVM内存知识备忘

    又是一篇备忘... 主要记录一些知识,进行一些资源的汇总. 先来群里liufor大大提供的两张图,清晰易懂: Dockerized Java https://www.youtube.com/watch ...

  5. Git命令备忘

    最近在用Git,查了点相关资料,逻辑依然不太明了,先整理一部分备忘,以后补充 一.本地Git与Github/码云的关联 1. 设置本地用户名,邮箱 git config --global user.n ...

  6. metasploit 常用命令备忘

    metasploit 常用命令备忘    MSFconsole Commands-------------------------------------24show exploits 查看所有exp ...

  7. CentOS6.4 X86_64 kvm+PXE备忘

    Install 安装 1 2 3 4 5 # yum install qemu-kvm qemu-img # 使用kvm至少要安装的包,一个提供用户级别kvm模拟器,一个提供磁盘镜像的管理 # 安装虚 ...

  8. GIS部分理论知识备忘随笔

    文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/ 1.高斯克吕格投影带换算 某坐标的经度为112度,其投影的6度带和3度带 ...

  9. python序列,字典备忘

    初识python备忘: 序列:列表,字符串,元组len(d),d[id],del d[id],data in d函数:cmp(x,y),len(seq),list(seq)根据字符串创建列表,max( ...

随机推荐

  1. 创建Akamai cdn api授权

    注:通过Akamai Cli purge和通过Akamai API进行刷新之前,都要事先创建类似于如下的刷新的凭据,这两种刷新方式所创建的凭据是相同的. 目的:创建Akamai CDN API授权以便 ...

  2. 基于xtrabackup的主从同步

    基于xtrabackup的主从同步 作者 刘畅 时间 2020-9-21 服务器版本:CentOS Linux release 7.5.1804 主机名 ip地址 服务器配置 安装软件 密码 mysq ...

  3. 并发王者课-铂金9:互通有无-Exchanger如何完成线程间的数据交换

    欢迎来到<并发王者课>,本文是该系列文章中的第22篇,铂金中的第9篇. 在前面的文章中,我们已经介绍了ReentrantLock,CountDownLatch,CyclicBarrier, ...

  4. centos 8 chown命令详解

    chown命令简介 chown将指定文件的拥有者改为指定的用户或组,用户可以是用户名或者用户ID:组可以是组名或者组ID: 文件是以空格分开的要改变权限的文件列表,支持通配符. 系统管理员经常使用ch ...

  5. Software Architecture软件架构(方法、模式与框架)纵横谈

    Software Architecture软件架构是啥 随着软件行业的发展,软件的规模越来越大,"Software Architecture软件架构"这个名词开始频繁出现.&quo ...

  6. 【转载】CentOS-Docker安装MongoDB(单点)

    下载镜像 $ docker pull mongo 创建相关目录 $ mkdir -p /usr/mongo/data /usr/mongo/dump 运行镜像 $ docker run --resta ...

  7. Linux安装mysql5.7版本

    1.linux安装mysql5.7顺序 ①mysqladmin –version 查看版本号 ②mysql5.7安装在linux中需要先初始化 Mysqld –initialize –user=mys ...

  8. 1.3.6、通过Path匹配

    server: port: 8080 spring: application: name: gateway cloud: gateway: routes: - id: guo-system4 uri: ...

  9. linux菜鸡学习之路

    Linux入门 Linux 介绍 1.Linux怎么读 2.Linux是一款操作系统,免费,开源,安全,高效,稳定,处理高并发非常强悍. Linux文件系统目录 基本介绍 linux的文件系统树状目录 ...

  10. C语言:类型转换

    1.自动类型转换:将小范围数据类型转换为大范围的数据类型 2.赋值号两边的数据类型不一致时,会自动将右边的数据类型转换为左边的数据类型.若右边数据的类型级别高,则根据左边变量的长度截取低字节数据部分 ...