procedure TFormBillMainEdit.InsertBill(ABillClassCode, AParentBillNo: string);
var
sqlstr: string;
iRet, idx: integer;
tmpBillNo: string;
ABillClass: string;
CHBillClassCode: string;
SYSDATE: string;
i, bill_no : string;
j : integer;
begin
iRet := dmc.ADOBeginTrans;
if iRet = 0 then
sqlstr := 'SELECT FormatDateTime(''''YYYYMMDD'''', now) FROM CX_BILL_MAIN WHERE SUBSTR(FBILL_NO,1,8)= '''+FormatDateTime('YYYYMMDD', now)+''' ';
if sqlstr <> '' then begin
sqlstr := '';
sqlstr := sqlstr + 'SELECT '''+FormatDateTime('YYYYMMDD', now)+''' ||LPAD(SUBSTR(MAX(FBILL_NO),9,4)+1,4,0) FBILL_NO FROM CX_BILL_MAIN WHERE SUBSTR(FBILL_NO,1,8)= '''+FormatDateTime('YYYYMMDD', now)+''' ';
tmpBillNo := sqlstr;
end
else
begin
tmpBillNo := FormatDateTime('YYYYMMDD', now) + dmo.GetListNo(FormatDateTime('YYYYMMDD', now) + sys.User.name, 4);
end;
// if Length(tmpBillNo) = 12 then iRet := 0 else iRet := -1;
if iRet = 0 then begin
sqlstr := '';
Sqlstr := sqlstr + 'select fuser_name, fbill_class_code, fbill_class, fchildren_bill_class_code ';
sqlstr := sqlstr + 'from cx_bill_class where fuser_name = ''' + sys.User.name + ''' ';
sqlstr := sqlstr + 'and fbill_class_code= ''' + ABillClassCode + ''' ';
iRet := dmc.ADOGetData(sqlstr);
CHBillClassCode := '';
ABillClass := '';
if iRet = 0 then begin
ABillClass := dmc.ADOQuery.FieldByName('fbill_class').AsString;
CHBillClassCode := dmc.ADOQuery.FieldByName('fchildren_bill_class_code').AsString;
end;
end;
if iRet = 0 then begin
sqlstr := '';
sqlstr := sqlstr + 'insert into cx_bill_main (fbill_no, fyear, fmonth, fday, fbill_class, ';
sqlstr := sqlstr + 'fpay_unit_code, fpay_unit_name, fpay_province, fpay_city, fpay_bank_code, fpay_bank_name, fpay_account_no, ';
sqlstr := sqlstr + 'fpayee_unit_code, fpayee_unit_name, fpayee_province, fpayee_city, fpayee_bank_code, fpayee_bank_name, fpayee_account_no, ';
sqlstr := sqlstr + 'fpurpose, ftmoney, fbill_from, fbill_to, fproof_year, fproof_month, fproof_day, fproof_no, ';
sqlstr := sqlstr + 'fparent_bill_no, freport_flag, fprint_times, fuser_name, fcreate_time, fcreate_method ) values ( ';
sqlstr := sqlstr + '''' + tmpBillNo + ''',''' + FormatDateTime('YYYY', dtTime.DateTime) + ''',''' + FormatDateTime('MM', dtTime.DateTime) + ''',''' + FormatDateTime('DD', dtTime.DateTime) + ''', ';
sqlstr := sqlstr + '''' + ABillClass + ''', ';
sqlstr := sqlstr + '''' + edtPayUnitCode.Text + ''',''' + edtPayUnit.Text + ''',''' + edtPayProvince.Text + ''',''' + edtPayCity.Text + ''',''' + edtPayBankCode.Text + ''', ';
sqlstr := sqlstr + '''' + edtPayBankName.Text + ''', ''' + edtPayAccountNo.Text + ''',';
sqlstr := sqlstr + '''' + edtPayeeUnitCode.Text + ''',''' + edtPayeeUnit.Text + ''',''' + edtPayeeProvince.Text + ''',''' + edtPayeeCity.Text + ''',';
sqlstr := sqlstr + '''' + edtPayeeBankCode.Text + ''',''' + edtPayeeBankName.Text + ''',''' + edtPayeeAccountNo.Text + ''', ';
sqlstr := sqlstr + '''' + edtPurpose.Text + ''',''' + FloatToStr(ETMoney()) + ''',null,null,null,null,null,''' + edtProofNo.Text + ''', ';
详细解决方案
用Delphi写数据保留功能时报错,提示缺少逗号
热度:139 发布时间:2016-04-24 04:14:11.0
相关解决方案
- DELPHI 中怎么让LISTBOX控件显示SQL的数据库中所有的表名和让COMBOBOX控件显示数据库名的有关问题!
- Delphi 求指点
- delphi:webbrowser作浏览器时,获取当前网页缩放比率
- makespellcode 函数的引述单元 delphi
- C# 调用 delphi 编纂的接口函数文件
- delphi 7.0加载 Raize 5.0 老是报序列号不对,不为什么
- delphi Tree解决方法
- delphi 绘图解决思路
- 客户端与服务器的连接有关问题(delphi)
- DELPHI +SQL SERVER 2005 掉线 急该如何处理
- delphi 里面如何检测com口是不是存在
- Delphi 2005安装包 小弟我这里有 哪位高手需要留言 刚学有经验的指导上
- Delphi MDI加载dll的有关问题()
- delphi Tree解决思路
- delphi 7.0加载 Raize 5.0 总是报序列号不对,不为什么?解决方案
- C# 调用 delphi 编写的接口函数文件,该怎么解决
- delphi 7操作EXCEL有关问题
- delphi 6.0 money类型提示 应用程序在当前操作中使用了异常类型的值
- Delphi 怎么获取webbrowser中页面表单的内容并实现赋值
- delphi SQL数据库
- delphi:webbrowser做浏览器时,获取当前网页缩放比率解决思路
- delphi 绘图,该怎么处理
- delphi webservice对接有关问题
- Visio delphi 二次开发 500分解决方法
- DELPHI 怎么来判断WORD中文章中的某段分了几栏
- delphi 操作excel设置图表属性 在运行时报“不能设置类chart的HasTitle属性”错,该怎么解决
- Delphi+Sybase 出现 ct_cmd_drop(): user api layer: external error: The connection,该怎么解决
- delphi 数据库,该怎么解决
- delphi 用canvas画的为啥会消失
- delphi 绘图如何显示全