unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ADODB, DB, Grids, DBGrids; type TForm1 = class(TForm) ADOConnection1: TADOConnection; ADODataSet1: TADODataSet; DBGrid1: TDBGrid; DataSource1: TDataSource; ADOConnection2: TADOConnection; ADOCommand1: TADOCommand; ADODataSet2: TADODataSet; procedure FormCreate(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); private { Private declarations } function CdatetoEdate(adate: string): string; public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} function TForm1.CdatetoEdate(adate: string): string; begin if adate = '' then Result := '' else Result := FormatDateTime('yyyy/mm/dd', EncodeDate(StrToInt(Copy(adate, 1, 2)) + 1911, StrToInt(Copy(adate, 4, 2)), StrToInt(Copy(adate, 7, 2)))); end; procedure TForm1.FormCreate(Sender: TObject); begin ADOConnection1.Connected := True; ADODataSet1.Open; ADOConnection2.Connected := True; ADOCommand1.Execute; ADODataSet2.Open; while not ADODataSet1.Eof do begin ADODataSet2.Append; ADODataSet2.FieldByName('員工編號').Value := ADODataSet1.FieldValues['A']; ADODataSet2.FieldByName('員工姓名').Value := ADODataSet1.FieldValues['B']; ADODataSet2.FieldByName('性別' ).Value := ADODataSet1.FieldValues['C']; ADODataSet2.FieldByName('轉存方式').Value := ADODataSet1.FieldValues['D']; ADODataSet2.FieldByName('到職日' ).AsString := CdatetoEdate(VarToStr(ADODataSet1.FieldValues['E'])); ADODataSet2.FieldByName('底薪' ).Value := StringReplace(VarToStr(ADODataSet1.FieldValues['F']), ',', '', [rfReplaceAll, rfIgnoreCase]); ADODataSet2.FieldByName('薪資別' ).Value := ADODataSet1.FieldValues['G']; ADODataSet2.FieldByName('行號' ).Value := ADODataSet1.FieldValues['H']; ADODataSet2.FieldByName('英文全名').Value := ADODataSet1.FieldValues['I']; ADODataSet1.MoveBy(1); ADODataSet2.FieldByName('職務' ).Value := ADODataSet1.FieldValues['A']; ADODataSet2.FieldByName('職務名稱' ).Value := ADODataSet1.FieldValues['B']; ADODataSet2.FieldByName('出生日期' ).AsString := CdatetoEdate(VarToStr(ADODataSet1.FieldValues['C'])); ADODataSet2.FieldByName('投保身份' ).Value := ADODataSet1.FieldValues['D']; ADODataSet2.FieldByName('離職日' ).AsString := CdatetoEdate(VarToStr(ADODataSet1.FieldValues['E'])); ADODataSet2.FieldByName('加班費' ).Value := StringReplace(VarToStr(ADODataSet1.FieldValues['F']), ',', '', [rfReplaceAll, rfIgnoreCase]); ADODataSet2.FieldByName('帳號' ).Value := ADODataSet1.FieldValues['G']; ADODataSet2.FieldByName('固定稅率' ).Value := StringReplace(VarToStr(ADODataSet1.FieldValues['H']), ',', '', [rfReplaceAll, rfIgnoreCase]); ADODataSet2.FieldByName('聯絡電話一').Value := ADODataSet1.FieldValues['I']; ADODataSet1.MoveBy(1); ADODataSet2.FieldByName('部門' ).Value := ADODataSet1.FieldValues['A']; ADODataSet2.FieldByName('部門名稱' ).Value := ADODataSet1.FieldValues['B']; ADODataSet2.FieldByName('身份證字號').Value := ADODataSet1.FieldValues['C']; ADODataSet2.FieldByName('勞保卡號' ).Value := ADODataSet1.FieldValues['D']; ADODataSet2.FieldByName('退休日' ).AsString := CdatetoEdate(VarToStr(ADODataSet1.FieldValues['E'])); ADODataSet2.FieldByName('全勤獎金' ).Value := StringReplace(VarToStr(ADODataSet1.FieldValues['F']), ',', '', [rfReplaceAll, rfIgnoreCase]); ADODataSet2.FieldByName('課稅方式' ).Value := ADODataSet1.FieldValues['G']; ADODataSet2.FieldByName('固定稅額' ).Value := StringReplace(VarToStr(ADODataSet1.FieldValues['H']), ',', '', [rfReplaceAll, rfIgnoreCase]); ADODataSet2.FieldByName('聯絡電話二').Value := ADODataSet1.FieldValues['I']; ADODataSet1.MoveBy(1); ADODataSet2.FieldByName('職等' ).Value := ADODataSet1.FieldValues['A']; ADODataSet2.FieldByName('職等名稱' ).Value := ADODataSet1.FieldValues['B']; ADODataSet2.FieldByName('婚姻狀況' ).Value := ADODataSet1.FieldValues['C']; ADODataSet2.FieldByName('健保號碼' ).Value := ADODataSet1.FieldValues['D']; ADODataSet2.FieldByName('資遣日' ).AsString := CdatetoEdate(VarToStr(ADODataSet1.FieldValues['E'])); ADODataSet2.FieldByName('退休金制度').Value := ADODataSet1.FieldValues['F']; ADODataSet2.FieldByName('戶籍地址' ).Value := ADODataSet1.FieldValues['G']; ADODataSet1.MoveBy(1); ADODataSet2.FieldByName('學歷' ).Value := ADODataSet1.FieldValues['A']; ADODataSet2.FieldByName('補助等級' ).Value := ADODataSet1.FieldValues['B']; ADODataSet2.FieldByName('年資' ).Value := StringReplace(VarToStr(ADODataSet1.FieldValues['C']), ',', '', [rfReplaceAll, rfIgnoreCase]); ADODataSet2.FieldByName('提繳身份別').Value := ADODataSet1.FieldValues['D']; ADODataSet2.FieldByName('通訊地址' ).Value := ADODataSet1.FieldValues['G']; ADODataSet1.MoveBy(1); ADODataSet2.Post; end; ADOConnection1.Connected := False; end; procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction); begin ADOConnection2.Connected := False; end; end.