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

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. Python的自动补全

    1.编辑文件 tab.py   vi tab.py #!/usr/bin/env python # python startup file import sys import readline imp ...

  2. SQL Server进阶(二)字段类型

    概述 系统数据类型详情 SqlDbType namespace System.Data { // // 摘要: // 指定要用于 System.Data.SqlClient.SqlParameter ...

  3. 如何创建带有大纲和书签的交互式web报表

    交互式报表允许用户与之交互.例如,报表可以包含超链接.书签和大纲.通过点击大纲部分的标题,你可以将书签导航到报表中的所需位置.这样的报表经常用在产品目录中.(查看更多web报表教程) 让我们为Web创 ...

  4. CSS——超链接颜色设置

    <!-- 链接颜色 --> a:link { color:#FF0000; text-decoration:underline; } a:visited { color:#00FF00; ...

  5. 第16月第26天 /bin/bash^M: bad interpreter: 没有那个文件或目录

    1. 运行脚本时出现了这样一个错误,打开之后并没有找到所谓的^M,查了之后才知道原来是文件格式的问题,也就是linux和windows之间的不完全兼容...具体细节不管,如果验证: vim test. ...

  6. Java9都快发布了,Java8的十大新特性你了解多少呢?

    Java 9预计将于今年9月份发布,这是否会是一次里程碑式的版本,我们拭目以待.今天,我们先来复习一下2014年发布的Java 8的十大新特性. Java 8可谓是自Java 5以来最具革命性的版本了 ...

  7. slf4j的简单用法以及与log4j的区别

    之前在项目中用的日志记录器都是log4j的日志记录器,可是到了新公司发现都是slf4j,于是想着研究一下slf4j的用法. 注意:每次引入Logger的时候注意引入的jar包,因为有Logger的包太 ...

  8. 转载CSDN博客步骤

    在参考“如何快速转载CSDN中的博客”后,由于自己不懂html以及markdown相关知识,所以花了一些时间来弄明白怎么转载博客,以下为转载CSDN博客步骤和一些知识小笔记. 参考博客原址:http: ...

  9. AT91RM9200---定时器简介

    1.前言 系统定时器模块集成了3个不同的定时器 一个周期性间隔的定时器,用来为操作系统设置时基 一个看门狗定时器,可用于软件死锁时进行系统复位 一个实时时钟计数器用来记录流逝的时间 系统定时器时钟 这 ...

  10. MySQL基于LVM快照的备份恢复(临时)

    目录1.数据库全备份2.准备LVM卷3.数据恢复到LVM卷4.基于LVM快照备份数据5.数据灾难恢复6.总结 写在前面:测试环境中已安装有mysql 5.5.36数据库,但数据目录没有存放在LVM卷, ...