⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 storage_damage.pas

📁 delphi的一个开发实例
💻 PAS
📖 第 1 页 / 共 5 页
字号:
                                            except
                                                Application.MessageBox('保存[仓库报损单审核表]时失败,不能过帐,请确认!',pchar(application.Title),mb_iconwarning);
                                                Exit;
                                            end;
                                        end;
                                    except
                                        Application.MessageBox('保存[仓库报损单明细]时循环失败,不能过帐,请确认!',pchar(application.Title),mb_iconwarning);
                                        Exit;
                                    end;
                                except
                                    Application.MessageBox('保存[仓库报损单]时连接服务器数据库失败,不能过帐,请确认!',pchar(application.Title),mb_iconwarning);
                                    Exit;
                                end;
                            end;
                        end;
                    end
                    else
                    begin
                        Application.MessageBox('更本不存在该草稿单据,不能过帐,请确认!',pchar(application.Title),mb_iconwarning);
                        Exit;
                    end;
                except
                    Application.MessageBox('打开[仓库报损单视图]时失败,不能过帐,请确认!',pchar(application.Title),mb_iconwarning);
                    Exit;
                end;
            end;
        end;
        //保存为草稿单据
        if Public_Do_Result='02' then
        begin
            try
                if Trim(Edit1.Text)='' then
                begin
                    application.MessageBox('操作错误,【录单日期】不能为空!,请确认!',pchar(application.Title),mb_iconwarning);
                    Edit1.SetFocus;
                    Exit;
                end;
                if Trim(Edit2.Text)='' then
                begin
                    application.MessageBox('操作错误,【单据编号】不能为空!,请确认!',pchar(application.Title),mb_iconwarning);
                    Edit2.SetFocus;
                    Exit;
                end;
                if Trim(Edit3.Text)='' then
                begin
                    application.MessageBox('操作错误,【报损仓库】不能为空!,请确认!',pchar(application.Title),mb_iconwarning);
                    Edit3.SetFocus;
                    Exit;
                end;
                if Trim(Edit4.Text)='' then
                begin
                    application.MessageBox('操作错误,【经手人】不能为空!,请确认!',pchar(application.Title),mb_iconwarning);
                    Edit4.SetFocus;
                    Exit;
                end;
                if Trim(Edit6.Text)='' then
                begin
                    application.MessageBox('操作错误,【制单人】不能为空!,请确认!',pchar(application.Title),mb_iconwarning);
                    Edit6.SetFocus;
                    Exit;
                end;
                if Trim(Edit7.Text)='' then
                begin
                    application.MessageBox('操作错误,【报损摘要】不能为空!,请确认!',pchar(application.Title),mb_iconwarning);
                    Edit7.SetFocus;
                    Exit;
                end;

                for i:=1 to Total_Count-1 do
                begin
                    if StringGrid1.Cells[1,i]='' then
                    begin
                        application.MessageBox('操作错误,【商品编号】不能为空!,请确认!',pchar(application.Title),mb_iconwarning);
                        Exit;
                    end;
                    if StringGrid1.Cells[5,i]='' then
                    begin
                        application.MessageBox('操作错误,【数量】不能为空!,请确认!',pchar(application.Title),mb_iconwarning);
                        Exit;
                    end;
                end;

                with frm_data.ClientDataSet_Add do
                begin
                    Close;
                    frm_data.ClientDataSet_Add.CommandText:='';
                    CommandText:='Select * from [report_damage] where Copy_Date='''+Trim(Edit1.Text)+''' and damage_NO='''+Trim(Edit2.Text)+''' ';
                    try
                        open;
                        if frm_data.ClientDataSet_Add.RecordCount>0 then
                        begin
                            Application.MessageBox('添加失败,该记录已经存在,请确认!',pchar(application.Title),mb_iconwarning);
                            Exit;
                        end
                        else
                        begin
                            try
                                with frm_data.ClientDataSet_Add do
                                begin
                                    Close;
                                    CommandText:='';
                                    CommandText:='Insert into [report_damage] (Copy_Date,damage_NO,Transactor,Storage_NO,Shop_NO,proposer,Condense,report_Remark) values ('''+Trim(Edit1.Text)+''','''+Trim(Edit2.Text)+''','''+Trim(Edit3.Text)+''','''+Trim(Edit4.Text)+''','''+Trim(Edit5.Text)+''','''+Trim(Edit6.Text)+''','''+Trim(Edit7.Text)+''','''+Trim(Edit8.Text)+''')';
                                    try
                                        Execute;
                                        try
                                            with frm_data.ClientDataSet_Add do
                                            begin
                                                Close;
                                                CommandText:='';
                                                CommandText:='Insert into [Receipt](Receipt_NO,Receipt_Name,Copy_Date,Proposer,Condense) values ('''+Trim(Edit2.Text)+''',''库存报损单'','''+Trim(Edit1.Text)+''','''+Trim(Edit6.Text)+''','''+Trim(Edit7.Text)+''')';
                                                try
                                                    Execute;
                                                    try
                                                        for i:=1 to Total_Count-1 do
                                                        begin
                                                            with frm_data.ClientDataSet_Add do
                                                            begin
                                                                Close;
                                                                CommandText:='';
                                                                CommandText:='Insert into [report_damage_detail](damage_NO,Goods_NO,Pass_NO,amount,price,money,remark) values ('''+Trim(Edit2.Text)+''','''+Trim(StringGrid1.Cells[1,i])+''','''+Trim(StringGrid1.Cells[3,i])+''','''+Trim(StringGrid1.Cells[5,i])+''','''+Trim(StringGrid1.Cells[11,i])+''','''+Trim(StringGrid1.Cells[12,i])+''','''+Trim(StringGrid1.Cells[26,i])+''')';
                                                                try
                                                                    Execute;
                                                                except
                                                                    Application.MessageBox('系统在保存[采购入库明细表]数据时候,服务器数据库连接错误,请重新连接,请确认!',pchar(application.Title),mb_iconwarning);
                                                                    Exit;
                                                                end;
                                                            end;
                                                        end;
                                                    except
                                                        Application.MessageBox('系统错误,请检查连接网络是否正常,请确认!',pchar(application.Title),mb_iconwarning);
                                                        Exit;
                                                    end;
                                                except
                                                    Application.MessageBox('系统在保存[仓库报损单审核表]数据时候,服务器数据库连接错误,请重新连接,请确认!',pchar(application.Title),mb_iconwarning);
                                                    Exit;
                                                end;
                                            end;
                                        except
                                            Application.MessageBox('系统错误,请检查连接网络是否正常,请确认!',pchar(application.Title),mb_iconwarning);
                                            Exit;
                                        end;
                                    except
                                        Application.MessageBox('系统在保存[仓库报损单]数据时候,服务器数据库连接错误,请重新连接,请确认!',pchar(application.Title),mb_iconwarning);
                                        Exit;
                                    end;
                                end;
                            except
                                Application.MessageBox('系统错误,请检查连接网络是否正常,请确认!',pchar(application.Title),mb_iconwarning);
                                Exit;
                            end;
                        end;
                    except
                        Application.MessageBox('服务器数据库连接错误,请重新连接,请确认!',pchar(application.Title),mb_iconwarning);
                        Exit;
                    end;
                end;
                Application.MessageBox('恭喜你!【仓库报损单】草稿单据保存操作成功,请确认!',pchar(application.Title),mb_iconwarning);
            except
                Application.MessageBox('添加操作失败,请检查连接网络是否正常,请确认!',pchar(application.Title),mb_iconwarning);
                Exit;
            end;
        end;
        frm_Main.Panel_Title.Caption:='[连锁管理系统]->[采购信息管理]';
        //废弃退出
        if Public_Do_Result='03' then
        begin
            frm_data.ClientDataSet_Add.Close;
            frm_data.ClientDataSet_Add.Active:=False;
            Close;
        end;
    end;
    //草稿单据操作
    if Public_Do='Business_Storage_damage' then  //草稿单据过帐
    begin
        //草稿单据过帐
        if Public_Do_Result='01' then
        begin
            with frm_data.ClientDataSet2 do
            begin
                Close;
                CommandText:='';
                Commandtext:='Select * from [V_Storage_Damage_View] where Receipt_No='''+Trim(List_NO)+'''';
                try
                    Open;
                    Check_Flag:=frm_data.ClientDataSet2.FieldValues['Check_Result'];
                    if Check_Flag='0' then
                    begin
                        Application.MessageBox('单据还没有完全审核,不能过帐',pchar(application.Title),mb_iconwarning);
                        Exit;
                    end;
                    if Check_Flag='1' then
                    begin
                        with frm_data.ClientDataSet_Add do
                        begin
                            Close;
                            Commandtext:='';
                            CommandText:='Update [report_damage] set Condense='''+Trim(Edit7.Text)+''',report_Remark='''+Trim(Edit8.Text)+''' where damage_NO='''+Trim(List_NO)+'''';
                            try
                                Execute;
                                try
                                    for i:=1 to Total_Count-1 do
                                    begin
                                        with frm_data.ClientDataSet_Add do
                                        begin
                                            Close;
                                            CommandText:='';
                                            CommandText:='update [report_damage_detail] set amount='''+Trim(StringGrid1.Cells[5,i])+''',Money='''+Trim(StringGrid1.Cells[6,i])+''',remark='''+Trim(StringGrid1.Cells[19,i])+''' where damage_NO='''+Trim(List_NO)+''' and Goods_No='''+Trim(StringGrid1.Cells[1,i])+'''';
                                            try
                                                Execute;
                                            except
                                                Application.MessageBox('保存[仓库报损单明细]时连接服务器失败,请确认!',pchar(application.Title),mb_iconwarning);
                                                Exit;
                                            end;
                                        end;
                                    end;
                                    with frm_data.ClientDataSet_Add do
                                    begin
                                        Close;
                                        Commandtext:='';
                                        Commandtext:='Update [Receipt] set Flag_sign=''单据'' where Receipt_No='''+Trim(List_NO)+'''';
                                        try
                                            Execute;
                                            try
                                                Stock_States_Total;
                                                Application.MessageBox('[仓库报损单]单据过帐完毕!',pchar(application.Title),mb_iconwarning);
                                            except
                                                Application.MessageBox('修改[库存表]时失败,不能过帐,请确认!',pchar(application.Title),mb_iconwarning);
                                                Exit;
                                            end;
                                        except
                                            Application.MessageBox('保存[库存报损审核表]时连接服务器失败,请确认!',pchar(application.Title),mb_iconwarning);
                                            Exit;
                                        end;
                                    end;
                                except
                                    Application.MessageBox('保存[库存报损明细]时循环失败,请确认!',pchar(application.Title),mb_iconwarning);
                                    Exit;
                                end;
                            except
                                Application.MessageBox('保存[库存报损]时失败,请检查连接网络是否正常,请确认!',pchar(application.Title),mb_iconwarning);
                                Exit;
                            end;
                        end;
                    end;
                except
                    Application.MessageBox('打开[库存报损视图]时失败,不能过帐,请确认!',pchar(application.Title),mb_iconwarning);
                    Exit;
                end;
            end;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -