08 2019 档案

摘要:GetFileSize获取文件大小 封装成如下函数,可以直接使用: 1 ///函数功能:获取文件大小,单位取KB,小数自动进位 2 ///参数:sFilePath文件全路径 3 ///Result: 成功是返回文件大小,失败时返回'N' 4 function GetFileSize(sFilePat 阅读全文
posted @ 2019-08-31 09:49 Jeremy.Wu 阅读(883) 评论(0) 推荐(0) 编辑
摘要:项目背景 应欧美客户需求,需要将文件压缩成.tar.gz格式的文件,并上传给客户端SFTP服务器。 你懂的,7-Zip软件的显著特点是文件越大压缩比越高,在Linux系统上相当于我们Windows系统上WinRAR或者好压软件一样的存在。 7-Zip软件下载与安装 网上下载相关安装包并完成安装,找到 阅读全文
posted @ 2019-08-31 09:31 Jeremy.Wu 阅读(1006) 评论(0) 推荐(0) 编辑
摘要:介绍几个免费常用的颜色生成网站: 如下 对比色邻近色配色方案 http://www.peise.net/tools/web/ 渐变色方案 https://webgradients.com/ 随机搭配5种颜色 https://coolors.co/ 阅读全文
posted @ 2019-08-30 13:12 Jeremy.Wu 阅读(1578) 评论(0) 推荐(0) 编辑
摘要:自治事务 - autonomous transaction 在Oracle数据库中,有时候我们会希望记录一个过程或者函数的运行日志,不管正常运行结束还是触发异常结束,都要记录。 正常结束的没有问题,但是触发异常的情况下,一般的过程或者函数显然不能在插入运行日志之后直接Commit,因为触发异常后相关 阅读全文
posted @ 2019-08-30 12:52 Jeremy.Wu 阅读(309) 评论(0) 推荐(0) 编辑
摘要:游标的使用小结 应用场景 在数据库函数或者过程中实现某个业务逻辑时,有时候需要进行循环操作,此时我们可以定义一个游标来实现。 实际意义 游标类似一个数据容器,可以暂时存储数据的查询结果,使用游标里的数据时,可以通过一个游标变量直接取出。 优点 游标的使用可以让编程看起来更加的规整,提高代码的复用性、 阅读全文
posted @ 2019-08-30 11:18 Jeremy.Wu 阅读(441) 评论(0) 推荐(0) 编辑
摘要:SQL语句实现数据库快速检索 有时候在数据库Debug过程中,需要快速查找某个关键字。 1:使用PLSQL Dev自带的查找数据库对象,进行对象查找 缺点:查找慢、耗时。 2:使用SQL语句对数据库对象进行查找 查找数据库一般对象 1 SELECT * FROM DBA_SOURCE T WHERE 阅读全文
posted @ 2019-08-30 10:58 Jeremy.Wu 阅读(1515) 评论(0) 推荐(0) 编辑
摘要:Oracle Function 函数小结 和Procedure类似,可实现相关业务逻辑的操作,但是最终会有返回值。 举个PlSQLDev开发的例子: 1 CREATE OR REPLACE FUNCTION FuncName(v_Str varchar2, v_SubStr varchar2, v_ 阅读全文
posted @ 2019-08-30 10:42 Jeremy.Wu 阅读(355) 评论(0) 推荐(0) 编辑
摘要:通过WinAPI GetCursorPos实现鼠标位置的实时显示 有时候我们需要将鼠标的位置实时抓取出来,可以通过如下方式实现。 添加一个Timer控件,执行间隔改为100ms,双击控件输入如下代码: 1 var 2 P: TPoint; 3 begin 4 GetCursorPos(P); 5 R 阅读全文
posted @ 2019-08-30 09:05 Jeremy.Wu 阅读(733) 评论(0) 推荐(0) 编辑
摘要:看如下代码: 1 WinExec('mspaint.exe', SW_SHOWNORMAL); // SW_SHOWNORMAL = 1 系统画图 2 3 WinExec('write.exe', SW_SHOWNORMAL); // SW_SHOWNORMAL = 1 写字板 4 5 WinExe 阅读全文
posted @ 2019-08-30 08:46 Jeremy.Wu 阅读(514) 评论(0) 推荐(0) 编辑
摘要:使用Pos函数来定位子字符串第一次出现的位置 函数定义: Function Pos(Substr: String, S: String): Integer; 表示取出Substr在S中第一次出现的位置,返回取到的位置 比如:Pos('a', '1234a'); //返回值为5 使用Copy函数来截取 阅读全文
posted @ 2019-08-30 08:29 Jeremy.Wu 阅读(9723) 评论(0) 推荐(0) 编辑
摘要:StringReplace用法 在开发过程中,有时候我们需要对字符串进行替换操作,屏蔽或者和谐某些字符,可使用Delphi自带的函数StringReplace函数。 通过代码进行说明: //函数原型 function StringReplace(const S, OldPattern, NewPat 阅读全文
posted @ 2019-08-29 16:35 Jeremy.Wu 阅读(5884) 评论(0) 推荐(0) 编辑
摘要:Delphi 实现可执行程序的自动升级 准备工作: 1:Delphi调用TIdHTTP方式开发程序,生成程序打包外壳 说明:程序工程命名为ERP_Update 界面布局如下: 代码实现如下: 1 unit Unit1; 2 3 interface 4 5 uses 6 Windows, Messag 阅读全文
posted @ 2019-08-29 13:00 Jeremy.Wu 阅读(839) 评论(0) 推荐(0) 编辑
摘要:Indy IdThreadComponent 线程研究 前几天在开发数据实时解析功能模块的时候,发现解析数据量巨大,特别耗时,程序一跑起来界面假死。 为了优化用户体验,采用了Indy 自带的IdThreadComponent控件,完美的解决了此问题。 下面就IdThreadComponent一些关键 阅读全文
posted @ 2019-08-29 11:11 Jeremy.Wu 阅读(1217) 评论(0) 推荐(0) 编辑
摘要:在Delphi 7开发下有强大的Indy控件,版本为9,要实现一个FTP服务器,参考自带的例子,发现还要写很多函数,而且不支持中文显示文件列表等等。 于是,自己改进封装了下,形成一个TFTPServer类。 源码如下: 1 {************************************* 阅读全文
posted @ 2019-08-29 09:40 Jeremy.Wu 阅读(1464) 评论(0) 推荐(0) 编辑
摘要:服务器自动邮件线程 功能:此程序主要实现对Oracle数据库表tableName(存放需要发送邮件的相关信息)里面相关信息的邮件发送。 优点:开发人员可以直接再数据库后台对tableName表进行插入操作,前台会自动发送相关邮件,高效开发。 界面布局: 代码实现如下: 1 unit uSendMai 阅读全文
posted @ 2019-08-29 09:12 Jeremy.Wu 阅读(603) 评论(0) 推荐(0) 编辑
摘要:idMessage / idSMTP 首先对idMessage类的各种属性进行赋值(邮件的基本信息,如收件人、邮件主题、邮件正文等),其次通过idSMTP连接邮箱服务器,最后通过idSMTP的Send方法将idMessage发送出去。 界面布局如下: 代码如下: 1 unit uMain; 2 3 阅读全文
posted @ 2019-08-29 08:54 Jeremy.Wu 阅读(1697) 评论(0) 推荐(0) 编辑
摘要:FTP信息保存和获取 我们在做FTP相关开发时,为方便后续FTP切换,一般先把FTP账户信息保存到数据库表中,在使用时再通过Query获取出来。 一般通过如下方式获取到FTP相关信息,代码如下: 1 //获取FTP信息 2 with qTmp do 3 begin 4 Close; 5 SQL.Cl 阅读全文
posted @ 2019-08-29 08:33 Jeremy.Wu 阅读(2184) 评论(0) 推荐(0) 编辑
摘要:本地路径的创建 在做下载操作时,我们一般先把文件下载到本地指定的路径下,然后再做其他使用。 为了防止程序出现异常,我们通常需要先判断本地是否存在指定的路径。 以C盘Tmp文件夹为例,我们可以这样做,代码如下: 1 if not DirectoryExists('C:\Tmp') then 2 if 阅读全文
posted @ 2019-08-29 08:13 Jeremy.Wu 阅读(689) 评论(0) 推荐(0) 编辑
摘要:创建文本文件 代码如下: 1 //创建一个文本文件 2 procedure CreateTextFile(); 3 var 4 TF: TextFile; 6 begin 8 AssignFile(TF,'C:\tmp\1.txt'); 9 ReWrite(TF); 10 CloseFile(TF) 阅读全文
posted @ 2019-08-28 14:49 Jeremy.Wu 阅读(1479) 评论(0) 推荐(0) 编辑
摘要:1:单元格的值满足某个条件时,该单元格所在整行颜色设置整行字体设置 选中cxGridDBTableView,单击F11调出属性配置面板,在Events中双击OnCustomDrawCell后双击编辑重画事件代码。 代码如下: if '1' = AViewInfo.GridRecord.Values[ 阅读全文
posted @ 2019-08-28 12:32 Jeremy.Wu 阅读(2821) 评论(0) 推荐(0) 编辑
摘要:.xls格式导出,uses中添加cxGridExportLink 代码如下: 1 function SaveToExcel(gridMain: TcxGrid; FileName: string): string; 2 var 3 SaveFileDialog: TSaveDialog; 4 beg 阅读全文
posted @ 2019-08-28 11:16 Jeremy.Wu 阅读(2501) 评论(0) 推荐(1) 编辑
摘要:在cxGrid中选中需要合并的字段,单击F11调出属性控制面板,展开Options,设置CellMerging的Value为True。 作者:Jeremy.Wu 出处:https://www.cnblogs.com/jeremywucnblog/ 本文版权归作者和博客园共有,欢迎转载,但未经作者同意 阅读全文
posted @ 2019-08-28 10:59 Jeremy.Wu 阅读(1747) 评论(3) 推荐(0) 编辑
摘要:cxGrid设定字段类型为ComboBox 在cxGrid中选中需要设定的字段; 单击F11调出属性控制面板,在Properties下拉选项中选中ComboBox,完成字段类型的设定。 cxGrid ComboBox类型字段动态赋值,添加Item 动态赋值代码如下: 1 TcxComboBoxPro 阅读全文
posted @ 2019-08-28 10:49 Jeremy.Wu 阅读(1645) 评论(0) 推荐(0) 编辑
摘要:cxGrid设定字段类型为CheckBox 1:设定OraQuery属性 CachedUpdates设定为True; 双击打开OraQuery,选中Update SQLs页面,Insert、Updates和Delete对应的输入框中输入相应的SQL语句; 2:设定cxGrid字段类型和属性 首先,选 阅读全文
posted @ 2019-08-28 10:00 Jeremy.Wu 阅读(1264) 评论(0) 推荐(0) 编辑
摘要:cxGrid - 添加footer显示 1:添加Footer Items 单击cxGrid Customize... ,Summary,Add; 2:添加Footer items数据绑定 选中一条需要操作的Footer items,单击F11,调出属性框,根据Column列下来选项选则需要绑定的列。 阅读全文
posted @ 2019-08-28 09:17 Jeremy.Wu 阅读(1099) 评论(0) 推荐(0) 编辑
摘要:1 CREATE OR REPLACE FUNCTION GET_WEEK (V_RQ in DATE) return varchar2 as 2 str varchar2(20); 3 str1 varchar2(20); 4 5 begin 6 str :=TRIM(TO_CHAR(TRUNC( 阅读全文
posted @ 2019-08-28 08:11 Jeremy.Wu 阅读(3166) 评论(0) 推荐(0) 编辑
摘要:Windows自动计划任务与ParamStr详解 ParamStr函数: ParamStr(1),..ParamStr(N) ParamStr(1)代表程序入口的第一个参数,同理,ParamStr(N)代表第N个参数。可通过如下操作进行参数的赋值。 例如: C盘下面有个1.exe可执行程序; 在Wi 阅读全文
posted @ 2019-08-27 13:21 Jeremy.Wu 阅读(841) 评论(0) 推荐(0) 编辑
摘要:cxGrid连接Oracle数据库 实现数据的增删改查 cxGrid连接Oracle数据库 1:通过OraSession连接数据库、OraDataSet实现OraSession和OraDataSource的连接,OraDataSource绑定cxGrid; 2:按如下1、2、3、4实现cxGrid字 阅读全文
posted @ 2019-08-27 11:20 Jeremy.Wu 阅读(766) 评论(0) 推荐(0) 编辑
摘要:cxGrid添加DB Banded Table 添加操作 1:单击cxGrid Customize... ; 2:右击cxGridLevel1,选择DB Banded Table。 属性设置: 1:添加Bands分组; 选择Bands,可通过修改Caption属性,来控制前台显示值,这里修改为Ban 阅读全文
posted @ 2019-08-27 10:11 Jeremy.Wu 阅读(702) 评论(0) 推荐(0) 编辑
摘要:Procedure的创建: CREATE OR REPLACE PROCEDURE ProcedureName(参数) as 参数 参数类型; user_err1 exception; --用户定义异常 ERRSTR varchar2(200); begin --业务逻辑 --触发异常提示'XXXX 阅读全文
posted @ 2019-08-23 11:57 Jeremy.Wu 阅读(152) 评论(0) 推荐(0) 编辑
摘要:Oracle View的创建 Create Or Replace View ViewName As Select * From Tables/View Where 条件; View Code 作者:Jeremy.Wu 出处:https://www.cnblogs.com/jeremywucnblog 阅读全文
posted @ 2019-08-23 11:51 Jeremy.Wu 阅读(168) 评论(0) 推荐(0) 编辑
摘要:A: 数据插入之前更新 CREATE OR REPLACE TRIGGER TablesNameID before insert ON TablesName for each row begin --业务逻辑 end TablesNameID; B:数据插入之后更新 CREATE OR REPLAC 阅读全文
posted @ 2019-08-23 11:47 Jeremy.Wu 阅读(181) 评论(0) 推荐(0) 编辑
摘要:序言 本教程以Windows Server 2012 R12 为例搭建SVN服务器,安装部署完成后,客户端可通过SVN客户端访问SVN服务器上的项目,也可以访问网上其他SVN服务器上的项目。 一、首先准备三个软件: 1.VisualSVN-Server-3.6.3-x64.msi(svn服务端) 2 阅读全文
posted @ 2019-08-23 09:36 Jeremy.Wu 阅读(13455) 评论(0) 推荐(2) 编辑
摘要:Delphi VS C语言类型转换对照 When converting C function prototypes to Pascal equivalent declarations, it's important to substitute the C function and argument 阅读全文
posted @ 2019-08-23 08:39 Jeremy.Wu 阅读(435) 评论(0) 推荐(0) 编辑
摘要:一、添加控件: ADOConnection、ADOQuery和DataSource; 二、连接Access数据库; 这里一般采用动态方式进行连接,工程文件放在了CodeDemo文件夹中,Access数据库放在了DATa X文件夹中,动态连接代码如下(动态加载皮肤的部分可忽略): 1 var 2 I: 阅读全文
posted @ 2019-08-23 08:16 Jeremy.Wu 阅读(366) 评论(0) 推荐(0) 编辑
摘要:cxGrid连接Oracle数据库 WinFrm窗体中需要添加OraSession 、OraQuery和 OraDataSource控件。 OraSession中配置数据库连接参数: OraQuery的Session属性中指向OraSession: OraDataSource的DataSet属性指向 阅读全文
posted @ 2019-08-22 16:48 Jeremy.Wu 阅读(405) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示