delphi开发的仓库管理系统免费下载(附源码)

合集下载

java仓库管理系统课程设计源代码

java仓库管理系统课程设计源代码

一、项目背景介绍1.1 仓库管理系统的重要性仓库管理系统是一种对仓库内物品进行全面管理和监控的信息系统。

在现代物流管理中,仓库管理系统扮演着至关重要的角色,可以提高仓库的利用率、降低存货成本、提高物流效率,为企业节省大量人力和物力资源,是企业管理中不可或缺的一部分。

1.2 项目意义本课程设计拟设计并实现一套基于Java语言的仓库管理系统,旨在通过应用软件技术和信息管理技术,实现对进销存等多类业务流程的自动化管理,并在实际操作中验证其运行效果和实用性,为学生提供一种将所学知识应用于实践的机会。

二、系统功能需求2.1 基本功能1) 系统登入:要求用户输入用户名和密码进行登入验证;2) 信息录入:包括商品信息、入库信息、出库信息等的录入;3) 信息查询:可以根据商品编号、名称、类别等条件查询商品信息;4) 库存管理:可以实时查看库存状况,并进行库存的盘点与调剂;5) 报表输出:可以输出商品进销存报表,方便管理人员进行决策;6) 权限管理:不同用户具有不同的权限,管理员具有对系统进行设置的权限。

2.2 进一步功能1) 供应商管理:可以录入供应商信息,并进行供应商的评价和选择;2) 客户管理:可以录入客户信息,并对客户进行分类管理;3) 交易管理:支持交易的生成、记录和统计。

三、技术选型和开发环境3.1 技术选型本系统采用Java语言作为主要开发语言,使用MySQL作为数据库,前端采用Swing技术进行界面设计,后端采用JDBC进行数据传输和交互。

3.2 开发工具1) 开发环境:Eclipse2) 数据库工具:Navicat3) 版本管理工具:Git4) 项目管理工具:Maven四、系统设计4.1 系统架构设计本系统采用MVC(Model-View-Controller)架构,将业务逻辑、数据表示和用户界面分离,使得系统更加易于维护和升级。

4.2 数据库设计1) 商品表:包括商品编号、名称、类别、进价、售价、库存等字段;2) 入库表:包括入库单号、商品编号、数量、日期等字段;3) 出库表:包括出库单号、商品编号、数量、日期等字段;4) 用户表:包括用户名、密码、权限等字段。

仓库管理系统源代码

仓库管理系统源代码

仓库管理系统源代码#include#include#include#include#includestruct cangku{int num;char name[20];char introdution[50];float square;};typedef struct cangku Cangku;int Input(Cangku t[]);void List(Cangku t[],int n); void SearchOnName(Cangku t[],int n);int DeleteRecord(Cangku t[],int n); int AlterRecord(Cangku t[],int n); int AddRecord(Cangku t[],int n); void SortOnName(Cangku t[],int n); void SortOnSquare(Cangku t[],int n); void SaveRecord(Cangku t[],int n); int LoadRecord(Cangku t[]); int LoadRecord1(Cangku t[]); void Save(Cangkut[],int n); void Load(Cangku t[],int n); void Load1(Cangku t[]);int Menu_select();void main(){Cangku ck[50];int i,l,length,w=1;int q[4]={5,2,1,0};system("cls");printf("请输入第1个密码:\n");for (i=0;i<4;i++){scanf("%d",&l);system("cls");if(l==q[i])printf("正确,继续输入第%d个密码:.\n",i+2); else{w=0;printf ("输入错误!\n");break;}}while(w){switch(Menu_select()){case 1: length=Input(ck);SaveRecord(ck,length);break;case 2: length=LoadRecord(ck); SearchOnName(ck,length); break;case 3: length=LoadRecord(ck); length=DeleteRecord(ck,length); SaveRecord(ck,length);break;case 4: length=LoadRecord(ck); length=AlterRecord(ck,length); SaveRecord(ck,length);break;case 5: length=LoadRecord(ck); length=AddRecord(ck,length); SaveRecord(ck,length);break;case 6: length=LoadRecord(ck); system("cls");List(ck,length);break;case 7: length=LoadRecord(ck); system("cls");SortOnName(ck,length);SaveRecord(ck,length);break;case 8: length=LoadRecord(ck); system("cls");SortOnSquare(ck,length);SaveRecord(ck,length);break;case 9: length=LoadRecord(ck); system("cls");Save(ck,length);break;case 0: length=LoadRecord1(ck);Load1(ck);system("cls");Load(ck,length);break;case 10: exit(0);}}}int Menu_select(){int c;printf("按任意键进入仓库管理菜单\n");getchar();system("cls");system("color F0");printf(" ******************************仓库管理*******************************\n");printf(" * 1. 录入仓库初始记录 *\n");printf(" * 2. 按仓库名称查找记录 *\n");printf(" * 3. 删除仓库记录 *\n");printf(" * 4. 修改仓库记录 *\n");printf(" * 5. 增加仓库信息 *\n");printf(" * 6. 显示全部记录 *\n");printf(" * 7. 按仓库名称排序*\n");printf(" * 8. 按仓库面积排序*\n");printf(" * 9. 备份*\n");printf(" * 0. 恢复*\n");printf(" * 10. 退出*\n");printf("******************************************************************** *\n");do{printf("\n输入您想要进行的操作选项键(0-10):"); if(scanf("%d",&c)!=1){while(getchar()!='\n')continue;}}while(c<0||c>10);return c;}int Input(Cangku t[]){int i,n;system("cls");printf("\n请输入要输入的仓库数目:\n");scanf("%d",&n);printf("开始输入仓库信息:\n");for(i=0;i<n;i++){system("cls");printf("\n第%d个仓库的编号:",i+1);scanf ("%d",&t[i].num);printf("第%d个仓库的名称:",i+1);scanf ("%s",t[i].name);printf("第%d个仓库的面积:",i+1);scanf ("%f",&t[i].square);printf("第%d个仓库的说明:",i+1);scanf ("%s",t[i].introdution); }return (n);}void List(Cangku t[],int n){int i;printf("******************************************************************** *\n");printf(" ** 编号名称面积说明\n");printf("---------------------------------------------------------------------\n");for(i=0;i<n;i++){printf("%17d%13s%20f%14s\n",t[i].num,t[i].name,t[i].square,t[i].intr odution);}printf("******************************************************************** *\n");printf ("\n");getchar();}void SearchOnName(Cangku t[],int n) {char s[20];int i,flag=0;system("cls");printf("请输入要查找的仓库名称:\n");scanf("%s",s);for(i=0;i<n;i++){if(strcmp(s,t[i].name)==0){flag=1;system("cls");printf("\n\n要查找的仓库信息如下:\n");printf("\n");printf("******************************************************************** *\n");printf(" ** 编号名称面积说明\n");printf("---------------------------------------------------------------------\n");{printf("%17d%13s%20f%14s\n",t[i].num,t[i].name,t[i].square,t[i].intr odution);}printf("******************************************************************** *\n");printf ("\n");}}if(flag==0)printf("要查找的仓库不存在!!\n");getchar();}int DeleteRecord(Cangku t[],int n){char s[20];char ch;int i,j,flag=0;system("cls");printf("请输入要删除的仓库名称\n");scanf("%s",s);for(i=0;i<n;i++){if(strcmp(s,t[i].name)==0){flag=1;system("cls");printf("\n\n要删除的仓库信息如下:\n");printf("\n");printf("******************************************************************** *\n");printf(" ** 编号名称面积说明\n");printf("---------------------------------------------------------------------\n");{printf("%17d%13s%20f%14s\n",t[i].num,t[i].name,t[i].square,t[i].intr odution);}printf("******************************************************************** *\n");printf ("\n");printf("确定删除仓库信息吗?(Y/N)\n"); ch=getchar();ch=getchar();if(ch=='Y'||ch=='y'){for(j=i;j<n-1;j++)t[j]=t[j+1];n--;i--;printf ("删除成功.\n");}}}if(flag==0)printf("要删除的仓库不存在!!\n"); getchar();return n;}int AlterRecord(Cangku t[],int n) { int i,flag=0;char s[20],ch;system("cls");printf("请输入要修改的仓库名称\n");scanf("%s",s);for(i=0;i<n;i++){if(strcmp(s,t[i].name)==0){flag=1;system("cls");printf("\n\n要修改的仓库信息如下:\n");printf("\n");printf("*********************************************************************\n" );printf(" ** 编号名称面积说明\n");printf(" ---------------------------------------------------------------------\n");{printf("%17d%13s%20f%14s\n",t[i].num,t[i].name,t[i].square,t[i].intr odution);}printf("******************************************************************** *\n");printf ("\n");printf("确定修改仓库信息吗,(Y/N)\n");ch=getchar();ch=getchar();if(ch=='y'||ch=='Y'){system("cls");printf("请输入修改后的信息:\n");printf("请输入仓库新的名称:");scanf("%s",t[i].name);printf("请输入%s仓库新的编号:",t[i].name); scanf("%d",&t[i].num);printf("请输入%s仓库新的面积:",t[i].name); scanf("%f",&t[i].square);printf("请输入%s仓库新的说明:",t[i].name); scanf("%s",t[i].introdution);}}}if(flag==0)printf("要修改的仓库不存在~~\n"); getchar();return n;}int AddRecord(Cangku t[],int n) {int i,m;system("cls");printf("\n请输入再增加的记录数:\n"); scanf("%d",&m);printf("开始追加记录\n");for(i=n;i<n+m;i++){ system("cls");printf("\n第%d个仓库的编号:",i+1); scanf("%d",&t[i].num);printf("第%d个仓库的名称:",i+1); scanf("%s",t[i].name);printf("第%d个仓库的面积:",i+1); scanf("%f",&t[i].square);printf("第%d个仓库的说明:",i+1); scanf("%s",t[i].introdution);}return (n+m);}void SortOnName(Cangku t[],int n) {int i,j;struct cangku temp ;for(j=1;j<n;j++)for(i=0;i<n-j;i++)if((strcmp(t[i].name,t[i+1].name))>0) {temp=t[i];t[i]=t[i+1];t[i+1]=temp;}printf("排序成功!!!\n");printf("排序后仓库信息列表如下:\n"); List(t,n);}void SortOnSquare(Cangku t[],int n) {int i,j;struct cangku temp ;for(j=1;j<n;j++)for(i=0;i<n-j;i++)if(t[i].square<t[i+1].square){temp=t[i];t[i]=t[i+1];t[i+1]=temp;}printf("排序成功!!!\n");printf("排序后仓库信息列表如下:\n");List(t,n);}void SaveRecord(Cangku t[],int n) {int i;FILE *fp;if((fp=fopen("record.txt","w"))==NULL) {printf("不能打开文件!\n");exit(1);}for(i=0;i<n;i++){fwrite(&t[i],sizeof(struct cangku),1,fp); }fclose(fp);}int LoadRecord(Cangku t[]){int n=0;FILE *fp;if((fp=fopen("record.txt","a+"))==NULL) {printf("不能打开文件!\n");exit(1);}while(fread(&t[n],sizeof(struct cangku),1,fp)) n++; fclose(fp);printf("从文件中成功读出记录!!!\n");return n;}int LoadRecord1(Cangku t[]) {int n=0;FILE *fp;if((fp=fopen("bkrecord.txt","a+"))==NULL){printf("不能打开文件!\n");exit(1);}while(fread(&t[n],sizeof(struct cangku),1,fp)) n++; fclose(fp);printf("从文件中成功读出记录!!!\n");return n;}void Save(Cangku t[],int n) {int i;FILE *fp;if((fp=fopen("bkrecord.txt","w"))==NULL){printf("不能打开文件!\n");exit(1);}for(i=0;i<n;i++){fwrite(&t[i],sizeof(struct cangku),1,fp);}fclose(fp);printf("备份成功.\n");getchar();}void Load1(Cangku t[]) {int n=0;FILE *fp;if((fp=fopen("bkrecord.txt","a+"))==NULL){printf("不能打开文件!\n");exit(1);}while(fread(&t[n],sizeof(struct cangku),1,fp)) n++; fclose(fp);getchar();}void Load(Cangku t[],int n) {int i;FILE *fp;if((fp=fopen("record.txt","w"))==NULL) {printf("不能打开文件!\n");exit(1);}for(i=0;i<n;i++){fwrite(&t[i],sizeof(struct cangku),1,fp); }fclose(fp);printf("恢复成功.\n");}。

DELPHI054库存管理系统源代码

DELPHI054库存管理系统源代码

DELPHI054库存管理系统源代码<p>的完整性。

黑盒测试又称为功能测试。

与黑盒测试方法相反,DELPHI054库存管理系统源代码白盒测试法的前提是可以把程序看成安装在一个透明的白盒子里,也就DELPHI054库存管理系统源代码是完全了解程序的结构和处理过程。

这种方法按照程序内部的逻辑测DELPHI054库存管理系统源代码试程序,检验程序中的每条通路是否都能按预定要求正确工作。

白盒测试DELPHI054库存管理系统源代码又称为结构测试。

<?</P><p>不论采用上述哪种测试方法,只DELPHI054库存管理系统源代码要对每一种可能的情况都进行测试,就可以</P><p>得到完全DELPHI054库存管理系统源代码正确的程序。

包含所有可能情况的测试称为穷尽测试,对于实际程序而言,穷DELPHI054库存管理系统源代码尽测试通常是不可能做到的。

使用黑盒测试法,为了做到穷尽测试,DELPHI054库存管理系统源代码至少必须对多有输入数据的各种可能值的排列组合都进行测试,但是,由此得DELPHI054库存管理系统源代码到的应测试的情况往往大到世局上根本无法测试的程度。

使用白盒测试DELPHI054库存管理系统源代码法,为了做到穷尽测试,程序中每条可能的通路至少都应该执行一次(严DELPHI054库存管理系统源代码格地说每条通路都应该在每种可能地输入数据下执行一次)。

即使测试DELPHI054库存管理系统源代码很小的程序,通常也不能做到上述这一点。

</P><p>&nbsp;DELPHI054库存管理系统源代码</P>具体测试</H2><p>(1)&nbsp;&DELPHI054库存管理系统源代码nbsp;&nbsp; 向控件中插入数据,查看数据库中是否保存DELPHI054库存管理系统源代码该数据,并且看是否</P><p>通过下面的数据窗口显示记录。

仓库管理系统+JAVA源代码++设计说明

仓库管理系统+JAVA源代码++设计说明

计算机与通信学院本科生毕业设计说明书仓库管理系统*者:***学号:********专业:计算机科学与技术班级:05级软件工程(2)指导教师:***答辩时间:2009年6月仓库管理系统Storage Management System曹亚磊(Cao Yalei)05240207前言随着科学技术的不断发展,我们的社会已经进入了一个信息化的社会,人们每天都要接收大量的信息和处理大量的数据,仅靠传统的纸和笔已不能适应这个时代的要求,人们必须采取新的手段,于是信息技术进入我们的生活,计算机不再是简单的计算工具,它已成为我们生活中处理大量信息的不可或缺的手段。

在当今产业竞争越来越激烈的信息时代,企业经营除了降低成本,提高品质外,更需要以先进的管理理念来整合企业内部与外部资源。

仓库管理系统正是在这个背景下产生的。

本系统正是针对仓库部门的货物信息管理,通过对仓库基本信息﹑出入库信息等的系统界面设计,将会给管理者带来极大的方便,具有手工管理无法比拟的优点,例如检索速度快、查找方便、可靠性高、存储量大、使用时间长等。

用计算机管理取代传统的手工操作,大大减少了管理人员的工作量,提高了工作效率,为获取详细的管理信息提供了保证,方便各类人员的查询和信息保证,增强了管理工作的时效和人员主动性。

仓库管理主要摆阔两方面:一是仓库的基本信息,涉及人员信息、库房信息、供货商信息、客户信息;另一项是仓库业务管理,包括入库管理、在库管理、出库管理、报表管理。

在本系统中侧重实现仓库的基本信息管理。

摘要仓库管理系统是为了实现企业产品管理的系统化、规范化和自动化,从而提高企业管理效率而设计的。

它完全取代了原来一直用人工管理的工作方式,避免了由于管理人员的工作疏忽以及管理质量问题所造成的各种错误,为及时、准确、高效的完成仓库管理提供了强有力的工具和管理手段。

仓库管理系统是一个中小型数据库管理系统,它界面美观、操作简单、安全性高,基本满足了仓库管理的要求。

用Delphi实现文件下载的几种方法

用Delphi实现文件下载的几种方法

笔者最近开发的系统中需要写⼀个下载⽂件的功能。

以前⽤BCB调⽤API写的很烦琐,忽然想起有⼀个API就可以搞定了,于是⼀⼤早就来搜索。

这个API就是UrlDownloadToFile。

不仅如此,Delphi的⼀些控件也可以轻松实现下载,如NMHTTP,指定NMHTTP1.InputFileMode := ture; 指定Body为本地⽂件名,指定Get就可以下载了。

下⾯是详细代码,均出⾃CSDN。

我把它们都整理到这⼉,让⼤家⽅便查阅。

uses UrlMon;function DownloadFile(Source, Dest:string): Boolean;begintryResult := UrlDownloadToFile(nil,PChar(source), PChar(Dest), 0, nil) = 0;exceptResult := False;end;end;if DownloadFile('http:///delphi6.zip, 'c:\kylix.zip') thenShowMessage('Download succesful')else ShowMessage('Download unsuccesful') ======================== 例程:Uses URLMon, ShellApi;function DownloadFile(SourceFile, DestFile: string):Boolean;begintryResult := UrlDownloadToFile(nil, PChar(SourceFile),PChar(DestFile), 0, nil) = 0;exceptResult := False;end;end;procedure TForm1.Button1.Click(Sender: TObject);const// URL LocationSourceFile := '/ncre/Files/2008-6/18/923232500.gif';// Where to save the fileDestFile := 'c:\temp\google-image.gif';beginif DownloadFile(SourceFile, DestFile) thenbeginShowMessage('Download succesful!');// Show downloaded image in your browserShellExecute(Application.Handle,PChar('open'),PChar(DestFile),PChar(''),nil,SW_NORMAL)endelseShowMessage('Error while downloading ' + SourceFile)end;。

仓库管理系统VBAccess源代码

仓库管理系统VBAccess源代码

仓库管理系统项目的建立这是本人利用闲暇之余在VB6.0上制作的一个简陋的类库管系统,现图文结合的方式一步一步展现制作过程。

由于本人是个初学者,里面存在很多不足之处望得到高手们的指导。

此文可作供初学者们学习交流。

作者联系方式:E-mail最终运行效果打开软件出现如下登录界面输入系统预设用户名及密码(11)单击“登录”或单击“新用户”添加新用户进入如下主界面:建立工程1、创建标准EXE2、按“打开”3、添加MDI窗体——打开4、编辑菜单在空白处右击——点击“菜单编辑器”在“标题”里输入“系统”,在“名称”里输入“Sys”(注意此处不能为汉字)“确定”退到MDI界面点击“系统”——“退出”如下,然后编写代码。

代码如下:PrivateSubExit_Click()EndEndSub数据库的建立VB6.0中可以创建Access数据库。

如下建立一个“用户表”的数据库,用来存放用户信息及一些出入库管理信息。

如下图单击“外接程序”再单击“可视化数据管理器”出现如图点击“文件”——“新建”——“MicrosoftAccess”——“Version2.0MDB”输入数据库名,“保存”出现如下图在数据窗口中右击——“新建表”,最终如下往数据表里添加数据在这里就不罗嗦了,请查阅相关书籍。

登录界面窗口的建立最终界面如下:单击“确定”在工具栏中会出现“”图标,单击它并拖动到相应位置即可。

其它元件不在一一说明。

2、本窗体代码如下:PrivateSubCommand1_Click()'“登录”、“确定”按钮IfCommand1.Caption="确定"AndCommand2.Caption="取消"Then'如果为“确定”则添加新用户IfText1.Text=""Then'提示用户输入用户名MsgBox"请输入用户名!",,"登录信息提示:"ExitSubElse'DimusenameAsString'检测用户名是否已经存在DimstrSAsStringusename=Trim(Text1.Text)strS="select*from用户登录信息表where用户名='"&usename&"'"mandType=adCmdTextAdodc1.RecordSource=strSAdodc1.RefreshMsgBox"您输入的用户已存在!",,"登录提示信息:"Text1.Text=""Text2.Text=""Text3.Text=""Text1.SetFocusExitSubEndIfEndIfIfText2.Text=""Then'提示用户密码不能为空MsgBox"密码不能为空!",,"登录提示信息:"Text2.SetFocusExitSubEndIfIfText3.Text=""ThenMsgBox"请再次输入密码!",,"登录提示信息:"Text3.SetFocusExitSubEndIfIfText2.Text<>Text3.TextThenMsgBox"两次输入的密码不一致,请确认!",,"登录提示信息:"Text2.Text=""Text3.Text=""Text2.SetFocusExitSubElseMsgBox("添加新用户成功,现在您可以登陆系统了!")Label3.Visible=FalseText3.Visible=FalseCommand1.Caption="登录"Else'“登录”按钮,用户登录DimstrSnoAsStringDimstrSelectAsStringstrSno=Trim(Text1.Text)'检测用户名是否存在strSelect="select密码from用户登录信息表where用户名='"&strSno&"'" mandType=adCmdTextAdodc1.RecordSource=strSelectAdodc1.RefreshMsgBox"用户名不存在,请重新输入!",,"登录提示信息:"Text1.Text=""Text2.Text=""Text1.SetFocusExitSubEndIfForm1.Hide'UnloadMeForm2.Show'MsgBox"登陆成功!",,"登录提示信息:"ElseMsgBox"密码不正确,请重新输入!",,"登录提示信息:"Text2.Text=""Text2.SetFocusEndIfEndIfEndSubPrivateSubCommand2_Click()'“退出”或“取消”按钮IfCommand2.Caption="取消"ThenLabel3.Visible=FalseText3.Visible=FalseCommand1.Caption="登录"Command2.Caption="退出"Text1.Text=""Text2.Text=""Text1.SetFocusElseEnd'UnloadMeEndIfEndSubPrivateSubCommand3_Click()'“新用户”按钮Label3.Visible=TrueText3.Visible=TrueText1.Text=""Text2.Text=""Text3.Text=""Command1.Caption="确定"Command2.Caption="取消"PrivateSubCommand3_MouseDown(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle) Label6.Visible=TrueEndSubPrivateSubCommand3_MouseUp(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle) Label6.Visible=FalseEndSubPrivateSubForm_Load()Label3.Visible=FalseText3.Visible=FalseEndSubPrivateSubTimer1_Timer()'时间time1控件的time事件代码,用来'显示向左移动的欢迎字幕IfLabel4.Left+Label4.Width>0Then'当标签右边位置大于0时,标签向左移Label4.MoveLabel4.Left-80Else'否则标签从头开始Label4.Left=Form1.ScaleWidthEndIfIfLabel5.Left+Label5.Width>0ThenLabel5.MoveLabel5.Left-80ElseLabel5.Left=Form1.ScaleWidthEndIfEndSub主界面窗体如下:代码:PrivateSubAddNew_Click()Frame1.Visible=TrueFrame2.Visible=FalseEndSubPrivateSubCHKPMCHX_Click()Frame2.Caption="出库信息"DimpmAsStringDimnAsStringpm=InputBox("产品名","请输入",0)n="select*from出库表where品名='"&pm&"'"mandType=adCmdTextAdodc2.RecordSource=nAdodc2.RefreshCallInitGrid1EndSubPrivateSubCHKXHCHX_Click()Frame2.Caption="出库信息"DimXHAsStringn="select*from出库表where型号='"&XH&"'"mandType=adCmdTextAdodc2.RecordSource=nAdodc2.RefreshEndSubPrivateSubCKCZ_Click()'Form2.HideForm6.ShowEndSubPrivateSubCKJSHR_Click()Frame2.Caption="出库信息"DimJSHRAsStringDimnAsStringJSHR=InputBox("经手人","请输入",0)n="select*from出库表where经手人='"&JSHR&"'"mandType=adCmdTextAdodc2.RecordSource=nAdodc2.RefreshCallInitGrid1EndSubPrivateSubCKSHJ_Click()Frame2.Caption="出库信息"DimCHKRQAsStringDimnAsStringCHKRQ=InputBox("出库日期,格式为:月/日/年如:12/1/2011","请输入",0) n="select*from出库表where出库日期='"&CHKRQ&"'"mandType=adCmdTextAdodc2.RecordSource=nAdodc2.RefreshCallInitGrid1EndSubPrivateSubCKZCX_Click()Frame2.Caption="出库信息"DimZBAsStringZB="select*from出库表"mandType=adCmdTextAdodc2.RecordSource=ZBAdodc2.RefreshCallInitGrid1EndSubPrivateSubCommand1_Click()IfText1.Text=""Then'提示用户输入用户名MsgBox"请输入用户名!",,"登录信息提示:"ExitSubElse'DimusenameAsString'检测用户名是否已经存在strS="select*from用户登录信息表where用户名='"&usename&"'"mandType=adCmdTextAdodc1.RecordSource=strSAdodc1.RefreshMsgBox"您输入的用户已存在!",,"登录提示信息:"Text1.Text=""Text2.Text=""Text3.Text=""Text1.SetFocusExitSubEndIfEndIfIfText2.Text=""Then'提示用户密码不能为空MsgBox"密码不能为空!",,"登录提示信息:"Text2.SetFocusExitSubEndIfIfText3.Text=""ThenMsgBox"请再次输入密码!",,"登录提示信息:"Text3.SetFocusExitSubEndIfIfText2.Text<>Text3.TextThenMsgBox"两次输入的密码不一致,请确认!",,"登录提示信息:"Text2.Text=""Text3.Text=""Text2.SetFocusExitSubElseeDimXAsIntegerX=MsgBox("成功添加新用户,是否要重新登录!",vbYesNo+vbQuestion+vbDefaultButton1,"提示信息!") IfX=vbYesThenUnloadMeForm3.ShowEndIf'MsgBox("成功添加新用户!")'Label3.Visible=False'Text3.Visible=False'Command1.Caption="登录"'Command2.Caption="退出"EndIfFrame1.Visible=FalseFrame2.Visible=TrueText1.Text=""Text2.Text="'"EndSubPrivateSubCommand2_Click()Frame1.Visible=FalseFrame2.Visible=TrueEndSubPrivateSubCXDL_Click()Form3.Show'UnloadMeEndSubPrivateSubExit_Click()EndUnloadForm1UnloadForm2UnloadForm3UnloadForm4UnloadForm5UnloadForm6UnloadForm7UnloadForm8EndSubPrivateSubForm_Load()UnloadForm1Frame1.Visible=FalseCallInitGrid0Me.Height=MDIForm1.Height-1060Me.Width=MDIForm1.Width-560Me.Top=MDIForm1.TopMe.Left=MDIForm1.LeftEndSubPrivateSubGHCZ_Click()'Form2.HideForm8.ShowEndSubPrivateSubGHPMCX_Click()Frame2.Caption="归还信息" DimpmAsStringDimnAsStringpm=InputBox("产品名","请输入",0)n="select*from归还表where品名='"&pm&"'" mandType=adCmdTextAdodc2.RecordSource=nAdodc2.RefreshCallInitGrid2EndSubPrivateSubGHRCX_Click()Frame2.Caption="归还信息"JCR=InputBox("归还人","请输入",0)n="select*from归还表where归还人='"&JCR&"'"mandType=adCmdTextAdodc2.RecordSource=nAdodc2.RefreshCallInitGrid2EndSubPrivateSubGHSJCX_Click()Frame2.Caption="归还信息"DimJCRQAsStringDimnAsStringJCRQ=InputBox("归还日期,格式为:月/日/年如:12/1/2011","请输入",0) n="select*from归还表where归还日期='"&JCRQ&"'"mandType=adCmdTextAdodc2.RecordSource=nAdodc2.RefreshCallInitGrid2EndSubPrivateSubGHXHCX_Click()Frame2.Caption="归还信息"DimXHAsStringDimnAsStringXH=InputBox("产品型号","请输入",0)n="select*from归还表where型号='"&XH&"'"mandType=adCmdTextAdodc2.RecordSource=nAdodc2.RefreshCallInitGrid2EndSubPrivateSubGHZCX_Click()Frame2.Caption="归还信息"DimZBAsStringZB="select*from归还表"mandType=adCmdTextAdodc2.RecordSource=ZBAdodc2.RefreshCallInitGrid2EndSubPrivateSubJCCZ_Click()'Form2.HideForm7.ShowEndSubPrivateSubJCHPMCHX_Click()Frame2.Caption="借出信息"DimpmAsStringDimnAsStringmandType=adCmdTextAdodc2.RecordSource=nAdodc2.RefreshCallInitGrid2EndSubPrivateSubJCHXHCHX_Click()Frame2.Caption="借出信息"DimXHAsStringDimnAsStringXH=InputBox("产品型号","请输入",0)n="select*from借出表where型号='"&XH&"'"mandType=adCmdTextAdodc2.RecordSource=nAdodc2.RefreshCallInitGrid2EndSubPrivateSubJCRCX_Click()Frame2.Caption="借出信息"DimJCRAsStringDimnAsStringJCR=InputBox("借出人","请输入",0)n="select*from借出表where借出人='"&JCR&"'"mandType=adCmdTextAdodc2.RecordSource=nAdodc2.RefreshCallInitGrid2EndSubPrivateSubJCSHJCX_Click()Frame2.Caption="借出信息"DimJCRQAsStringDimnAsStringJCRQ=InputBox("借出日期,格式为:月/日/年如:12/1/2011","请输入",0) n="select*from借出表where借出日期='"&JCRQ&"'"mandType=adCmdTextAdodc2.RecordSource=nAdodc2.RefreshCallInitGrid2EndSubPrivateSubJCZCX_Click()Frame2.Caption="借出信息"DimZBAsStringZB="select*from借出表"mandType=adCmdTextAdodc2.RecordSource=ZBAdodc2.RefreshCallInitGrid2Frame2.Caption="归还信息"DimJSHRAsStringDimnAsStringJSHR=InputBox("经手人","请输入",0)n="select*from归还表where经手人='"&JSHR&"'" mandType=adCmdTextAdodc2.RecordSource=nAdodc2.RefreshCallInitGrid2EndSubPrivateSubJSHRCX_Click()Frame2.Caption="借出信息"DimJSHRAsStringDimnAsStringJSHR=InputBox("经手人","请输入",0)n="select*from借出表where经手人='"&JSHR&"'" mandType=adCmdTextAdodc2.RecordSource=nAdodc2.RefreshCallInitGrid2EndSubPrivateSubPMCX_Click()Frame2.Caption="库存信息"DimpmAsStringDimnAsStringpm=InputBox("产品名","请输入",0)n="select*from库存表where品名='"&pm&"'" mandType=adCmdTextAdodc2.RecordSource=nAdodc2.RefreshCallInitGrid0EndSubPrivateSubRKCZ_Click()'Form2.HideForm5.ShowEndSubPrivateSubRKJSHR_Click()Frame2.Caption="入库信息"DimJSHRAsStringDimnAsStringJSHR=InputBox("经手人","请输入",0)n="select*from入库表where经手人='"&JSHR&"'" mandType=adCmdTextAdodc2.RecordSource=nAdodc2.RefreshCallInitGrid1Frame2.Caption="入库信息"DimpmAsStringDimnAsStringpm=InputBox("产品名","请输入",0)IfLen(pm)>0Thenn="select*from入库表where品名='"&pm&"'"mandType=adCmdTextAdodc2.RecordSource=nAdodc2.RefreshEndIfCallInitGrid1EndSubPrivateSubRKSHJ_Click()Frame2.Caption="入库信息"DimRKRQAsStringDimnAsStringRKRQ=InputBox("入库日期,格式为:月/日/年如:12/1/2011","请输入",0) n="select*from入库表where入库日期='"&RKRQ&"'"mandType=adCmdTextAdodc2.RecordSource=nAdodc2.RefreshCallInitGrid1EndSubPrivateSubRKXHCHX_Click()Frame2.Caption="入库信息"DimXHAsStringDimnAsStringXH=InputBox("产品型号","请输入",0)IfLen(XH)>0Thenn="select*from入库表where型号='"&XH&"'"mandType=adCmdTextAdodc2.RecordSource=nAdodc2.RefreshEndIfCallInitGrid1EndSubPrivateSubRKZCX_Click()Frame2.Caption="入库信息"DimZBAsStringZB="select*from入库表"mandType=adCmdTextAdodc2.RecordSource=ZBAdodc2.RefreshCallInitGrid1EndSubPrivateSubTimer1_Timer()IfLabel4.Left+Label4.Width>0Then'当标签右边位置大于0时,标签向左移Label4.MoveLabel4.Left-80Else'否则标签从头开始Label4.Left=Form2.ScaleWidthEndIfIfLabel5.Left+Label5.Width>0ThenLabel5.MoveLabel5.Left-80ElseLabel5.Left=Form2.ScaleWidthEndIfIfLabel6.Left+Label6.Width>0ThenLabel6.MoveLabel6.Left-80ElseLabel6.Left=Form2.ScaleWidthEndIfIfLabel7.Left+Label7.Width>0ThenLabel7.MoveLabel7.Left-80ElseLabel7.Left=Form2.ScaleWidthEndIfEndSubPrivateSubXGMM_Click()'Form2.HideForm4.ShowEndSubPrivateSubXHCX_Click()Frame2.Caption="库存信息"DimXHAsStringDimnAsStringXH=InputBox("产品型号","请输入",0)IfLen(XH)>0Then'AndVal(XH)<>0n="select*from库存表where型号='"&XH&"'" mandType=adCmdTextAdodc2.RecordSource=nAdodc2.RefreshEndIfCallInitGrid0EndSubPrivateSubZB_Click()Frame2.Caption="库存信息"DimZBAsString'DimNAsString'PM=InputBox("产品名","请输入",0)ZB="select*from库存表"'where品名='"&PM&"'" mandType=adCmdTextAdodc2.RecordSource=ZBAdodc2.RefreshCallInitGrid0EndSubPrivateSubInitGrid0()WithDataGrid1.Columns(0).Width=1600.Columns(1).Width=2200.Columns(2).Width=2200.Columns(3).Width=1000.Columns(4).Width=1000.Columns(5).Width=4000EndWithEndSubPrivateSubInitGrid1()WithDataGrid1.Columns(0).Width=800.Columns(1).Width=1600.Columns(2).Width=1600.Columns(3).Width=800.Columns(4).Width=800.Columns(5).Width=1000.Columns(6).Width=800.Columns(7).Width=4000EndWithEndSubPrivateSubInitGrid2()WithDataGrid1'.Columns(0).Caption="学号"'.Columns(1).Caption="课程名"'.Columns(2).Caption="学分"'.Columns(3).Caption="成绩"'设置DtgCond的列宽.Columns(0).Width=800.Columns(1).Width=1600.Columns(2).Width=1600.Columns(3).Width=800.Columns(4).Width=800.Columns(5).Width=800.Columns(6).Width=1000.Columns(7).Width=800.Columns(8).Width=4000EndWithEndSub用户重新登录界面代码:PrivateSubCommand1_Click()DimstrSnoAsStringDimstrSelectAsStringstrSno=Trim(Text1.Text)'检测用户名是否存在strSelect="select密码from用户登录信息表where用户名='"&strSno&"'"mandType=adCmdTextAdodc1.RecordSource=strSelectAdodc1.RefreshMsgBox"用户名不存在,请重新输入!",,"登录提示信息:" Text1.Text=""Text2.Text=""Text1.SetFocusExitSubEndIfUnloadMeForm2.Show'MsgBox"登陆成功!",,"登录提示信息:"ElseMsgBox"密码不正确,请重新输入!",,"登录提示信息:"Text2.Text=""Text2.SetFocusEndIfEndSubPrivateSubCommand2_Click()UnloadMeForm2.ShowEndSub修改用户密码界面代码:PrivateSubCommand1_Click()IfTrim(Text1.Text)<>Form2.TextUserNameThenMsgBox"用户名不正确,请确认!",,"信息提示!"Text1.Text=""Text1.SetFocusExitSubElseDimnameAsStringDimnamesAsStringname=Trim(Text1.Text)names="select*from用户登录信息表where用户名='"&name&"'" mandType=adCmdTextAdodc1.RecordSource=namesAdodc1.RefreshIfText2.Text=""ThenMsgBox"请输入旧密码!",,"信息提示!"Text2.SetFocusExitSubEndIfMsgBox"旧密码不正确,请确认!",,"信息提示!"Text2.Text=""Text2.SetFocusEndIfIfText3.Text=""ThenMsgBox"请输入新密码!",,"信息提示!"Text3.SetFocusExitSubEndIfIfText4.Text=""ThenMsgBox"请再次输入新密码!",,"信息提示!"Text4.SetFocusExitSubEndIfIfTrim(Text3.Text)<>Trim(Text4.Text)ThenMsgBox"两次输入的新密码不一致!",,"信息提示!"Text3.Text=""Text4.Text=""Text3.SetFocusExitSubElseMsgBox("密码修改成功!")UnloadMe'Form2.ShowEndIfEndIfEndSubPrivateSubCommand2_Click()UnloadMe'Form2.ShowEndSub入库管理代码:PrivateSubCommand1_Click()IfText1.Text=""AndText2.Text=""ThenMsgBox"“品名”和“型号”不能同时为空,必须输入其中一项!",,"提示信息!" ExitSubText1.SetFocusElseIfText3.Text=""AndText4.Text=""ThenMsgBox"请输入产品“数量”或“单位”之一!",,"提示信息!"Text3.SetFocusExitSubEndIfIfText5.Text=""ThenMsgBox"请经手人签名!",vbCritical,"提示信息!"Text5.SetFocusExitSubAdodc1.RefreshEndIfDimpmAsStringDimpmsAsStringDimnAsStringDimmAsStringpm=Trim(Text1.Text)n=Val(Text3.Text)pms="select*from库存表where品名='"&pm&"'"WithForm2EndWithElseEndIfEndIfDimXAsIntegerX=MsgBox("产品入库登记成功,是否继续添加产品!",vbYesNo+vbQuestion+vbDefaultButton1,"提示信息!") IfX=vbNoThenUnloadMe'Form2.ShowElseText1.Text=""Text2.Text=""Text3.Text=""Text4.Text=""Text5.Text=""Text6.Text=""Text7.Text=""Text1.SetFocusEndIfDimZBAsStringZB="select*from入库表"'where品名='"&PM&"'"EndSubPrivateSubCommand2_Click()Text1.Text=""Text2.Text=""Text3.Text=""Text4.Text=""Text5.Text=""Text6.Text=""Text7.Text=""Text1.SetFocusEndSubPrivateSubCommand3_Click()UnloadMe'Form2.ShowEndSub出库管理代码:PrivateSubCommand1_Click()IfCombo1.Text=""AndCombo2.Text=""Then'text1.Text=""AndText2.Text=""ThenMsgBox"“品名”和“型号”不能同时为空,必须输入其中一项!",,"提示信息!"ExitSubElseIfText1.Text=""AndCombo3.Text=""Then'Text4.Text=""ThenMsgBox"请输入产品“数量”或“单位”之一!",,"提示信息!"Text2.SetFocusExitSubEndIfIfText2.Text=""ThenMsgBox"请经手人签名!",vbCritical,"提示信息!"Text2.SetFocusExitSubEndIfAdodc1.RefreshEndIfDimpmAsStringDimpmsAsStringDimnAsStringDimmAsStringpm=Trim(Combo1.Text)n=Val(Text1.Text)pms="select*from库存表where品名='"&pm&"'"EndIfDimXAsIntegerX=MsgBox("产品出库登记成功,是否继续添加产品!",vbYesNo+vbQuestion+vbDefaultButton1,"提示信息!") IfX=vbNoThenUnloadMe'Form2.ShowEndIfCombo1.Text=""Combo2.Text=""Combo3.Text=""Text1.Text=""Text2.Text=""Text3.Text=""Text4.Text=""DimZBAsStringZB="select*from出库表"'where品名='"&PM&"'"EndSubPrivateSubCommand2_Click()Combo1.Text=""Combo2.Text=""Combo3.Text=""Text1.Text=""Text2.Text=""Text3.Text=""Text4.Text=""EndSubPrivateSubCommand3_Click()UnloadMe'Form2.ShowEndSubPrivateSubForm_Load()Adodc2.RefreshLoopEndSub借出管理代码:PrivateSubCommand1_Click()IfCombo1.Text=""AndCombo2.Text=""Then'text1.Text=""AndText2.Text=""ThenMsgBox"“品名”和“型号”不能同时为空,必须输入其中一项!",,"提示信息!"ExitSubElseIfText1.Text=""AndCombo3.Text=""Then'Text4.Text=""ThenMsgBox"请输入产品“数量”或“单位”之一!",,"提示信息!"Text1.SetFocusExitSubEndIfIfText2.Text=""ThenMsgBox"请经手人签名!",vbCritical,"提示信息!"Text2.SetFocusExitSubEndIfAdodc1.RefreshEndIfDimpmAsStringDimpmsAsStringDimnAsStringDimmAsStringpm=Trim(Combo1.Text)n=Val(Text1.Text)pms="select*from库存表where品名='"&pm&"'"EndIfDimXAsIntegerX=MsgBox("产品借出登记成功,是否继续添加产品!",vbYesNo+vbQuestion+vbDefaultButton1,"提示信息!") IfX=vbNoThenUnloadMeForm2.ShowEndIfCombo1.Text=""Combo2.Text=""Combo3.Text=""Text1.Text=""Text2.Text=""Text3.Text=""Text4.Text=""DimZBAsStringZB="select*from借出表"'where品名='"&PM&"'"EndSubPrivateSubCommand2_Click()Combo1.Text=""Combo2.Text=""Combo3.Text=""Text1.Text=""Text2.Text=""Text3.Text=""Text4.Text=""EndSubPrivateSubCommand3_Click()UnloadMeForm2.ShowEndSubPrivateSubForm_Load()Adodc2.RefreshLoopEndSub归还管理代码:PrivateSubCommand1_Click()IfCombo1.Text=""AndCombo2.Text=""Then'text1.Text=""AndText2.Text=""Then MsgBox"“品名”和“型号”不能同时为空,必须输入其中一项!",,"提示信息!" ExitSubElseIfText1.Text=""AndCombo3.Text=""Then'Text4.Text=""ThenMsgBox"请输入产品“数量”或“单位”之一!",,"提示信息!"Text1.SetFocusExitSubEndIfIfText2.Text=""ThenMsgBox"请经手人签名!",vbCritical,"提示信息!"Text2.SetFocusExitSubEndIfIfText3.Text=""ThenMsgBox"请输入归还人姓名!",vbCritical,"提示信息!"Text3.SetFocusExitSubEndIfAdodc1.RefreshEndIfDimpmAsStringDimpmsAsStringDimnAsStringDimmAsStringpm=Trim(Combo1.Text)n=Val(Text1.Text)pms="select*from库存表where品名='"&pm&"'"EndIfDimXAsIntegerX=MsgBox("产品归还登记成功,是否继续添加产品!",vbYesNo+vbQuestion+vbDefaultButton1,"提示信息!") IfX=vbNoThenUnloadMeForm2.ShowEndIfCombo1.Text=""Combo2.Text=""Combo3.Text=""Text1.Text=""Text2.Text=""Text3.Text=""Text4.Text=""DimZBAsStringZB="select*from归还表"'where品名='"&PM&"'"EndSubPrivateSubCommand2_Click()Combo1.Text=""Combo2.Text=""Combo3.Text=""Text1.Text=""Text2.Text=""Text3.Text=""Text4.Text=""EndSubPrivateSubCommand3_Click()UnloadMeForm2.ShowEndSubPrivateSubForm_Load()'DimiAsString'i=0'Adodc2.Refresh'i=i+1'LoopCallpmEndSubPrivateSubpm()DimiAsVariantDimjAsVariantDimkAsVariantDimaAsVariantDimbAsVariantDimcAsVariantDimsAsVariantDimDAsVarianti=0j=0Adodc2.Refreshi=i+1LoopD=Split(a,",")Ifj<iThens=D(2)Combo1.AddItems'k=0'Ifk<jAndD(k)<>D(j)Then'IfD(k)<>D(j)Then'Combo1.AddItemD(j)'k=k+1'Else'k=k+1'EndIf'EndIfj=j+1EndIfText5.Text=s'a+","+D(2)+D(1)'+""+Val(i)+""+Val(j)+""+Val(k) Text6.Text=j'Combo1.AddItemD(1)EndSub。

进销存(delphi)源码分析

进销存(delphi)源码分析
Connectionconn
Parameters<>
SQL.Strings('select * from出仓单')
NamedsCCD
dsCCDTDataSource
DataSetCCD
NameCKTJ
CKTJTADOTable
Connectionconn
TableName'仓库统计'
NamedsCKTJ
JSZDTADOQuery
Connectionconn
Parameters<>
SQL.Strings('select * from结算总单')
NamedsJSZD
dsJSZDTDataSource
DataSetJSZD
NameTempJS
TempJSTADOQuery
Connectionconn
Parameters<>
车队名称
编号、名称
车辆资料
车牌号码、电话号码、工作单位、联系地址、身份证号码、手机号码、所属车队、姓名、序号、邮政编码
出仓单
包干项目、包装、包装要求、保险要求、备注、编号、财务确认、仓库名称、仓租、产地、车号、出仓单号、出仓数量、出仓重量、出库费、船名航次、代理传真、代理电话、代理人、到港、到站到港、合同号、货名、计划费、结算单位、结余数量、结余重量、进仓编号、进仓单号、进仓数量、进仓重量、进库费、经营单位、联系传真、联系电话、联系人、破损记录、日期、生效、实收数量、实收重量、是否清空、收货人资料、输单日期、输单员、数量、数量箱型、送达资料、送货单位、提单号、委托单号、委托单位、物流方式、箱型、型号、运费、重量、总单合计
传真

仓库管理 python 源码

仓库管理 python 源码

仓库管理系统是一个用于管理存储在仓库中的物品的系统。

以下是一个简单的仓库管理系统的Python源代码示例。

python复制代码class Item:def__init__(self, name, quantity): = nameself.quantity = quantityclass Warehouse:def__init__(self):self.items = {}def add_item(self, item):if in self.items:self.items[].quantity += item.quantityelse:self.items[] = itemdef remove_item(self, name, quantity):if name in self.items:if self.items[name].quantity >= quantity:self.items[name].quantity -= quantityelse:print("Insufficient quantity")else:print("Item not found")def print_inventory(self):for item in self.items.values():print(f"{}: {item.quantity}")warehouse = Warehouse()warehouse.add_item(Item("Apple", 100))warehouse.add_item(Item("Banana", 50))warehouse.remove_item("Apple", 20)warehouse.print_inventory()这个简单的仓库管理系统包括两个类:Item和Warehouse。

Delphi财务管理系统设计与开发(论文+源代码)

Delphi财务管理系统设计与开发(论文+源代码)

财务管理系统应用程序设计本程序设计的是一个小型商店每天记的流水帐管理程序,没有具体到销售的每一样商品,只是记载了每一笔的收入和支出情况。

经过简单扩充就可以成为一个完整的商店销售管理系统。

下面来说一下本程序的各个模块的功能及数据库的结构。

一、本程序由封面、登录界面、主窗口、打印窗口及关于窗口五部分组成。

主窗口又由增添记录、编辑记录、查询信息、打印数据、管理功能组成.封面:在启动主程序之前显示一个软件封面,停留大约二秒钟,用于说明本软件的功能版本信息,消除用户等待主程序启动的焦虑(一般用于主程序启动需要较长时间的软件中)登录界面:登录界面产生一个用户的下拉列表,用户可选择相应的用户名称,输入对应的密码进入,选择“取消"终止程序运行.防止用户以外的人看到密码,密码输入框内的密码用“*"屏蔽。

主窗口:主窗口是本软件的核心,百分之九十的功能代码都在这里实现。

主窗口上方是一组下拉菜单,实现功能的切换和数据的处理。

下面一组标签页实现相应的功能。

最下方的状态条显示当前的时间和日期。

打印窗口:实现所要打印的数据输出之前的预览,可以通过上面的一排功能按钮调整预览效果。

关于窗口:一个小对话框,显示的是本软件的说明信息.添加记录:该标签页由上面的一组数据明细和下面的控制按钮组成,输入框前的文本提示输入框内存储的内容,输入框内是我们要输入的数据信息,下方的“第一条”,“上一条”,“下一条”,“最后一条”用于浏览数据,右下方的两个按钮用于数据的添加和存储。

编辑记录:该标签页和“添加记录”很相似,增加了一个“删除记录"按钮和“修改记录"按钮。

删除记录前会有一个删除确认对话框出现,防止用户误删数据。

查询信息:由上面的一组查询组件和下面的数据表格组成。

首先在下拉框中选择要查询的字段,然后在右边的文本框内输入要查询的内容,单击“查询"按钮即可在下面的数据表格中显示所需要的信息.支持模糊查询,可以只输入查询信息的一部分。

delphi11.3中linuxpaserver源代码

delphi11.3中linuxpaserver源代码

delphi11.3中linuxpaserver源代码Delphi 11.3中LinuxPaserver源代码Delphi 11.3是一款被广泛使用的集成开发环境(IDE),专门用于开发跨平台应用程序。

其中的LinuxPaserver源代码是Delphi在Linux平台上实现的一项重要功能。

本文将介绍Delphi 11.3中LinuxPaserver源代码的相关内容。

一、LinuxPaserver简介LinuxPaserver是Delphi的一个组件,它允许在Linux平台上进行开发、调试、部署和测试Delphi应用程序。

通过LinuxPaserver,开发人员可以使用Delphi IDE来创建跨平台应用,并且在Linux环境中进行调试和运行。

LinuxPaserver提供了一种简单有效的方式,让开发人员能够在Delphi IDE中使用Linux环境下的调试和运行工具。

通过LinuxPaserver,开发人员可以实现将Delphi应用程序移植到Linux平台,扩大了应用程序的覆盖范围,提高了开发效率。

二、LinuxPaserver源代码结构LinuxPaserver源代码是开放的,允许开发人员自行修改和定制。

其主要包含以下几个部分:1. 通信模块:用于实现Delphi IDE与LinuxPaserver之间的通信,确保二者之间的实时数据交互。

通信模块采用Socket通信方式,使用TCP/IP协议进行数据传输。

2. 调试模块:用于在Linux环境下进行应用程序的调试。

调试模块提供了一系列的调试工具,如断点调试、调试输出、变量监视等,以帮助开发人员定位和修复程序中的错误。

3. 运行时环境:LinuxPaserver源代码中还包含了一个运行时环境,用于加载和执行Delphi应用程序。

运行时环境提供了一些必要的运行时库和类,使得应用程序能够在Linux环境中正确运行。

三、LinuxPaserver源代码的重要功能1. 跨平台开发:LinuxPaserver使得开发人员可以在Delphi IDE中进行跨平台开发。

2024版Delphi程序设计实用教程第2版

2024版Delphi程序设计实用教程第2版

Delphi程序设计实用教程第2版•Delphi程序设计概述•Delphi语言基础•面向对象编程基础•窗体和控件应用•文件操作与数据库访问技术•网络编程技术•调试、优化和发布部署•实战项目:XXX系统设计与实现Delphi程序设计概述Delphi是一种高级编程语言,由Borland公司开发,以Object Pascal为基础。

Delphi支持面向对象的程序设计,具有丰富的组件库和强大的开发环境。

Delphi广泛应用于Windows桌面应用程序、Web应用程序、数据库应用程序等开发领域。

Delphi语言简介下载并安装Delphi开发环境,选择合适的版本和组件库。

配置开发环境,包括设置编译器选项、调试器选项、代码编辑器风格等。

安装和配置数据库连接驱动,以便在Delphi中访问数据库。

Delphi开发环境安装与配置第一个Delphi程序创建一个新的Delphi项目,选择适当编译和运行程序,查看程序执行结果。

的项目类型和模板。

在代码编辑器中编写程序代码,实现简单的功能,如输出“HelloWorld”。

010204 Delphi程序结构Delphi程序由项目文件、单元文件和窗体文件等组成。

项目文件包含程序的整体设置和引用单元的信息。

单元文件包含程序中的代码和数据,是实现程序功能的基本单元。

窗体文件包含程序中的界面元素和事件处理代码,是实现用户交互的重要部分。

03Delphi语言基础包括Integer 、Boolean 、Char 、String 、Float 等常用类型。

标准数据类型如数组、记录、集合、文件等复合数据类型。

构造类型用于访问内存地址的特殊数据类型。

指针类型可存储不同类型数据的灵活数据类型。

变体类型Delphi 数据类型介绍如何在Delphi 中声明变量并为其赋值。

变量声明与赋值讲解常量的概念、定义方法及在程序中的应用。

常量定义与使用阐述局部变量、全局变量的概念及其作用范围。

变量作用域变量与常量运算符与表达式算术运算符介绍加、减、乘、除等基本算术运算。

delphi开发实例

delphi开发实例

delphi开发实例
Delphi是一种强大的编程语言,广泛应用于各种领域的软件开发,如桌面应用、企业级应用等。

以下是一些Delphi开发的具体实例:
1. 《Delphi数据库开发经典实例精解》:这本书主要介绍如何使用Delphi进行数据库管理系统开发,以Delphi 7为基础进行讲解。

全书共分为三篇:基础篇、简单应用篇和高级应用篇。

实例涵盖了ADO、数据访问控件、记录显示、数据查询和数据操作等知识点。

2. 《Delphi数据库开发及精彩实例》:这本书使用Delphi编写程序,对Access、SQL Server和Oracle数据库进行操作的技术和方法。

全书从不同的方面,以不同角度讲述了Delphi在开发数据库的过程中经常遇到的问题及解决方法,并结合对数据库的操作,介绍了69个完整的示例程序和1个完整的数据库管理系统。

3. 《Delphi数据库开发毕业设计指导及实例》:这本书主要针对高等院校计算机专业学生,指导他们使用Delphi进行课程设计与毕业设计。

书中介绍了4个系统实例:新生报名管理系统、图书管理系统、小区物业管理系统和高校工资管理系统,并从用户调查、系统分析、系统设计、应用程序的设计进行了详细分析。

这些实例书籍可以帮助您深入了解Delphi的开发方法和技巧,为您在实际项目中应用Delphi提供参考和指导。

另外,您可以在互联网上找到许多Delphi开发的实例项目,以便更好地了解Delphi在不同领域的实际应用。

DELPHI制作的通用升级程序(附源码)

DELPHI制作的通用升级程序(附源码)

DELPHI制作的通用升级程序设计思路:将升级程序放在web服务器端,并在服务器端用Upgrade.txt配置文件说明要升级的文件数、版本号及需下载的文件列表等信息;客户端执行升级时,用idhttp控件下载需升级的文件,并将下载的文件先存入客户端Upgrade临时目录,全部下载完毕后客户端生成一个copy.bat 文件,然后程序调用bat文件将新下载的所有文件替换当前目录下的所有旧文件;最后在用户的选择下执行程序(本例的执行程序为Consultation.exe)具体步骤:第一步:将需要升级的程序放在WEB服务器的目录中(本例中web服务器用windows2003的IIS架构,详细的操作不在本课所讲授的范围,请大家查询相关文档)。

本例中web服务器为:http://168.10.10.130,所有文件都直接放在web站点的根目录下。

第二步:配置服务器端Upgrade.txt文件(有兴趣的朋友可编写程序自动生成Upgrade.txt,本例用手工配置)web服务器端升级程序配置文件内容示例:文件名:Upgrade.txt(用txt方便下载,ini有时会有安全限制)文件内容:-------------------------------------[FileInfo]Count=5Version=1005[FileList]File1=BossDataManage.exeFile2=Consultation.exeFile3=MyExcel.dllFile4=Upgrade.exeFile5=配置说明.txt-------------------------------------第三步:设计界面:客户端升级程序界面:在设计界面用VIEW AS TEXT查看的结果:object Form1: TForm1Left = 235Top = 164Width = 416Height = 376Caption = '升级程序'Color = clBtnFaceFont.Charset = DEFAULT_CHARSETFont.Color = clWindowTextFont.Height = -11 = 'MS Sans Serif'Font.Style = []Icon.Data = {} //此处内容被我省略了,主要是icon图标信息} OldCreateOrder = FalsePosition = poScreenCenterPixelsPerInch = 96TextHeight = 13object Label2: TLabelLeft = 8Top = 6Width = 217Height = 27AutoSize = FalseCaption = '发现新版本,请先升级程序!' Font.Charset = DEFAULT_CHARSET Font.Color = clNavyFont.Height = -13 = 'MS Sans Serif'Font.Style = []ParentFont = Falseendobject Memo1: TMemoLeft = 3Top = 38Width = 401Height = 305TabOrder = 0endobject Button2: TButtonLeft = 243Top = 5Width = 75Height = 25Caption = '立即升级'TabOrder = 1OnClick = Button2Clickendobject Button1: TButtonLeft = 322Top = 5Width = 75Height = 25Caption = '下次再说'TabOrder = 2OnClick = Button1Clickendobject IdHTTP1: TIdHTTP MaxLineAction = maException ReadTimeout = 0AllowCookies = True ProxyParams.BasicAuthentication = False ProxyParams.ProxyPort = 0Request.ContentLength = -1 Request.ContentRangeEnd = 0 Request.ContentRangeStart = 0Request.ContentType = 'text/html'Request.Accept = 'text/html, */*'Request.BasicAuthentication = FalseerAgent = 'Mozilla/3.0 (compatible; Indy Library)'HTTPOptions = [hoForceEncodeParams]Left = 352Top = 80endend第四步:编写代码实现具体功能。

仓库管理系统-源代码 -VB毕业设计

仓库管理系统-源代码 -VB毕业设计

材料入库模块源代码如下:Private Sub Co米米and1_Click()If Text1.Text <> "" And Text2.Text <> "" And DTPicker1.Value <> "" And Text4.Text <> "" And Text5.Text <> "" And DataCo米bo1.Text <> "" And Text7.Text <> "" ThenAdodc1.RefreshAdodc2.RecordSource = "select * fro米库存材料清单where 材料号='" & Text1.Text & "'" Adodc2.RefreshIf Adodc2.Recordset.BOF Then米sg$ = "确定要添加该记录吗?"ans = 米sgBox(米sg$, vbOKCancel + vbDefaultButton2, "添加记录")If ans = vbOK ThenAdodc1.Recordset.AddNewAdodc1.Recordset.Fields(0) = Text1.TextAdodc1.Recordset.Fields(1) = Text2.TextAdodc1.Recordset.Fields(2) = CStr(DTPicker1.V alue)Adodc1.Recordset.Fields(3) = Text4.TextAdodc1.Recordset.Fields(4) = Text5.TextAdodc1.Recordset.Fields(5) = DataCo米bo1.TextAdodc1.Recordset.Fields(6) = Text7.TextAdodc1.Recordset.Fields(7) = Text8.TextAdodc1.Recordset.Update米sgBox ("保存成功!!*_*")End IfElse 米sgBox "材料号不能重复,该材料号已存在!!", 48, "警告"End IfElse 米sgBox "资料输入不全,请重新输入!!", 64, "提示"End IfText1.SetFocusText1.Text = ""Text2.Text = ""Text4.Text = ""Text5.Text = ""DataCo米bo1.Text = ""Text7.Text = ""Text8.Text = ""End SubPrivate Sub Co米米and2_Click()Text1.Text = ""Text2.Text = ""Text4.Text = ""Text5.Text = ""DataCo米bo1.Text = ""Text7.Text = ""Text8.Text = ""End SubPrivate Sub Co米米and3_Click()Unload 米eEnd SubPrivate Sub For米_Load()Di米ado As String, 米path As String米path = App.pathIf Right(米path, 1) <> "\" Then 米path = 米path + "\"ado = "Provider=米icrosoft.Jet.OLEDB.4.0;Persist Security Info=False;" ado = ado + "Data Source=" + 米path + "database.米db"Adodc1.ConnectionString = adoAdodc1.RecordSource = "库存材料清单"Adodc1.RefreshAdodc2.ConnectionString = adoAdodc3.ConnectionString = adoAdodc3.RecordSource = "gysxx"Adodc3.RefreshEnd SubPrivate Sub Text2_GotFocus()If Not Adodc1.Recordset.BOF ThenAdodc1.Recordset.米oveFirstWhile Not Adodc1.Recordset.EOFIf Adodc1.Recordset.Fields(0) = Text1.Text Then米sgBox "该材料号已经存在,请重新输入!!", 48, "提示"Text1.Text = ""End IfAdodc1.Recordset.米oveNextWendEnd IfEnd SubPrivate Sub Text7_GotFocus()If Not Adodc3.Recordset.BOF ThenAdodc3.Recordset.米oveFirstWhile Not Adodc3.Recordset.EOFIf Adodc3.Recordset.Fields(0) = DataCo米bo1.Text ThenText7.Text = Adodc3.Recordset.Fields(1)End IfAdodc3.Recordset.米oveNextWendEnd IfEnd Sub库存管理模块源代码如下:Di米sql As StringPrivate Sub Co米米and1_Click()If DataCo米bo1.Text = "" And DataCo米bo2.Text = "" And DataCo米bo3.Text = "" Then米sgBox "请在组合框中输入你要查询的内容!!", 64, "提示"ElseIf DataCo米bo1.Text = "" And DataCo米bo2.Text = "" And DataCo米bo3.Text <> "" Then sql = "select * fro米库存材料清单where 供应商号= '" & DataCo米bo3.Text & "'"Adodc1.RecordSource = sqlAdodc1.RefreshElseIf DataCo米bo1.Text = "" And DataCo米bo2.Text <> "" And DataCo米bo3.Text = "" Then sql = "select * fro米库存材料清单where 进货日期='" & DataCo米bo2.Text & "'"Adodc1.RecordSource = sqlAdodc1.RefreshElseIf DataCo米bo1.Text = "" And DataCo米bo2.Text <> "" And DataCo米bo3.Text <> "" Then sql = "select * fro米库存材料清单where 进货日期='" & DataCo米bo2.Text & "' and 供应商号='" & DataCo米bo3.Text & "'"Adodc1.RecordSource = sqlAdodc1.RefreshElseIf DataCo米bo1.Text <> "" And DataCo米bo2.Text = "" And DataCo米bo3.Text = "" Then sql = "select * fro米库存材料清单where 材料号='" & DataCo米bo1.Text & "'"Adodc1.RecordSource = sqlAdodc1.RefreshElseIf DataCo米bo1.Text <> "" And DataCo米bo2.Text = "" And DataCo米bo3.Text <> "" Then sql = "select * fro米库存材料清单where 材料号='" & DataCo米bo1.Text & "' and 供应商号='" & DataCo米bo3.Text & "'"Adodc1.RecordSource = sqlAdodc1.RefreshElseIf DataCo米bo1.Text <> "" And DataCo米bo2.Text <> "" And DataCo米bo3.Text = "" Then sql = "select * fro米库存材料清单where 材料号='" & DataCo米bo1.Text & "' and 进货日期='" & DataCo米bo2.Text & "'"Adodc1.RecordSource = sqlAdodc1.RefreshElseIf DataCo米bo1.Text <> "" And DataCo米bo2.Text <> "" And DataCo米bo3.Text <> "" Thensql = "select * fro米库存材料清单where 材料号='" & DataCo米bo1.Text & "' and 进货日期='" & DataCo米bo2.Text & "' and 供应商号='" & DataCo米bo3.Text & "'"Adodc1.RecordSource = sqlAdodc1.RefreshEnd IfIf Adodc1.Recordset.BOF Then米sgBox "对不起,该库存不存在!!", 64, "提示"End IfEnd SubPrivate Sub Co米米and2_Click()Unload 米eEnd SubPrivate Sub Co米米and3_Click()If DataGrid1.AllowUpdate = False ThenDataGrid1.AllowUpdate = TrueDataGrid1.AllowDelete = TrueCo米米and3.Caption = "锁定"米sgBox "您巳进入修改状态!"ElseDataGrid1.AllowUpdate = FalseDataGrid1.AllowDelete = TrueCo米米and3.Caption = "修改"米sgBox "您进入锁定状态!"End IfEnd SubPrivate Sub Co米米and4_Click()米sg$ = "确定要删除该库存材料记录吗?"ans = 米sgBox(米sg$, vbOKCancel + vbDefaultButton2, "删除记录")If ans = vbOK ThenAdodc1.Recordset.DeleteAdodc1.Recordset.米oveNextEnd IfEnd SubPrivate Sub For米_Load()Di米ado As String, 米path As String米path = App.pathIf Right(米path, 1) <> "\" Then 米path = 米path + "\"ado = "Provider=米icrosoft.Jet.OLEDB.4.0;Persist Security Info=False;"ado = ado + "Data Source=" + 米path + "database.米db"Adodc1.ConnectionString = adoAdodc1.RecordSource = "库存材料清单"Adodc1.RefreshAdodc2.ConnectionString = adoAdodc2.RecordSource = "库存材料清单"Adodc2.RefreshIf er_type <> 1 ThenCo米米and3.Enabled = FalseCo米米and4.Enabled = FalseEnd IfEnd Sub美容项目定义模块源代码如下:Private Sub Co米米and1_Click()If Text1.Text <> "" And Text2.Text <> "" And Text3.Text <> "" ThenAdodc2.RecordSource = "select * fro米美容项目定义表where 美容项目编号='" & Text1.Text & "'"Adodc2.RefreshIf Adodc2.Recordset.BOF ThenAdodc1.Recordset.AddNewAdodc1.Recordset.Fields(0) = Text1.TextAdodc1.Recordset.Fields(1) = Text2.TextAdodc1.Recordset.Fields(2) = Text3.TextAdodc1.Recordset.UpdateElse米sgBox "该美容项目编号已存在!!", 48, "警告"End IfElse米sgBox "资料输入不全,请重新输入!!", 64, "提示"End IfText1.Text = ""Text2.Text = ""Text3.Text = ""Text1.SetFocusEnd SubPrivate Sub Co米米and2_Click()Text1.Text = ""Text2.Text = ""Text3.Text = ""End SubPrivate Sub Co米米and3_Click()Unload 米eEnd SubPrivate Sub Co米米and4_Click()米sg$ = "确定要删除该美容项目吗?"ans = 米sgBox(米sg$, vbOKCancel + vbDefaultButton2, "删除记录") If ans = vbOK ThenAdodc1.Recordset.DeleteAdodc1.Recordset.米oveNextEnd IfEnd SubPrivate Sub Co米米and5_Click()If DataGrid1.AllowUpdate = False ThenDataGrid1.AllowUpdate = TrueDataGrid1.AllowDelete = TrueCo米米and5.Caption = "锁定"米sgBox "您巳进入修改状态!"ElseDataGrid1.AllowUpdate = FalseDataGrid1.AllowDelete = TrueCo米米and5.Caption = "修改"米sgBox "您进入锁定状态!"End IfEnd SubPrivate Sub Text2_GotFocus()If Not Adodc1.Recordset.BOF ThenAdodc1.Recordset.米oveFirstWhile Not Adodc1.Recordset.EOFIf Adodc1.Recordset.Fields(0) = Text1.Text Then米sgBox "该美容项目编号已经存在,请重新输入!!", 48, "提示"Text1.Text = ""End IfAdodc1.Recordset.米oveNextWendEnd IfEnd SubPrivate Sub For米_Load()Di米ado As String, 米path As String米path = App.pathIf Right(米path, 1) <> "\" Then 米path = 米path + "\"ado = "Provider=米icrosoft.Jet.OLEDB.4.0;Persist Security Info=False;"ado = ado + "Data Source=" + 米path + "database.米db"Adodc1.ConnectionString = adoAdodc1.RecordSource = "美容项目定义表"Adodc1.RefreshAdodc2.ConnectionString = adoEnd Sub美容项目查询模块源代码如下:Private Sub Co米米and1_Click()If DataCo米bo1.Text = "" Then米sgBox ("输入不能为空!!")ElseAdodc2.RecordSource = "select * fro米美容项目定义表where 美容项目名称='" & DataCo 米bo1.Text & "'"Adodc2.RefreshDataGrid1.Colu米ns(0).Width = 1200DataGrid1.Colu米ns(1).Width = 1200DataGrid1.Colu米ns(2).Width = 1200End IfEnd SubPrivate Sub Co米米and2_Click()Unload 米eEnd SubPrivate Sub For米_Load()Di米ado As String, 米path As String米path = App.pathIf Right(米path, 1) <> "\" Then 米path = 米path + "\"ado = "Provider=米icrosoft.Jet.OLEDB.4.0;Persist Security Info=False;"ado = ado + "Data Source=" + 米path + "database.米db"Adodc1.ConnectionString = adoAdodc1.RecordSource = "美容项目定义表"Adodc1.RefreshAdodc2.ConnectionString = adoEnd Sub来车登记模块源代码如下:Di米sql As StringPrivate Sub Co米米and1_Click()If DTPicker1.Value <> "" And Text2.Text <> "" And Text3.Text <> "" And Text4.Text <> "" And DataCo米bo1.Text <> "" Then米sg$ = "确定要添加该登记吗?"ans = 米sgBox(米sg$, vbOKCancel + vbDefaultButton2, "添加登记")If ans = vbOK ThenAdodc1.RefreshAdodc1.Recordset.AddNewAdodc1.Recordset.Fields(0) = CStr(DTPicker1.V alue)Adodc1.Recordset.Fields(1) = Text2.TextAdodc1.Recordset.Fields(2) = Text3.TextAdodc1.Recordset.Fields(3) = Text4.TextAdodc1.Recordset.Fields(4) = DataCo米bo1.TextAdodc1.Recordset.Fields(5) = Text5.TextAdodc1.Recordset.Update米sgBox ("成功登记!!~-~")ElseExit SubEnd IfDi米sql As Stringsql = "select * fro米车辆基本信息表where 车牌号码='" & Text2.Text & "'"Adodc3.RecordSource = sqlAdodc3.RefreshIf Adodc3.Recordset.BOF ThenAdodc2.RefreshAdodc2.Recordset.AddNewAdodc2.Recordset.Fields(0) = Text2.TextAdodc2.Recordset.Fields(1) = Text3.TextAdodc2.Recordset.Fields(2) = Text4.TextAdodc2.Recordset.Fields(3) = Text5.TextAdodc2.Recordset.UpdateEnd IfElse米sgBox "资料输入不全,请重新输入!!", 64, "提示"End IfDTPicker1.SetFocusText2.Text = ""Text3.Text = ""Text4.Text = ""DataCo米bo1.Text = ""Text5.Text = ""End SubPrivate Sub Co米米and2_Click()Text2.Text = ""Text3.Text = ""Text4.Text = ""Text5.Text = ""DataCo米bo1.Text = ""End SubPrivate Sub Co米米and3_Click()Unload 米eEnd SubPrivate Sub For米_Load()Di米ado As String, 米path As String米path = App.pathIf Right(米path, 1) <> "\" Then 米path = 米path + "\"ado = "Provider=米icrosoft.Jet.OLEDB.4.0;Persist Security Info=False;" ado = ado + "Data Source=" + 米path + "database.米db"Adodc1.ConnectionString = adoAdodc1.RecordSource = "来车登记表"Adodc1.RefreshAdodc2.ConnectionString = adoAdodc2.RecordSource = "车辆基本信息表"Adodc2.RefreshAdodc3.ConnectionString = adoAdodc4.ConnectionString = adoAdodc4.RecordSource = "b米xx"Adodc4.RefreshEnd Sub车辆基本信息管理模块源代码如下:Private Sub Co米米and1_Click()查询车辆基本信息.ShowEnd SubPrivate Sub Co米米and2_Click()Unload 米eEnd SubPrivate Sub Co米米and3_Click()米sg$ = "确定要删除该项信息吗?"ans = 米sgBox(米sg$, vbOKCancel + vbDefaultButton2, "删除记录")If ans = vbOK ThenAdodc1.Recordset.DeleteAdodc1.Recordset.米oveNextEnd IfEnd SubPrivate Sub Co米米and4_Click()If DataGrid1.AllowUpdate = False ThenDataGrid1.AllowUpdate = TrueDataGrid1.AllowDelete = TrueCo米米and4.Caption = "锁定"米sgBox "您巳进入修改状态!"ElseDataGrid1.AllowUpdate = FalseDataGrid1.AllowDelete = TrueCo米米and4.Caption = "修改"米sgBox "您进入锁定状态!"End IfEnd SubPrivate Sub For米_Load()Di米ado As String, 米path As String米path = App.pathIf Right(米path, 1) <> "\" Then 米path = 米path + "\"ado = "Provider=米icrosoft.Jet.OLEDB.4.0;Persist Security Info=False;"ado = ado + "Data Source=" + 米path + "database.米db"Adodc1.ConnectionString = adoAdodc1.RecordSource = "车辆基本信息表"Adodc1.RefreshIf er_type <> 1 ThenCo米米and3.Enabled = FalseCo米米and4.Enabled = FalseEnd IfEnd Sub车辆美容信息管理模块源代码如下:Private Sub Co米米and1_Click()Di米su米1, x, z As CurrencyDi米y, n1, l, l1 As Longsu米1 = 0n1 = 0l1 = 0If CStr(DTPicker1.Value) <> "" And Text2.Text <> "" And Text3.Text <> "" And DataCo米bo1.Text <> "" And DataCo米bo5.Text <> "" And DataCo米bo6.Text <> "" Then'修改库存材料清单Di米q, q1 As Longq1 = 0If Not Adodc5.Recordset.BOF ThenAdodc5.RefreshAdodc5.Recordset.米oveFirstWhile Not Adodc5.Recordset.EOFIf Adodc5.Recordset.Fields(0) = DataCo米bo5.Text And Adodc5.Recordset.Fields(1) = DataCo米bo6.Text Thenq1 = 1If Adodc5.Recordset.Fields(4) < CLng(Text3.Text) Then米sgBox "这种材料的库存数量不够!!", 48, "警告"DataCo米bo5.Text = ""DataCo米bo6.Text = ""Text2.Text = ""Text3.Text = ""Exit SubElseq = Adodc5.Recordset.Fields(4)Adodc5.Recordset.Fields(4) = q - CLng(Text3.Text)Adodc5.Recordset.UpdateEnd IfEnd IfAdodc5.Recordset.米oveNextWendIf q1 = 0 Then米sgBox "库存中没有这种材料!!", 48, "警告"End If'修改库存材料清单完毕End IfIf q1 = 1 ThenAdodc6.RefreshIf Not Adodc6.Recordset.BOF ThenAdodc6.Recordset.米oveFirstWhile Not Adodc6.Recordset.EOF '查找一下车辆用料信息表中是否存在这种材料If Adodc6.Recordset.Fields(0) = CStr(DTPicker1.Value) And Adodc6.Recordset.Fields(1) = DataCo米bo1.Text And Adodc6.Recordset.Fields(2) = DataCo米bo5.Text And Adodc6.Recordset.Fields(3) = DataCo米bo6.Text And Adodc6.Recordset.Fields(4) = Text2.Text Thenl = Adodc6.Recordset.Fields(5)l1 = 1Adodc6.Recordset.Fields(5) = l + CLng(Text3.Text) '如果存在,只修改数量Adodc6.Recordset.UpdateEnd IfAdodc6.Recordset.米oveNextWendEnd IfIf l1 = 0 Then '如果不存在,则在车辆用料信息表中添加新记录Adodc6.Recordset.AddNewAdodc6.Recordset.Fields(0) = CStr(DTPicker1.V alue)Adodc6.Recordset.Fields(1) = DataCo米bo1.TextAdodc6.Recordset.Fields(2) = DataCo米bo5.TextAdodc6.Recordset.Fields(3) = DataCo米bo6.TextAdodc6.Recordset.Fields(4) = Text2.TextAdodc6.Recordset.Fields(5) = Text3.TextAdodc6.Recordset.UpdateAdodc6.RefreshEnd IfIf Not Adodc9.Recordset.BOF ThenAdodc9.Refresh '在车辆消费信息表中添加该车辆的材料费Adodc9.Recordset.米oveFirstWhile Not Adodc9.Recordset.EOFIf Adodc9.Recordset.Fields(0) = CStr(DTPicker1.Value) And Adodc9.Recordset.Fields(1) = DataCo米bo1.Text Thenn1 = 1 '如果车辆消费信息表中存在当天该车的记录时Adodc6.Refresh '在车辆用料信息表中,计算该车的材料费Adodc6.Recordset.米oveFirstWhile Not Adodc6.Recordset.EOFIf Adodc6.Recordset.Fields(0) = CStr(DTPicker1.Value) And Adodc6.Recordset.Fields(1) = DataCo米bo1.Text Thenx = Adodc6.Recordset.Fields(4)y = Adodc6.Recordset.Fields(5)z = x * ysu米1 = su米1 + zEnd IfAdodc6.Recordset.米oveNextWendAdodc9.Recordset.Fields(0) = CStr(DTPicker1.V alue)Adodc9.Recordset.Fields(1) = DataCo米bo1.TextAdodc9.Recordset.Fields(3) = su米1Adodc9.Recordset.Fields(4) = su米1 + Adodc9.Recordset.Fields(2)Adodc9.Recordset.UpdateEnd IfAdodc9.Recordset.米oveNextWendEnd IfIf n1 = 0 Then '车辆消费信息表中无该车辆记录时Adodc9.Recordset.AddNew '向车辆消费信息表中添加材料费记录Adodc6.Refresh '车辆用料信息表Adodc6.Recordset.米oveFirstWhile Not Adodc6.Recordset.EOFIf Adodc6.Recordset.Fields(0) = CStr(DTPicker1.Value) And Adodc6.Recordset.Fields(1) = DataCo米bo1.Text Thenx = Adodc6.Recordset.Fields(4)y = Adodc6.Recordset.Fields(5)z = x * ysu米1 = su米1 + zEnd IfAdodc6.Recordset.米oveNextWendAdodc9.Recordset.Fields(0) = CStr(DTPicker1.V alue)Adodc9.Recordset.Fields(1) = DataCo米bo1.TextAdodc9.Recordset.Fields(3) = su米1Adodc9.Recordset.Fields(4) = su米1Adodc9.Recordset.Update '保存记录End IfEnd IfElse米sgBox "资料输入不全,请重新输入!!", 64, "提示"End IfDataCo米bo5.Text = ""DataCo米bo6.Text = ""Text2.Text = ""Text3.Text = ""DataCo米bo5.SetFocusEnd SubPrivate Sub Co米米and2_Click()DataCo米bo1.Text = ""DataCo米bo2.Text = ""DataCo米bo3.Text = ""DataCo米bo4.Text = ""Unload 米eEnd SubPrivate Sub Co米米and3_Click()修改美容项目.ShowEnd SubPrivate Sub Co米米and4_Click()Di米su米, x, z As CurrencyDi米y, n As Longsu米= 0 n = 0If DTPicker1.Value <> "" And DataCo米bo1.Text <> "" And DataCo米bo2.Text <> "" And DataCo米bo3.Text <> "" And DataCo米bo4.Text <> "" ThenAdodc4.Refresh '车辆美容信息登记表Adodc4.Recordset.AddNewAdodc4.Recordset.Fields(0) = CStr(DTPicker1.V alue)Adodc4.Recordset.Fields(1) = DataCo米bo1.TextAdodc4.Recordset.Fields(2) = DataCo米bo4.TextAdodc4.Recordset.Fields(3) = DataCo米bo2.TextAdodc4.Recordset.Fields(4) = DataCo米bo3.TextAdodc4.Recordset.UpdateAdodc9.RefreshIf Not Adodc9.Recordset.BOF Then '判断一下表是否为空表Adodc9.RefreshAdodc9.Recordset.米oveFirstWhile Not Adodc9.Recordset.EOFIf Adodc9.Recordset.Fields(0) = CStr(DTPicker1.Value) And Adodc9.Recordset.Fields(1) = DataCo米bo1.Text Thenn = 1Adodc4.RefreshAdodc4.Recordset.米oveFirstWhile Not Adodc4.Recordset.EOFIf Adodc4.Recordset.Fields(0) = CStr(DTPicker1.Value) And Adodc4.Recordset.Fields(1) = DataCo米bo1.Text Thensu米= su米+ Adodc4.Recordset.Fields(4)End IfAdodc4.Recordset.米oveNextWendAdodc9.Recordset.Fields(0) = CStr(DTPicker1.V alue)Adodc9.Recordset.Fields(1) = DataCo米bo1.TextAdodc9.Recordset.Fields(2) = su米Adodc9.Recordset.Fields(4) = su米+ Adodc9.Recordset.Fields(3)Adodc9.Recordset.Update '保存End IfAdodc9.Recordset.米oveNextWendEnd IfIf n = 0 ThenAdodc9.Recordset.AddNew '向车辆消费信息表中添加美容项目消费Adodc4.RefreshAdodc4.Recordset.米oveFirstWhile Not Adodc4.Recordset.EOFIf Adodc4.Recordset.Fields(0) = CStr(DTPicker1.Value) And Adodc4.Recordset.Fields(1) = DataCo米bo1.Text Thensu米= su米+ Adodc4.Recordset.Fields(4)End IfAdodc4.Recordset.米oveNextWendAdodc9.Recordset.Fields(0) = CStr(DTPicker1.V alue)Adodc9.Recordset.Fields(1) = DataCo米bo1.TextAdodc9.Recordset.Fields(2) = su米Adodc9.Recordset.Fields(4) = su米Adodc9.Recordset.Update '保存End IfElse 米sgBox "资料输入不全,请重新输入!!", 64, "提示"End IfDataCo米bo2.Text = ""DataCo米bo3.Text = ""DataGrid1.Colu米ns(0).Width = 1500DataGrid1.Colu米ns(1).Width = 1500DataCo米bo2.SetFocusEnd SubPrivate Sub Co米米and5_Click()修改用料.ShowEnd SubPrivate Sub Co米米and6_Click()If DataGrid1.AllowUpdate = False ThenDataGrid1.AllowUpdate = TrueDataGrid1.AllowDelete = TrueCo米米and6.Caption = "锁定"米sgBox "您巳进入修改状态!"ElseDataGrid1.AllowUpdate = FalseDataGrid1.AllowDelete = TrueCo米米and6.Caption = "修改"米sgBox "您进入锁定状态!"End IfEnd SubPrivate Sub DataCo米bo2_GotFocus()Adodc7.RecordSource = "select 美容项目,价格fro米车辆美容信息登记表where 日期='" & CStr(DTPicker1.Value) & "' and 车牌号码='" & DataCo米bo1.Text & "'"Adodc7.RefreshEnd SubPrivate Sub DataCo米bo5_GotFocus()Adodc8.RecordSource = "select 材料号,材料名称,单价,数量fro米车辆用料信息表where 日期='" & CStr(DTPicker1.Value) & "' and 车牌号码='" & DataCo米bo1.Text & "'"Adodc8.RefreshDataGrid2.Colu米ns(0).Width = 1000DataGrid2.Colu米ns(1).Width = 1000DataGrid2.Colu米ns(2).Width = 1000DataGrid2.Colu米ns(3).Width = 1000End SubPrivate Sub DataCo米bo3_GotFocus()'查询美容项目定义表,美容价格随着美容项目的选择而变If Not Adodc2.Recordset.BOF ThenAdodc2.Recordset.米oveFirstWhile Not Adodc2.Recordset.EOFIf Adodc2.Recordset.Fields(1) = DataCo米bo2.Text ThenDataCo米bo3.Text = Adodc2.Recordset.Fields(2)End IfAdodc2.Recordset.米oveNextWendEnd IfEnd SubPrivate Sub DataCo米bo6_GotFocus()If Not Adodc5.Recordset.BOF Then '根据填入的材料号,材料名称会自动出现Adodc5.Recordset.米oveFirstWhile Not Adodc5.Recordset.EOFIf Adodc5.Recordset.Fields(0) = DataCo米bo5.Text ThenDataCo米bo6.Text = Adodc5.Recordset.Fields(1)End IfAdodc5.Recordset.米oveNextWendEnd IfEnd SubPrivate Sub For米_Load()Di米ado As String, 米path As String米path = App.pathIf Right(米path, 1) <> "\" Then 米path = 米path + "\"ado = "Provider=米icrosoft.Jet.OLEDB.4.0;Persist Security Info=False;"ado = ado + "Data Source=" + 米path + "database.米db"Adodc1.ConnectionString = adoAdodc1.RecordSource = "车辆基本信息表"Adodc1.RefreshAdodc2.ConnectionString = adoAdodc2.RecordSource = "美容项目定义表"Adodc2.RefreshAdodc3.ConnectionString = adoAdodc3.RecordSource = "b米xx"Adodc3.RefreshAdodc4.ConnectionString = adoAdodc4.RecordSource = "车辆美容信息登记表"Adodc4.RefreshAdodc5.ConnectionString = adoAdodc5.RecordSource = "库存材料清单"Adodc5.RefreshAdodc6.ConnectionString = adoAdodc6.RecordSource = "车辆用料信息表"Adodc6.RefreshAdodc9.ConnectionString = adoAdodc9.RecordSource = "车辆消费信息表"Adodc9.RefreshIf er_type <> 1 ThenCo米米and3.Enabled = FalseCo米米and5.Enabled = FalseEnd IfEnd Sub修改美容项目模块源代码如下:Private Sub Co米米and1_Click()Di米l, x, y As Longl = 0Adodc2.Refresh '在美容项目登记表中删除项目Adodc2.Recordset.米oveFirstWhile Not Adodc2.Recordset.EOFIf Adodc2.Recordset.Fields(0) = Text1.Text And Adodc2.Recordset.Fields(1) = DataCo米bo1.Text And Adodc2.Recordset.Fields(2) = DataCo米bo2.Text And Adodc2.Recordset.Fields(3) = DataCo米bo3.Text And Adodc2.Recordset.Fields(4) = DataCo米bo4.Text Thenl = 1y = Adodc2.Recordset.Fields(4)米sg$ = "确定要删除该美容项目吗?"ans = 米sgBox(米sg$, vbOKCancel + vbDefaultButton2, "删除记录")If ans = vbOK ThenAdodc2.Recordset.DeleteAdodc2.Recordset.米oveNextAdodc2.Recordset.UpdateAdodc2.RefreshEnd IfDataGrid1.Colu米ns(0).Width = 1200DataGrid1.Colu米ns(1).Width = 1200DataGrid1.Colu米ns(2).Width = 1200DataGrid1.Colu米ns(3).Width = 1200DataGrid1.Colu米ns(4).Width = 1200End IfAdodc2.Recordset.米oveNextWendIf l = 0 Then '要删除的项目不存在时米sgBox ("数据库中没有您要删除的项目!!")End IfAdodc6.Refresh '修改车辆消费信息表中的人工费合计和总金额Adodc6.Recordset.米oveFirstWhile Not Adodc6.Recordset.EOFIf Adodc6.Recordset.Fields(0) = Text1.Text And Adodc6.Recordset.Fields(1) = DataCo米bo1.Text Thenx = Adodc6.Recordset.Fields(2)Adodc6.Recordset.Fields(2) = x - yAdodc6.Recordset.Fields(4) = Adodc6.Recordset.Fields(2) + Adodc6.Recordset.Fields(3)Adodc6.Recordset.UpdateEnd IfAdodc6.Recordset.米oveNextWendDataCo米bo2.Text = ""DataCo米bo3.Text = ""DataCo米bo4.Text = ""DataCo米bo2.SetFocusEnd SubPrivate Sub Co米米and2_Click()Unload 米eEnd SubPrivate Sub Co米米and3_Click()If DataGrid1.AllowUpdate = False ThenDataGrid1.AllowUpdate = TrueDataGrid1.AllowDelete = TrueCo米米and3.Caption = "锁定"米sgBox "您巳进入修改状态!"ElseDataGrid1.AllowUpdate = FalseDataGrid1.AllowDelete = TrueCo米米and3.Caption = "修改"米sgBox "您进入锁定状态!"End IfEnd SubPrivate Sub DataCo米bo2_GotFocus()Adodc1.RecordSource = "select * fro米车辆美容信息登记表where 日期='" & Text1.Text & "' and 车牌号码='" & DataCo米bo1.Text & "'"Adodc1.RefreshEnd SubPrivate Sub For米_Load()Di米ado As String, 米path As String米path = App.pathIf Right(米path, 1) <> "\" Then 米path = 米path + "\"ado = "Provider=米icrosoft.Jet.OLEDB.4.0;Persist Security Info=False;"ado = ado + "Data Source=" + 米path + "database.米db"Adodc1.ConnectionString = adoAdodc2.ConnectionString = adoAdodc2.RecordSource = "车辆美容信息登记表"Adodc2.RefreshAdodc3.ConnectionString = adoAdodc3.RecordSource = "车辆基本信息表"Adodc3.RefreshAdodc5.ConnectionString = adoAdodc5.RecordSource = "美容项目定义表"Adodc5.RefreshAdodc6.ConnectionString = adoAdodc6.RecordSource = "车辆消费信息表"Adodc6.Refresh'Text1.SetFocusEnd Sub修改用料模块源代码如下:Private Sub Co米米and1_Click()Di米l, x, y, z, 米, l1 As Longl = 0l1 = 0Adodc3.Refresh '在车辆用料信息表中删除信息If Not Adodc3.Recordset.BOF ThenAdodc3.Recordset.米oveFirstWhile Not Adodc3.Recordset.EOFIf Adodc3.Recordset.Fields(0) = Text1.Text And Adodc3.Recordset.Fields(1) = DataCo米bo1.Text And Adodc3.Recordset.Fields(2) = DataCo米bo2.Text And Adodc3.Recordset.Fields(3) = DataCo米bo3.Text And Adodc3.Recordset.Fields(4) = Text2.Text Thenl = 1z = Adodc3.Recordset.Fields(5)米= z - CLng(Text3.Text)If 米> 0 Then米sg$ = "确定要修改该用料信息吗?"ans = 米sgBox(米sg$, vbOKCancel + vbDefaultButton2, "修改记录")If ans = vbOK Thenl1 = 1Adodc3.Recordset.Fields(5) = 米Adodc3.Recordset.UpdateAdodc3.Refreshy = Adodc3.Recordset.Fields(4) * CLng(Text3.Text)End IfElseIf 米= 0 Then米sg$ = "确定要删除该用料信息吗?"ans = 米sgBox(米sg$, vbOKCancel + vbDefaultButton2, "删除记录")If ans = vbOK Thenl1 = 1y = Adodc3.Recordset.Fields(4) * CLng(Text3.Text)Adodc3.Recordset.DeleteAdodc3.Recordset.米oveNextAdodc3.RefreshEnd IfElseIf 米< 0 Then米sgBox ("您要删除的数量大于该车实际用量!!")End IfDataGrid1.Colu米ns(0).Width = 1200DataGrid1.Colu米ns(1).Width = 1200DataGrid1.Colu米ns(2).Width = 1200DataGrid1.Colu米ns(3).Width = 1200DataGrid1.Colu米ns(4).Width = 1200DataGrid1.Colu米ns(5).Width = 1200If l1 = 1 ThenAdodc4.Refresh '修改车辆消费信息表中的材料费合计和总金额If Not Adodc4.Recordset.BOF ThenAdodc4.Recordset.米oveFirstWhile Not Adodc4.Recordset.EOFIf Adodc4.Recordset.Fields(0) = Text1.Text And Adodc4.Recordset.Fields(1) = DataCo米bo1.Text Thenx = Adodc4.Recordset.Fields(3)Adodc4.Recordset.Fields(3) = x - yAdodc4.Recordset.Fields(4) = Adodc4.Recordset.Fields(2) + Adodc4.Recordset.Fields(3)Adodc4.Recordset.UpdateEnd IfAdodc4.Recordset.米oveNextWendEnd IfAdodc2.Refresh '修改库存材料清单If Not Adodc2.Recordset.BOF ThenAdodc2.Recordset.米oveFirstWhile Not Adodc2.Recordset.EOFIf Adodc2.Recordset.Fields(0) = DataCo米bo2.Text And Adodc2.Recordset.Fields(1) = DataCo米bo3.Text ThenAdodc2.Recordset.Fields(4) = Adodc2.Recordset.Fields(4) + CLng(Text3.Text)Adodc2.Recordset.UpdateEnd IfAdodc2.Recordset.米oveNextWendEnd If '修改库存材料清单完毕End IfDataCo米bo2.Text = ""DataCo米bo3.Text = ""Text2.Text = ""。

仓库管理系统源代码

仓库管理系统源代码
/*******************************************************************************************************************/
/********************************************仓库管理系统***********************************************************/
{
printf("\tCan not open the temp file!");
getch();
exit(1);
}
printf("please input the num you want to amend:");
getchar();
scanf("%d",&x);
y=(x-1)*sizeof(infom);
rewind(fp); /*把指针移回文件开始*/
if(fseek(fp,y,0)!=0)/*把指针指向Y*/
{
printf("can not move there!\n");
exit(1);
remove("c:\\123.dat"); /*删除文件123*/
rename("c:\\456.dat","c:\\123.dat"); /*对文件456重命名*/
}
else
printf("Can not find this record!\n");
getch();

基于Delphi的ERP管理软件开发与系统集成

基于Delphi的ERP管理软件开发与系统集成

基于Delphi的ERP管理软件开发与系统集成企业资源计划(Enterprise Resource Planning,简称ERP)是一种综合性的管理软件系统,旨在帮助企业实现资源的有效管理和优化。

随着信息技术的不断发展,ERP系统在企业管理中扮演着越来越重要的角色。

本文将探讨基于Delphi的ERP管理软件开发与系统集成,介绍Delphi在ERP开发中的应用以及系统集成的关键技术和挑战。

Delphi在ERP开发中的优势Delphi是一种快速应用程序开发工具,具有强大的可视化开发环境和丰富的组件库,适合快速构建复杂的商业应用程序。

在ERP系统开发中,Delphi具有以下优势:跨平台性:Delphi支持跨Windows、macOS、iOS等多个平台开发,能够满足不同用户设备的需求。

强大的数据库支持:Delphi集成了多种数据库连接组件,如ADO、dbExpress等,方便与各种数据库进行交互。

丰富的第三方组件:Delphi拥有大量优秀的第三方组件库,可以加速开发进程并提升系统功能。

易学易用:Delphi采用可视化编程方式,对于初学者和有经验的开发人员都较为友好。

ERP管理软件开发流程需求分析阶段在ERP管理软件开发过程中,需求分析是至关重要的一步。

开发团队需要与客户充分沟通,了解客户业务流程和需求,明确系统功能和性能要求。

概要设计阶段概要设计阶段主要包括系统架构设计、数据库设计、模块划分等工作。

开发团队需要根据需求分析结果制定详细的设计方案,并确定系统整体框架。

详细设计阶段在详细设计阶段,开发团队需要对每个模块进行详细设计,包括界面设计、业务逻辑设计、数据结构设计等。

同时需要考虑系统的可扩展性和可维护性。

编码与测试阶段编码阶段是将设计文档转化为实际代码的过程,开发团队需要按照设计规范进行编码,并进行单元测试和集成测试,确保系统功能正常运行。

部署与维护阶段部署阶段是将开发完成的系统部署到客户现场并进行调试和培训。

delphi11.3中linuxpaserver源代码

delphi11.3中linuxpaserver源代码

delphi11.3中linuxpaserver源代码Delphi 11.3 LinuxPaserver源代码是一款在Linux平台上运行的软件开发工具。

它提供了一种有效的方法,开发人员可以在Linux系统上编写和调试Delphi程序,这为世界上最受欢迎的开发工具之一增添了新的功能和可移植性。

在本文中,我们将逐步回答关于Delphi 11.3 LinuxPaserver源代码的一些重要问题,以帮助读者更好地了解该工具的性能和功能。

第一步:什么是Delphi 11.3 LinuxPaserver源代码?Delphi 11.3 LinuxPaserver源代码是一种用于在Linux平台上开发和调试Delphi程序的开发工具。

它由Embarcadero Technologies开发,并在Delphi集成开发环境(IDE)中提供。

通过将Delphi代码编译为Linux 下的可执行代码,开发人员可以在Linux系统中运行和测试他们的应用程序,以确保其在不同平台上的兼容性和稳定性。

第二步:Delphi 11.3 LinuxPaserver源代码有哪些主要功能?Delphi 11.3 LinuxPaserver源代码提供了一套强大的功能,使开发人员能够在Linux系统上进行高效的编码和调试。

以下是它的主要功能:1. 支持多种Linux发行版:Delphi 11.3 LinuxPaserver源代码可以在多种流行的Linux发行版上运行,包括Ubuntu、CentOS和Red Hat Enterprise Linux等。

这使得开发人员能够根据自己的喜好和需求选择合适的操作系统进行开发。

2. 代码编辑和调试:该工具提供了一个强大的代码编辑器,具有代码自动完成、语法高亮和错误检查等功能,可以显著提高开发效率。

它还提供了强大的调试功能,允许开发人员在Linux系统上单步执行和跟踪他们的代码,以查找和解决错误。

3. GUI设计:Delphi 11.3 LinuxPaserver源代码支持图形用户界面(GUI)设计,开发人员可以轻松创建各种窗体、按钮、菜单等元素,并通过可视化工具进行布局和设计。

基于Delphi的项目数据库管理系统的实现

基于Delphi的项目数据库管理系统的实现
利润空间 。
2 . 2 d e1 D hi
科 研人 员在进 行 查找 资料 以及 统 计 信 息 时能快 速 地 完成 工作 。为 了达 到这 样 的结 果 ,一般 会采 用 D e l p h i 数 据 库 管理 系统 ,通过 该 系统 所提 供 的数据 处 理 能力来 对 海 量 的数 据进 行 处理 。在 此基础 上 ,建立起 一套集成 了项 目管理、 资料 的 自 行 处 理 以及数 据 统计 等 常 用功能在 内的信 息处理 系统 图, 在短 时间 内能 够 实现信 息 的 高质 量 与 高效 处理 。在这 样 一套 系统
己的 双手 ,让计 算机 来 完成 复 杂 的数 据 处 理工 作,进 而提 升 科研 工作 的质量 与效率 。
供一套可视化程度较高 的开发 系统,进 而降低 而用户在加入 了扩展语句之后 ,能够提 升编程
了科研项 目的难度 ,一经推 出就 受到了大量 开 程 序的宽度 ,让它实现不 同的功 能,直接 降低
发者 的 青 睐 。
了很多工作的复杂性 ,进而使原本枯燥 的编程
Hale Waihona Puke 在 传 统 的 编 程 领 域 ,基 于 VB语 言 的可 视 变 成了一个有趣 并且轻松的工作。
: 键 词 】项 目数 据库 D e l p h i 计 算机 软件
系统
化编程 技 术一 直是 行业 的主 流,而 De l D h i 的
能实现 更 多的功 能 ,企业在 使 用 D e h i 的 时
为 了给 大量 的科 研 工作提 供较 好 的数据

各个研 究机 构一般都会建立起较丰 富的
候甚至不需要更换 自己的硬件设 备。 最重要 的, De l p h i 还是一种真 正基于对象 的编程语 言,由 于可视 化程 度较高,对广大数据库 的兼容性较
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

delphi开发的仓库管理系统免费下载(附源码)
本仓库管理系统采用delphi开发,利用其提供的各种面向对象的开发工具,尤其是数据窗口这一能够方便而简洁操纵数据库的智能化对象(后端采用Sybase ASA数据库),本系统采用结构化程序设计方法,严格按照结构化方法开发过程,从计划阶段到开发阶段再到维护阶段一步一步实现本系统的功能。

本系统实现领料和库存管理的开发,同时实现对材料进行管理。

同时包含了部门档案和人事档案等,本人借鉴该系统开发出一套适合我们部门需要的简单软件,希望该软件能帮到大家!更多详细内容请参考:/Html/?495.html。

相关文档
最新文档