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

📄 frm_allimportbilledit.~pas

📁 站长您好
💻 ~PAS
📖 第 1 页 / 共 5 页
字号:
unit Frm_AllImportBillEdit;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Frm_Cargo, XPMenu, CoolCtrlsEx, ComCtrls, ExtCtrls, CoolCtrls,
  StdCtrls, Buttons, Grids, DB, ADODB;

type
  TFrmAllImportBillEdit = class(TFrmCargo)
    page: TPageControl;
    MAWB: TTabSheet;
    ChkKey: TCheckBox;
    GroupBox5: TGroupBox;
    Label1: TLabel;
    Label119: TLabel;
    Label64: TLabel;
    Label69: TLabel;
    Label39: TLabel;
    Label47: TLabel;
    Label81: TLabel;
    Label93: TLabel;
    Label95: TLabel;
    Label96: TLabel;
    Label66: TLabel;
    Label86: TLabel;
    Label91: TLabel;
    Label51: TLabel;
    Label26: TLabel;
    Label8: TLabel;
    EdtFileNo: TEdit;
    BitBtn14: TBitBtn;
    ComCusCode: TComboBox;
    ChkFinish: TCheckBox;
    Inform: TMemo;
    ExecDate: TDateTimePicker;
    ComConsign: TComboBox;
    EdtJianShu: TEdit;
    ComBaoZ: TComboBox;
    EdtMaoZ: TEdit;
    EdtJFZL: TEdit;
    EdtTiJi: TEdit;
    EdtBy: TEdit;
    EdtCusCodeName: TEdit;
    EdtConsignName: TEdit;
    Chkzhdan: TCheckBox;
    EdtGoods: TEdit;
    EdtRFileno: TEdit;
    ComStation: TComboBox;
    ComAgent: TComboBox;
    SpeedButton1: TBitBtn;
    ChkKeyDown: TCheckBox;
    GroupBox1: TGroupBox;
    Label17: TLabel;
    Label35: TLabel;
    Label54: TLabel;
    Label55: TLabel;
    Label56: TLabel;
    Label57: TLabel;
    Label61: TLabel;
    Label62: TLabel;
    Label63: TLabel;
    Label106: TLabel;
    Label109: TLabel;
    Label18: TLabel;
    Label27: TLabel;
    Label53: TLabel;
    Label108: TLabel;
    Label24: TLabel;
    Label23: TLabel;
    Label20: TLabel;
    Label19: TLabel;
    Label21: TLabel;
    Label34: TLabel;
    Label28: TLabel;
    Label31: TLabel;
    Label65: TLabel;
    Label73: TLabel;
    Label44: TLabel;
    Label45: TLabel;
    Label71: TLabel;
    Label10: TLabel;
    Label11: TLabel;
    Label12: TLabel;
    Label33: TLabel;
    Label50: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Label22: TLabel;
    Label72: TLabel;
    Label25: TLabel;
    Label7: TLabel;
    Label122: TLabel;
    SpeedButton5: TSpeedButton;
    LVHW: TListView;
    BitBtn1: TBitBtn;
    BitBtn2: TBitBtn;
    BitBtn3: TBitBtn;
    cComCuscode: TComboBox;
    cComLoad: TComboBox;
    cComUnLoad: TComboBox;
    cComShipCom: TComboBox;
    cVoyageDate: TDateTimePicker;
    cinform: TMemo;
    cEdtFileno: TEdit;
    cEdtBy: TEdit;
    cEdtCHGS: TEdit;
    cEdtPPD: TEdit;
    cEdtCOLL: TEdit;
    cEdtOPPD: TEdit;
    cEdtOCOLL: TEdit;
    cEdtDVC: TEdit;
    cEdtDVC2: TEdit;
    CEdtRFileNo: TEdit;
    cTrusttype: TComboBox;
    CEdtCurr: TComboBox;
    CChkFinish: TCheckBox;
    cExecDate: TDateTimePicker;
    cBussiness: TComboBox;
    cHi: TMemo;
    cComConsign: TComboBox;
    cComAgent: TComboBox;
    CEdtCzr: TEdit;
    CEdtNumber: TEdit;
    CComKMDM: TComboBox;
    CComCzType: TComboBox;
    CEdtJianShu: TEdit;
    CComBaoZ: TComboBox;
    CEdtMaoZ: TEdit;
    CEdtJfzl: TEdit;
    CEdtTiJI: TEdit;
    CcomTrustSource: TComboBox;
    CEdtCuscodeName: TEdit;
    CEdtConsignname: TEdit;
    CEdtzcNumber: TEdit;
    CComZcKmdm: TComboBox;
    cEdtDest: TEdit;
    CEdtGoods: TEdit;
    BitBtn19: TBitBtn;
    BitBtn9: TBitBtn;
    cComPrice: TComboBox;
    Cmemacc: TMemo;
    SpeedButton2: TBitBtn;
    ChkCommon: TRadioButton;
    ChkDanger: TRadioButton;
    CChkkeydown: TCheckBox;
    cEdtModiOper: TEdit;
    cEdtPlace: TComboBox;
    CHARGE: TTabSheet;
    GroupBox2: TGroupBox;
    Label165: TLabel;
    Label166: TLabel;
    Label167: TLabel;
    Label168: TLabel;
    Label169: TLabel;
    Label172: TLabel;
    BitBtn18: TBitBtn;
    BitBtn23: TBitBtn;
    BitBtn24: TBitBtn;
    EdtDoResult: TEdit;
    DoDate: TDateTimePicker;
    EdtDoTime: TEdit;
    Memo4: TMemo;
    EdtPreRemark: TEdit;
    LVDDO: TListView;
    Edit7: TEdit;
    GroupFare: TGroupBox;
    Label84: TLabel;
    Label48: TLabel;
    Label2: TLabel;
    Label107: TLabel;
    Label85: TLabel;
    Label79: TLabel;
    Label80: TLabel;
    Label49: TLabel;
    Label82: TLabel;
    Label3: TLabel;
    Label41: TLabel;
    Label150: TLabel;
    Label100: TLabel;
    LBLMess: TLabel;
    Label87: TLabel;
    Label90: TLabel;
    Label46: TLabel;
    Label9: TLabel;
    Label13: TLabel;
    Label14: TLabel;
    EdtMark: TEdit;
    CombType: TComboBox;
    CombName: TComboBox;
    RadioButton5: TRadioButton;
    RadioButton6: TRadioButton;
    EdtM: TEdit;
    LVFare: TListView;
    CombTO: TComboBox;
    BitBtn4: TBitBtn;
    BitBtn6: TBitBtn;
    BitBtn11: TBitBtn;
    ComCurrencyType: TComboBox;
    EdtRate: TEdit;
    HappenDate: TDateTimePicker;
    EdtOperator: TEdit;
    billno: TEdit;
    ChkOther: TComboBox;
    EdtInvoice: TEdit;
    EdtBXH: TEdit;
    MemCusCode: TEdit;
    HappenDDate: TEdit;
    BitBtn20: TBitBtn;
    EdtDay: TEdit;
    Edtunit: TMemo;
    EdtFareModiOper: TEdit;
    EdtUnitPrice: TEdit;
    EdtShuLiang: TEdit;
    QryTemp: TADOQuery;
    Query1: TADOQuery;
    procedure BitBtn14Click(Sender: TObject);
    procedure SpeedButton1Click(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
    procedure BitBtn2Click(Sender: TObject);
    procedure BitBtn3Click(Sender: TObject);
    procedure SpeedButton2Click(Sender: TObject);
    procedure BitBtn19Click(Sender: TObject);
    procedure LVHWClick(Sender: TObject);
    procedure LVHWColumnClick(Sender: TObject; Column: TListColumn);
    procedure SpeedButton5Click(Sender: TObject);
    procedure cComCuscodeExit(Sender: TObject);
    procedure cComConsignExit(Sender: TObject);
    procedure BitBtn9Click(Sender: TObject);
    procedure BitBtn20Click(Sender: TObject);
    procedure BitBtn4Click(Sender: TObject);
    procedure BitBtn6Click(Sender: TObject);
    procedure BitBtn11Click(Sender: TObject);
    procedure LVFareClick(Sender: TObject);
    procedure LVFareColumnClick(Sender: TObject; Column: TListColumn);
    procedure ChkOtherExit(Sender: TObject);
  private
    isclear: Boolean; {是否清空ComVoyage.text}
    Cisclear: Boolean; {是否清空CComVoyage.text}
    GoodsAdd: Boolean; {标记货物是增加还是编辑}
    VarMain: string; {记录主单代码}
    Varhawb: string; {记录分单代码}
    CurrentFileCode: string; {记录费用当前编辑的记录的filecode号}
    CurrentOperFileCode: string; {记录当前业务操作编辑记录的filecode号}
    goodscode: string; {主单货物代码}
    Cgoodscode: string; {分单货物代码}
    procedure SaveifChecked; {主单完成以后,分单是否完成}
    procedure SaveMainstat;
    procedure SaveHawbstat;
    procedure SaveMawbparpay;
    procedure SaveHawbparpay;
    function Havefendan: boolean;
    function Calculate(Day, Weight: real; Formula: string): Real;
    { Private declarations }
  public
    IsEdit: Boolean; {主单编辑标记}
    cIsEdit: Boolean; {分单编辑标记}
    gIsEdit: Boolean; {主单货物的编辑标记}
    gISChange: Boolean; {货物数据改变标记}
    cgIsEdit: Boolean; {分单货物的编辑标记}
    cgISChange: Boolean; {分单货物数据改变}
    Alone: Boolean; {主单独出现标记}
    ColLast: integer; {主单当前货物行}
    RowLast: integer; {主单当前货物列}
    cColLast: integer; {分单当前货物行}
    cRowLast: integer; {分单当前货物列}
    inserted: Boolean; //
    cFIsEdit: Boolean; {判断费用的增加与编辑}
    COIsEdit: Boolean; {判断业务操作的增加与编辑}
    BeConfirm: string; {财务确认标记}
    constructor CreateFromP(Edit: Boolean; Lone: Boolean; Code: string; Sender:
      TComponent);
    destructor Destroy; override;
    procedure showChild(Code: string);
    procedure ShowFare(Code: string);
    procedure ShowHanding(Code: string);
    function GetGrade(Carrier, LoadPort, UnloadPort, GradeStr: string): string;
    { Public declarations }
  end;

var
  FrmAllImportBillEdit: TFrmAllImportBillEdit;

implementation

uses Frm_Main, Frm_AllImportBillInfo, Frm_agreedocuedit, Frm_ciqdata;

{$R *.dfm}

function TFrmAllImportBillEdit.GetGrade(Carrier, LoadPort, UnloadPort,
  GradeStr: string): string;
var
  MessStr: string;
begin
  Result := '';
  Query1.close;
  Query1.sql.text := 'select * from airbasequote where loadport=''' + loadport +
    ''' and unloadport like ''%' + unloadport + '%'' and pointshipcom=''' +
    carrier + ''' ' +
    ' and inout=1 ';
  Query1.open;
  if query1.RecordCount = 0 then
  begin
    result := '没有发现与航空公司、装货港、卸货港相对应的该费用类别的信息';
    exit;
  end;
  Messstr := '45KG:' + QryTemp.Fieldbyname('Quote45').asstring;
  Messstr := Messstr + chr(13) + '100KG:' +
    QryTemp.Fieldbyname('Quote100').asstring;
  Messstr := Messstr + chr(13) + '300KG:' +
    QryTemp.Fieldbyname('Quote300').asstring;
  Messstr := Messstr + chr(13) + '500KG:' +
    QryTemp.Fieldbyname('Quote500').asstring;
  Messstr := Messstr + chr(13) + '1000KG:' +
    QryTemp.Fieldbyname('Quote1000').asstring;
  Messstr := Messstr + chr(13) + '1500KG:' +
    QryTemp.Fieldbyname('Quote1500').asstring;
  Messstr := Messstr + chr(13) + '2000KG:' +
    QryTemp.Fieldbyname('Quote2000').asstring;
  Messstr := Messstr + chr(13) + '2500KG:' +
    QryTemp.Fieldbyname('Quote2500').asstring;
  Messstr := Messstr + chr(13) + '3000KG:' +
    QryTemp.Fieldbyname('Quote3000').asstring + chr(13);

  Messstr := Messstr + chr(13) + 'S300KG:' +
    QryTemp.Fieldbyname('QuoteS300').asstring;
  Messstr := Messstr + chr(13) + 'S500KG:' +
    QryTemp.Fieldbyname('QuoteS500').asstring;
  Messstr := Messstr + chr(13) + 'S1000KG:' +
    QryTemp.Fieldbyname('QuoteS1000').asstring;
  Messstr := Messstr + chr(13) + 'S1500KG:' +
    QryTemp.Fieldbyname('QuoteS1500').asstring + chr(13);

  Messstr := Messstr + chr(13) + 'D500KG:' +
    QryTemp.Fieldbyname('QuoteD500').asstring;
  Messstr := Messstr + chr(13) + 'D1000KG:' +
    QryTemp.Fieldbyname('QuoteD1000').asstring;
  Messstr := Messstr + chr(13) + '其他:' +
    QryTemp.Fieldbyname('QuoteQt').asstring;
  result := messstr;
end;

function TFrmAllImportBillEdit.Calculate(Day, Weight: real; Formula: string):
  Real;
var
  VarArray: array[0..40] of string;
  Pstr: char;
  WordStr: string;
  i: integer;
  j: integer;
  VarFormula: string;
  FormulaChar: Pchar;
  StrLen: Integer;
  Data: real;
  k: integer;
  DataTemp: real;
begin
  try
    J := 0;

    StrLen := Length(Formula);
    Formulachar := pchar(formula);
    VarFormula := '';
    for i := 0 to Strlen - 1 do
    begin
      if FormulaChar[i] = ' ' then
        Continue;
      VarFormula := VarFormula + FormulaChar[i];
    end;

    StrLen := Length(varFormula);
    Formulachar := pchar(VarFormula);
    WordStr := '';
    for i := 0 to Strlen - 1 do
    begin
      pstr := FormulaChar[i];
      if Pos(Pstr, '+-*/') > 0 then
      begin
        VarArray[j] := WordStr;
        WordStr := '';
        j := j + 1;
        VarArray[j] := pstr;
        j := j + 1;
      end
      else
        WordStr := WordStr + PStr;
    end;
    VarArray[j] := WordStr;

    //Do Formula calculate
    if uppercase(VarArray[0]) = uppercase('X') then
      VarArray[0] := Floattostr(day);

    if uppercase(VarArray[2]) = uppercase('X') then
      VarArray[2] := floattostr(day);

    if vararray[1] = '+' then
      Data := StrToFloat(vararray[0]) + StrToFloat(vararray[2]);
    if vararray[1] = '-' then

⌨️ 快捷键说明

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