1、吉林省高等教育自学考试毕 业 论 文论文题目:商品销售管理系统专 业:计算机应用软件准考证号:学生姓名:曹伟伟指导老师:卢奕南 3 月 1日摘 要在信息飞速发展今天,不管是小型企业还是大中型企业,全部逐步采取计算机对商品销售进行了管理,不在使用过多人力对商品信息、商品进出库信息、商品销售信息等进行统计、查对、计算等等。企业对商品销售管理已经日益关键,商品销售管理系统已然成为了不可或缺企业管理软件。一个优异企业管理软件,不仅需要含有大量数据信息,还需要含有对这些息息相关数据信息进行综合分析、整理功效。本文简明介绍了商品销售管理系统项目背景和意义,着重叙述了该系统开发过程,从系统需求分析、方案论证
2、、关键技术设计、数据库设计、模块设计到系统实现等各个步骤全部进行了详尽分析和描述。该系统利用SQL SERVER 数据库系统和VC+技术开发实现,包含了商品入库信息、商品销售信息和商品库存信息,能够经过简单增、删、改、保留等操作对该商品信息进行管理。该系统界面友善、灵活性好、且系统安全性高、运行稳定等功效,是一个企业商品销售必备管理软件。关键词:商品销售管理系统,SQL Server ,数据库, 需求分析AbstractToday, the rapid development of information, whether small or large and medium-sized ent
3、erprises, the gradual introduction of computers to management on the sale of goods, not using too much manpower for commodity information, goods in and out of the library information, sales information, recording, verifying, calculating, and so on .Enterprise sales management has become increasingly
4、 important for commodities, merchandising management system has become an integral part of the enterprise management software. A good enterprise management software, requires not only contains large amounts of data, you also need to have a comprehensive analysis, consolidation of information is clos
5、ely related to the function of.This article briefly describes the project background and significance of the merchandise management system, highlights the systems development process, from system requirements analysis, design, database design, plan, key technology module design to system implementat
6、ion and other links for a detailed analysis and description.Using the SQL SERVER database system and the system VC+ technology development, including product storage information, merchandise sales and inventory information on goods, through simple operations increased, by deleting, modifying, saving
7、 on the product information management. The system interface is friendly, good flexibility, and security features such as high and stable operation of the system, is the sale of goods of an enterprise management software.Keyword: sales management system, SQL Server , the database, and needs analysis
8、目录第1章 绪论41.1 本课题研究意义41.2 商品销售管理系统发展41.3 本课题研究内容5第2章 系统设计62.1 系统目标设计62.2 系统功效结构设计6第3章 数据库设计83.1 数据库分析83.2 数据库结构设计表83.3 应用技术11第4章 系统模块设计和实现134.1 登录模块设计和实现134.2 入库管理模块设计和实现174.3 销售管理模块设计234.4 项目公布29第5章 项目总结30参考文件31致 谢32第1章 绪论1.1 本课题研究意义企业伴随业务不停发展,商品销售数量也不停增加,商品销售步骤也就更为复杂,传统商品销售管理在商品统计和管理上不仅麻烦,而且还十分花费人力
9、和时间。而商品管理系统对商品进货、退货、存货和销售情况等进行了综合统计和管理,使管理人员经过对销售所包含到商品、订单、销售商、供给商等资料录入,便能够轻松实现商品销售步骤管理。方便管理人员愈加快更便捷得到自己想要信息。1.2 商品销售管理系统发展十年来中国软件工程方面进展有目共睹,在软件需求方面,我们看到在大多数组织中已经建立起了一级或两级需求体系(业务需求和软件需求),在一些组织中,需求分析员已经成为一个专门职位;甚至在某个大型国有商业银行已经成立一个专门部门来负责需求分析工作。应该来说,这是部分很可喜进步1。商品销售管理系统伴随软件工程不停发展,也在逐步发展,从一个只是用于小型企业小型数据
10、录入、简单销售处理过程一个实现功效,发展到能够录入大量数据信息,而且能够快速智能处理复杂销售、销售退货、入库、入库退货和和供给商之间关系维护和和用户之间关系维护等等过程,在商品销售管理系统帮助下,大型企业销售步骤已经日益信息化、简单化。在这个金融时代给企业带来了较高利益,使得企业飞速发展。现在商品销售管理系统已经在各个领域各个方面全部含有较高可行性5,如:(1)经济可行性:即是否能取得很好经济效益,要考虑开发成本是否能承受。信息管理系统规模不是很大,人力资源,经费要求全部极少,只要有技术人员参与开发即可,很轻易实现。当系统投入运行后能够为节省大量人力,物力,所带来效益远远大于系统软件开发成本。
11、信息管理系统在经济上完全可行。(2)时间可行性:即系统本身适用范围,本系统包含了商品交易管理系统所必需各个步骤,含有相对稳定性。所以,在世界上是可行。(3)操作可行性:本信息管理系统在界面设计时充足考虑到管理人员习惯,采取下拉菜单窗体模块,简明易懂,一目了然,使得操作简单:数据录入快速、规范、可靠:信息统计正确:制表灵活:适应力强:轻易扩充。(4)社会可行性:面对当今重视速度、效益时代,本软件社会可行性是显而易见。它提升了工作效率,缩短了经费过程所需时间,增大了信息传输正确性、立即性、快速性,节省了人力、物力,含有一定社会价值。1.3 本课题研究内容因为商品销售管理系统是一个用来帮助使用者管理
12、商品销售步骤软件。使用者经过对销售过程中包含到商品,订单,销售商等资料录入,便能够轻松实现商品销售步骤管理6。所以,从业务需求方面考虑,企业商品销售管理系统这个课题研究内容应该包含以下几点:(1) 大量数据信息录入;(2) 项目开发环境选择;(3) 数据信息存放软件选择;(4) 商品销售管理处理过程;(5) 系统安全性管理。第2章 系统设计2.1 系统目标设计商品销售管理系统以帮助使用者轻松实现商品销售步骤为设计目标,加以强大数据库管理功效,此管理系统大大提升了商品销售效率。本系统在设计时应满足一下几点:(1) 采取人机对话操作方法,信息查询灵活、方便、快捷、正确、数据存放安全可靠。(2) 实
13、现信息管理添加、修改和删除功效。(3) 能够录入商品信息、库房信息、用户和供给商等信息。(4) 对往来账管理。(5) 系统运行稳定、安全可靠。2.2 系统功效结构设计经过上面需求分析,能够总结出,在该商品销售管理系统中,应含有以下功效结构图2,图2.1所表示。2.1 功效结构图(1)基础信息管理模块,在该系统中,基础信息管理模块关键实现了操作员信息、商品信息、供给商信息、用户信息、商品库存信息现实,和添加和保留。(2)入库管理模块,在该系统中,入库管理模块关键实现了商品入库管理和入库退货管理信息显示、添加和保留等。(3)销售管理模块,在该系统中,销售管理模块关键实现了商品销售管理和销售退货管理
14、信息显示、添加和保留等。(4)查询管理模块,在该系统中,查询管理模块关键实现了入库查询、入库退货查询、销售查询和销售退货查询信息显示、添加和保留等。(5)往来账管理模块,在该系统中,关键实现了供给商结款和用户结款管理功效。第3章 数据库设计3.1 数据库分析商品销售管理系统使用了Microsoft SQL Server 数据库满足系统要求,数据库名称为SellManage,在数据库中创建了18张表用于存放多种不一样信息,图3.1所表示。图3.1 数据库系统表3.2 数据库结构设计表下面给出商品销售管理系统几张关键表表信息。1、tb_operator(操作员信息表)操作员列表数据表中,存放着对该
15、软件使用操作员姓名、密码和操作员等级,操作员等级在数据表中为0,表示一般管理员,若为1表示系统管理员。该表关键用于保留管理员信息3,图3.2所表示。图3.2 操作员数据表2、tb_merchandiseinfo(商品信息列表)商品信息列表数据表中,存放着商品id、商品姓名、商品规格、商品助记码、厂家等等信息。该表关键用于保留商品信息3,图3.3所表示。图3.3 商品信息列表3、tb_providerinfo(供给商信息列表)供给商信息列表中,包含供给商名称、法人姓名、责任人、联络电话、具体地址等等。该表关键用于保留供给商信息3,图3.4所表示。图3.4 供给商信息列表4、tb_customer
16、info(用户信息列表)用户信息列表中,包含用户名称、责任人、联络电话等用户信息。该表关键用于保留用户信息3,图3.5所表示。图3.5 用户信息列表5、tb_merchandisestorage(库存信息列表)库存信息列表中包含库存编号、库存名称、库存数量这三类信息,该表关键用于保留上述提到这三类信息3,图3.6所表示。图3.6 库存信息列表7、tb_cancelsell_main(销售退货列表)销售退货列表中包含退货单号、用户、操作员、折扣等信息,该表关键用于统计销售退货信息3,图3.7所表示。图3.7 销售退货列表3.3 应用技术在此销售管理系统中,关键采取了ADO技术操作数据库,在这个系
17、统设计过程中经过导入ADO Com接口实现对SQL Server 操作,为了操作方便,将数据库多种操作封装在一个自定义CDataBase类中。在实现数据库过程中,首先要创建一个新类CDataBase,然后再向新创建该类中添加一个组员函数和组员变量。在程序连接和操作数据库时,需要设置数据库连接相关信息,该系统是经过一个数据库配置INI文件,和数据库进行连接,当系统开启时,首先从INI文件中获取数据库配置信息,如若系统所在服务器和数据库发生改变,只需要修改INI文件中配置信息即可,无需再改动代码。在CDataBase类中,自定义了一个初始化数据库连接函数,关键用于获取INI文件中链接信息,如主机名
18、、用户名、密码、默认库。假如该初始化函数调用成功,即连接成功,则返回1,不然返回0,即表示连接数据库失败4。该初始化函数为InitData(),实现代码以下:int CDatabase:InitData()char m_szConnect512;char m_szTmp1024= ;char m_szHost20, m_szUser20, m_szPwd20, m_szDef20 ;GetPrivateProfileString(数据库, 主机名, NULL, m_szHost, sizeof(m_szHost), IniFile) ;GetPrivateProfileString(数据库,
19、用户名, NULL, m_szUser, sizeof(m_szUser), IniFile) ;GetPrivateProfileString(数据库, 密码, NULL, m_szPwd, sizeof(m_szPwd), IniFile) ;GetPrivateProfileString(数据库, 默认库, NULL, m_szDef, sizeof(m_szDef), IniFile) ;try/连接XdDataHRESULT hr = m_Connection.CreateInstance(_uuidof(Connection);sprintf(m_szConnect,provide
20、r = sqloledb;server=%s;database=%s;, m_szHost, m_szDef);hr=m_Connection-Open(_bstr_t(m_szConnect),_bstr_t(m_szUser),_bstr_t(m_szPwd),-1);sprintf(m_szTmp, 数据库连接成功!);/连接XdDatacatch(_com_error & e) sprintf(m_szTmp, 数据库打开失败,错误原因:%sn,LPCTSTR(e.Description();return 0 ;return 1 ;第4章 系统模块设计和实现4.1 登录模块设计和实现用
21、户登录模块是全部管理系统所应含有基础模块之一,该模块关键用于实现系统检验工作,只有含有对应权限管理员用户能够使用这个系统,增加了系统安全性,该系统用户登录界面图4.1所表示。图4.1 系统登录模块用户登录系统是整个系统中最先显示一个窗体,在运行一个系统时,要首先经过这个窗体,以管理员身份进入该系统,若输入用户名和密码正确,则进入此系统,若输入错误,则无法进入此系统。在登录窗体创建同时应该创建数据库连接,和数据库连接这个过程,需要在应用程序类初始化方法(CMerchandiseSellApp)中实现,连接数据库操作代码以下:if(!m_hDatabase.InitData()MessageBox
22、(NULL, 数据库访问失败,程序异常关闭!, 犯错啦, MB_OK) ;exit(1) ;/login CDlgLogin m_hDlg ;/*定义登录对话框类对象*/if(m_hDlg.DoModal() = IDOK)/*显示登录对话框*/else/exit(1) ;CMerchandiseSellDlg dlg;/*定义应用程序主窗体*/m_pMainWnd = &dlg;int nResponse = dlg.DoModal();/*显示主窗体*/if (nResponse = IDOK)/ TODO: Place code here to handle when the dialo
23、g is/ dismissed with OKelse if (nResponse = IDCANCEL)/ TODO: Place code here to handle when the dialog is/ dismissed with Cancel用户登录模块实现关键经过以下几步:(1)创建一个对话框,设置对应对话框属性,在对话框中添加静态文本控件、编辑框控件和两个按钮控件。因为显示密码编辑框中输入密码是看见,所以,在密码相对应这个编辑框需要设置尤其属性,即在Styles这个属性中,勾选Password这个属性。图4.2所表示。图4.2 密码编辑框特殊属性(2)在对话框窗体初始化方法中
24、设置对话框按钮背景图,和相对应图标,实现代码以下:BOOL CDlgLogin:OnInitDialog() CDialog:OnInitDialog();/ TODO: Add extra initialization herem_hBtnOk.SetIcon(IDI_ICON_OK);/*设置确定按钮图标*/m_hBtnOk.OffsetColor(CButtonST:BTNST_COLOR_BK_IN, shBtnColor);m_hBtnOk.SetColor(CButtonST:BTNST_COLOR_FG_IN, RGB(0, 128, 0);m_hBtnCancel.SetIco
25、n(IDI_ICON_CANCEL);/*设置取消按钮图标*/m_hBtnCancel.OffsetColor(CButtonST:BTNST_COLOR_BK_IN, shBtnColor);m_hBtnCancel.SetColor(CButtonST:BTNST_COLOR_FG_IN, RGB(0, 128, 0);return TRUE; / return TRUE unless you set the focus to a control / EXCEPTION: OCX Property Pages should return FALSE(3)在“确定”按钮事件中实现用户名和密码
26、验证。在“确定”按钮实现过程中,首先获取该对话框编辑控件中文本信息,即输入姓名、密码,然后,将获取姓名、密码字符串,复制给定义数据库中操作员姓名和密码组员变量,假如和数据库操作员信息表中数据相匹配,则登录成功,不然,登录失败,“确定”按钮实现代码以下:void CDlgLogin:OnOK() char m_szName30, m_szPwd30 ;GetDlgItemText(IDC_EDIT_NAME, m_szName, sizeof(m_szName) ;/*获取用户名*/GetDlgItemText(IDC_EDIT_PWD, m_szPwd, sizeof(m_szPwd) ;/*
27、获取密码*/switch(m_hDatabase.IsVerifyUser(m_szName, m_szPwd, m_szLevel)case 1:/成功strcpy(m_szOpName, m_szName) ;break ;case 0:/失败MessageBox(登录失败,用户名/密码错误!) ;m_hEditName.SetFocus() ;return ;case -1:/数据库操作异常MessageBox(数据库操作异常,请和系统管理员联络!) ;exit(0) ;break ;CDialog:OnOK();4.2 入库管理模块设计和实现商品入库管理模块是销售过程中关键处理过程,在
28、入库过程中,关键有两部分,一部分是商品入库信息登记和显示,还有一部分是入库退货信息录入和显示功效。4.2.1 商品入库管理入库商品关键需要统计商品入库单号、操作员、供给商、单价、入库时间等等信息,在该模块能够添加、修改、删除这些入库信息。商品入库管理信息录入功效,图4.3所表示。图4.3 商品入库录入商品入库管理模块实现过程关键有以下几点:(1)添加一个商品入库管理模块对话框资源,设置该对话框属性,设置ID值,将标题改为“商品入库管理”。(2)向对话框中添加按钮控件,标签控件,静态文本框控件,文本编辑框控件以立即间选择控件,每一个控件设置对应属性信息。(3)商品入库管理中关键有两方面内容,在对
29、话框中经过标签控件进行设置,一面是录入入库单号等基础信息,一面是显示入库信息列表。所以,在商品入库管理模块中实现了对列表信息初始化操作,对应代码以下:void CDlgSprk:InitCtrlData()m_hTabSprk.InsertItem(0, 商口入库基础信息) ;/插入信息m_hTabSprk.InsertItem(1, 商口入库信息列表) ;m_hTabSprk.ShowWindow(TRUE) ;/设置窗口显示方法m_hEditZk.ShowWindow(TRUE) ;m_hEditYfje.ShowWindow(TRUE) ;m_hEditSpbh.ShowWindow(T
30、RUE) ;m_hEditSl.ShowWindow(TRUE) ;m_hEditSfje.ShowWindow(TRUE) ;m_hEditRkdh.ShowWindow(TRUE) ;m_hEditHj.ShowWindow(TRUE) ;m_hEditGys.ShowWindow(TRUE) ;m_hEditDj.ShowWindow(TRUE) ;m_hEditCzy.ShowWindow(TRUE) ;m_hEditCkmc.ShowWindow(TRUE) ;m_hListSprk.ShowWindow(FALSE) ;m_hListSprk.InsertColumn(0, 入库单
31、号, LVCFMT_CENTER, 80) ;/插入列信息m_hListSprk.InsertColumn(1, 供给商, LVCFMT_CENTER, 50) ;m_hListSprk.InsertColumn(2, 操作员, LVCFMT_CENTER, 80) ;m_hListSprk.InsertColumn(3, 折扣, LVCFMT_CENTER, 50) ;m_hListSprk.InsertColumn(4, 累计, LVCFMT_CENTER, 50) ;m_hListSprk.InsertColumn(5, 应付金额, LVCFMT_CENTER, 80) ;m_hList
32、Sprk.InsertColumn(6, 实付金额, LVCFMT_CENTER, 80) ;m_hListSprk.InsertColumn(7, 仓库名称, LVCFMT_CENTER, 80) ;m_hListSprk.InsertColumn(8, 商品编号, LVCFMT_CENTER, 80) ;m_hListSprk.InsertColumn(9, 单价, LVCFMT_CENTER, 50) ;m_hListSprk.InsertColumn(10, 数量, LVCFMT_CENTER, 50) ;m_hListSprk.InsertColumn(11, 金额, LVCFMT_
33、CENTER, 50) ;m_hListSprk.InsertColumn(12, 时间, LVCFMT_CENTER, 80) ;/设置列表扩展风格m_hListSprk.SetExtendedStyle(m_hListSprk.GetStyle() | LVS_EX_FULLROWSELECT);m_hBtnOk.SetIcon(IDI_ICON_CLOSE);/设置关闭按钮对应图标m_hBtnOk.OffsetColor(CButtonST:BTNST_COLOR_BK_IN, shBtnColor);m_hBtnOk.SetColor(CButtonST:BTNST_COLOR_FG_
34、IN, RGB(0, 128, 0);m_hBtnSave.SetIcon(IDI_ICON_OK);m_hBtnSave.OffsetColor(CButtonST:BTNST_COLOR_BK_IN, shBtnColor);m_hBtnSave.SetColor(CButtonST:BTNST_COLOR_FG_IN, RGB(0, 128, 0);m_hBtnSave.EnableWindow(FALSE) ;m_hBtnDel.SetIcon(IDI_ICON_DEL);m_hBtnDel.OffsetColor(CButtonST:BTNST_COLOR_BK_IN, shBtnC
35、olor);m_hBtnDel.SetColor(CButtonST:BTNST_COLOR_FG_IN, RGB(0, 128, 0);m_hBtnAdd.SetIcon(IDI_ICON_ADD);m_hBtnAdd.OffsetColor(CButtonST:BTNST_COLOR_BK_IN, shBtnColor);m_hBtnAdd.SetColor(CButtonST:BTNST_COLOR_FG_IN, RGB(0, 128, 0);m_hBtnMod.SetIcon(IDI_ICON_MOD);m_hBtnMod.OffsetColor(CButtonST:BTNST_COL
36、OR_BK_IN, shBtnColor);m_hBtnMod.SetColor(CButtonST:BTNST_COLOR_FG_IN, RGB(0, 128, 0);m_hBtnFind.SetIcon(IDI_ICON_FIND);m_hBtnFind.OffsetColor(CButtonST:BTNST_COLOR_BK_IN, shBtnColor);m_hBtnFind.SetColor(CButtonST:BTNST_COLOR_FG_IN, RGB(0, 128, 0);TabCtrlOfSelect(1) ;在上述代码中,实现了对话框一个界面信息现实,为了增加界面美观性,还
37、是用了带有图标按钮。(4)处理“增加”按钮单击事件,将商品入库信息录入到数据表中,在录入数据时,程序会检验数据正当性,假如输入信息不符合对应条件,比如,没有输入或反复等,则会出现提醒信息。该按钮实现代码以下:void CDlgSprk:OnBtnAdd() / TODO: Add your control notification handler code hereswitch(m_hTabSprk.GetCurSel()/获取标签控件目前选中项case 0:break ;case 1:TabCtrlOfSelect(0) ;break ;m_hEditZk.SetWindowText() ;
38、/设置编辑框信息为空,初始化状态为空m_hEditYfje.SetWindowText() ;m_hEditSpbh.SetWindowText() ;m_hEditSl.SetWindowText() ;m_hEditSfje.SetWindowText() ;m_hEditRkdh.SetWindowText() ;m_hEditHj.SetWindowText() ;m_hEditGys.SetWindowText() ;m_hEditDj.SetWindowText() ;m_hEditCzy.SetWindowText() ;m_hEditCkmc.SetWindowText() ;
39、m_hEditRkdh.SetFocus() ;/对指定窗口设置键盘焦点m_hBtnSave.EnableWindow() ;/保留按钮现实状态(5)处理“保留”按钮单击事件,将录入商品入库信息保留。该事件实现方法以下:void CDlgSprk:OnBtnSave() / TODO: Add your control notification handler code here/定义字符数组类型存放编辑框中数据信息char ID30+1, provider30+1, ooperator50+1, rebate10+1, sumtotal10+1, paymoney10+1, factmone
40、y10+1, intime20+1=, merchandiseID30+1, unitPrice10+1, numbers10+1, stockname30+1 ;/获取文本编辑框中数据信息,m_hEditRkdh.GetWindowText(ID, sizeof(ID) ;m_hEditGys.GetWindowText(provider, sizeof(provider) ;m_hEditCzy.GetWindowText(ooperator, sizeof(ooperator) ;m_hEditZk.GetWindowText(rebate, sizeof(rebate) ;m_hEdi
41、tHj.GetWindowText(sumtotal, sizeof(sumtotal) ;m_hEditYfje.GetWindowText(paymoney, sizeof(paymoney) ;m_hEditSfje.GetWindowText(factmoney, sizeof(factmoney) ;m_hEditSpbh.GetWindowText(merchandiseID, sizeof(merchandiseID) ;m_hEditDj.GetWindowText(unitPrice, sizeof(unitPrice) ;m_hEditSl.GetWindowText(nu
42、mbers, sizeof(numbers) ;m_hEditCkmc.GetWindowText(stockname, sizeof(stockname) ;m_hDtCtrl1.GetWindowText(intime,sizeof(intime);/保留修改,更新数据库m_hDatabase.UpdateSprkData(ID,provider,ooperator,rebate,sumtotal,paymoney,factmoney,intime,merchandiseID,unitPrice,numbers,stockname) ;m_hBtnSave.EnableWindow(FAL
43、SE) ;其它按钮单击事件处理方法,请参考源码,在此不作过多介绍。4.2.2 入库退货管理入库管理模块除了上面商品入库管理信息功效,还有入库退货信息录入和修改等功效,图4.4所表示。图4.4 入库退货功效商品入库退货管理设计中,也对对话框信息进行了初始化,大致设计方法如商品入库管理中初始化操作,除此之外,还对添加、保留、修改等按钮进行了实现,按钮实现方案,在此不做过多介绍,具体设计代码请参考本项目。4.3 销售管理模块设计销售管理模块是销售过程中关键处理过程,在销售过程中,关键有两部分,一部分是商品销售信息登记和显示,还有一部分是销售退货信息录入和显示功效。销售商品关键需要统计商品销售单号、操
44、作员、供给商、单价、销售时间等等信息,在该模块能够添加、修改、删除这些销售信息。商品销售管理信息录入功效,图4.5所表示。图4.5 商品销售管理图4.6 商品销售退货管理商品销售管理模块实现方法同入库管理模块类似,实现过程关键有以下几点:(1)添加一个商品销售管理模块对话框资源,设置该对话框属性,设置ID值,将标题改为“商品销售管理”。(2)向对话框中添加按钮控件,标签控件,静态文本框控件,文本编辑框控件以立即间选择控件,每一个控件设置对应属性信息。(3)商品销售管理中关键有两方面内容,在对话框中经过标签控件进行设置,一面是录入入库单号等基础信息,一面是显示入库信息列表。初始化这些数据信息实现
45、方法以下:void CDlgSell:InitCtrlData()m_hTabCancelSell.InsertItem(0, 商品销售基础信息) ;m_hTabCancelSell.InsertItem(1, 商品销售信息列表) ;m_hTabCancelSell.ShowWindow(TRUE) ;/m_hListCancelSell.InsertColumn(0, 销售单号, LVCFMT_CENTER, 80) ;m_hListCancelSell.InsertColumn(1, 用户, LVCFMT_CENTER, 50) ;m_hListCancelSell.InsertColumn(2, 操作员, LVCFMT_CENTER, 80) ;m_hListCancelSell.InsertColumn(3, 折扣, LVCFMT_CE