产品构建表的添加存储过程:

CREATE PROCEDURE [dbo].[BioPurchaseAppInfo_ADD]
@PurchaseID INT OUTPUT,
@Subject NVARCHAR(100),
@DepartMentID INT,
@AppUserId INT,
@RealUserID INT,
@OrderCom NVARCHAR(50),
@SendComID INT,
@OrderTime DATETIME,
@sendType NVARCHAR(50),
@WholeType NVARCHAR(30),
@AcceptUserid INT,
@BillUserID INT,
@BillNo NVARCHAR(30),
@DeleteSate BIT AS
INSERT INTO [BioPurchaseAppInfo](
[Subject],[DepartMentID],[AppUserId],[RealUserID],[OrderCom],[SendComID],[OrderTime],[sendType],[WholeType],
[AcceptUserid],[BillUserID],[BillNo],[DeleteSate]
)VALUES(
@Subject,@DepartMentID,@AppUserId,@RealUserID,@OrderCom,@SendComID,@OrderTime,@sendType,@WholeType,@AcceptUserid,@BillUserID,@BillNo,@DeleteSate
)
SET @PurchaseID = @@IDENTITY

修改的存储过程:

CREATE PROCEDURE [dbo].[BioPurchasePro_Update]
@PurchaseProID INT,
@PurchaseID INT,
@ProID INT,
@ProCount INT,
@ProPrice MONEY,
@isInvoice BIT,
@isPay BIT,
@InvoicePrice MONEY
AS
UPDATE [BioPurchasePro] SET
[PurchaseID] = @PurchaseID,[ProID] = @ProID,[ProCount] = @ProCount,[ProPrice] = @ProPrice,[isInvoice] = @isInvoice,[isPay] = @isPay,[InvoicePrice] = @InvoicePrice
WHERE PurchaseProID=@PurchaseProID

添加的存储过程:

CREATE PROCEDURE [dbo].[BioPurchasePro_ADD]
@PurchaseID INT,
@ProID INT,
@ProCount INT,
@ProPrice MONEY AS
INSERT INTO [BioPurchasePro](
[PurchaseID],[ProID],[ProCount],[ProPrice]
)VALUES(
@PurchaseID,@ProID,@ProCount,@ProPrice
)

修改的存储过程:

CREATE PROCEDURE [dbo].[BioPurchasePro_Update]
@PurchaseProID INT,
@PurchaseID INT,
@ProID INT,
@ProCount INT,
@ProPrice MONEY,
@isInvoice BIT,
@isPay BIT,
@InvoicePrice MONEY
AS
UPDATE [BioPurchasePro] SET
[PurchaseID] = @PurchaseID,[ProID] = @ProID,[ProCount] = @ProCount,[ProPrice] = @ProPrice,[isInvoice]
= @isInvoice,[isPay] = @isPay,[InvoicePrice] = @InvoicePrice
WHERE PurchaseProID=@PurchaseProID

产品批号的存储过程:

CREATE PROCEDURE [dbo].[BioPuchaseProBatch_ADD]
@ProBatchID INT OUTPUT,
@purchaseProID INT,
@batchNum NVARCHAR(50),
@boxNum NVARCHAR(20),
@proCount INT,
@realityProCount INT,
@expirationDate DATETIME,
@makeDate DATETIME
AS
INSERT INTO [BioPuchaseProBatch](
[purchaseProID],[batchNum],[boxNum],[proCount],[realityProCount],[expirationDate],[makeDate]
)VALUES(
@purchaseProID,@batchNum,@boxNum,@proCount,@realityProCount,@expirationDate,@makeDate
)
SET @ProBatchID = @@IDENTITY

转换时间的函数:

SELECT CONVERT(NVARCHAR(20),GETDATE(),120)

创建视图:

CREATE VIEW [dbo].[View_BioPurchaseAppInfo]
AS
SELECT
PurchaseID,
Subject,
DepartMentID,
DepartMent=dbo.FN_GetDepartMentByID(DepartMentID),
AppUserId,
AppUserName=dbo.getUserNameByUserID(AppUserId),
RealUserID,
RealUserName=dbo.getUserNameByUserID(RealUserID),
OrderCom,
sendComID,
CopanyName=dbo.getCustomerByID(SendComID),
CONVERT(NVARCHAR(10),ArrivedTime,120) AS ArrivedTime,
CONVERT(NVARCHAR(10),OrderTime,120) AS OrderTime,
sendType,
WholeType,
AcceptUserid,
BillUserID,
BillUserName=dbo.getUserNameByUserID(BillUserID),
BillNo,
DeleteSate
FROM
BioPurchaseAppInfo

根据产品的编号获取产品的名称:

-- Description:	根据产品的编号获取产品的名称
-- =============================================
CREATE FUNCTION [dbo].[FN_getProNameByProID]
(
@ProID INT
)
RETURNS NVARCHAR(100)
AS
BEGIN
DECLARE @ProName NVARCHAR(50)
SELECT @ProName= ProName FROM BiotbProduct WHERE ProID=@ProID
RETURN @ProName
END

创建视图:

CREATE VIEW [dbo].[View_PurchaseProInfo]
AS
SELECT a.*,b.ProBatchID,b.batchNum,b.boxNum,b.proCount AS BatchProCount,b.realityProCount,b.stockDate,
b.expirationDate,b.makeDate,b.isDeleteSate,b.isAuditing,b.isprinted, ProName=dbo.FN_getProNameByProID(a.ProID)
FROM BioPurchasePro AS a INNER JOIN BioPuchaseProBatch AS b
ON b.purchaseProID = a.PurchaseProID

ERP采购业务(三十七)的更多相关文章

  1. 解析大型.NET ERP系统 业务逻辑设计与实现

    根据近几年的制造业软件开发经验,以我开发人员的理解角度,简要说明功能(Feature)是如何设计与实现的,供参考. 因架构的不同,技术实现上会有所差异,我的经验仅限定于Windows Form程序. ...

  2. 程序员编程艺术第三十六~三十七章、搜索智能提示suggestion,附近点搜索

    第三十六~三十七章.搜索智能提示suggestion,附近地点搜索 作者:July.致谢:caopengcs.胡果果.时间:二零一三年九月七日. 题记 写博的近三年,整理了太多太多的笔试面试题,如微软 ...

  3. NeHe OpenGL教程 第三十七课:卡通映射

    转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线 ...

  4. Java进阶(三十七)java 自动装箱与拆箱

    Java进阶(三十七)java 自动装箱与拆箱 前言 这个是jdk1.5以后才引入的新的内容.java语言规范中说道:在许多情况下包装与解包装是由编译器自行完成的(在这种情况下包装称为装箱,解包装称为 ...

  5. Gradle 1.12用户指南翻译——第三十七章. OSGi 插件

    本文由CSDN博客万一博主翻译,其他章节的翻译请参见: http://blog.csdn.net/column/details/gradle-translation.html 翻译项目请关注Githu ...

  6. SAP MM 没有维护MRP 视图的物料可以正常参与采购业务

    SAP MM 没有维护MRP 视图的物料可以正常参与采购业务 Material number: R000006872,没有维护MRP 视图, ​ 也就是没有指定该物料来源是采购还是自制.此种情况下,S ...

  7. SQL注入之Sqli-labs系列第三十六关(基于宽字符逃逸GET注入)和三十七关(基于宽字节逃逸的POST注入)

    0X1 查看源码 function check_quotes($string) { $string= mysql_real_escape_string($string); return $string ...

  8. “全栈2019”Java多线程第三十七章:如何让等待的线程无法被中断

    难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java多 ...

  9. 第三百三十七节,web爬虫讲解2—PhantomJS虚拟浏览器+selenium模块操作PhantomJS

    第三百三十七节,web爬虫讲解2—PhantomJS虚拟浏览器+selenium模块操作PhantomJS PhantomJS虚拟浏览器 phantomjs 是一个基于js的webkit内核无头浏览器 ...

随机推荐

  1. JUnit报错 java.lang.Exception:No tests found matching

    将 @RunWith(SpringRunner.class)@SpringBootTestpublic class BusinessTest { @Test public void getList() ...

  2. linux配置java环境变量jdk jre(详细)【转】

    linux配置java环境变量(详细) 本文完全引用自: http://www.cnblogs.com/samcn/archive/2011/03/16/1986248.html 一. 解压安装jdk ...

  3. spring @Entity @Table

    import java.io.Serializable; import javax.persistence.Column; import javax.persistence.Entity; impor ...

  4. POJ - 1905 Expanding Rods(二分+计算几何)

    http://poj.org/problem?id=1905 题意 一根两端固定在两面墙上的杆,受热后变弯曲.求前后两个状态的杆的中点位置的距离 分析 很明显需要推推公式. 由②的限制条件来二分角度, ...

  5. 虚拟机下Linux(终端)配置网络的方法

    这几天在虚拟机vmware上部署centos系统,想通过内部联网用yum命令安装必需的软件,但是一直不能静态地址联网,今天终于找到一个方法centos内部设置IP,对外联网.设置过程如下: .首先是网 ...

  6. HashMap分析及散列的冲突处理

    1,Hashing过程 像二分查找.AVL树查找,这些查找算法的时间复杂度为O(logn),而对于哈希表而言,我们一般说它的查找时间复杂度为O(1).那它是怎么实现的呢?这就是一个Hashing过程. ...

  7. SmartUpload文件上传组件的使用教程

    在项目中使用SmartUpload组件可以进行文件的上传和下载操作 使用步骤 1.导入jar包,进行build path操作 2.编写文件上传页面,代码如下 <form action=" ...

  8. 20155332 2016-2017-2 《Java程序设计》第5周学习总结

    学号 2016-2017-2 <Java程序设计>第X周学习总结 教材学习内容总结 1.Java中的所有不正常类都继承于Throwable类.Throwable主要包括两个大类,一个是Er ...

  9. tf.matmul()和tf.multipy()的区别

    首先我们分析一下下面的代码: import tensorflow as tf import numpy as np a=tf.constant([[1., 2., 3.],[4., 5., 6.]]) ...

  10. linux space/mark设置

    参考链接: http://blog.csdn.net/zhaozh2000/article/details/6460223 串口数据的发送: 数据的发送: 数据位+检验位+停止位, 进行数据的发送.( ...