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

📄 unit104s.pas

📁 有学习Delphi的套打的朋友
💻 PAS
字号:
unit Unit104s;

interface

uses
    Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
    Dialogs, OleCtnrs, DB, ADODB, LbSpeedButton, StdCtrls, Mask, DBCtrls,
    DBCtrlsEh;

type
    TForm104s = class(TForm)
        LbSpeedButton1: TLbSpeedButton;
        LbSpeedButton2: TLbSpeedButton;
        ADOQuery1: TADOQuery;
        DataSource1: TDataSource;
        OleContainer1: TOleContainer;
        DBEdit1: TDBEdit;
        DBEdit2: TDBEdit;
        DBEdit3: TDBEdit;
        DBEdit4: TDBEdit;
        DBEdit5: TDBEdit;
        DBEdit6: TDBEdit;
        DBEdit7: TDBEdit;
        DBEdit8: TDBEdit;
        DBEdit9: TDBEdit;
        DBEdit10: TDBEdit;
        DBEdit11: TDBEdit;
        DBEdit12: TDBEdit;
        DBEdit13: TDBEdit;
        DBEdit14: TDBEdit;
        DBEdit15: TDBEdit;
        DBEdit16: TDBEdit;
        DBEdit17: TDBEdit;
        DBEdit18: TDBEdit;
        DBEdit19: TDBEdit;
        DBEdit20: TDBEdit;
        DBEdit21: TDBEdit;
        DBEdit22: TDBEdit;
        DBEdit23: TDBEdit;
        DBEdit24: TDBEdit;
        DBEdit25: TDBEdit;
        DBEdit26: TDBEdit;
        DBEdit27: TDBEdit;
        DBEdit28: TDBEdit;
        DBEdit29: TDBEdit;
        DBEdit30: TDBEdit;
        DBEdit31: TDBEdit;
        DBEdit32: TDBEdit;
        DBEditEh1: TDBEditEh;
        LbSpeedButton3: TLbSpeedButton;
        procedure FormClose(Sender: TObject; var Action: TCloseAction);
        procedure LbSpeedButton1Click(Sender: TObject);
        procedure LbSpeedButton2Click(Sender: TObject);
        procedure FormShow(Sender: TObject);
        procedure LbSpeedButton3Click(Sender: TObject);
    private
        { Private declarations }
        function GetTotal(X: Integer; var s: string): Integer;
    public
        { Public declarations }

    end;

var
    Form104s: TForm104s;

implementation
uses dm, mainunit;
{$R *.dfm}

procedure TForm104s.FormClose(Sender: TObject; var Action: TCloseAction);
begin
    Action := caFree;
    Form104s := nil;
end;

procedure TForm104s.LbSpeedButton1Click(Sender: TObject);
begin
    ADOQuery1.Cancel;
    Close;
end;

procedure TForm104s.LbSpeedButton2Click(Sender: TObject);
var
    total: Integer;
    stype: string;
begin
    total := GetTotal(StrToIntDEF(DBEdit1.Text, 0), stype);
    Application.ProcessMessages;
    dm.DataModule2.ADOConnection1.BeginTrans;
    try
        adoquery1.FieldByName('计价方式').AsString := stype;
        ADOQuery1.FieldByName('总价').AsInteger := total;
        ADOQuery1.Post;
        DM.DataModule2.ADOConnection1.CommitTrans;
    except
        DM.DataModule2.ADOConnection1.RollbackTrans;
    end;
    Close;

end;

procedure TForm104s.FormShow(Sender: TObject);
begin
    caption := SID + '===>第四条 计价方式与价款';
    adoquery1.SQL.Text := sSQL;
    //ShowMessage(Ssql);
    ADOQuery1.Open;
    ADOQuery1.Edit;
end;

procedure TForm104s.LbSpeedButton3Click(Sender: TObject);
var
    I: Integer;
begin
    for i := 0 to FORM104S.ControlCount - 1 do begin
        if Form104s.Controls[i] is TDBEditEH then
            TDBEDITEH(FORM104S.Controls[I]).Text := '';

        if FORM104S.Controls[i] is TDBEDIT then
            TDBEDIT(FORM104S.Controls[I]).Text := '';
    end;

end;

function TForm104s.GetTotal(X: Integer; var s: string): Integer;
    function ChiToNum(sChi: string): string;
    var
        temp: string;
    begin
        if sChi = '壹' then
            temp := '1'
        else if sChi = '贰' then
            temp := '2'
        else if sChi = '叁' then
            temp := '3'
        else if sChi = '肆' then
            temp := '4'
        else if sChi = '伍' then
            temp := '5'
        else if sChi = '陆' then
            temp := '6'
        else if sChi = '柒' then
            temp := '7'
        else if sChi = '捌' then
            temp := '8'
        else if sChi = '玖' then
            temp := '9'
        else if sChi = '零' then
            temp := '0'
        else
            temp := '0';
        RESULT := temp;
    end;
var
    SNO: string;
begin
    sno := '';
    case X of
        1: begin
                SNO := SNO + ChiToNum(dbedit5.Text);
                SNO := SNO + ChiToNum(dbedit6.Text);
                SNO := SNO + ChiToNum(dbedit8.Text);
                SNO := SNO + ChiToNum(dbedit7.Text);
                SNO := SNO + ChiToNum(dbedit12.Text);
                SNO := SNO + ChiToNum(dbedit11.Text);
                SNO := SNO + ChiToNum(dbedit10.Text);
                SNO := SNO + ChiToNum(dbedit9.Text);
                s := '按建筑面积';
            end;
        2: begin
                SNO := SNO + ChiToNum(dbedit16.Text);
                SNO := SNO + ChiToNum(dbedit17.Text);
                SNO := SNO + ChiToNum(dbedit18.Text);
                SNO := SNO + ChiToNum(dbedit19.Text);
                SNO := SNO + ChiToNum(dbedit20.Text);
                SNO := SNO + ChiToNum(dbedit21.Text);
                SNO := SNO + ChiToNum(dbedit22.Text);
                SNO := SNO + ChiToNum(dbedit23.Text);
                s := '按套内面积';
            end;
        3: begin
                SNO := SNO + ChiToNum(dbedit25.Text);
                SNO := SNO + ChiToNum(dbedit26.Text);
                SNO := SNO + ChiToNum(dbedit27.Text);
                SNO := SNO + ChiToNum(dbedit28.Text);
                SNO := SNO + ChiToNum(dbedit29.Text);
                SNO := SNO + ChiToNum(dbedit30.Text);
                SNO := SNO + ChiToNum(dbedit31.Text);
                SNO := SNO + ChiToNum(dbedit32.Text);
                s := '按套(单元)';
            end;
    else begin
            s := '';
            SNO := '0';
        end;
    end;
    RESULT := StrToIntDEF(SNO, 0);
end;

end.

⌨️ 快捷键说明

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