当前位置:首页 > 代码 > 正文

仓储物资管理系统源代码(仓库管理源代码)

admin 发布:2022-12-19 16:34 212


本篇文章给大家谈谈仓储物资管理系统源代码,以及仓库管理源代码对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

课程设计仓库管理系统的数据库制作

数据库原理及应用课程设计

一、课程设计的目的

《数据库原理及应用》课程设计是计算机科学与技术专业集中实践性环节之一,是学习完《数据库原理及应用》课程后进行的一次全面的综合练习。本课程设计主要在于加深学生对数据库基础理论和基本知识的理解,掌握数据库应用系统设计开发的基本方法,达到进一步使学生综合运用所学知识和增强实际动手能力的目的。

二、课程设计的任务与要求

要求学生根据自身对题目的理解情况,从给定的设计题目中选择一个,以MS SQL Server作为后台数据库平台,以PowerBuilder作为前台开发工具,完成一个小型数据库应用系统的系统的分析、设计和开发。

三、课程设计说明书

仓储管理系统

对于一个以生产或经营产品为主要业务的单位来说,仓库管理系统至关重要。高效方便的仓库管理系统,可以为生产经营提供坚强的后盾和有力的支持。效率低下甚至是混乱不堪的仓库管理系统,无疑会成为企业健康发展的拖累甚至是枷锁。使企业发展动力不足。本次数据库设计实现了仓库管理的高效化、电子化。通过本系统可以方便地实现仓库管理中的货物登记、出库入库等操作,使仓库管理井井有条。

1系统需求分析

1.1系统功能需求分析

仓库管理系统主要实现对库存商品的管理,对商品出库、入库的管理,和对仓库管理系统维护的功能。具体要实现的功能包括:

1)库存商品管理

查看数据库中商品的名称、编号、单价等信息。

2)商品出库、入库管理

入库、出库单纪录本次入库、出库的货物名称、数量,入库、出库的时间、商品单价以及总价,入库、出库的经手人等。

3)商品的查询

输入商品的编号或者商品的名称查询信息

4)用户管理

用户可以修改登录密码

1. 2数据需求分析

1.员工(ID ,姓名,密码,权限)

2.商品(商品名,商品编号,所属类,单价)

3.出货表(商品名,商品编号,数量,总价,经手人)

4.入货表(商品名,商品编号,数量,总价,经手人)

5.查询(商品名,商品编号,数量,单价)

根据上面的关系我们需要的数据基本上就上面所列出的数据。

2 系统总体设计

1)库存商品管理

查看数据库中商品的名称、编号、单价等信息。

2)商品出库、入库管理

入库、出库单纪录本次入库、出库的货物名称、数量,入库、出库的时间、商品单价以及总价,入库、出库的经手人等。

3)商品的查询

输入商品的编号或者商品的名称查询信息

4)用户管理

用户可以修改登录密码

2.1系统总体结构设计

2.2.1 E-R图

2.2.2 关系模式

1.员工(ID ,姓名,密码,权限)

2.商品(商品名,商品编号,所属类,单价)

3.出货表(商品名,商品编号,数量,总价,经手人)

4.入货表(商品名,商品编号,数量,总价,经手人)

5.查询(商品名,商品编号,数量,单价)

2.2.3 数据表

“员工信息表”“商品信息表”“出货单”“进货单”的主键分别是:ID、商品编号、商品编号、商品编号。

员工信息表

商品信息表

出货单

进货单

3.系统实施

工作界面PB9.0,以下是我制作过程和运行中的一些截图:

首先建立PB与SQL的数据链接:如果链接不成功,返回对以话框“数据库连接错误,经检查后再试!”

然后点Preview选项会弹出如下窗口:

一、 工作界面截图:

分别建有:workspace、application、windows、dw_、da_等。

工作时检测连接数据库是否正常的程序代码:

// Profile q

SQLCA.DBMS = "ODBC"

SQLCA.AutoCommit = False

SQLCA.DBParm = "ConnectString='DSN=仓库;UID=;PWD='"

connect;

open(w_enter)

二、 运行结果的截图:

这个是我运行后的第一个用户界面,在界面中输入管理员ID和密码。我的管理员ID 和密码分别为 1,123.点击确定进入menu下一界面。

若ID和密码分别输入1,1234,则跳出以下界面:

确定按钮所对应的代码如下:

//定义两个变量

string password,userid

password=sle_2.text

//检索用户名和密码记录

SELECT "员工信息表". "ID",

"员工信息表"."密码"

INTO :userid,

:password

FROM "员工信息表"

WHERE "员工信息表"."ID" =:sle_1.text and "员工信息表"."密码" =:sle_2.text;

//判断用户输入的用户名是否正确

if sqlca.sqlcode0 then

messagebox("错误!","ID或密码错误,请重新输入!",exclamation!,ok!,2)

else

messagebox("通过验证!","ID和密码正确,欢迎您使用本系统!",Information!,ok!,2)

open(w_main)

close(w_enter)

end if

取消按钮所对应的代码如下:

close(parent)

//关闭登录窗口

三、 menu界面的截图:

在本界面中我们通过点击菜单栏上的不同管理按钮来实现管理和操作的功能。

进货—进货单

出货—出货单

库存—蔬菜类

—水产类

—肉类

系统维护—修改密码

查询

四、 进货的截图如下:

在本界面中,操作员可以输入进货信息

五、 进货的截图如下:

在本界面中,操作员可以输入出货信息

六、本界面是实现用户更改自己的密码的界面

用户在登陆后根据上面的提示可以更改自己的密码。

程序代码如下:

string oldid

string oldp

string newp1

string newp2

oldid=trim(sle_1.text)

oldp=trim(sle_2.text)

newp1=trim(sle_3.text)

newp2=trim(sle_4.text)

if len(oldp)=0 or isnull(oldp) then

oldp=space(10)

end if

if len(newp1)=0 or isnull(newp1) then

newp1=space(10)

end if

if len(newp2)=0 or isnull(newp2) then

newp2=space(10)

end if

select "operator"."password"

into :oldp

from "operator"

where "operator"."password"=:oldp;

if sqlca.sqlcode0 then

messagebox("提示","原密码不正确!")

sle_2.text=""

sle_2.setfocus()

return

end if

if newp1newp2 then

messagebox("提示","两次新密码输入不同!")

sle_4.text=""

sle_4.setfocus()

return

end if

Update "operator"

set "password"=:newp1

where "operator"."operator_id"=:oldid;

if sqlca.sqlcode0 then

rollback;

messagebox("提示","密码更正错误! 请重设!")

return

end if

gs_password=newp1

commit;

messagebox("提示","密码修改成功!")

七、本操作可以看仓库里的商品并可对其进行插入和删除

八、从仓库查询所需要的商品

4 系统评价

系统的功能基本上已经实现,但是还是不够完善。但是在使用的时候还是能给用户带来一定的方便的。仓库的进货和出货在本系统中能直观的以表格形式反映出来,便于操作员的使用和决策者的管理。

4.1 系统特色

本系统要求用户进行验证之后才能进入相应的界面。有利于保护数据库的安全,不被非法登陆使用。对于仓库内货物的进出管理要求严格,即进出货时必须填写相应的进出货单据。便于企业管理查看账目,保障了企业的稳定运行。通过本系统可以方便地实现仓库管理中的货物登记、出库入库等操作,使仓库管理井井有条。在查看数据库时可以方便的删除数据库中冗余的信息和添加新的信息。

4.2 系统不足及改进

这个系统基本上实现了一些简单的对系统所涉及表的更新、增加和删除的功能。也实现对用户登陆的安全上有了一定的限制,只有在正确输入ID和密码的时候才能进入系统。远没有达到大型公司的仓储物资管理的要求,所创建的数据库框架比较简单,各表之间的联系也过于简单,没有添加外键相互约束,用POWER BUILDER做出来的系统过于简单、单调,需要进一步深入的调整优化,将各表之间的关系紧密联系起来,相互制约,保证数据库中数据的添加、删除、更新,安全有序。操作窗口还需要进一步的进行美化,使用户在使用中更赏心悦目。

5 课程设计心得

这次课程设计的主要目的是掌握数据库应用系统分析设计的基本方法,基本掌握PowerBuilder,进一步提高分析解决问题的综合能力。通过这次课程设计,我基本掌握了以上要求。但只有两周的课程设计时间,时间比较仓促,所以开发的系统不是很完善,有一些功能未实现,但是仓库管理的基本功能均已实现。以前对数据库的很多知识认识都不深刻,做过这次课程设计之后,我对数据库的知识有了一个比较系统的了解;比如:对表内一些字段的约束,关系等的运用已经比较熟练。这个课程设计使我巩固了数据库的知识。

对于PowerBuilder也有了一定的了解,由于用的不多,所以运用的不是很熟练。刚开始的时候,对于PowerBuilder的语法,用法等一系列知识都不熟悉。当我基本完成此系统开发的时候,我发现其实也没有那么难,在未做之前我还害怕做不出来。经过对这个系统的开发,在开发过程中遇到但也解决了很多问题,所以说我们不能惧怕有困难而不去接触认识它,我们要知难而上,只有这样我们才能成长,才能有所发展。

这认为最难的一部分是用户查看数据库时通过插入删除按钮对数据库的更改,因为我们在文本框中输入的数字是被默认为字符型的,我在其中使用了integer(string)这个函数把字符型的进行了转换,但是在使用的过程中并不能像我所想像的那样有用。因为时间有限,所以这个问题还没有完全的解决。

通过这次数据库课程设计加深我对数据库基础理论和基本知识的理解,掌握数据库应用系统设计开发的基本方法,达到进一步使我综合运用所学知识和增强实际动手能力的目的。

我会继续学习数据库的知识,学习PowerBuilder的知识,只有通过不断的学习充实自己,才能让自己有所得。只有了知识的积淀,才能为自己的发展铺平道路!

可以参考一下啊,最终还是要自己做的吧。。仅供参考。

仓储管理 Java 源码

给你个流程,自己学着做,做出来你会很有成就感的,对你的技术也有很大帮助:

仓库管理系统流程说明

(一)进货管理

现代商业管理,进货环节尤为重要,要求现场实时下订单(Purchase Order),及时补货。

1、 业务员根据手中的手持终端(Handheld Terminal,简称HHT),调用后台资料,与实际库存资料进行实 时对照,并可通过终端无线驱动打印机打印对照表;

2、 业务员根据实时对照表,现场决定是否应补货或退货,通过终端调用后台数据库制定订单,以最快速度进行补货或退货;维持库存的合理性。

(二)上架

将货物存放到货位上。

(三)交叉驳运

这种作业不对商品进行储存,只处理信息分类。作业接受来自制造商的顾客组合订货,并把他们装运到个别的顾客处去。交叉站台是指多对多的配送体系中的货物调整。直接通过交叉换货后为客户配送,可以避免出入库的麻烦。

(四)收货管理

1、 供货商按照订单要求将货品送到商场收货处;

2、 商场验收人员利用终端调用后台数据库中相应的订单存盘,与供货商送来的商品逐一检查对照,并进行确认,包括:商品编码、商品数量、生产地、品种、规格、包装时间、保质时间、旧价格、新价格、变更时间、条形码标准等信息;

注:终端在系统未授权的情况下无法修改订单。

3、 商场验收人员在终端上按[确认]键,将信息上传到后台服务器,并同时记录收货时间和收货人;

4、 终端可以现场实时调用后台数据库中供货商的历史订单,逐一查验对照核算;

5、 通过终端无线驱动打印机打印收货清单;

6、 在查验过程中出现问题,可以拒收货物。

(五)货位管理

1、 采用条码解读器读取商品条形码,查询商品在货区的具体位置,(如X商品在A货区B航道C货架2层),用叉车将商品送到位,实现商品的全方位管理。

2、 通过终端实时地查看货位货量的存储情况、空间大小及商品的最大容量,管理货仓的区域、容量、体积和装备限度。

3、 系统可以支持商场货架、工具、固定资产及设备的反复排定和追踪管理;使实际现场的错误堆放或工具、货物的零散管理变得容易;使之有序、易于比较和修正现场与系统管理的信息差异;显示、查询设备、产品的使用历史资料及商品、易损耗品的零用及耗费清单。

(六)盘点管理

传统盘点必须关门进行盘点,盘点时间长,投入人力、物力大,效率低,由于人为因素较多,盘点资料不准确,给决策带来极大困难。使用终端进行商品盘点,可以避免传统盘点的这些弊端,而使用RF 终端后,后台系统通过无线网络终端在盘点采集资料的同时进行数据处理,更节省时间,灵活性更好。

(七)查询管理

1、 在任何时间和地点,都可以通过终端进行查询;查询内容包括:商品信息、库存情况、变价核对、订单校验等等;

2、 每次查验可以包括该项诸多信息的逐一核对,并反馈给系统有效结果。

3、 总经理的现场实时查询和店面的现场实时指挥工作变得方便容易。

(八 )追踪调货管理

在商场、仓库、箱位、系列包装及货盘之间实现任意调货功能。

(九) 出货业务管理

完成校验单据、出库登记、释放货位、意外处理、货物跟踪

(十) 拣选管理 略

(十一) 装运管理 略

(十二) 移库管理

主要是针对不同库区间的货物移动,移入系统可以根据收货系统原则进行处理,移出系统可以根据出货系统原则进行处理。

(十三) 退货处理

(1) 退厂通知维护

(2) 退厂通知确认:系统将在库存中自动增加待出量

(3) 将退厂作业资料传送到配送中心,然后等待配送中心回单

(4) 得到退厂资料回单后,执行退厂回单登录,系统将自动调整库存

以上回答你满意么?

商品库存管理系统的c语言源代码

#include stdio.h

#include stdlib.h

#include conio.h

struct BOOK

{

int id,usr[10],total,store,days[10];

char name[31],author[21];

}books[100];

/*上面是结构体的定义,用于存放书籍及借书的信息。*/

void page_title(char *menu_item)

{

clrscr();

printf(" 图 书 管 理 系 统 \n\n- %s -\n\n",menu_item);

}

/*上面是打印页眉的函数,同时通过参数menu_item,可以显示当前的状态。*/

void return_confirm(void)

{

printf("\n按任意键返回……\n");

getch();

}

/*上面是返回前请求确认的函数,以便在返回前观察结果*/

int search_book(void)

{

int n,i;

printf("请输入图书序号:");

scanf("%d",i);

for(n=0;n100;n++)

{

if(books[n].id==i)

{

printf("书名:%s\n",books[n].name);

printf("作者:%s\n",books[n].author);

printf("存数:%d of ",books[n].store);

printf("%d\n",books[n].total);

return n;

}

}

printf("\n输入错误或无效图书序号.\n");

return -1;

}

/*上面的函数是在数组中找到图书号匹配的记录,显示其信息并返

回数组下标,如果找不到相应记录则提示错误并返回-1。*/

void book_out(void)

{

int n,s,l,d;

page_title("借阅图书");

if((n=search_book())!=-1books[n].store0)

{

printf("请输入借书证序号:");

scanf("%d",s);

printf("请输入可借天数:");

scanf("%d",d);

for(l=0;l10;l++)

{

if(books[n].usr[l]==0)

{

books[n].usr[l]=s;

books[n].days[l]=d;

break;

}

}

books[n].store--;

}

if(n!=-1books[n].store==0) printf("此书已经全部借出.\n");

return_confirm();

}

/*上面是借书的函数,首先调用找书函数*/

void book_in(void)

{

int n,s,l;

page_title("归还图书");

if((n=search_book())!=-1books[n].storebooks[n].total)

{

printf("借阅者图书证列表:\n");

for(l=0;l10;l++)

if (books[n].usr[l]!=0)

printf("[%d] - %d天\n",books[n].usr[l],books[n].days[l]);

printf("请输入借书证序号:");

scanf("%d",s);

for(l=0;l10;l++)

{

if(books[n].usr[l]==s)

{

books[n].usr[l]=0;

books[n].days[l]=0;

break;

}

}

books[n].store++;

}

if(n!=-1books[n].store==books[n].total)

printf("全部入藏.\n");

return_confirm();

}

void book_add(void)

{

int n;

page_title("注册新书");

for(n=0;n100;n++)

if(books[n].id==0) break;

printf("序号:");

scanf("%d",books[n].id);

C语言高手帮忙编一个仓库物资管理系统

#include stdafx.h

#includestdio.h

#includestring.h

#define SIZE 2//SIZE为仓库电器种类

struct goods

{

char name[10];

char brand[10];

char style[10];

int num;

float money;

}stu[SIZE];//库存结构

struct date

{

int year;

int month;

int day;

};//日期结构

struct entrance

{

char name[10];

char brand[10];

char style[10];

int num;

float money;

struct date time;

char stuf[10];

}stu_2[SIZE];//入库结构

struct exit

{

char name[10];

char brand[10];

char style[10];

int num;

struct date time;

char stuf[10];

}stu_3[SIZE];//出库结构

void main()

{

void save_1();

void save_2();

void save_3();

void change_1();

void change_2();

void found_1();

void found_2();

int i;

printf("please input the information:\n");

for(i=0;iSIZE;i++)

{

scanf("%s%s%s%d%d",stu[i].name,stu[i].brand,stu[i].style,stu[i].num,stu[i].money);

} //输入库存

save_1(); //利用函数将库存保存

FILE *fp;

fp=fopen("stu_list.txt","rb");

for(i=0;iSIZE;i++)

{

fread(stu[i],sizeof(struct goods),1,fp);

printf("%s %s %s %d %d",stu[i].name,stu[i].brand,stu[i].style,stu[i].num,stu[i].money);

printf("\n");

} //读出信息

fclose(fp);

printf("请输入物资入库信息:\n");//输入入库信息

for(i=0;iSIZE;i++)

scanf("%s%s%s%d%f%d%d%d%s",stu_2[i].name,stu_2[i].brand,stu_2[i].style,stu_2[i].num,stu_2[i].money,stu_2[i].time.year,stu_2[i].time.month,stu_2[i].time.day,stu_2[i].stuf);

save_2(); //创建入库文件

change_1();

printf("请输入出库信息\n");

scanf("%s%s%s%d%d%d%d%s",stu_3[i].name,stu_3[i].brand,stu_3[i].style,stu_3[i].num,stu_3[i].time.year,stu_3[i].time.month,stu_3[i].time.day,stu_3[i].stuf);

for(i=0;iSIZE;i++)

{

if(stu_3[i].numstu[i].num)

{

printf("the error number!please input again!\n");

break;

}

else

{

save_3();

change_2();

}

}

found_1();

found_2();

}

void save_1()

{

FILE *fp;

int i;

if((fp=fopen("stu_list.txt","wb"))==NULL)

{

printf("connot open the file\n");

return;

}

for(i=0;iSIZE;i++)

{

if(fwrite(stu[i],sizeof(struct goods),1,fp)!=1)

printf("file write error\n");

}

fclose(fp);

}

void save_2()

{

FILE *fp;

int i;

if((fp=fopen("stu_list_2.txt","wb"))==NULL)

{

printf("connot open the file\n");

return;

}

for(i=0;iSIZE;i++)

{

if(fwrite(stu_2[i],sizeof(struct entrance),1,fp)!=1)

printf("file write error\n");

}

fclose(fp);

}

void change_1()

{

int i;

for(i=0;iSIZE;i++)

{

if(strcmp(stu[i].name,stu_2[i].name)==0strcmp(stu[i].brand,stu_2[i].brand)==0strcmp(stu[i].style,stu_2[i].style)==0)

{

stu[i].num=stu[i].num+stu_2[i].num;

}

}

save_1();

}

void save_3()

{

FILE *fp;

int i;

if((fp=fopen("stu_list_3.txt","wb"))==NULL)

{

printf("connot open the file\n");

return;

}

for(i=0;iSIZE;i++)

{

if(fwrite(stu_3[i],sizeof(struct exit),1,fp)!=1)

printf("file write error\n");

}

fclose(fp);

}

void change_2()

{

int i;

for(i=0;iSIZE;i++)

{

if(strcmp(stu[i].name,stu_3[i].name)==0strcmp(stu[i].brand,stu_3[i].brand)==0strcmp(stu[i].style,stu_3[i].style)==0)

{

stu[i].num=stu[i].num-stu_3[i].num;

}

}

save_1();

}

void found_1()

{

FILE *fp;

int i;

int sum=0;

char name[10];

char brand[10];

printf("please input the name and brand:\n");//4.1 4.2 5.1

scanf("%s%s",name,brand);

if((fp=fopen("stu.list.txt","rb"))==NULL)

{

printf("connot open the file!\n");

return;

}

for(i=0;iSIZE;i++)

{

if(fread(stu[i],sizeof(struct goods),1,fp)!=1)

{

if(strcmp(name[10],stu[i].name[10])==0)

{

printf("the information of the good:\n");

printf("%s %s %s %d %d",stu[i].name,stu[i].brand,stu[i].style,stu[i].num,stu[i].money);

sum=sum+stu[i].num;

}

if(strcmp(brand[10],stu[i].brand[10])==0)

{

printf("the information of the good:\n");

printf("%s %s %s %d %d",stu[i].name,stu[i].brand,stu[i].style,stu[i].num,stu[i].money);

}

}

}

printf("the number of this %s is %d.\n",name[10],sum);

}

void found_2()

{

FILE *fp;

int i;

int j;

int sum=0;

int year_1,year_2,month_1,month_2,day_1;

char name_1[10],name_2[10],style_1[10];

if((fp=fopen("stu_list_2.txt","rb"))==NULL)

{

printf("connot open the file!\n");

return;

}

if((fp=fopen("stu_list_3.txt","rb"))==NULL)

{

printf("connot open the file!\n");

return;

}

printf("please input year_1,month_1,day_1,then find the exit and entrance:\n");

scanf("%d%d%d",year_1,month_1,day_1);

printf("please input the name and style,then find the good's entrance and exit");

scanf("%s%s",name_1,style_1);

printf("please input the name of the good,then output the number or its entrance:\n");

scanf("%s",name_2);

printf("please input year_2 and month_2,then output the number of exit in this month:\n");

scanf("%d%d",year_2,month_2);

printf("please input the red number,then output all the informations of the goods:\n");

scanf("%d",j);

for(i=0;iSIZE;i++)

{

if((fread(stu_2[i],sizeof(struct entrance),1,fp)!=1)(fread(stu_3[i],sizeof(struct exit),1,fp)!=1))//读出入库和出库信息

{

if((stu_2[i].time.year==year_1)(stu_2[i].time.month==month_1)(stu_2[i].time.day==day_1))//入库信息4.3

{

printf("%s%s%s%d%f%d%d%d%s",stu_2[i].name,stu_2[i].brand,stu_2[i].style,stu_2[i].num,stu_2[i].money,stu_2[i].time.year,stu_2[i].time.month,stu_2[i].time.day,stu_2[i].stuf);

}

if((stu_3[i].time.year==year_1)(stu_3[i].time.month==month_1)(stu_3[i].time.day==day_1))//出库信息4.3

{

printf("%s%s%s%d%d%d%d%s",stu_3[i].name,stu_3[i].brand,stu_3[i].style,stu_3[i].num,stu_3[i].time.year,stu_3[i].time.month,stu_3[i].time.day,stu_3[i].stuf);

}

}

}

for(i=0;iSIZE;i++)//4.4

{

if((fread(stu_2[i],sizeof(struct entrance),1,fp)!=1)(fread(stu_3[i],sizeof(struct exit),1,fp)!=1))//读出入库和出库信息

{

if((strcmp(stu_2[i].name,name_1))==0(strcmp(stu_2[i].style,style_1))==0)

{

printf("%s%s%s%d%f%d%d%d%s",stu_2[i].name,stu_2[i].brand,stu_2[i].style,stu_2[i].num,stu_2[i].money,stu_2[i].time.year,stu_2[i].time.month,stu_2[i].time.day,stu_2[i].stuf);

}

if((strcmp(stu_3[i].name,name_1))==0(strcmp(stu_3[i].style,style_1))==0)

{

printf("%s%s%s%d%d%d%d%s",stu_3[i].name,stu_3[i].brand,stu_3[i].style,stu_3[i].num,stu_3[i].time.year,stu_3[i].time.month,stu_3[i].time.day,stu_3[i].stuf);

}

}

}

for(i=0;iSIZE;i++)//5.3

{

if((fread(stu_3[i],sizeof(struct exit),1,fp)!=1))

if(stu_3[i].time.year==year_2stu_3[i].time.month==month_2)

{

sum=sum+stu_3[i].num;

}

}

printf("the time of exit is %d.\n",sum);

for(i=0;iSIZE;i++)

{

if((fread(stu[i],sizeof(struct goods),1,fp)!=1))

{

if(stu[i].numj)

{

printf("th information of the good are:\n");

printf("%s%s%s%d%f",stu[i].name,stu[i].brand,stu[i].style,stu[i].num,stu[i].money);

}

}

}

}

求一个jsp的超市仓库管理系统源码,带数据库的mysql的,急求啊,

JSP没有免费的哦,要是有免费的你就不会在这里发问了吧。所以要免费的话就自己做吧。

关于仓储物资管理系统源代码和仓库管理源代码的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

版权说明:如非注明,本站文章均为 AH站长 原创,转载请注明出处和附带本文链接;

本文地址:http://ahzz.com.cn/post/13263.html


取消回复欢迎 发表评论:

分享到

温馨提示

下载成功了么?或者链接失效了?

联系我们反馈

立即下载