delphi DBGRID TITLE CAPTION 標題與寬度
// 查詢出來的數據 放入DBGRID裡,並設置 標題頭名稱。procedure TFrm_Wip_Bom.BomBtnClick(Sender: TObject);begin //獲取 BOM數據 Screen.Cursor:=crSQLWait; //鼠標變成漏鬥。 dmqc_c.CD_TMP.Close; dmqc_c.CD_TMP.CommandText:='select b.prod_no, a.model_nob, a.bom_no, a.per_num, a.ver, a.bzdw ' + ', b.ma_no, b.ma_type, b.ma_unit, b.bzyl, b.upuse ,b.jbyl, b.remark from t_bomA a , t_bomb b ' + ' where a. prod_no= b. prod_no and a. prod_no = '+ quotedStr(TYPE_NO_EDT.Text) ;//'''100SDC001I3
delphi 7 判斷是否為零函數
delphi 7 判斷是否為零函數[@more@]function is_null(col:string ):real;begin if adodm.CD_search.FieldByName(col).IsNull then begin result :=0 ; end else begin result:=adodm.CD_search.FieldValues[col]; end;end;
delphi COMBOBOX里显示DBGRID列名
COMBOBOX里显示DBGRID列名。{ DBGRID1里有三个列名(编号,名称,备注)查询语句:select * from tb where combobox1.text = edit1.textDBGRID所有列名都作为了查询条件了。}[@more@]procedure TForm1.ComboBox1DropDown(Sender: TObject);vari:integer;begincombobox1.Clear;//for i:=0 to 2 do //这里的2 最好用获取DBGRID列数。for i:=0 to adoquery1.FieldCount-1 dobegincombobox1.Items.Add(dbgrid1.Columns[i].Title.caption ) ;end;end; {COMBOBOX显示数据表的列名。TB表 有TNO,TNAME,TMEMO三个列名。注:TB表列名添加 到adoquer
三层开发基本概念介绍
三层客户/服务器一:优点:灵活性和可扩展性。应用三层开发技术(分布式)的原因(参考书目: Delphi 5.x分布式多层应用系统篇)一:解决客户机/服务器结构的维护成本问题,改善客户机/服务器结构延展性问题。客户机/服务器结构支持的用户人数有一定限度(200人以下)。则种结构限制了Internet/Intranet及电子商务的发展。三层开发应用Database Pooling, Object pooling,Resource Pooling,线程模式提供了高度延展性。二:解决应用逻辑重复使用的问题。[@more@]例如:当企业要在原有的客户机/服务器结构上添加Web浏览服务时,就需要配置Web服务器,
DELPHI DBGRID 设定COLUMNS列宽度
procedure Tfrm_inv_cmp_wip3.SearchBtnClick(Sender: TObject); var i:integer;begin Screen.Cursor:=crSQLWait; //鼠標變成漏鬥。 dmmrp_c.CD_temp.Close; dmmrp_c.CD_Temp.CommandText:=' exec p_inv_cmp_wip ' + quotedStr(trim(edit1.Text)); dmmrp_c.CD_Temp.Open; Screen.Cursor:=crDefault; for i:=0 to dbgrid1.Columns.Count-1 do begin //設定DBGRID的列寬,固定寬度為80。 dbgrid1.Columns.Items[i].Width :=80 ; end;end;[@more@]
从TXT 文件导入打卡原始资料到 MSSQL 数据库
{************************--卡钟原始记录表create table cardOrg( yearMonthDay varchar(12) , --格式:yyyymmdd CardNo varchar(10), --卡号 itime varchar(10),--打卡时间 hh:mm:ss machineNo varchar(8), i...
myeclipse8.5+tomcat7
自己前一段时间出现了这个问题,通过在网上搜索,大概知道了原因,整理下一,以供大家参考。 将项目部署好后,启动tomcat后报错,java.lang.NoClassDefFoundError: org/apache/juli/logging/LogFactory 报这个错说明你用的是tomcat7。 目前的MyEclipse的内核为Eclipse3.5.* 尚不能提供直接对tomcat 7的支持,最新的Eclipse3.6.*可以直接支持。 解决方法有两个: 一、打开myeclipse,Preferentces->MyEclipse->Servers->Tomcat->Tomcat 6.x ,载入Tomcat7,在"Paths"下,点击“Add JAR/ZIP”,加载tomcat7
delphi弹出信息框大全
delphi弹出信息框大全 1. 警告信息框 MessageBox(Handle,'警告信息框','警告信息框',MB_ICONWARNING); 2.疑问信息框 MessageBox(Handle,'疑问信息框','疑问信息框',MB_ICONQUESTION); 3.错误提示框 MessageBox(Handle,'错误信息框','错误信息框',MB_ICONERROR);[@more@]delphi弹出信息框大全
Quick Report 说明 for delphi 7
报表定义了数据库中数据最终以文档形式呈现给用户的外观,所以在设计报表之前应先清楚报表的组成部分。 一个报表的组成区域 报表页眉(Page Header)—打印在每一页的顶端,通常用于显示单位名称、打印日期、时间及页码等信息。 [@more@]报表标题—(Title)在报表的开始处打印报表的标题。 数据列标题—(Column Header)报表数据区中每一列的标题,用来标明每一列的数据是何、内容。 数据栏—(Detail)明细栏。就是显示数据的区域,用于打印报表的数据。 汇总区—(Summary)用来打印报表的统计数据。 报表页脚—(Page Footer)位于每
DELPHI 7 十六進制轉換十進制
DELPHI7 測試通過。DELPHI 7 十六進制轉換十進制(16進制轉換10進制)function HexToInt(const aHex: string ):Integer;var I,L,K: Integer;begin Result := 0 ; if aHex ='' then begin Exit; end else begin K := 0; L := Length(aHex); for I:=1 to L do begin if (not(aHex[I] in['A'..'F'])) and (not(aHex[I] in['a'..'f'])) then K := K + Trunc(StrToInt(aHex[I]) * Power(16, L-I)) else case aHex[I] of 'a', 'A'
DELPHI查詢光標變漏斗
screen.Cursor:= crSQLWait; //變成 漏斗并且下面帶有‘SQL’狀態 。SQL查詢事務SCREEN.CURSOR:=CRDEFAULT; //恢復 默認狀態 [@more@] screen.Cursor:= crHourGlass; //變成 漏斗 狀態 。 SQL查詢事務SCREEN.CURSOR:=CRDEFAULT; //恢復 默認狀態。實例:procedure TFrm_Wip_Bom.BomBtnClick(Sender: TObject);begin //獲取 BOM數據 Screen.Cursor:=crSQLWait; //鼠標變成漏鬥。 dmqc_c.CD_TMP.Close; dmqc_c.CD_TMP.CommandText:='select distinct b.prod_no, a.model_nob, a.bom_no, a.per_num, b.version, a.bzdw ' +
delhpi 身份证校验
∑(ai×Wi)(mod 11)……………………………………(1) 公式(1)中: i----表示号码字符从由至左包括校验码在内的位置序号; ai----表示第i位置上的号码字符值; Wi----示第i位置上的加权因子,其数值依据公司Wi=2(n-1)(mod 11)计算得出。 i 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 Wi 7 9 10 5 8 4 2 1 6 3 7 9 10 5 8 4 2 1 根据公式(1)进行计算,然后根据计算的结果,从下面的表中查出相应的校验码
DBGridEh光標定位在最後一行記錄
DBGRIDEH 如何在查詢後顯示記錄時,將光標定位在最後一行記錄上。 cd_gift_all.Last; // 將查詢結果定位到最後一行記錄; 屬性:DBGrideh1.DataSource = DS_GIFT_ALL;DS_GIFT_ALL.DATASET= CD_GIFT_ALL; 只要將CLIENTDATASET.LAST即可實現DBGRIDEH定位到最後一行記錄上; [@more@]cd_gift_all.Last; // 將查詢結果定位到最後一行記錄;
Delphi初学者应小心的六大陷阱
初学DelphiI的人,由于各种原因,对DelphiI中的许多概念不能很好的理解,并由此带来了许多的问题,或者是开发出的程序稳性不好,一会能运行,一会又不能运行;或者是遇到一个问题久思不得其解,还误以为是DelphiI自身的BUG,等等这些,浪费了我们大量的时间、精力,也影响了我们的开发效率。 那么如何才能避免这些错误了,尽量少走弯路了?笔者从事DelphiI开发多年,下面就把我的经验总结介绍给大家,希望帮助到初学DelphiI的朋友。[@more@] 问题一:对类的概念理解不到位,程序开发中不能灵活运用。请看下面的程序:unit Unit1;
delphi 最小化最大化按钮不显示
delphi 7 最小化最大化按钮不显示,只显示一个关闭按钮。在属性窗口设置:form1.BorderIcons.biMaximize=false;//最大化form1.BorderIcons.biminimize=false;//最小化//form1.bidiMode=bdRightToLeftNoAlign;...
Delphi 文件查找函数
{--------------------------------------- 文件查找函数 SearchFile 参数说明: sFileName: 要查找的文件名称 sRootDir: 指定在哪个目录中查找 bFileOnly: 是否只查找文件 bRecurse: 是否查找子目录 返回值: FileList: 查找结果列表----------------------------------------}function SearchFile(sFileName, sRootDir: string;[@more@] bFileOnly, bRecurse: boolean): TStringList; //内嵌文件查找递归过程 procedure DoSearchFile(sFileName, sRootDir: string;
Delphi 三层开发 保存
客户端用clientdatasetclientDataSet 保存记录。 [@more@]procedure TDeptForm.Button2Click(Sender: TObject);varcsql: string;begincsql:= 'insert into bas_dept (deptNo,DeptName) values ('+ QuotedStr(edit1.text)+','+ QuotedStr(edit2.text) +')';clientDataSet1.close;clientDataSet1.CommandText:=csql;clientDataSet1.Execute; // 保存 新增记录。clientDataSet1.CommandText:='select * from bas_dept';clientdataSet1.Open;end;
Fast Report 2.4 FrDesigner使用
3.2 FastReport支持中文的换行 对于中文的报表,不同记录的同一字段可能长度差别比较大(比如人事管理中的单位、职务字段),为了节省报表页面空间,经常要求在单元格内自动换行。而对于 中文内容的换行,QuickReport的支持并不如程序员料想的那样进行自动换行,即使设置了WordWrap=true和 AutoStrench=false。主要的原因在于QuickReport自身的自动换行机制只有在遇到空格的时候才会进行换行,如果是英文单词的化当 然没有问题,碰到空格的时候当然就可以换行了,但是中文就不同了,字与字之间是没有空格的,这样QuickReport在处理
DELPHI删除记录文件
//记录文件名格式 :YYMMDDHH.TXT//删除两天前记录文件。procedure TKeyReportForm.deleteTxtFile; var txtName,cTxtFile:string; ii, i:integer;begin //删除从3到5 天记录文件。 for i:=3 to 5 do be...
DELPHI CLIENTDATASET 不能修改刪除問題
窗口從基本功能窗口繼承,今天 做的窗口能新增數據,但不能修改、刪除數據 。提示:Record not found or changed by another user 以下是從網絡找到的問答: 1.你的程序中有两个连接,或有两个数据集同时联接到数据库,而其中一个数据集中的变化没有同步到另一个数据集中去。可以使用Requery使之同步。[@more@] 2.是由于Clientdataset与Provider不同步引用的重新获取Clientdataset一下就行了. 3.不是Delphi的BUG,是你的问题。极有可能是你提交的Update的SQL语句的Where子句中包含有诸如浮点、日期等类型。这样导致数据库无法定