简易旋转倒立摆及控制装置及简易进销存管理系统设计说明书_第1页
简易旋转倒立摆及控制装置及简易进销存管理系统设计说明书_第2页
简易旋转倒立摆及控制装置及简易进销存管理系统设计说明书_第3页
简易旋转倒立摆及控制装置及简易进销存管理系统设计说明书_第4页
简易旋转倒立摆及控制装置及简易进销存管理系统设计说明书_第5页
已阅读5页,还剩59页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

简易旋转倒立摆及控制装置(C题)2013年9月7日摘要为了满足倒立摆的设计要求,进行了模型的制作、电机以及测量角度仪器的比较与确定,本系统采用AT89S52单片机、直流减速电机和绝对式旋转编码器TRD-3A1024-2610为核心,直流电机往返转动时带动摆杆进行大于60度的摆动以及圆周运动;当摆杆在竖直状态发生运动时,通过编码器测出的角度的变化传给单片机,进而单片机控制直流减速电机转动,从而使摆杆保持倒立。实物模型简单稳定,系统采用PID算法,有效的、低消耗的控制电机,符合题目要求。关键词:AT89S52单片机,直流减速电机,编码器,PID算法目录1系统方案 11.1控制芯片的选择 11.2电机的选择方案 11.3测量装置的选择 21.4驱动模块的选择 31.5整体方案的流程图 42系统理论分析与计算 42.1摆杆倒立的测量方法 42.2模型的建立和控制方法 43电路与程序设计 53.1电路的设计 53.2程序的设计与结构 73.3程序流程图 74测试方案与测试结果 84.1测试方案 84.2测试条件与仪器 94.3测试结果及分析 94.3.1测试结果(数据) 94.3.2测试分析与结论 9附录1:电路原理图 10附录2:源程序 11简易旋转倒立摆及控制装置(C题)1系统方案本系统主要由电机模块、测角度模块、转轴模块、电源模块组成,下面分别论证这几个模块的选择。1.1控制芯片的选择方案一:STM32系列基于专为要求高性能、低成本、低功耗的嵌入式应用专门设计的ARMCortex-M3内核。按性能分成两个不同的系列:STM32F103“增强型”系列和STM32F101“基本型”系列。时钟频率72MHz时,从闪存执行代码,STM32功耗36mA,是32位市场上功耗最低的产品,相当于0.5mA/MHz。方案二:STC89C52RC单片机是宏晶科技推出的新一代高速/低功耗/超强抗干扰的单片机,指令代码完全兼容传统8051单片机,12时钟/机器周期和6时钟/机器周期可以任意选择。工作频率范围:0~40MHz,相当于普通8051的0~80MHz,实际工作频率可达48MHz,用户应用程序空间为8K字节,片上集成512字节RAM,ISP(在系统可编程)/IAP(在应用可编程),无需专用编程器,无需专用仿真器,可通过串口(RxD/P3.0,TxD/P3.1)直接下载用户程序,具有EEPROM功能和看门狗功能共3个16位定时器/计数器,即定时器T0、T1、T2。方案三:MSP430优点是电压低,功耗低,3.3V供电,16位,运行速度快,内置硬件乘法器,乘除法运算都为单周期指令,片内集成资源丰富,有两组普通I\O口具有中断功能。鉴于我们对51单片机很熟悉,所以选择51单片机作为本次试验的主控芯片。1.2电机的选择方案根据题目电机可具备左右摆动,并且速度可调,转速调节范围高的特点。方案一:选择步进电机,步进电机属于位置控制,其具有结构简单、可靠性高和成本低的特点,不过步进电机在控制的精度、速度变化范围、低速性能方面都不如传统的闭环控制的直流伺服电动机。转速较慢,容易脱转是它最重要的缺陷,无法实现题目的要求,我们需要调速范围广的电机。方案二:选择直流减速电机,齿轮减速箱的作用是,提供较低的转速,较大的力矩。同时,齿轮箱不同的减速比可以提供不同的转速和力矩,满足本次试验的要求。我们采用德国空心杯2342L012减速电机,其型号如下:工作电压空转(r/m)减速后速输出功率(W)扭矩空转电流(mA)堵转电流(mA)减速比每圈脉冲12v810012017大扭矩75140066:112CPR1.3测量装置的选择根据题目中对角度的要求,我们应该选择能够测量和控制角度的仪器。方案一:电位器是具有三个引出端、阻值可按某种变化规律调节的电阻元件。电位器通常由电阻体和可移动的电刷组成。当电刷沿电阻体移动时,在输出端即获得与位移量成一定关系的电阻值或电压。电位器既可作三端元件使用也可作二端元件使用。后者可视作一可变电阻器。通过电位器,利用电位器一周与360度一一对应的原理,通过不同的电压值,利用A/D,D/A转换来对电机进行控制。方案二:角度传感器,能感受被测角度并转换成可用输出信号的传感器。当连结到RCX上时,轴每转过1/16圈,角度传感器就会计数一次。往一个方向转动时,计数增加,转动方向改变时,计数减少。计数与角度传感器的初始位置有关。利用角度传感器与摆杆固定,测量摆杆的摆动角度来对电机进行控制。缺点就是外接线太多,当摆杆旋转时,可能会发生缠绕现象。方案三:编码器是将信号或数据进行编制、转换为可用以通讯、传输和存储的信号形式的设备。编码器把角位移或直线位移转换成电信号,前者称为码盘,后者称为码尺。按照读出方式编码器可以分为接触式和非接触式两种;按照工作原理编码器可分为增量式和绝对式两类。我们决定采用绝对式编码器,它的每一个位置对应一个确定的数字码,因此它的示值只与测量的起始和终止位置有关,而与测量的中间过程无关。这样可以帮助我们减小测量过程中的不必要的误差。1.4驱动模块的选择由于在电路中采用德国空心杯2342L012减速电机,因此在电路中选择L298驱动L298N的逻辑参考电平为典型的TTL电平。用了一个L1117稳压芯片提供稳定的5V输出电压和逻辑参考电压,D9、D10、D11和D12是发光二极管,指示运动方向,与它们连接的电阻都是限流电阻。R5和R8都是下拉电阻,让EnA和EnB口要么是高电平,要么是低电平,避免出现电平混乱,提高对输入信号的抗干扰能力。输出端都接有0.1uF电容,加上二极管平衡电路。电路图如下:1.5整体方案的流程图2系统理论分析与计算2.1摆杆倒立的测量方法在模拟试验中,考虑到编码器和电机对电信号的反应时间以及外界的干扰,系统会存在控制滞后现象,系统输出量也会出现一定程度的波动,造成稳态误差。为了获得更好的控制效果,必须优化纯比例控制模型,以消除稳态误差。在工业控制中,PID(即比例—积分—微分)算法是一种比较成熟的控制方法,其控制的基本思想是将偏差的比例、积分和微分三参数通过线性组合构成控制器,对被控对象进行控制。其控制结构图如图所示u设定+e-反馈PID运算执行部件被控对象编码器反馈u设定+e-反馈PID运算执行部件被控对象编码器反馈PID控制结构图2.2模型的建立和控制方法理想的PID微分方程为:(7)式中:表示比例系数;表示积分时间;表示微分时间。基本偏差为当前时刻观测到的瞬时扭矩与需要的制动转矩之差,作为控制量;电动机的驱动电流为输出量,驱动电动机旋转,对主轴进行转矩补偿;为1.5。因此,本题中的PID控制模型为:部分程序如下://PID=Uk+KP*[E(k)-E(k-1)]+KI*E(k)+KD*[E(k)-2E(k-1)+E(k-2)];(增量型PID算式)floatPI(floatK,floatTi,floaterror)//PI控制器,{floatKk=K+K/Ti;staticfloatu=0,e[2]=0;floatdu;e[1]=error;du=Kk*e[1]-K*e[0];u=u+du;e[0]=e[1];returnu;}3电路与程序设计3.1电路的设计编码器管脚图单片机管脚图如下:上图中编码器VCC接12V开关电源,10个脚依次与P0,P3^0,P3^1连接.编码器输出二进制,代表1024个脉冲,经转化变为360度。附加编码器程序:voiddisplay(ulintnumdis1)//数码管显示角度二进制数{ uintshi1,ge1,bai1,qian1;//shi2,ge2,shi3,ge3,shi4,ge4;//分离两个分别要显示的数 numdis1=(numdis1*3600)/1024; qian1=numdis1/1000; bai1=numdis1/10/10%10; shi1=numdis1/10%10; ge1=numdis1%10; P0=table[ge1]; P2=0x07; delay1ms(3); P0=table[shi1]; P2=0x06; delay1ms(3); P0=table[bai1]; P2=0x05; delay1ms(3); P0=table[qian1]; P2=0x04; delay1ms(3);}驱动电路L298,单片机与直流电机的管脚图如下:3.2程序的设计与结构程序主函数:见附录程序。3.3程序流程图1、基本要求一:只需将电机驱动做往复运动,超过60度即可。2、基本要求二:从摆杆处于垂直位置,快速摆动旋转臂,做到规律周期性地带动摆杆,让摆杆完成圆周运动。3、基本要求三:具体流程图如下:由于我们小组电机的损坏,导致实验设计没有顺利的进行,并未完成基础三的要求。(附:由于电机的损坏,我们小组只好采取其他办法补救,同时编码器也无法同时使用,便采用角度传感器进行控制。)4测试方案与测试结果4.1测试方案1、硬件测试:(1)电机测试我们选择定点测试主要是观察步进电机的反应快慢。用手推动摆杆转动,观察其本身自由转动的角度,一次来判断电机的灵敏度。随后用单片机驱动电机转动,通过调节不同的占空比,粗略判断电机转动的加速度,以及扭矩的大小。反复调整脉冲的频率,确定使步进电机能迅速反应且稳定工作的运行频率。(2)摆杆灵敏度的测试通过不同的转轴来将摆杆从165度放开,让其不受其他外力作用自由摆动,计数摆动的周期数。将摆动3个来回以上的视为合格。2、软件仿真测试我们用51单片机将程序写入ROM中,进行程序的检测,第一步、第二步可顺利完成。3、存在干扰的情况在上面状态的基础上,在摆杆的自由阻尼运动过程中人为强制使其停止摆动,使平板能迅速反应,恢复平衡状态。4.2测试条件与仪器测试条件:检查多次,仿真电路和硬件电路必须与系统原理图完全相同,并且检查无误,硬件电路保证无虚焊。测试仪器:高精度的数字毫伏表,模拟示波器,数字示波器,数字万用表,指针式万用表。4.3测试结果及分析4.3.1测试结果(数据)1.TRD-3A1024-2610编码器角度转化结果如下表所示:二进制22^22^42^62^72^82^92^10角度22.545.090.0180.0360.02.PWM在98%时,电机的转速慢;PWM在100%的时候,转速快,扭力强。在摆杆摆动中其不能及时反应,造成测试中丢转现象。4.3.2测试分析与结论本系统通过由编码器为轴杆的摆动,得到两端角度的变化,经单片机系统的数据采集、脉冲调制使伺服电机工作最终使摆杆倒立的目的。由于伺服电机的工作特性,开始反应较慢使得摆杆难以倒立。由于摆杆较重,在杆摆动的过程中,会受到本身材料及外部因素的影响而从电位器上采集的电压产生变化,导致出现偏差,导致摆杆不能完全实现360度多圈转动。所以在这个比赛中,我懂得了整个流程只有自己亲手操作一遍,才会清楚其中的奥妙,在比赛中选择芯片、模块是前提,也最重要,此系统也是由于电机的问题导致了设计要求无法精确达到。参考文献罗晶,陈平.一阶倒立摆的PID控制.实验室研究与探索,2005,11周航慈,嵌入系统软件设计中的常用算法.北京:北京航空航天大学出版社,2010,1,1附录1:电路原理图PAGEPAGE18附录2:源程序#include<reg51.h>#defineuintunsignedint#defineucharunsignedcharsbitpwm=P1^0;sbitdian1=P0^0;sbitdian2=P0^1;sbitkey1=P3^2;sbitkey2=P3^3;sbitkey3=P3^4;uinttable[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};uintwela[]={0,1,2,3,4,5,6,7};uintqian=0,bai=0,shi=0,ge=0;uinttime=100,aa=0,bb=0,temp=0,flag=0;voiddelay(ucharz){ ucharx,y; for(x=z;x>0;x--) for(y=110;y>0;y--);}voidmain(){ TMOD=0x11; TH0=64536/256; TL0=64536%256; TH1=65336/256; TL1=65336%256; EA=1; ET1=1; TR1=1; ET0=1; TR0=1; pwm=1; while(1) { if(flag==0) { dian1=0; dian2=1; } if(flag==1) { dian1=1; dian2=0; } } }voidtimer1()interrupt3{ TH1=65336/256; TL1=65336%256; aa++; if(aa==95) { pwm=0; } if(aa==100) { aa=0; pwm=1; }}voidtimer0()interrupt1{ TH0=64536/256; TL0=64536%256; bb++; if(bb==400) { flag=1; } if(bb==800) { bb=0; flag=0; }}#include<reg51.h>#include<intrins.h>//P1和P3^0,P3^1用于编码器//P0和P2用于数码显示//P3^2:pwmP3^3,P3^4电机电极换向#defineucharunsignedchar #defineuintunsignedint#defineulintunsignedlongint#definesection13//死区#definesection210#defineFULLrat100//饱和区sbitbit8=P3^0;sbitbit9=P3^1;sbitpwm=P3^2;sbitdian1=P3^3;sbitdian2=P3^4;ulintS;//设定值ulintPV; //实际值ulintout;ucharcodetable[16]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};ucharflag;ucharmark=0;ucharaa=0;uintbb=0;//PID.KP=1;//PID.KI=1;//PID.KD=1;//PID.CK=1;//PID=Uk+KP*[E(k)-E(k-1)]+KI*E(k)+KD*[E(k)-2E(k-1)+E(k-2)];(增量型PID算式)voiddelay(ucharz){ ucharx,y; for(x=z;x>0;x--) for(y=110;y>0;y--);}voiddelay1ms(uintdel){ uchari,j; for(j=0;j<del;j++) for(i=0;i<=148;i++); }voiddelay10ms(uintdel){ uinti,j; for(i=0;i<del;i++) for(j=0;j<1827;j++);}/*二进制格雷码转换成自然二进制码*/staticuintGraytoDecimal(uintx){uinty=x;while(x>>=1)y^=x;returny;}ulintGet_angle(void){ ulintgray_code; ulintgray_code_L8; ulintgray_code_H2; ulintdec_code; P1=0xFF; P3=0xFF; gray_code_L8=P1; gray_code_H2=0xff00; if(bit8==0){gray_code_H2&=0xfeff;} if(bit9==0){gray_code_H2&=0xfdff;} gray_code=gray_code_H2+ gray_code_L8; gray_code=~gray_code; dec_code=GraytoDecimal(gray_code);// display(dec_code); returndec_code;}voiddisplay(ulintnumdis1)//数码管显示角度二进制数{ uintshi1,ge1,bai1,qian1;//shi2,ge2,shi3,ge3,shi4,ge4;//分离两个分别要显示的数 numdis1=(numdis1*3600)/1024; qian1=numdis1/1000; bai1=numdis1/10/10%10; shi1=numdis1/10%10; ge1=numdis1%10; P0=table[ge1]; P2=0x07; delay1ms(3); P0=table[shi1]; P2=0x06; delay1ms(3); P0=table[bai1]; P2=0x05; delay1ms(3); P0=table[qian1]; P2=0x04; delay1ms(3);}voidInit_timer(void){TMOD=0x11; TH0=65436/256; TL0=65436%256; TH1=65336/256; TL1=65336%256; EA=1; ET1=1; TR1=1; ET0=1; TR0=1;}voidTurn_run(void){ if(flag==0) { dian1=0; dian2=1; } if(flag==1) { dian1=1; dian2=0; }}floatPI(floatK,floatTi,floaterror)//PI控制器,{floatKk=K+K/Ti;staticfloatu=0,e[2]=0;floatdu;e[1]=error;du=Kk*e[1]-K*e[0];u=u+du;e[0]=e[1];returnu;}voidmain(){ Init_timer(); while(1) { while(mark) { mark=0; PV=Get_angle(); display(PV); out=(int)PI(4,0.1,S-PV); if(out>0)flag=0; else { flag=1; out=-out; } Turn_run(); delay1ms(2); } }}voidtimer0()interrupt1{ TH0=65436/256; TL0=65436%256; bb++; if(bb==10) { mark=1; bb=0; } }voidtimer1()interrupt3{ TH1=65336/256;TL1=65336%256; aa++; if(aa==out) { pwm=0; } if(aa==100) { aa=0; pwm=1; }}目录目录 1第一章绪论 21.1课题来源 21.2本次课题设计的背景及意义 21.2.1课题设计背景 21.2.2课题设计的意义 21.3课题研究的发展现状 31.4可行性分析 41.4.1经济可行性 41.4.2技术可行性 51.5设计说明书结构 9第二章系统分析 92.1用户需求 92.1.1汽车用品进购需求 102.1.2汽车用品库存需求 102.1.3汽车配件销售需求 102.1.4系统管理员需求 102.1.5其它方面需求 112.2需求分析 112.3系统开发目标 112.4系统数据流图分析 122.5数据字典 152.6本章小结 15第三章系统设计 163.1概要分析与设计 163.1.1概要分析 163.1.2系统设计 163.1.3系统设计思想 173.2系统功能结构图 173.3数据库分析 183.3.1数据库概念结构设计(E-R图) 193.3.2数据库表 223.4本章小结 24第四章系统实施 244.1系统设置管理子系统 254.2基本信息管理子系统 264.3库存管理子系统 284.4日常业务管理子系统 294.5本章小结 30第五章结论 30

第一章绪论1.1课题来源本系统基于结构化的程序设计,利用增加、删除等功能进行控制,使信息系统更节省人力、物力及财力,并将最终发展成为一种主流的信息管理系统。1.2本次课题设计的背景及意义1.2.1课题设计背景作为汽车市场的三大板块之一,汽车用品市场是目前发展最快,前景最好的行业之一。今年随着我国汽车行业喯井式发展,汽车用品发展速度一日千里,中国汽车用品行业发展潜力巨大!据权威部门统计,2010年我国汽车用品市场总量已达到3500亿美元预计到2012年,汽车用品的市场将达到6000亿美元,庞大的消费市场,引动汽车用品及后市场亿万商机,中国汽车市场的掘金风暴已经开始!汽车用品和服务行业被投资家誉为“二十一世纪中国的黄金行业”。波特普瑞国际汽车用品(北京)有限公司,最早创立于2002年,是中国近十余年来最具规模、诚信和可持续发展的汽车服务连锁品牌。公司一直致力于由先驱者成为领先者的长远发展计划,在汽车后市场涉及领域不断延伸。为了使企业发展更上层楼、持续领先,资本市场发展战略亦早已制定;

2008年在国内建立香车世家汽车用品连锁总部,率先将会员消费模式引入汽车用品市场。目前,波特普瑞国际汽车用品(北京)有限公司旗下香车世家汽车总品连锁总部,已拥有

2000平米总部、

1000平米培训学院、

5000

平米物流仓储基地、

近500家加盟专营店和200名加盟投资伙伴。“香车世家”,有一支专业致力于汽车用品的开发、生产、销售服务的团队。香车世家提供的服务有:汽车用品类、装饰类、养护类、美容类的产品和耗材喜帖等等。1.2.2课题设计的意义从20世纪60年代末期开始,计算机的应用越来越广泛,数据量急剧增长,同时对多种应用、多种语言互相重叠的共享数据集合的要求越来越高。这是已有大容量磁盘,硬件价格下降,软件价格上升,为编制和维护系统软件及应用程序所需的成本相对增加;在处理方式上,对联机实时处理的要求更多,并开始提出和考虑分布处理。在这种背景下,文件方式的数据处理手段已经不能满足应用的要求,为解决多用户、多应用共享数据的要求,使数据为尽可能多的应用服务,一门专门研究数据处理的技术——数据库技术便应运而生。数据库系统为人们提供了科学的组织数据的方法,并为人们提供数据定义、操作与控制的工具。在用数据库方法对数据进行处理时,首先详细分析对象之间的联系,找出哪些是描述对象本身的数据,哪些是描述对象之间联系的数据,又从而确定数据归类,并且指出这些归类的原理是什么,好处是什么,力图达到数据组织的最优化。另外,数据库系统对数据的保护比早期的文件处理方式具有更大的优越性,它提供了多种层次的数据安全保护,既能有效地防止数据破坏,也能有效地防止他人对数据库的恶意攻击。而且,数据库系统中的数据操作与文件存储方式无关,这样就实现了程序与数据存储方式之间的相对独立。又由于数据库系统提供了数据演算语言,通过应用程序可以很容易实现对数据库文件的各种操作。随着计算机技术、网络技术、多媒体技术的成熟与发展,为进销存管理自动化提供了强有力的技术支持。当前已有的系统其功能一般比较单一。如防盗系统只管防盗;仓储管理系统只负责仓库物品的数据处理;控制系统只完成简单的环境控制功能(如开关门、窗、灯等)。将这些功能彼此独立的系统有机结合起来,组成一个既能完成管理,又能实现实时监控的一体化自动管理系统具有重要的意义。我所设计的这套进销存系统,是把仓库系统、销售管理系统、价格管理系统和数据处理系统结合在一起,充分利用了先进的计算机技术和控制手段。公司一定级别的工作人员都可以查看近期的库存情况、销售情况、推货情况以及价格管理情况;另外,高级管理人员可以更新、修改本系统所有的情况。通过价格管理系统可以大致知道本期的盈利情况。1.3课题研究的发展现状随着时代的发展、科技的进步,企业逐步重视了对进销存的管理,但成效并不显著。随着中国加入世贸组织后,中国汽车企业更直接地感受到了来自全球同类市场的激烈竞争,更深感依靠企业自身力量与国内本行业的对手竞争已经不能满足顾客需求,由于企业的产品从生产到送至用户手中,要经过多重环节,因此要满足顾客对产品多方面的要求,就必须重视进销存管理并投资于进销存业务。但是,许多企业仍缺乏对从上游的原材料供应商、自身的生产流程到下游的仓库配送商、承运商直到零售商等物流环节的全过程整体规划,致使可能在物流的某一环节压缩成本而导致整体成本上升的事情时有发生,许多企业正在为进销存问题付出高昂的代价。随着计算机技术、网络技术、多媒体技术的成熟与发展,为进销存管理自动化提供了强有力的技术支持。但当前已有的系统,功能一般比较单一。此外,企业内部还存在着沟通不良等问题。具体表现在以下几个方面:(1)缺少一个集成的信息平台和信息系统,造成企业各部门之间缺少信息沟通和共享。(2)汽车各用品编码没有统一,物流管理信息不流通,造成库存积压严重问题。(3)不能及时了解供应单位的供货情况及企业各仓库的库存情况,因而不能随时协调或采取合适的补救措施;(4)销售部门不能及时对各仓库的库存信息和客户的需求情况做出货物的调拨计划。(5)对供货商管理不合理,在供应到货的到期日前,不能主动地与供应商取得联系,因而不能及时地检查汽车配件的情况;此外,对供货商情况了解不清,不能及时更换供货商;(6)不能对企业的各种资源与信息(包括采购、销售、库存等信息数据)进行有效的查询、统计与分析,因而不能做出快速、合理的经营决策,市场应变能力差。本系统在原有系统的基础上,进行了修改增加,如今有以下功能:(1)进销存各种信息的输入,包括产品、仓库等信息的输入。(2)进销存各种信息的查询、修改和维护。(3)各种供货商、客户信息管理。(4)在进销存管理中加入数据备份等功能。1.4可行性分析可行性分析法是对\o"工程项目"工程项目进行系统\o"技术经济论证"技术经济论证,经济合理性综合分析的方法。其目的是通过对技术先进程度,经济合理性和条件可能性的分析论证,选择以最小的人力、物力、财力耗费,取得最佳技术、经济、\o"社会效益"社会效益的切实方案。它是解决项目投资前期分析的主要手段。此法是20世纪30年代美国在开发田纳西河流域时首创,“战后”在经济、技术和\o"管理"管理领域得到广泛应用。目前,在一些西方国家中,可行性分析法已发展成为运用工业科学技术、市场经济预测、\o"信息科学"信息科学、\o"系统工程"系统工程和企业经营管理的多学科,多方法综合,实现建设项目最佳\o"经济效果"经济效果的专门分析手段,其对象和范围几乎涉及每个领域和部门的经济目标。1.4.1经济可行性香车世家是一个有经济实力的企业,其项目开发的成本及今后的运行、维护费用,都能够承受得起。系统投入运行后可以使进销存实现自动、规范化。能够增强工作人员对仓库的管理能力、提高工作效率,能给企业带来很大的效益。随着时代的进步,经济的发展,人们越来越注重生活的享受,大部分人民都有了私家车,随之也更注重汽车的外表美。中国市场巨大,汽车用品市场前景优好。1.4.2技术可行性从技术上讲,该系统采用C/S架构,VisualBasic6.0,Access2000数据库。(1)为什么采用C/S架构C/S计算模型是由麻省理工学院的ForrestoerRestarch于1989年首先提出,起初是为了解决台式计算机与网络服务器之间的数据和应用软件的共享而设计的一种计算机网络结构,如今C/S的计算机网络模型己发展为一种标准的计算机网络模型。它可定义如下:客户机是指运行用户服务请求程序,并将这些请求传送到服务器的计算机;服务器是指管理数据资源,响应并受理由客户机发出的请求,并将计算结果传送给客户机的计算机。服务器可以接受多个客户机的多个请求,将请求排队或同时处理。可以看出,服务器运行服务器程序,响应并执行来自前端客户的服务请求,最后向前端返回计算结果;而客户机,前端运行客户端程序,向服务器发出请求。传统的C/S二层结构如图1.1所示,一个典型的应用可以分为四个部分,表示逻辑,业务逻辑,事务逻辑和数据逻辑。一般表示逻辑和业务逻辑在Client端,事务逻辑、数据逻辑在Server端,也可以在Client端,或二者都有一部分。客户端客户端服务器端表示逻辑业务逻辑事物逻辑数据逻辑DB图1.1C/S两层结构C/S结构也有三层结构,即将客户端与务逻辑分开,便于维护。如图1.2所示:服务器端服务器端表示逻辑应用服务器事物逻辑数据逻辑DB客户端业务逻辑图1.2C/S三层结构现如今,流行的系统构架有两种:分别是B/S和C/S两种,在本系统的研发过程中,经过设计人员的精心选择与比较,确定了本套进销存管理系统选用C/S构架进行设计。下面就对C/S与B/S的特点与区别进行阐述,从而证明本套系统选用C/S的原因。第一点:硬件环境不同,B/S建立在广域网之上的,不必是专门的网络硬件环境,例如电话上网,租用设备,信息自己管理,有比C/S更强的适应范围,一般只要有操作系统和浏览器就行C/S一般建立在专用的局域网络上,适合小范围里的网络环境,局域网之间再通过专门服务器提供连接和数据交换服务。第二点:对安全要求不同,C/S一般面向相对固定的用户群,对信息安全的控制能力很强。一般高度机密的信息系统采用C/S结构适宜,可以通过B/S发布部分可公开信息。B/S建立在广域网之上,对安全的控制能力相对弱,面向的是不可知的用户群。第三点:对程序架构不同,C/S程序可以更加注重流程,可以对多层次校验,对系统运行速度可以较少考虑。B/S对安全以及访问速度的多重考虑,建立在需要更加优化的基础之上。比C/S有更高的要求,B/S结构的程序架构是发展的趋势,从MS的.Net系列的BiaTalk2000、Exchange2000等,全面支持网络的构件搭建的系统。SUN和IBM推出的JavaBean构件技术等,使B/S更加成熟。第四点:软件重用不同,C/S程序可以不可避免的整体性考虑,构件的重用性不如在B/S要求下的构件的重用性好。B/S的多重结构,要求构件相对独立的功能。能够相对较好的重用。就如买来的餐桌可以再利用,而不是做在墙上的石头桌子。第五点:系统维护不同,C/S程序由于整体性,必须整体考察,处理出现的问题以及系统升级难,可能要再做一个全新的系统。B/S构件组成方面构件个别的更换,实现系统的无缝升级。系统维护开销减到最小,用户从网上自己下载安装就可以实现升级。系统维护在软件生存周期中,开销大,相当重要。第六点:处理问题不同,C/S程序可以处理的用户面固定,并且在相同区域,安全要求高的需求,与操作系统相关,应该都是相同的系统。B/S建立在广域网上,面向不同的用户群,地域分散,这是C/S无法作到的。与操作系统平台关系最小。第七点:用户接口不同,C/S多是建立在Window平台上,表现方法有限,对程序员普遍要求较高。B/S建立在浏览器上,有更加丰富和生动的表现方式与用户交流,并且大部分难度减低,降低开发成本。第八点:信息流不同,C/S程序一般是典型的中央集权的机械式处理,交互性相对低。B/S信息流向可变化,B—B、B—C、B.G等信息流向的变化,更像交易中心。综合上面的描述我们可以得出,本套系统的性质为企业内部使用,所以局域网就可以满足其需要,再次企业的进销存属于商业秘密需要严格保密,但就这两个方面而言B/S就非常不适合本系统的使用环境。虽然C/S也存在着很大的缺陷如系统维护复杂,再投入大,信息流对象相对较窄,这些缺陷随让明显,但基本都属于可以克服的缺陷,但如果利用B/S系统开发,一旦出现信息安全无法保障的情况出现就会造成不可挽回的巨大损失。(2)VisualBasic(简称VB)是美国微软公司推出的Windows环境下的软件开发工具,使用VB可以既快又简单地开发Windows应用软件。VisualBasic采用面向对象的编程方法,使得编程人员围绕对象来编写程序。对象是代码和数据的集合,可以作为一个整体来处理。VB中的对象都支持属性、方法、和事件,简单地说,可以将对象的数据成为属性,称各种可在对象上操作的过程为方法,而事件是能被对象识别的动作。(3)ADO通过OLEDB实现对不同类型数据源的访问。OLEDB是一种底层的编程接口,它支持关系或非关系型的数据源,比如各种类型的数据库、电子表格、电子邮件和文本文件等。OLEDB包括3个主要组成部分:数据提供者、数据消费者和服务组件。数据提供者:DataProvider,指任何OLEDB数据的提供者。数据提供者为OLEDB提供各种类型的特殊数据,如ODBC、MicrosoftSQLServer、文件系统或其他类似的数据库提供数据。数据提供者从各种数据源读取数据,并将这些数据转换为数据消费者支持的格式,一般为关系型数据表。数据消费者:指使用数据提供者提供数据的应用程序。使用ADO的应用程序都是OLEDB的消费者。服务组件:起连接数据消费者和数据提供者的作用,在不需要数据消费者和数据提供者参与的情况下,将数据转换为不同的类型。ADOData控件使用ADO来快速建立数据绑定的控件和数据提供者之间的连接,它对用户隐藏了对ADO对象的编程细节。使用该控件,可通过在“属性”窗口中设置相应的属性来建立数据源连接,然后通过数据绑定操作将获得的记录集绑定到特定控件,显示在窗体中。并可通过在控件的相应事件过程中写入极少的代码即可完成数据库操作。ADO控件(也称为ADOData控件)与VB固有的Data控件相似。使用ADOData控件,可以利用MicrosoftActiveXDataObjects(ADO)快速建立数据库绑定控件和数据提供者之间的连接。ADOData控件可以实现以下功能:·连接一个本地数据库或远程数据库。·打开一个指定的数据库表,或定义一个基于结构化查询语言(SQL)的查询、存储过程或该数据库中的表的视图的记录集合。·将数据字段的数值传递给数据绑定控件,可以在这些控件中显示或更改这些数值。·添加新的记录,或根据更改显示在绑定的控件中的数据来更新一个数据。(4)Access是微软公司发布的Office软件包中的关系型数据库软件,具有功能灵活、界面友好、易于学习和操作的特点,拥有广泛的用户群体。Access是开发单机小型数据库应用系统的理想工具,可以独立开发数据库应用系统,也可以作为后台数据库与VisualBasic等高级语言结合使用。本系统是采用Access开发数据库管理系统的。存储数据是计算机的重要功能之一,早期的数据存储都是通过文件实现的。随着存储数据量的增加,文件存储这种简单的形式已经无法满足人们检索和管理数据需求。于是,一种专门负责存取、检索和管理数据的应用系统诞生了,这就是数据库系统。其实数据库系统与我们平时经常使用的Office等软件一样,都是一种应用系统。1.4.3环境可行性从宏观环境上看,国内外竞争激烈,企业若想立于不败之地,就必须重视和更新进销存管理。从操作环境上看,新系统的开发充分考虑了进销存系统管理人员对仓库的简易管理,及方便查询各个仓库的库存情况,从而能满足客户的要求。在很大程度上,减轻了进销存管理人员的大量重复性操作,提高了工作效率。同时本系统用大家都非常熟悉的界面,而且有许多的提示,操作非常容易上手:在软件试用阶段仅需对企业内部工作人员进行简单培训即可。系统的维护需要有专业知识的人员操作,现在的企业都有专门的技术人员,所以这不成问题。1.5设计说明书结构全文共分五章节第一章是绪论。主要介绍了系统的开发背景,国内企业应用仓库管理的现状调查,以及一些需要解决的主要问题简述。第二章是系统分析。概要描述了仓库管理系统总体业务情况;说明了项目采用的开发模式;对系统的功能性需求进行了描述,用数据流图进行了分析。第三章是系统总体设计。用E-R图、数据表进行了数据库分析,分析了系统总体架构目标,并通过对系统的总体架构、架构层次、系统安全架构等进行分析确定了系统总体架构。第四章是系统实施。本章主要是系统界面及部分代码。最后是结论。对本文进行了总结,并对下一步工作进行了展望。第二章系统分析2.1用户需求要想设计一个功能较完善的系统,前期的调查及对现状的需求分析是非常重要的。这项工作的顺利与否是整个系统开发成败的关键。需求分析在系统开发过程中占有非常重要的地位。如果需求分析了解得越全面、准确,那么随后的程序设计、编码与运行阶段,修改的次数就越少。详细的需求分析,不仅可以保证对系统功能进行全面的考虑,而且还能加快系统开发的速度,同时,还可以减少系统维护的费用。可见,需求分析的重要性。在系统开发的前期工作中,通过对用户各方面的需求及现状的了解,我制订了详细的需求分析步骤,目的是为了方便和用户能进行较深层次地交流,真正地了解用户各方面的需求,从而设计出符合用户要求的应用系统。本系统的实施,将能使管理人员从繁琐的杂务工作中解脱出来,真正从事管理工作。集中管理汽车用品的库存、销售、退货及账目,同时带动企业步入现代化的管理阶段,节省了企业大量的人力、物力和财力,使企业经营运作流程清晰,经营状况详细准确,使汽车用品的经营管理体系更加科学化、规范化、合理化。通过对青海西宁香车世家汽车用品公司的调研、总结,可以得到本系统的文本需求说明。用户需求如下:2.1.1汽车用品进购需求利用本系统后,可以对已有的供货商情况有一个清楚地了解,以便能够继续和供货商保持良好的合作关系。其次,当有新的供货单位时,能够对其信息进行录入,以便相互之间的联系。同时,当供货单位的信息发生变化时,能够对已经录入的信息进行更改,提供准确的供货单位信息。如果供货单位信息录入有误时,还能够及时地删除,可以避免出现错误的信息。此外,通过该系统还能够了解到库存中汽车各类用品数量的实际情况,以便制定出合理的采购计划。2.1.2汽车用品库存需求库存管理是整个进销存管理系统的核心部门。通过本系统,能够清楚地看到库存中的汽车各类用品的数量、进价、存放地点等信息,以便使采购部门和销售部门都能根据库存信息做出决策。另外,当企业有新汽车配件的时候,需要对汽车配件的信息进行入库登记;当汽车配件销售时,需要对其进行销售登记;当产品出现退货时,要进行退货登记;当汽车配件信息发生变化时,可以对汽车配件的部分信息(如汽车配件单价,库存等)进行更改。另外,本系统还可以进行库存盘点。2.1.3汽车配件销售需求通过本系统,能够了解到已存在的客户情况,以便能够和已有的客户继续合作。此外,当有新的客户位时,还可以对其信息进行录入,以便日后贸易的来往。同时,当收货单位的信息发生变化时,能够对已经录入的某些信息进行更改,从而可以提高客户信息的准确性、可靠性。如果录入的客户信息不准确,还应该能够对其信息进行及时地删除,避免错误信息的出现。另外,还能够了解到汽车用品的库存情况,以便顺利的进行销售活动。2.1.4系统管理员需求系统管理员能够对数据库进行备份,以及对数据库进行及时恢复工作。同时,还可以根据人员的职位变化和流动情况通过系统进行用户权限、密码等设置。此外,能够操作本系统提供的各项功能,以便保证系统的正常运行。2.1.5其它方面需求该系统还应该可以对基础数据进行维护;能够提供强大的数据统计、查询等功能。系统界面友好,人性化,操作简单易行,满足实用性的需要。系统还应该具有很好的可扩展性,以便适应企业日后发展壮大的需要。2.2需求分析需求分析是软件定义时期的最后一个阶段,它的基本任务是准确地回答“系统必须做什么?"的问题【5J。需求分析的任务不是确定系统怎样完成它的工作,而仅仅是确定系统必须完成哪些工作,也就是对目标系统提出完整,准确,清晰,具体的要求。需求分析的结果是系统开发的基础,关系到工程的成败和软件产品的质量。目前汽车配件销售企业大多数在其连锁店的管理还是手工进行,随着汽车配件行业的迅速发展,手工管理的种种弊端暴露无疑,给销售企业的发展带来了不必要的麻烦。上海宏达汽车配件集团汽车配件进销存管理系统的主要成员就是系统管理员和系统的使用者(采购部、销售部、库存部)。在上面用户需求的基础上,可以确定出系统的功能需求。进销存管理系统应该具有以下主要功能需求:(1)基本信息管理功能。能够对基本信息(如供货商信息、客户信息等)进行维护,提供基础的数据资料。(2)出入库管理功能。能够对汽车各类用品的销售、采购过程中所有出入库的配件信息进行维护,可以随时了解汽车配件的销售、采购等出入库情况。并且可以对采购及销售部门进行实时地监控。(3)库存分析功能。能够清楚地看到库存中的汽车配件数量、进价等信息,以便采购部门和销售部门根据库存情况做出决策。此外,还可以对库存过多和过少的汽车配件及退货情况进行分析提示,以便管理人员能够及时对库存情况进行了解。(4)系统维护功能。使用户能够修改自己密码及管理员添加、删除用户。2.3系统开发目标面对企业的快速发展及其在发展过程中出现的各种情况,该系统实施后,应能达到以下目标:(1)实现企业各部门信息共享,促进信息的准确性、可靠性;(2)使进销存自动化,可随时掌握汽车配件的库存、销售、退货等情况;(3)系统界面友好,操作简单易行,查询灵活方便,数据存储安全可靠;(4)系统维护安全、方便、可靠,费用低,并且能够满足实用性、先进性要求;(5)通过该系统的实施,可逐步提高企业管理水平,提升员工的综合素质。2.4系统数据流图分析根据系统的理论设计和对现存通用的进销存管理系统的研究,还有通过对西宁香车世家配汽车用品有限公司进行大量的调研和需求分析,设计出了系统的流程图和各子系统的数据流图。1、进销存系统的环境图香车世家迸销存管理信息系统,需要完全代替企业原始的进销存管理模式,让人们习惯并完全接受本套系统的管理。本系统,目的是为了公司各部门可以对本部门的进销存的管理工作进行有效的管理并提供管理服务,对公司的迸销存管理全部工作流程实现过程管理。系统主要包括系统设置子系统、企业基本信息子系统、仓库管理子系统、销售管理子系统等四个子系统(如图2.1)。图2.1进销存系统的环境图2、进销存系统的零层图进销存系统建立的目的就在于,给企业决策提供理论依据,使得企业信息化、现代化的发展紧跟时代的变化,从市场出发决定自身的发展方向。企业决策模块就可以很好的解决这一问题,首先模块提供了货物的价格管理,可以使企业更好的了解什么产品受到欢迎,获利最多。系统信息设置子系统,顾名思义是对进销存管理信息系统的基本设置进行管理的部分,它的作用有:用户权限管理、系统基础数据设置、系统管理员操、来往客户及供应商的基本信息信息录入、修改、删除等功能。企业可以综合利用模块内的功能对企业的发展方向做出判定(如图2.2)。图2.2进销存系统的零层图3、仓库管理子系统仓库管理子系统顾名思义是面向企业仓库的管理子模块,零部件部门主营业务是购进、销售汽车各类用品,仓库管理就尤为重要。本模块提供了产品入库管理、产品出库管理、退货入库管理、仓库盘点和库存查询等子模块。这些子模块的实现不仅方便了仓库的管理,同时也为企业的长远发展决策计划提供了具体化的指标(如图2.3)。图2.3库存管理子系统4、销售管理子系统销售管理模块可以管理各种类型的与销售相关的信息,诸如,企业向上游企业的订单管理、下游客户对企业的订单管理、企业的销售记录与管理和客户退货管理等功能。这个子系统的成功实现,有效的解决了各部门在销售中记录管理混乱的局面,这样一来企业可以有效的统计管理企业的销售能力,最大限度做到零库存(如图2.4)。图2.4销售管理子系统5、基本信息管理子系统基本信息管理子系统,主要是负责所有和企业有往来关系的客户以及供应商管理的子系统。企业可以应用这个子系统对与企业有关系的大客户、供应商的资料进行录入,方便管理和查询,还可以做出相应的比较,做出选择哪些供应商的产品能使企业获利最大,哪些客户是值得长期关注的。子系统中还设立往来账目管理模块,主要是处理和往来客户有关系的账目问题。大大方便了企业对进销存中出现的大量上下游企业的协同方面的管理(如图2.5)。图2.5基本信息管理子系统2.5数据字典根据上文的数据流图分析,可以得出数据字典。2.6本章小结在本章中,首先对系统的需求做了分析,分析了开发本系统要解决的问题,然后对各个子系统进行了需求分析,找出问题,提出解决方案,以更有效的满足客户需求,在此基础上分析出了系统的设计目标及系统的功能设计。最后通过数据流图对系统的功能进行了描述,通过数据字典加以总结。第三章系统设计3.1概要分析与设计3.1.1概要分析系统概要分析是在系统开发的总体任务的基础上完成的。通过上面对用户需求可以得知,该系统需要完成功能主要有以下几点:(1)进销存各种信息的输入,包括产品、仓库等信息的输入。(2)进销存各种信息的查询、修改和维护。(3)各种供货商、客户信息管理。(4)在进销存管理中加入数据备份等功能。3.1.2系统设计系统的总体设计是系统概要设计中的一个重要环节,总体设计的优劣,将关系到各个子系统的功能的设计的质量和功能实现的程度。本系统是为实现对汽车配件入库全过程的跟踪管理而设计的,主要包括:基本信息管理、销售与采购的出入库管理、库存数据分析管理、系统维护管理等功能。该系统可以划分为以下几个模块:1.基本信息管理模块:基本信息管理模块包括汽车配件信息、配件仓库信息、供货单位人信息及收货单位信息。由于该模块要为出入库管理提供基本信息,因此应该确保汽车配件,仓库等基本信息的正确性和完整性。基本信息管理模块提供汽车配件、仓库等信息的添加、修改、删除及查询功能。2.采购和销售管理模块:采购和销售管理模块的目的是为了实现汽车配件的出入库管理,为后面的库存数据分析管理提供必要的基础数据。采购和销售管理模块包括汽车配件的入库操作(登记、修改和查询)及出库操作(登记、修改和查询)。3.库存数据分析管理模块:库存数据分析模块的主要目的是对汽车配件、仓库等信息进行汇总及报表统计打印,可以使有关部门和领导动态地了解仓库中汽车配件的实际库存情况,以便于更好地进行有关的决策活动。库存数据分析管理模块包括库存查询、短线汽车配件、超储汽车配件及报表统计功能。4.系统维护管理模块:系统维护主要功能是对整个库存信息系统进行管理和维护操作。系统维护管理模块包括修改密码和添加用户的功能。3.1.3系统设计思想本系统开发的总体任务是实现企业汽车配件管理的系统化、规范化和自动化,从而达到提高进销存管理效率的目的。汽车用品进销存管理系统的对象是企业生产所需要的各种配件,进货时经检查进行验收入库、填写入库单和入库登记。企业各个部门根据所需要的配件总额和提出需求申请,进销存管理员根据出库单核对发放配件。根据需要按照月、季、年进行统计分析,产生相应报表。根据调查以及对现在系统的分析,我们把进销存管理的主要特点与要求总结如下:(1)信息处理量比较大,所管理的配件种类繁多(2)入库单、出库单、需求单等单据的发生量特别大,关联信息多,查询和统计的方式各不相同。因此在管理上实现起来有一定的困难。(3)在管理的过程中经常出现信息的重复传递,单据、报表的种类繁多(4)各个部门管理规格不统一在本系统的设计过程中,为了克服这些困难,满足管理的需要,采取了下面的一些原则:统一各种原始单据的格式,统一账目和报表的格式。(2)删除不必要的管理冗余,实现管理规范化、科学化。(3)程序代码标准化,软件统一化,确保软件的可维护性和实用性。(4)界面尽量简单化,作到实用、方便。尽量采用该企业现有软硬件环境,及先进的管理系统开发方案,从而达到充分利用企业现有资源,提高系统开发水平和应用效果的目的。设计本系统解决方案的基本思路如下:(1)系统能够实现企业各部门之间数据信息共享,快速、准确地处理进销存的日常工作需要,并达到操作过程中的直观、方便、实用、安全等要求。(2)界面尽量简单化,做到实用、方便,尽量满足企业中不同层次员工的需要。(3)系统采用先进的C/S体系结构,客户端负责显示用户界面信息,提供的基本操作。服务器端负责实现数据服务。(4)系统采用模块化程序设计方法,既方便系统功能的各种组合和修改,又便于未参与开发的技术人员补充、维护。(5)系统应具备数据库维护功能,及时根据用户需求进行数据的添加、修改等操作。3.2系统功能结构图汽车用品进销存管理系统总体功能模块图是经过需求分析对进销存管理系统的初次划分,其余各子模块则是在此基础上对各部分功能的详细设计和划分。经分析,汽车用品进销存管理系统的总体功能模块图如下:3.3数据库分析经过上面的需求分析可知,用户的需求具体体现在各种信息的提供、保存、更新和查询,这就要求数据库结构能充分满足各种信息的输出和输入。收集基本数据、数据结构以及数据处理的流程,组成一份详尽的数据字典,为后面的具体设计打下基础。通过对用户需求的具体分析及库存工作过程的内容和数据流程的分析,设计如下所示的数据项和数据结构:(1)产品(产品批号,名称,简称,规格,数量,厂家,进价,售价,负责人,产地,企业编号,职工编号,仓库编号)(2)仓库(仓库编号,仓库名称,仓库位置,仓库负责人,仓库类别,产品批号,产品名称,产品规格,企业编号)(3)供货单位(企业编号,名称,地址,负责人,电话,传真号,邮政编码,开户行,银行账号,产品批号,产品名称,产品规格,仓库编号)(4)客户(客户编号,名称,地址,负责人,电话,传真号,邮政编码,开户行,银行账号,产品批号,产品名称,产品规格,仓库编号,职工编号)3.3.1数据库概念结构设计(E-R图)通过上面数据库的分析,得到数据项和数据结构以后,就可以设计出能够满足用户需求的各种实体,以及它们之间的关系,为后面的逻辑结构设计打下基础。这些实体包含各种具体信息,通过相互之间的作用形成数据的流动。从上面数据库分析归纳出的数据项可知,已经得出满足第三范式的若干个关系描述。因而可以规划出的实体有:汽车产品信息实体(如图3.3.1)、仓库信息实体(如图3.3.2)、供货单位信息实体(如图3.3.3)、客户信息实体(如图3.3.4)、职工信息实体(如图3.3.5)。图3.3.1汽车产品信息实体图图3.3.2仓库信息实体图图3.3.3供货单位信息实体图图3.3.4客户信息实体图图3.3.5工作人员信息实体图根据上面的数据分析及各个实体的E-R分析,可以得出实体与实体之间的E-R图各实体之间的E.R图如下所示:从上述E-R图可以看出,各个实体之间的关系如下:(1)一个供货单位可以提供多个汽车配件,一种产品也可以被多个供货单位提供。因此,供货单位和汽车配件实体之间的关系为多对多。(2)一种汽车配件可以放置在多个仓库中,一个仓库也可以存放多种汽车配件。因此,汽车配件和仓库实体之间的关系为多对多。(3)一个进销存员可以管理多个仓库,一个仓库也可以被多个进销存员管理。因此,仓库与进销存员之间的关系为多对多。(4)一个仓库可以给多个收货单位提供汽车配件,一个收货单位也可以从多个仓库中调出汽车配件。因此,供货单位和仓库之间的关系为多对多。3.3.2数据库表E—R图为实体.联系图,提供了表示实体型、属性和联系的方法,用来描述现实世界的概念模型。简单来讲E.R图就是实体之间的关系图。从他的描述中我们可以知道系统中的实体类之间的联系。下面本文根据E.R图的特点结合本系统的实际情况给出了供应商基本信息表(如图3.3.5)、客户基本信息表(如图3.3.6)、产品基本信息表(如图3.3.7)、仓库的基本信息表(如图3.3.8)。如图所示。数据字段含义数据字段名类型长度空否约束企业编号Enterprise-Numberint8否主键企业名称Enterprise-Namestring20否企业地址Enterprise-Addressstring30否负责人Constact-Namevariant10否联系电话Constact-Phonestring20否传真号Fax-Numberlong10否邮政编码Post-Codelong10否开户行Openingbankstring8否银行账号Bank-Accountvariant20否产品批号Product-Numberlong8否产品名称Product-Namestring20否产品规格Product-Standardvariant20否仓库编号Storehouse-Numberint8否图3.3.5供货商基本信息表数据字段含义数据字段名类型长度空否约束客户编号Client-Numberint8否主键客户名称Client-Namestring20否客户地址Client-Addressstring30否经手人Constact-Namevariant10否联系电话Constact-Phonestring20否传真号Fax-Numberlong10否邮政编码Post-Codelong10否开户行Openingbankstring8否银行账号Bank-Accountvariant20否产品批号Product-Numberlong8否产品名称Product-Namestring20否产品规格Product-Standardvariant20否职工编号Employee-Numberint8否仓库编号Storehouse-Numberint8否图3.3.6客户基本信息表数据字段含义数据字段名类型长度空否约束产品批号Product-Numberlong8否主键产品名称Product-Namestring20否产品产地Client-Addressstring30否产品规格Product-Standardvariant20否生产厂家Product-Enterprisestring20否负责人Constact-Namevariant10否产品进价Product-Priceint8否产品售价Sale-Priceint8否产品数量Product-Quntitylong10否企业编号Enterprise-Numberint8否职工编号Employee-Numberint8否仓库编号Storehouse-Numberint8否图3.3.7产品基本信息表数据字段含义数据字段名类型长度空否约束仓库编号Storehouse-Numberint8否主键仓库名称Storehouse-Namestring20否仓库地址Storehouse-Addressstring30否负责人Constact-Namevariant10否联系电话Constact-Phonestring20否仓库类别Storehouse-Sortlong10否产品批号Product-Numberlong8否产品名称Product-Namestring20否产品规格Product-Standardvariant20否仓库编号Storehouse-Numberint8否图3.3.8仓库基本信息表3.4本章小结本章主要用E-R图、数据表进行了数据库分析,分析了系统总体架构目标,并通过对系统的总体架构、架构层次等进行分析确定了系统总体架构。对数据表中的各字段进行了详细描述,为系统实施奠定了基础。第四章系统实施本章首先介绍了各个子系统子模块的实现,主要是给出了部分模块系统界面的截图和部分源代码。下面是本系统的登录界面(如图4.1)和系统界面截图(如图4.2)以及主要代码。图4.1登录界面图PrivateSubForm_Activat

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论