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

📄 frm_agreedocuedit.pas

📁 这是一个基于delphi平台的物流空运管理系统!
💻 PAS
字号:
unit Frm_agreedocuedit;

interface

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

type
  TFrmagreedocuedit = class(TFrmCargo)
    Label7: TLabel;
    Label6: TLabel;
    Label5: TLabel;
    Label1: TLabel;
    Label2: TLabel;
    Label4: TLabel;
    Label8: TLabel;
    Label9: TLabel;
    Label3: TLabel;
    Label10: TLabel;
    Label11: TLabel;
    Label12: TLabel;
    Label13: TLabel;
    Label14: TLabel;
    Label15: TLabel;
    Label16: TLabel;
    MemDes: TMemo;
    Panel1: TPanel;
    BitBtn4: TBitBtn;
    WriteDate: TDateTimePicker;
    EdtFileNo: TEdit;
    EdtCusCode: TEdit;
    EdtMawb: TEdit;
    ComHawb: TComboBox;
    ComFileName: TComboBox;
    ReceDate: TDateTimePicker;
    ReturnDate: TEdit;
    EdtFileNameNo: TEdit;
    EdtOper: TEdit;
    LV: TListView;
    BitBtn11: TBitBtn;
    BitBtn12: TBitBtn;
    BitBtn13: TBitBtn;
    ComCiqName: TComboBox;
    CiqRecedate: TEdit;
    CiqReturnDate: TEdit;
    ImageList1: TImageList;
    QryTemp: TADOQuery;
    procedure FormActivate(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure BitBtn11Click(Sender: TObject);
    procedure BitBtn12Click(Sender: TObject);
    procedure BitBtn13Click(Sender: TObject);
    procedure LVClick(Sender: TObject);
    procedure LVColumnClick(Sender: TObject; Column: TListColumn);
  private
    { Private declarations }
  public
    IsEdit: Boolean; //增加编辑标记
    Varcode: string;
    TrustCode: string;
    Alone: Boolean;
    { Public declarations }
  end;

var
  Frmagreedocuedit: TFrmagreedocuedit;

implementation

uses Frm_Main;

{$R *.dfm}

procedure TFrmagreedocuedit.FormActivate(Sender: TObject);
begin
  inherited;
  shortDateformat := 'yyyy-mm-dd';
  Writedate.Datetime := date;
  Recedate.date := date;
  edtoper.Text := FrmMain.LoginName;
  try
    {自动编号,工作单号,分运单号,主运单号,文件名称,文件编号,收到日期,归还日期,客户名称}
    QryTemp.Close;
    QryTemp.SQL.Text := 'select a.Kcode,a.fileno,b.hawb,a.mawb,' +
      'a.filename,a.filenameno,a.recedate,a.returndate,a.cuscode' +
      ' from Truckfile a,trustcontext b  where b.trustcode=*a.trustcode ' +
      ' and a.Trustcode=''' + trustcode + ''' ';
    QryTemp.Open;
    lv.Items.Clear;
    FrmMain.AddData(LV, QryTemp);
    QryTemp.Close;
  except
    ShowMessage('报关文件记录数据打开失败,请重试!!');
  end;
end;

procedure TFrmagreedocuedit.FormCreate(Sender: TObject);
var
  querystr: string;
begin
  inherited;
  {文件名称}
  QueryStr := 'select distinct filename from truckfile';
  FrmMain.Full_FilterCombobox(comfilename, querystr, 'filename');
  {报关行}
  QueryStr := 'select distinct ciqname from truckfile';
  FrmMain.Full_FilterCombobox(comciqname, querystr, 'ciqname');

  FrmMain.AddColumn(LV, '自动编号', 1);
  FrmMain.AddColumn(LV, '工作单号', 80);
  FrmMain.AddColumn(LV, '分运单号', 80);
  FrmMain.AddColumn(LV, '主运单号', 80);
  FrmMain.AddColumn(LV, '文件名称', 80);
  FrmMain.AddColumn(LV, '文件号码', 80);
  FrmMain.AddColumn(LV, '收到日期', 100);
  FrmMain.AddColumn(LV, '归还日期', 100);
  FrmMain.AddColumn(LV, '客户名称', 100);
  {自动编号,工作单号,分运单号,主运单号,文件名称,文件编号,收到日期,归还日期,客户名称}
end;

procedure TFrmagreedocuedit.BitBtn11Click(Sender: TObject);
begin
  inherited;
  Isedit := false;
  bitbtn11.Enabled := false;
end;

procedure TFrmagreedocuedit.BitBtn12Click(Sender: TObject);
var
  SearchCode: string;
  SqlStr: string;
begin
  inherited;
  {检查完毕}
  if lv.Items.Count = 0 then
  begin
    ShowMessage('记录集为空,不能够删除');
    exit;
  end;
  if LV.SelCount = 0 then
  begin
    ShowMessage('请选中一条要删除的记录');
    exit;
  end;

  if not Isedit then
  begin
    ShowMessage('报关文件纪录正在进行增加,请先进行保存或取消');
    exit;
  end;

  if MessageDlg('是否删除所选中的记录,请确定', mtConfirmation, [mbYes, mbNo], 0)
    = mrYes then
  begin
    SearchCode := lv.Selected.Caption;
    SqlStr := 'Delete from truckfile where (Kcode = ''' + Searchcode + ''')';
    if FrmMain.ExecSQL(SqlStr) then
    else
    begin
      ShowMessage('报关文件记录删除失败,清检查!');
      exit;
    end;
    lv.Selected.Delete;
  end;
end;

procedure TFrmagreedocuedit.BitBtn13Click(Sender: TObject);
var
   sqlstr:string;
   CodeGet:String;
   ValueArray:Array[0..20] of string;
   ArrayCount:integer;
begin
 inherited;
 if comhawb.text='' then
   begin
      ShowMessage('分运单号不能够为空,请选择录入!');
      exit;
   end;

  if IsEdit then //编辑操作
    begin
      if lv.SelCount=0 then
       begin
         ShowMessage('请选择一条待保存的记录后,再进行保存!');
         exit;
        end;

      sqlstr:='';
      FrmMain.UpStr(sqlstr,'truckfile');
      FrmMain.UpStr(sqlstr,'TrustCode',FrmMain.Getfieldtext(comhawb.text),',');
      FrmMain.UpStr(sqlstr,'FileNo',edtFileNo.text,',');
      FrmMain.UpStr(sqlstr,'mawb',edtmawb.text,',');
      FrmMain.UpStr(sqlstr,'cuscode',edtcuscode.text,',');
      FrmMain.UpStr(sqlstr,'ciqname',Comciqname.text,',');
      FrmMain.UpStr(sqlstr,'filename',Comfilename.text,',');
      FrmMain.UpStr(sqlstr,'filenameno',Edtfilenameno.text,',');
      FrmMain.UpStr(sqlstr,'recedate',datetimetostr(int(recedate.date)),',');
      FrmMain.UpStr(sqlstr,'returndate',returndate.text,',');
      FrmMain.UpStr(sqlstr,'ciqrecedate',ciqrecedate.text,',');
      FrmMain.UpStr(sqlstr,'ciqreturndate',ciqreturndate.text,',');
      FrmMain.UpStr(sqlstr,'operator',edtoper.text,',');
      FrmMain.UpStr(sqlstr,'occurtime',datetimetostr(int(writedate.date)),',');
      FrmMain.UpStr(sqlstr,'remark',memdes.lines.text,'');
      FrmMain.UpStr(sqlstr,'kcode=',lv.selected.caption,'w');
      if FrmMain.ExecSQL(SqlStr)  then
      else
        begin
           ShowMessage('操作有失误,报关文件数据保存失败,请检查!');
           exit;
        end;
  {自动编号,工作单号,分运单号,主运单号,文件名称,文件编号,收到日期,归还日期,客户名称}
     ValueArray[0]:=varcode;
     ValueArray[1]:=edtfileno.Text;
     ValueArray[2]:=FrmMain.getfieldtext(comhawb.text);
     ValueArray[3]:=edtmawb.Text;
     ValueArray[4]:=comfilename.Text;
     ValueArray[5]:=edtfilenameno.Text;
     ValueArray[6]:=datetimetostr(int(recedate.date));
     ValueArray[7]:=returndate.text;
     ValueArray[8]:=edtcuscode.Text;
     ArrayCount:=8;
     FrmMain.RefeshOne(ValueArray,ArrayCount,lv);
  end
else
  begin
   codeget:=FrmMain.GetCode('K');
   sqlstr:='insert into truckfile(kcode,trustcode,fileno,mawb,cuscode,'+
   'ciqname,filename,filenameno,recedate,returndate,ciqrecedate,ciqreturndate,'+
   'occurtime,PlaneOcean,operator,remark) values(';
   FrmMain.InsStr(sqlstr,codeget,',');
   FrmMain.InsStr(sqlstr,FrmMain.getfieldtext(comhawb.text),',');
   FrmMain.InsStr(sqlstr,edtFileno.text,',');
   FrmMain.InsStr(sqlstr,edtmawb.text,',');
   FrmMain.InsStr(sqlstr,edtcuscode.text,',');
   FrmMain.InsStr(sqlstr,comciqname.text,',');   
   FrmMain.InsStr(sqlstr,comfilename.text,',');
   FrmMain.InsStr(sqlstr,edtfilenameno.text,',');
   FrmMain.InsStr(sqlstr,datetimetostr(int(recedate.date)),',');
   FrmMain.InsStr(sqlstr,returndate.text,',');
   FrmMain.InsStr(sqlstr,ciqrecedate.text,',');
   FrmMain.InsStr(sqlstr,ciqreturndate.text,',');
   FrmMain.InsStr(sqlstr,datetimetostr(int(writedate.date)),',');
   FrmMain.InsStr(sqlstr,1,',');
   FrmMain.InsStr(sqlstr,edtoper.text,',');
   FrmMain.InsStr(sqlstr,memdes.lines.text,'');
   if FrmMain.ExecSQL(SqlStr) then
   else
     begin
       ShowMessage('操作有失误,报关文件数据保存失败,请检查!');
       exit;
     end;
     ValueArray[0]:=codeget;
     ValueArray[1]:=edtfileno.Text;
     ValueArray[2]:=FrmMain.getfieldtext(comhawb.text);
     ValueArray[3]:=edtmawb.Text;
     ValueArray[4]:=comfilename.Text;
     ValueArray[5]:=edtfilenameno.Text;
     ValueArray[6]:=datetimetostr(int(recedate.date));
     ValueArray[7]:=returndate.text;
     ValueArray[8]:=edtcuscode.Text;
     ArrayCount:=8;
     FrmMain.AddListView(ValueArray,ArrayCount,lv);
     BitBtn11.Enabled :=true;
     IsEdit:=true;
end;
end;

procedure TFrmagreedocuedit.LVClick(Sender: TObject);
begin
  inherited;
if lv.SelCount =0 then
    begin
      comhawb.text:='';
      edtfileno.Text:='';
      edtmawb.Text:='';
      edtcuscode.text:='';
      comciqName.text:='';
      comFileName.text:='';
      EdtFileNameno.text:='';
      recedate.date:=Date;
      returndate.text:='';
      ciqrecedate.text:='';
      ciqreturndate.text:='';
      WriteDate.Date:=date;
      Memdes.lines.text:='';
      isedit:=true;  {货物增加编辑状态处于编辑状态}
      bitbtn11.Enabled :=true;      
    end
  else
    begin
        isedit:=true;  {货物增加编辑状态处于编辑状态}
        bitbtn11.Enabled :=true;
         with Qrytemp do
           begin
              Close;
              SQL.Text:='select * from TruckFile where Kcode='''+lv.selected.caption+'''';
              Open;
          end;
          if QryTemp.recordcount>0 then
            begin
              comhawb.text:=FrmMain.SetComboBoxText(QryTemp.fieldbyname('trustcode').asstring,comhawb);
              edtfileno.Text:=QryTemp.fieldbyname('fileno').asstring;
              edtmawb.Text:=QryTemp.fieldbyname('mawb').asstring;
              edtcuscode.text:= QryTemp.FieldByName('cuscode').Asstring;
              comciqName.text:= QryTemp.FieldByName('ciqName').Asstring;
              comFileName.text:= QryTemp.FieldByName('FileName').Asstring;
              EdtFileNameno.text:= QryTemp.FieldByName('FileNameno').Asstring;
              recedate.date:=strtodatetime(QryTemp.fieldbyname('recedate').asstring);
              returndate.text:= QryTemp.FieldByName('returndate').Asstring;
              ciqrecedate.text:=QryTemp.fieldbyname('ciqrecedate').asstring;
              ciqreturndate.text:= QryTemp.FieldByName('ciqreturndate').Asstring;
              WriteDate.Date:=strtodatetime(QryTemp.fieldbyname('Occurtime').asstring);
              Memdes.lines.text:= QryTemp.FieldByName('Remark').Asstring;
              Edtoper.text:= QryTemp.FieldByName('operator').Asstring;
            end;
    end;
end;

procedure TFrmagreedocuedit.LVColumnClick(Sender: TObject;
  Column: TListColumn);
begin
  inherited;
FrmMain.SortLvData(LV,Column.index);
end;

end.

⌨️ 快捷键说明

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