大型商贸系统(进货管理)技术解析(八)查询配货单
2015-07-01 07:04
417 查看
大型商贸系统(进货管理)技术解析(八)查询配货单
功能介绍:
查询配货单为客户提供了对录入的各种配货单情况进行方便快速查询,更具审核否,发货部门,收货部门,记录编号等条件,不定条件查询的功能实现
效果图:
图1
该界面所用到的控件:
功能实现:
1. 该界面实现所涉及到表与表之间的关系图
表1:配货单(Invoice)
用于存放配货单的信息
表2:配货明细单(Invoice_detail)
用于存放配货明细单的信息
1. 所要实现查询配货单界面效果图
图2
3. 实现查询配货单界面效果图的功能代码
4. 实现绑定下拉树功能的操作
界面效果图:
4.1为了实现该功能的界面代码
4.2为了实现该功能的控制器代码
4.3为了实现该功能逻辑层的代码
4.4为了实现该功能存储过程
5. 实现查询商品配货单功能查询
5.1在JavaScript中的界面代码
5.3实现该功能逻辑层代码
5.3 实现该功能存储过程
仅供初学者使用,禁止商业用途。
梯子的梯阶从来不是用来搁脚的,它只是让人们的脚放上一段时间,
以便让别一脚能够再往上登。
只有创造,才是真正的享受,只有拚搏,才是充实的生活。
功能介绍:
查询配货单为客户提供了对录入的各种配货单情况进行方便快速查询,更具审核否,发货部门,收货部门,记录编号等条件,不定条件查询的功能实现
效果图:
图1
该界面所用到的控件:
控件 | 说明 |
文本框(text) | 在Input中可以设置其一些属性和事件 |
复选框(checkbox) | 可以选择,设置其属性 |
1. 该界面实现所涉及到表与表之间的关系图
表1:配货单(Invoice)
用于存放配货单的信息
列名 | 数据类型 | 主键/外键 | 说明 |
Invoice_id | int | 主键 | 配货单id |
Repertory_enter_id | int | 外键 | 进仓单id |
Receiving_department_id | int | 外键 | 收货部门id |
Receiver_id | int | 外键 | 收货人id |
Delivery_department_id | int | 外键 | 发货部门id |
Shipper_id | int | 外键 | 发货人id |
Record_number | nchar(20) | 记录编号 | |
Remarks | nchar(10) | 备注 | |
Make_bills_id | int | 外键 | 制单人id |
Make_bills_time | datetime | 制单时间 | |
Transactor_id | int | 外键 | 执行人id |
Execute_time | datetime | 执行时间 | |
Review_deny | Bit | 审核否 |
用于存放配货明细单的信息
列名 | 数据类型 | 主键/外键 | 说明 |
Invoice_detail_id | int | 主键 | 配货明细id |
Invoice_id | int | 外键 | 配货id |
Goods_id | int | 外键 | 商品id |
Shipments_quantity | int | 发货数量 | |
Repertory_place_harvest_id | int | 外键 | 发货仓库地点 |
Repertory_place_send_id | int | 外键 | 发货仓库地点 |
Review_deny | Bit | 审核否 |
图2
3. 实现查询配货单界面效果图的功能代码
<!DOCTYPE html> <html> <head> <meta content="text/javascript;charset=utf-8" /> <title>查询配货单</title> <script src="../../Content/jquery-easyui-1.3.3/jquery.min.js"></script> <script src="../../Content/jquery-easyui-1.3.3/jquery.easyui.min.js"></script> <script src="../../Content/jquery-easyui-1.3.3/easyloader.js"></script> <link href="../../Content/jquery-easyui-1.3.3/themes/icon.css" rel="stylesheet" /> <link href="../../Content/jquery-easyui-1.3.3/demo/demo.css" rel="stylesheet" /> <link href="../../Content/jquery-easyui-1.3.3/themes/default/easyui.css" rel="stylesheet" /> <link href="../../Content/IconExtension.css" rel="stylesheet" /> <link href="../../Content/MyCSS/PublicCSS.css" rel="stylesheet" /> <style type="text/css"> body { text-align: center; font-size: 20px; } input { margin-top: 1px; margin-left: 5px; margin-right: 5px; font-size: 15px; } button { height: 24px; font-size: 20px; margin: 1px 3px 1px 3px; } div { font-size: 17px; } </style> <body style="text-align: center"> <div class="easyui-window" id="w商品进仓单" title="" style="display: none; text-align: center; border-spacing: 0; padding: 0; border: 0 solid white; height: 600px;" data-options="fit:true,collapsible:false,minimizable:false,maximizable:false,closable:false,draggable:false,resizable:false,shadow:false,modal:true,center:true"> <div style="padding: 5px; background: #e0ffff; color: #4169e1; font-size: 20px; margin: 0 0 auto;"> <span style="float: right"> <img onclick="parent.peiHuo();" id="dimg" src="../../Content/image/delete.png" /></span>查询商品配货单 </div> <div id="wSelectPeiHuoDan" style="border: 1px#4169e1 solid; width: 200px; height: 350px; float: left; overflow: hidden"> 审核否: <input id="Review_deny" type="checkbox" style="width: 155px; border: none; color: #0000FF; font-size: 17px;" /> <br /> 发货部门: <div style="border-bottom: #000 1px solid; width: 125px; margin-left: 65px"> <input class="easyui-combotree" data-options="panelHeight:200,url:'/ShangPinPeiHuoDan/SelectDepartmentTreeAll'" id="cboSentGoodsDepartmentCode" style="width: 125px; border: none; color: #0000FF; font-size: 17px;" /> </div> <br /> 收货部门: <div style="border-bottom: #000 1px solid; width: 125px; margin-left: 65px"> <input class="easyui-combotree" data-options="panelHeight:200,url:'/ShangPinPeiHuoDan/SelectDepartmentTreeAll'" id="cboReceiveDepartmentcode" style="width: 125px; border: none; color: #0000FF; font-size: 17px;" /> </div> <br /> 记录编号: <div style="border-bottom: #000 1px solid; width: 125px; margin-left: 65px"> <input id="jilubianhao" style="width: 125px; border: none; color: #0000FF; font-size: 17px;" /> </div> <br /> <table> <tr style="height: 15px"> <td style="width: 100px"> <button onclick="SelectDeliveryGoods();" id="Select"> <img src="../../Content/image/2012092109942.png" />查询</button></td> <td> <button id="TuiChu" onclick="parent.peiHuo();"> <img src="../../Content/image/2012080412301.png" />退出</button> </tr> </table> </div> <div style="border: 1px#4169e1 solid; height: 350px;"> <div class="easyui-panel" style="width: 640px; height: 347px;"> <table id="tbDeliveryGoods" title="配货单信息" class="easyui-datagrid" data-options="rownumbers:true,pagination:true,striped:true,singleSelect:true,fit:true,onDblClickRow:onDblDeliveryGoods"> <thead> <tr> <th data-options="field:'Invoice_id',hidden:true,width:90,align:'center'">配货单id</th> <th data-options="field:'Repertory_place_id',width:80,hidden:true,align:'center'">Repertory_place_id</th> <th data-options="field:'Record_number',width:110,align:'center'">记录编号</th> <th data-options="field:'Review_deny',width:80,align:'center'">审核否</th> <th data-options="field:'Consignment_department',width:80,align:'center'">发货部门</th> <th data-options="field:'Receiving_department',width:80,align:'center'">收货部门</th> <th data-options="field:'FuHuoRen',hidden:true,width:90,align:'center'">实物付货人</th> <th data-options="field:'ShouHuoRen',hidden:true,width:90,align:'center'">实物收货人</th> <th data-options="field:'MakeBills',width:80,align:'center'">制单人</th> <th data-options="field:'Make_bills_time',width:80,align:'center'">制单时间</th> <th data-options="field:'Transactor',width:80,align:'center'">执行人</th> <th data-options="field:'Execute_time',width:80,align:'center'">执行时间</th> <th data-options="field:'Remarks',width:60,align:'center'">备注</th> </tr> </thead> </table> </div> </div> <div style="margin: 0 0 0 0; height: 210px; border: 1px#0000ff solid"> <table id="tbDeliveryGoodsDetail" class="easyui-datagrid" title="配货明细信息" style="width: 843px;"> <thead> <tr> <th data-options="field:'Goods_id',hidden:true,width:80,align:'center'">商品ID</th> <th data-options="field:'Invoice_detail_id',width:80,hidden:true,align:'center'">Invoice_detail_id</th> <th data-options="field:'Repertory_place_id',width:80,hidden:true,align:'center'">Repertory_place_id</th> <th data-options="field:'Goods_code',width:80,align:'center'">商品代码</th> <th data-options="field:'Goods_bar_code',width:80,align:'center'">商品条码</th> <th data-options="field:'Goods_name',width:80,align:'center'">商品名称</th> <th data-options="field:'Repertory_enter_packages',editor:{type:'numberbox'},width:80,align:'center'">发货件数</th> <th data-options="field:'Shipments_quantity',width:80,editor:{type:'numberbox',options:{disabled:true}},align:'center'">发货细数</th> <th data-options="field:'Repertory_place_send_Name',width:80,align:'center',">发货库存地点</th> <th data-options="field:'Repertory_place_harvest_Name',width:80,align:'center',">收货库存地点</th> <th data-options="field:'Retail_unit_price',width:80,align:'center'">零售单价</th> <th data-options="field:'Tax_inclusive_price',width:80,align:'center',editor:{type:'numberbox',options:{prefix:'¥',precision:2,disabled:true}}">含税进价</th> <th data-options="field:'Art_No',width:80,align:'center'">货号</th> <th data-options="field:'Format_model',width:80,align:'center'">规格型号</th> <th data-options="field:'JiLiangDanWei',width:80,align:'center'">计量单位</th> <th data-options="field:'Vender_bar_code_deny',width:80,align:'center'">厂家条码否</th> <th data-options="field:'Goods_abbreviation',width:80,align:'center'">商品简称</th> <th data-options="field:'Plncode_PLN',width:80,align:'center'">PLN码</th> <th data-options="field:'Copy_record_deny',width:80,align:'center'">复制记录否</th> <th data-options="field:'Contract_number',width:80,align:'center'">合同号</th> <th data-options="field:'ShengChanChangJiaMC',width:80,align:'center'">生产厂家</th> <th data-options="field:'Art_No',width:80,align:'center'">货号</th> <th data-options="field:'JiLiangDanWei',width:80,align:'center'">计量单位</th> <th data-options="field:'ShiYongDuiXiang',width:80,align:'center'">使用对象</th> <th data-options="field:'Goods_colours',width:80,align:'center'">商品花色</th> <th data-options="field:'ShangPinFenLei',width:80,align:'center'">商品分类</th> <th data-options="field:'BaoZhiQi',width:80,align:'center'">保质期</th> <th data-options="field:'Input_ratio',width:80,align:'center'">进项税率</th> <th data-options="field:'Output_ratio',width:80,align:'center'">销项税率</th> <th data-options="field:'Count_scale',width:80,align:'center'">统计比例</th> <th data-options="field:'Quality_content',width:80,align:'center'">包装含量</th> <th data-options="field:'ZhiLiangDengJi',width:80,align:'center'">质量等级</th> <th data-options="field:'JiYingJiJie',width:80,align:'center'">经营季节</th> <th data-options="field:'ChanPinZhuangTai',width:80,align:'center'">产品状态</th> <th data-options="field:'DengJiRen',width:80,align:'center'">登记人</th> <th data-options="field:'Register_time',width:80,align:'center'">登记时间</th> <th data-options="field:'ShenHeRen',width:80,align:'center'">审核人</th> <th data-options="field:'Review_time',width:80,align:'center'">审核时间</th> <th data-options="field:'GengXinRen',width:80,align:'center'">更新人</th> <th data-options="field:'Update_Time',width:80,align:'center'">更新时间</th> <th data-options="field:'Purchase_bid',width:80,align:'center'">采购进价</th> <th data-options="field:'Self_fix_goods_deny',width:80,align:'center'">自订货否</th> <th data-options="field:'Mini_fix_goods_deny',width:80,align:'center'">最小订货数</th> </tr> </thead> </table> </div> </div> </body> </html>
4. 实现绑定下拉树功能的操作
界面效果图:
4.1为了实现该功能的界面代码
4.2为了实现该功能的控制器代码
#region 获取所有部门 public ActionResult SelectDepartmentTreeAll() { DataTable dt = _myDistributionGoods.SelectDepartmentTreeAll();//查询所有的商品信息 string stringtree = GetDataString(dt, "0"); //执行GetDataString方法,递归地生成树形控件要用的Json字符串 stringtree = stringtree.Remove(stringtree.Length - 2, 2); //移除字符串最后两个字符即}, return Content(stringtree); //返回Joson字符串 } public string GetDataString(DataTable dt, string id) { string stringbuilder = ""; DataView dv = new DataView(dt); dv.RowFilter = "Department_Farid=" + id; DataTable dtChild = dv.ToTable(); if (dtChild.Rows.Count > 0) { stringbuilder += "["; for (int i = 0; i < dtChild.Rows.Count; i++) { string strLeiBieId = dtChild.Rows[i]["Department_id"].ToString().Trim(); string strLeiBieMingCheng = dtChild.Rows[i]["Department_name"].ToString().Trim(); string strLeiBieDaiMa = dtChild.Rows[i]["Department_code"].ToString().Trim(); string strChild = GetDataString(dt, strLeiBieId); if (strChild.Length > 0) { stringbuilder += "{\"id\":" + strLeiBieId + ",\"text\":\"" + strLeiBieDaiMa + strLeiBieMingCheng + "\",\"state\":\"closed\",\"children\":" + strChild; } else { stringbuilder += "{\"id\":" + strLeiBieId + ",\"text\":\"" + strLeiBieDaiMa + strLeiBieMingCheng + "\"},"; } } stringbuilder = stringbuilder.Remove(stringbuilder.Length - 1, 1); stringbuilder += "]},"; } return stringbuilder; } #endregion
4.3为了实现该功能逻辑层的代码
#region 获取所有部门 public DataTable SelectDepartmentTreeAll() { SqlParameter[] sql = { new SqlParameter("@NB", SqlDbType.Char), }; sql[0].Value = "SelectDepartmentTreeAll"; DataTable dt = _myDalMethod.DAL_SelectDB_Par("DeliveryGoods", sql); return dt; } #endregion #region 根据部门id查询部门Farid public DataTable GetAllSentGoodsDepartmentByDepartmentId(int departmentId) { SqlParameter[] sql = { new SqlParameter("@NB", SqlDbType.Char), new SqlParameter("@Department_id", SqlDbType.Int), }; sql[0].Value = "GetAllSentGoodsDepartmentByDepartmentId"; sql[1].Value = departmentId; DataTable dt = _myDalMethod.DAL_SelectDB_Par("DeliveryGoods", sql); return dt; } #endregion
4.4为了实现该功能存储过程
--获取所以部门信息绑定发货部门tree if(@NB='SelectDepartmentTreeAll') begin SELECT Department.* FROM Department end --根据部门id查询部门Farid if(@NB='GetAllSentGoodsDepartmentByDepartmentId') begin SELECT Department_Farid, Department_code, Department_name FROM Department where Department_id=@Department_id end
5. 实现查询商品配货单功能查询
5.1在JavaScript中的界面代码
<script type="text/javascript"> $(document).ready(function () {; $("#w商品进仓单").show(700); //查询绑定部门 $.getJSON("/ShangPinPeiHuoDan/SelectDepartmentTreeAll", function (data) { $('#cboSentGoodsDepartmentCode').combotree('loadData', data); $('#cboReceiveDepartmentcode').combotree('loadData', data); }); }); //查询配货单(不定条件查询) function SelectDeliveryGoods() { var reviewDeny = document.getElementById("Review_deny").checked; var sentGoodsDepartmentName = $('#cboSentGoodsDepartmentCode').combotree('getValue'); var receiveDepartmentName = $('#cboReceiveDepartmentcode').combotree('getValue'); var recordNumber = $('#jilubianhao').val(); $.getJSON("/SelectDeliveryGoodsAll/SelectDeliveryGoodsInformationsByTerm?reviewDeny=" + reviewDeny + "&" + "sentGoodsDepartmentName=" + sentGoodsDepartmentName + "&" + "receiveDepartmentName=" + receiveDepartmentName + "&" + "recordNumber=" + recordNumber, function (data) { if (data != "") { $('#tbDeliveryGoods').datagrid('loadData', data); } else { $("#tbDeliveryGoods").datagrid('loadData', { total: 0, rows: [] }); $("#tbDeliveryGoodsDetail").datagrid('loadData', { toal: 0, rows: [] }); $("#cboSentGoodsDepartmentCode").val(""); $("#cboReceiveDepartmentcode").val(""); $("#jilubianhao").val(""); } }); } //绑定配货单明细 var invoiceId = 0; function onDblDeliveryGoods(rowIndex, rowData) { invoiceId = rowData.Invoice_id; $.getJSON("/SelectDeliveryGoodsAll/BindingDeliveryGoodsDetail?invoiceId=" + invoiceId, function (data) { $('#tbDeliveryGoodsDetail').datagrid('loadData', data); }); } </script> 5.2 实现该功能控制器代码 using System.Collections.Generic; using System.Data; using System.Web.Mvc; using BLL商品进仓单; namespace 大型商贸系统.Controllers { public class SelectDeliveryGoodsAllController : Controller { // // GET: /SelectDeliveryGoodsAll/ readonly SelectDeliveryGoodsAll _mySelectDeliveryGoodsAll = new SelectDeliveryGoodsAll(); public ActionResult SelectDeliveryGoods() { return View(); } #region 不定条件查询配货单 public ActionResult SelectDeliveryGoodsInformationsByTerm(bool reviewDeny, string sentGoodsDepartmentName, string receiveDepartmentName, string recordNumber) { DataTable dt = _mySelectDeliveryGoodsAll.SelectDeliveryGoodsInformationsByTerm( reviewDeny, ConvertHelper.ConverToInt(sentGoodsDepartmentName), ConvertHelper.ConverToInt(receiveDepartmentName), recordNumber); List<Dictionary<string, object>> listReturn = ConvertHelper.DtToList(dt); return Json(listReturn, JsonRequestBehavior.AllowGet); } #endregion #region 绑定配货单明细 public ActionResult BindingDeliveryGoodsDetail(int invoiceId) { DataTable dt = _mySelectDeliveryGoodsAll.BindingDeliveryGoodsDetail(invoiceId); List<Dictionary<string, object>> listReturn = ConvertHelper.DtToList(dt); return Json(listReturn, JsonRequestBehavior.AllowGet); } #endregion } }
5.3实现该功能逻辑层代码
using System.Data; using System.Data.SqlClient; using DALPublic; namespace BLL商品进仓单 { public class SelectDeliveryGoodsAll { readonly DALMethod _myDalMethod = new DALMethod(); #region 不定条件查询配货单 public DataTable SelectDeliveryGoodsInformationsByTerm(bool reviewDeny, int deliveryDepartmentId, int receivingDepartmentId, string recordNumber) { SqlParameter[] sql = { new SqlParameter("@NB", SqlDbType.Char), new SqlParameter("@reviewDeny", SqlDbType.Bit), new SqlParameter("@Delivery_department_id", SqlDbType.Int), new SqlParameter("@Receiving_department_id", SqlDbType.Int), new SqlParameter("@Record_number", SqlDbType.Char), }; sql[0].Value = "SelectDeliveryGoodsInformationsByTerm"; sql[1].Value = reviewDeny; sql[2].Value = deliveryDepartmentId; sql[3].Value = receivingDepartmentId; sql[4].Value = recordNumber; return _myDalMethod.DAL_SelectDB_Par("SelectAllDeliveryGoods", sql); } #endregion #region 绑定配货单明细 public DataTable BindingDeliveryGoodsDetail(int invoiceId) { SqlParameter[] sql = { new SqlParameter("@NB", SqlDbType.Char), new SqlParameter("@Invoice_id", SqlDbType.Int), }; sql[0].Value = "BindingDeliveryGoodsDetail"; sql[1].Value = invoiceId; DataTable dt = _myDalMethod.DAL_SelectDB_Par("SelectAllDeliveryGoods", sql); return dt; } #endregion } }
5.3 实现该功能存储过程
USE [大型商贸系统] GO /****** Object: StoredProcedure [dbo].[SelectAllDeliveryGoods] Script Date: 07/01/2015 06:58:22 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ============================================= -- Author: <Author,,Name> -- Create date: <Create Date,,> -- Description: <Description,,> -- ============================================= ALTER PROCEDURE [dbo].[SelectAllDeliveryGoods] @NB char(200)='',@reviewDeny bit=false,@Delivery_department_id int=0, @Receiving_department_id int=0,@Record_number char(20)='',@Invoice_id int=0 AS BEGIN --不定条件查询 if(@NB='SelectDeliveryGoodsInformationsByTerm') begin declare @sql nvarchar(max) if @reviewDeny = 'true' begin set @sql='SELECT Invoice.Invoice_id, Invoice.Repertory_enter_id, Department.Department_name AS Receiving_department, Eemployee.Employee_name AS ShouHuoRen, Department_1.Department_name AS Consignment_department, Eemployee_1.Employee_name AS FuHuoRen, Invoice.Record_number, Invoice.Review_deny, Invoice.Remarks, Eemployee_2.Employee_name AS MakeBills, Invoice.Make_bills_time, Eemployee_3.Employee_name AS Transactor, Invoice.Execute_time FROM Department INNER JOIN Invoice ON Department.Department_id = Invoice.Receiving_department_id INNER JOIN Eemployee ON Invoice.Receiver_id = Eemployee.Employee_id INNER JOIN Department AS Department_1 ON Invoice.Delivery_department_id = Department_1.Department_id INNER JOIN Eemployee AS Eemployee_1 ON Invoice.Shipper_id = Eemployee_1.Employee_id INNER JOIN Eemployee AS Eemployee_2 ON Invoice.Make_bills_id = Eemployee_2.Employee_id INNER JOIN Eemployee AS Eemployee_3 ON Invoice.Transactor_id = Eemployee_3.Employee_id WHERE Invoice.Review_deny=''true''' if (@Delivery_department_id!='') set @sql=@sql+' and Delivery_department_id like''%'+RTRIM(CAST(@Delivery_department_id as int))+'''' if(@Receiving_department_id!='') set @sql=@sql+'and Receiving_department_id='''+RTRIM(CAST(@Receiving_department_id as int))+'''' if(@Record_number!='') set @sql=@sql+'and Record_number like''%'+RTRIM(@Record_number)+'%''' exec(@sql) end else begin set @sql='SELECT Invoice.Invoice_id, Invoice.Repertory_enter_id, Department.Department_name AS Receiving_department, Eemployee.Employee_name AS ShouHuoRen, Department_1.Department_name AS Consignment_department, Eemployee_1.Employee_name AS FuHuoRen, Invoice.Record_number, Invoice.Review_deny, Invoice.Remarks, Eemployee_2.Employee_name AS MakeBills, Invoice.Make_bills_time, Eemployee_3.Employee_name AS Transactor, Invoice.Execute_time FROM Department INNER JOIN Invoice ON Department.Department_id = Invoice.Receiving_department_id INNER JOIN Eemployee ON Invoice.Receiver_id = Eemployee.Employee_id INNER JOIN Department AS Department_1 ON Invoice.Delivery_department_id = Department_1.Department_id INNER JOIN Eemployee AS Eemployee_1 ON Invoice.Shipper_id = Eemployee_1.Employee_id INNER JOIN Eemployee AS Eemployee_2 ON Invoice.Make_bills_id = Eemployee_2.Employee_id INNER JOIN Eemployee AS Eemployee_3 ON Invoice.Transactor_id = Eemployee_3.Employee_id WHERE Invoice.Review_deny=''false''' if (@Delivery_department_id!='') set @sql=@sql+' and Delivery_department_id like''%'+RTRIM(CAST(@Delivery_department_id as int))+'''' if(@Receiving_department_id!='') set @sql=@sql+'and Receiving_department_id='''+RTRIM(CAST(@Receiving_department_id as int))+'''' if(@Record_number!='') set @sql=@sql+'and Record_number like''%'+RTRIM(@Record_number)+'%''' exec(@sql) end end --绑定配货单明细 if(@NB='BindingDeliveryGoodsDetail') begin SELECT Invoice_detail.Invoice_detail_id, Invoice_detail.Invoice_id, Invoice_detail.Goods_id, Invoice_detail.Shipments_quantity, Invoice_detail.Repertory_place_send_id, Invoice_detail.Repertory_place_harvest_id, Invoice_detail.Review_deny, Repertory_place.Repertory_place_name AS Repertory_place_send_Name, Repertory_place_1.Repertory_place_name AS Repertory_place_harvest_Name, Goods.Goods_code, Goods.Goods_bar_code, Goods.Goods_name, Goods.Retail_unit_price, Goods.Art_No, Goods.Format_model, Attribute_gather_detail.Attribute_gather_detail_name AS JiLiangDanWei, Goods.Vender_bar_code_deny, Goods.Goods_abbreviation, Goods.Plncode_PLN, Goods.Copy_record_deny, Agreement.Contract_number, Manufacturer.Manufacturer_name AS ShengChanChangJiaMC, Attribute_gather_detail_1.Attribute_gather_detail_name AS ShiYongDuiXiang, Goods.Goods_colours, Attribute_gather_detail_2.Attribute_gather_detail_name AS ShangPinFenLei, Attribute_gather_detail_3.Attribute_gather_detail_name AS BaoZhiQi, Goods.Input_ratio, Goods.Output_ratio, Goods.Count_scale, Goods.Quality_content, Attribute_gather_detail_4.Attribute_gather_detail_name AS ZhiLiangDengJi, Manage_season.Manage_season_name AS JiYingJiJie, Attribute_gather_detail_5.Attribute_gather_detail_name AS ChanPinZhuangTai, Eemployee.Employee_name AS DengJiRen, Eemployee_1.Employee_name AS ShenHeRen, CONVERT(varchar(20), Goods.Register_time, 120) AS Register_time, CONVERT(varchar(20), Goods.Review_time, 120) AS Review_time, Eemployee_2.Employee_name AS GengXinRen, CONVERT(varchar(20), Goods.Update_Time, 120) AS Update_Time, Goods.Purchase_bid, Goods.Self_fix_goods_deny, Goods.Mini_fix_goods_deny, Goods.Purchase_bid * (CAST(Goods.Input_ratio AS decimal(18, 5)) / 100 + 1) AS Tax_inclusive_price, Invoice_detail.Shipments_quantity / Goods.Quality_content AS Repertory_enter_packages FROM Invoice_detail INNER JOIN Repertory_place ON Invoice_detail.Repertory_place_send_id = Repertory_place.Repertory_place_id INNER JOIN Repertory_place AS Repertory_place_1 ON Invoice_detail.Repertory_place_harvest_id = Repertory_place_1.Repertory_place_id INNER JOIN Goods ON Invoice_detail.Goods_id = Goods.Goods_id INNER JOIN Attribute_gather_detail ON Goods.Unit_of_measurement_pubid = Attribute_gather_detail.Attribute_gather_detail_id INNER JOIN Agreement ON Goods.Agreement_id = Agreement.Agreement_id INNER JOIN Manufacturer ON Goods.Manufacturer_id = Manufacturer.Manufacturer_id INNER JOIN Attribute_gather_detail AS Attribute_gather_detail_1 ON Goods.Use_target_pubid = Attribute_gather_detail_1.Attribute_gather_detail_id INNER JOIN Attribute_gather_detail AS Attribute_gather_detail_2 ON Goods.Goods_classify_pubid = Attribute_gather_detail_2.Attribute_gather_detail_id INNER JOIN Attribute_gather_detail AS Attribute_gather_detail_3 ON Goods.Quality_guarantee_period_pubid = Attribute_gather_detail_3.Attribute_gather_detail_id INNER JOIN Attribute_gather_detail AS Attribute_gather_detail_4 ON Goods.Quality_grade_pubid = Attribute_gather_detail_4.Attribute_gather_detail_id INNER JOIN Manage_season ON Goods.Manage_season_id = Manage_season.Manage_season_id INNER JOIN Attribute_gather_detail AS Attribute_gather_detail_5 ON Goods.Product_status_pubid = Attribute_gather_detail_5.Attribute_gather_detail_id INNER JOIN Eemployee ON Goods.Registrant_id = Eemployee.Employee_id INNER JOIN Eemployee AS Eemployee_1 ON Goods.Auditor_id = Eemployee_1.Employee_id INNER JOIN Eemployee AS Eemployee_2 ON Goods.Update_person_id = Eemployee_2.Employee_id where Invoice_id=@Invoice_id end END
仅供初学者使用,禁止商业用途。
梯子的梯阶从来不是用来搁脚的,它只是让人们的脚放上一段时间,
以便让别一脚能够再往上登。
只有创造,才是真正的享受,只有拚搏,才是充实的生活。
相关文章推荐
- C语言编程
- 利用JasperReport+iReport进行Web报表开发
- java中的map集合
- 正确理解 clear:both
- 看我如何将外贸项目做失败的
- 巧用clear:both
- Swift functions with external parameters
- OSChina 周三乱弹 —— 头可断发型不可乱
- Linux内核软RPS实现网络接收软中断的负载均衡分发
- Linux内核软RPS实现网络接收软中断的负载均衡分发
- [NIO]用dawn发送接收HTTP请求
- PHP 数组array
- linux2.6内核netfilter架构分析
- 分析并实现 360 P1路由器上的朋友专享网络 功能
- iOS网络层设计方案
- java通过jdbc方式连接oracle数据库
- 39岁了,我依然要谈梦想
- 设定目标
- 关于华硕X205TA安装Linux操作系统的问题
- #leetcode#Summary Ranges