Listing Program Tugas Akhir (TugasAkhir.dpr)
|
|
- Marsha Hawkins
- 5 years ago
- Views:
Transcription
1 L1 Listing Program Tugas Akhir (TugasAkhir.dpr) program TugasAkhir; uses Forms, udb in 'udb.pas' {dmta: TDataModule}, ufungsi in 'ufungsi.pas', uutama in 'uutama.pas' {futama}, ulogin in 'ulogin.pas' {flogin}, uuser in 'uuser.pas' {fuser}, ucabang in 'ucabang.pas' {fcabang}, uinput in 'uinput.pas' {finput}, uanalyzeregression in 'uanalyzeregression.pas' {fanalyzeregression}, uanalyzeplots in 'uanalyzeplots.pas' {fanalyzeplots}, uabout in 'uabout.pas' {fabout}, uuserguide in 'uuserguide.pas' {fuserguide}, uprint in 'uprint.pas' {fprint}, ukalkulasi in 'ukalkulasi.pas', ubarang in 'ubarang.pas' {fbarang}, uexcel in 'uexcel.pas' {fexcel}; {$R *.RES} Application.Initialize; Application.CreateForm(TdmTA, dmta); if dmta.isconnsucc then Application.CreateForm(TfUtama, futama); Application.Run; end. Listing Program Unit Utama (uutama.pas) unit uutama; interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, Menus, ExtCtrls, ComCtrls, Buttons, ImgList; type TfUtama = class(tform) mmutama: TMainMenu; File1: TMenuItem;
2 Data1: TMenuItem; Analyze1: TMenuItem; Help1: TMenuItem; N1: TMenuItem; Logout1: TMenuItem; Exit1: TMenuItem; Cabang1: TMenuItem; Regression1: TMenuItem; Plots1: TMenuItem; tmrshow: TTimer; imbiglogo: TImage; sbutama: TStatusBar; N3: TMenuItem; User1: TMenuItem; Window1: TMenuItem; About1: TMenuItem; UserGuide1: TMenuItem; Close1: TMenuItem; CloseAll1: TMenuItem; Print1: TMenuItem; Bevel1: TBevel; N2: TMenuItem; Input1: TMenuItem; tclock: TTimer; ilutama: TImageList; Barang1: TMenuItem; procedure FormCreate(Sender: TObject); procedure tmrshowtimer(sender: TObject); procedure FormShow(Sender: TObject); procedure FormResize(Sender: TObject); procedure User1Click(Sender: TObject); procedure Cabang1Click(Sender: TObject); procedure Input1Click(Sender: TObject); procedure Regression1Click(Sender: TObject); procedure Plots1Click(Sender: TObject); procedure About1Click(Sender: TObject); procedure UserGuide1Click(Sender: TObject); procedure Close1Click(Sender: TObject); procedure CloseAll1Click(Sender: TObject); procedure Logout1Click(Sender: TObject); procedure Exit1Click(Sender: TObject); procedure FormCloseQuery(Sender: TObject; CanClose: Boolean); procedure tclocktimer(sender: TObject); procedure Print1Click(Sender: TObject); procedure FormClose(Sender: TObject; Action: TCloseAction); procedure Barang1Click(Sender: TObject); L2
3 L3 protected procedure CreateWnd; override; private { Private declarations } FDrawDC: hdc; FOldClientProc, FNewClientProc: TFarProc; OrigPos: record Height, Width: integer; procedure fmclose; procedure ClientWndProc( Mesg: TMessage); procedure DrawBkGnd(Disp: Integer); public { Public declarations } futama: TfUtama; implementation uses ufungsi, ulogin, udb, uuser, uabout, uuserguide, ucabang, uanalyzeregression, uanalyzeplots, uinput, uprint, ubarang; {$R *.DFM} procedure TfUtama.ClientWndProc( Mesg: TMessage); with Mesg do case Msg of WM_ERASEBKGND: CallWindowProc(FOldClientProc, ClientHandle, Msg, wparam, lparam); FDrawDC := TWMEraseBkGnd(Mesg).DC; DrawBkGnd(0); Result := 1; WM_VSCROLL, WM_HSCROLL: Result := CallWindowProc(FOldClientProc, ClientHandle, Msg, wparam, lparam); InvalidateRect(ClientHandle, nil, true); else Result := CallWindowProc(FOldClientProc, ClientHandle, Msg, wparam, lparam);
4 L4 procedure TfUtama.CreateWnd; inherited CreateWnd; FNewClientProc := MakeObjectInstance(ClientWndProc); FOldClientProc := Pointer(GetWindowLong(ClientHandle, GWL_WNDPROC)); SetWindowLong(ClientHandle, GWL_WNDPROC, LongInt(FNewClientProc)); procedure TfUtama.DrawBkGnd(Disp: Integer); CR: TRect; GetWindowRect(ClientHandle, CR); if Disp = 0 then with imbiglogo do BitBlt(FDrawDC, (ClientWidth - Picture.Graphic.Width) div 2, (ClientHeight - Picture.Graphic.Height) div 2, Picture.Graphic.Width, Picture.Graphic.Height, Picture.Bitmap.Canvas.Handle, 0, 0, SRCCOPY) else with imbiglogo do StretchBlt(FDrawDC, 0, 0, CR.Right, CR.Bottom, Picture.Bitmap.Canvas.Handle, 0, 0, Picture.Width, Picture.Height, SRCCOPY); procedure TfUtama.FormCreate(Sender: TObject); // Set ukuran awal form OrigPos.Height := Height; OrigPos.Width := Width; Position := podesktopcenter; Height := 27; Width := 112; // Jalankan timer tmrshow.enabled := true; procedure TfUtama.tmrShowTimer(Sender: TObject); tmrshow.enabled := false; // Sembunyikan form utama Application.MainForm.Hide; // Tampilkan window 'Login' flogin := TfLogin.Create(Application); if flogin.showmodal = mrok then // Tampilkan lagi menu utama setelah login sukses Constraints.MinHeight := 400;
5 L5 Constraints.MinWidth := 600; Height := OrigPos.Height; Width := OrigPos.Width; Top:= (Screen.DesktopHeight - Height) div 2; Left := (Screen.DesktopWidth - Width) div 2; Application.MainForm.Show; WindowState := wsmaximized; sbutama.panels[0].width := Width - sbutama.panels[1].width; end else // Tutup aplikasi fmclose; Application.Terminate; procedure TfUtama.FormShow(Sender: TObject); // Setting item-item menu Close1.Enabled := false; CloseAll1.Enabled := false; if dmta.tbinput.isempty then Analyze1.Enabled := false else Analyze1.Enabled := true; Print1.Enabled := false; Logout1.Caption := 'Logout ' + UName + '..'; procedure TfUtama.FormResize(Sender: TObject); // Atur ukuran window dan panel di statusbar if Height < Constraints.MinHeight then Height := Constraints.MinHeight; if Width < Constraints.MinWidth then Width := Constraints.MinWidth; sbutama.panels[0].width := Width - sbutama.panels[1].width; procedure TfUtama.User1Click(Sender: TObject); // Buka window 'Data User' if FindMDIForm('fUser') then fuser.show else Application.CreateForm(TfUser, fuser); fuser.windowstate := wsmaximized; Close1.Enabled := true; CloseAll1.Enabled := true;
6 L6 procedure TfUtama.Cabang1Click(Sender: TObject); // Buka window 'Data Cabang' if FindMDIForm('fCabang') then fcabang.show else Application.CreateForm(TfCabang, fcabang); fcabang.windowstate := wsmaximized; Close1.Enabled := true; CloseAll1.Enabled := true; procedure TfUtama.Input1Click(Sender: TObject); // Buka window 'Input' if FindMDIForm('fInput') then finput.show else Application.CreateForm(TfInput, finput); finput.windowstate := wsmaximized; Close1.Enabled := true; CloseAll1.Enabled := true; procedure TfUtama.Regression1Click(Sender: TObject); // Buka window 'Analyze Regression' if FindMDIForm('fAnalyzeRegression') then fanalyzeregression.show else Application.CreateForm(TfAnalyzeRegression, fanalyzeregression); fanalyzeregression.windowstate := wsmaximized; Close1.Enabled := true; CloseAll1.Enabled := true; procedure TfUtama.Plots1Click(Sender: TObject); // Buka window 'Analyze Plots' if FindMDIForm('fAnalyzePlots') then fanalyzeplots.show else Application.CreateForm(TfAnalyzePlots, fanalyzeplots); fanalyzeplots.windowstate := wsmaximized; Close1.Enabled := true; CloseAll1.Enabled := true; procedure TfUtama.About1Click(Sender: TObject); // Buka window 'About' ShowModalForm(TfAbout);
7 L7 procedure TfUtama.UserGuide1Click(Sender: TObject); // Buka window 'User Guide' if FindMDIForm('fUserGuide') then fuserguide.show else Application.CreateForm(TfUserGuide, fuserguide); fuserguide.windowstate := wsmaximized; Close1.Enabled := true; CloseAll1.Enabled := true; procedure TfUtama.Close1Click(Sender: TObject); // Tutup form MDI child yang sedang aktif Application.MainForm.ActiveMDIChild.Close; if Application.MainForm.MDIChildCount = 0 then Close1.Enabled := false; CloseAll1.Enabled := false; procedure TfUtama.CloseAll1Click(Sender: TObject); // Tutup semua form-form MDI child CloseAllMDIForm; Close1.Enabled := false; CloseAll1.Enabled := false; procedure TfUtama.Logout1Click(Sender: TObject); tmp: String; // Verifikasi hendak logout aplikasi tmp := 'Do you really want to Logout?'; if Application.MessageBox(PChar(tmp), ' Confirm Message', MB_OKCANCEL) = mrok then CloseAll1Click(Sender); tmrshow.enabled := true; procedure TfUtama.Exit1Click(Sender: TObject); // Tutup window
8 L8 Close; procedure TfUtama.FormCloseQuery(Sender: TObject; CanClose: Boolean); tmp: String; // Verifikasi hendak keluar aplikasi tmp := 'Do you really want to Exit?'; if Application.MessageBox(PChar(tmp), ' Confirm Message', MB_OKCANCEL) = mrok then CanClose := true else CanClose := false; procedure TfUtama.tClockTimer(Sender: TObject); // Tampilkan waktu pada statusbar sbutama.panels[1].text := FormatDateTime(' dddd, d mmmm yyyy [hh:mm:ss AM/PM]', now); procedure TfUtama.Print1Click(Sender: TObject); // Buka window 'Print' Application.CreateForm(TfPrint, fprint); Hide; fprint.qrpreview.preview; Show; Print1.Enabled := true; Close1.Enabled := true; CloseAll1.Enabled := true; procedure TfUtama.FormClose(Sender: TObject; Action: TCloseAction); // Tutup aplikasi fmclose; Action := cafree; procedure TfUtama.fmClose; // Tutup koneksi database with dmta do tblogin.close;
9 L9 tbbarang.close; tbcabang.close; tbinput.close; dbta.connected := false; procedure TfUtama.Barang1Click(Sender: TObject); // Buka window 'Data Barang' if FindMDIForm('fBarang') then fbarang.show else Application.CreateForm(TfBarang, fbarang); fbarang.windowstate := wsmaximized; Close1.Enabled := true; CloseAll1.Enabled := true; end. Listing Program Unit User (uuser.pas) unit uuser; interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, ImgList, Db, StdCtrls, Buttons, Wwdbigrd, Grids, Wwdbgrid, wwspeedbutton, wwdbnavigator, wwclearpanel, ComCtrls, ExtCtrls; type TfUser = class(tform) Bevel1: TBevel; Panel1: TPanel; lbuser: TLabel; Panel2: TPanel; pcdatauser: TPageControl; tsviewuser: TTabSheet; tsubahpassword: TTabSheet; Panel3: TPanel; Panel4: TPanel; Panel5: TPanel; Panel6: TPanel; dsuser: TDataSource; Panel7: TPanel;
10 Panel9: TPanel; puser: TPanel; pubahpassword: TPanel; Bevel2: TBevel; Bevel3: TBevel; econfpass: TEdit; Label3: TLabel; Label7: TLabel; Label4: TLabel; eoldpass: TEdit; enewpass: TEdit; Label2: TLabel; Label6: TLabel; Label1: TLabel; bok: TButton; bcancel: TButton; Panel12: TPanel; Panel13: TPanel; Panel11: TPanel; bcancelview: TButton; tsedituser: TTabSheet; Panel8: TPanel; Panel14: TPanel; Panel15: TPanel; wwdbguser: TwwDBGrid; ilheader: TImageList; wwdbguseributton: TwwIButton; Image1: TImage; Image2: TImage; wwdbnnavigate: TwwDBNavigator; wwdbnnavigatefirst: TwwNavButton; wwdbnnavigateprior: TwwNavButton; wwdbnnavigatenext: TwwNavButton; wwdbnnavigatelast: TwwNavButton; wwdbnedit: TwwDBNavigator; wwdbneditinsert: TwwNavButton; wwdbneditdelete: TwwNavButton; wwdbneditedit: TwwNavButton; wwdbneditpost: TwwNavButton; wwdbneditcancel: TwwNavButton; wwdbneditrefresh: TwwNavButton; wwdbnnavigatepriorpage: TwwNavButton; wwdbnnavigatenextpage: TwwNavButton; procedure FormShow(Sender: TObject); procedure FormResize(Sender: TObject); procedure eoldpasskeypress(sender: TObject; Key: Char); L10
11 L11 procedure pcdatauserchange(sender: TObject); procedure bokclick(sender: TObject); procedure bcancelviewclick(sender: TObject); procedure FormClose(Sender: TObject; Action: TCloseAction); procedure wwdbgusercalctitleimage(sender: TObject; Field: TField; TitleImageAttributes: TwwTitleImageAttributes); procedure wwdbguserkeypress(sender: TObject; Key: Char); procedure FormActivate(Sender: TObject); procedure wwdbneditdeleteclick(sender: TObject); procedure dsuserstatechange(sender: TObject); private { Private declarations } public { Public declarations } fuser: TfUser; implementation uses Math, udb, ufungsi, uutama; {$R *.DFM} procedure TfUser.FormShow(Sender: TObject); tsviewuser.tabvisible := false; tsedituser.tabvisible := false; tsubahpassword.caption := '&Change Password '; // Untuk account ADMIN (tab 'View' dan 'Edit' member dimunculkan) if UpperCase(UName) = UpperCase(AdmAccount[0]) then tsviewuser.tabvisible := true; tsedituser.tabvisible := true; pcdatauser.activepage := tsviewuser; wwdbguser.setfocus; end // Untuk account selain ADMIN else eoldpass.setfocus; pcdatauserchange(self); procedure TfUser.FormResize(Sender: TObject); // Panel ubah password selalu di tengah form
12 L12 SetCenter(pUbahPassword, tsubahpassword); procedure TfUser.eOldPassKeyPress(Sender: TObject; Key: Char); // Tekan 'Esc' untuk tutup window if Key = #27 then Close; wwdbguserkeypress(sender, Key); procedure TfUser.pcDataUserChange(Sender: TObject); tmp: String; tmp := pcdatauser.activepage.caption; tmp := StringReplace(tmp, '&', '', [rfreplaceall]); // Batalkan update database bila berpindah tab if dsuser.state in [dsedit, dsinsert] then dsuser.dataset.cancel; // Saat pindah tab case pcdatauser.activepageindex of // Tab 'View' (untuk ADMIN) 0: puser.parent := tsviewuser; wwdbnedit.visible := false; wwdbnnavigate.visible := true; wwdbguser.readonly := true; wwdbguser.options := wwdbguser.options + [dgrowselect]; wwdbguser.setfocus; // Tab 'Edit' (untuk ADMIN) 1: puser.parent := tsedituser; wwdbnedit.visible := true; wwdbnedit.left := wwdbnnavigate.left; wwdbnnavigate.visible := false; wwdbguser.readonly := false; wwdbguser.options := wwdbguser.options - [dgrowselect]; wwdbguser.setfocus; // Tab 'Change password' untuk semua user 2: tmp := 'Change Password'; lbuser.caption := tmp; procedure TfUser.bOKClick(Sender: TObject);
13 L13 // Password lama yang diisikan ternyata tidak sama if eoldpass.text <> UPass then Beep; Application.MessageBox('Invalid Password', ' Error Message', MB_OK); eoldpass.text := ''; eoldpass.setfocus; Exit; // Konfirmasi password baru if enewpass.text <> econfpass.text then Beep; Application.MessageBox('Verify New Password', ' Error Message', MB_OK); enewpass.setfocus; Exit; // Update database dmta.execsql('update Login SET Passwd=''' + enewpass.text + ''' WHERE UCASE(UserID)=''' + UpperCase(UName) + ''''); Application.MessageBox('Password Changed', ' Confirm Message', MB_OK); // Tutup window Close; procedure TfUser.bCancelViewClick(Sender: TObject); // Tutup window Close; procedure TfUser.FormClose(Sender: TObject; Action: TCloseAction); Action := cafree; // Disable item menu 'Close' dan 'Close All' di form utama if Application.MainForm.MDIChildCount = 1 then futama.close1.enabled := false; futama.closeall1.enabled := false; procedure TfUser.wwdbgUserCalcTitleImage(Sender: TObject; Field: TField; TitleImageAttributes: TwwTitleImageAttributes);
14 L14 // Set image pada header grid tabel TitleImageAttributes.ImageIndex := Field.FieldNo - 1; procedure TfUser.wwdbgUserKeyPress(Sender: TObject; Key: Char); // Hanya memperbolehkan penginputan alfabet dan karakter '.' dan '_' saja if Key = #32 then Key := #0 else Key := AlphaNumSpecCharsFilter(Key, ['.', '_']); procedure TfUser.FormActivate(Sender: TObject); // Disable item menu 'Print' di form utama futama.print1.enabled := false; procedure TfUser.wwdbnEditDeleteClick(Sender: TObject); I, actrow: Integer; tmp: String; tmp := 'Do you really want to delete?'; if Application.MessageBox(PChar(tmp), ' Confirm Message', MB_OKCANCEL) = ID_CANCEL then Abort; actrow := 0; wwdbguser.updaterowcount; // Hapus semua record yang dipilih for I:=wwdbgUser.GetRowCount-2 downto 0 do wwdbguser.setactiverow(i); if wwdbguser.isselectedrecord then dsuser.dataset.delete; actrow := I; // Refresh tabel dsuser.dataset.refresh; wwdbguser.updaterowcount; // Set pointer ke record yang pertama dipilih atau record pertama if actrow < wwdbguser.getrowcount-1 then wwdbguser.setactiverow(actrow) else wwdbguser.setactiverow(0); Abort;
15 L15 procedure TfUser.dsUserStateChange(Sender: TObject); // Cek status dalam kondisi edit atau insert if dsuser.state in [dsedit, dsinsert] then wwdbguser.options := wwdbguser.options - [dgmultiselect] else wwdbguser.options := wwdbguser.options + [dgmultiselect]; end. Listing Program Unit Login (ulogin.pas) unit ulogin; interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, ActnList, StdCtrls, ExtCtrls; type TfLogin = class(tform) Label2: TLabel; Panel1: TPanel; imlogo: TImage; Label1: TLabel; Bevel1: TBevel; Label4: TLabel; Label5: TLabel; eusername: TEdit; epassword: TEdit; Label6: TLabel; Label7: TLabel; bok: TButton; bcancel: TButton; ActionList1: TActionList; actset: TAction; Image2: TImage; procedure FormShow(Sender: TObject); procedure actsetexecute(sender: TObject); procedure eusernamekeypress(sender: TObject; Key: Char); procedure bokclick(sender: TObject); private { Private declarations } public
16 L16 { Public declarations } flogin: TfLogin; implementation uses udb, ufungsi; {$R *.DFM} procedure TfLogin.FormShow(Sender: TObject); actsetexecute(sender); // Sementara //eusername.text := AdmAccount[0]; //epassword.text := AdmAccount[1]; procedure TfLogin.actSetExecute(Sender: TObject); // Reset penginputan eusername.text := ''; eusername.setfocus; epassword.text := ''; procedure TfLogin.eUsernameKeyPress(Sender: TObject; Key: Char); // Tekan 'Esc' untuk tutup window if Key = #27 then ModalResult := mrcancel; procedure TfLogin.bOKClick(Sender: TObject); // Username tidak boleh kosong if eusername.text = '' then Beep; Application.MessageBox('Username is Empty', ' Error Message', MB_OK); eusername.setfocus; Exit; // Ambil data user dari database
17 L17 dmta.openquery('select * FROM Login WHERE UCASE(UserID)=''' + UpperCase(eUsername.Text) + ''';'); // Kalau ada data user if not dmta.qusql.isempty then UPass := dmta.qusql.fields[1].asstring; // Cek passwordnya sama atau tidak dengan yang tercatat di database if epassword.text = UPass then UName := dmta.qusql.fields[0].asstring; ModalResult := mrok; end // Bila password salah else Beep; Application.MessageBox('Invalid Password', ' Error Message', MB_OK); actsetexecute(sender); end // Bila user tidak ada else Beep; Application.MessageBox('Invalid Username', ' Error Message', MB_OK); actsetexecute(sender); end. Listing Program Unit Database (udb.pas) unit udb; interface uses Windows, Messages, SysUtils, Classes, Controls, Forms, Dialogs, Db, DBTables; type TdmTA = class(tdatamodule) dbta: TDatabase; qusql: TQuery; quexec: TQuery;
18 L18 tblogin: TTable; tbloginuserid: TStringField; tbloginpasswd: TStringField; tbcabang: TTable; tbcabangid_cabang: TAutoIncField; tbcabangnm_cabang: TStringField; tbinput: TTable; tbinputid_input: TAutoIncField; tbinputbiaya_kirim: TFloatField; tbinputfrek_kirim: TIntegerField; tbinputjml_barang: TIntegerField; tbinputstok_barang: TIntegerField; tbinputjml_permintaan: TIntegerField; tbinputbiaya_total: TFloatField; tbbarang: TTable; tbbarangid_barang: TIntegerField; tbbarangjns_barang: TStringField; tbinputjns_barang: TIntegerField; tbinputjarak: TIntegerField; procedure DataModuleCreate(Sender: TObject); procedure tbloginbeforepost(dataset: TDataSet); procedure tbloginposterror(dataset: TDataSet; E: EDatabaseError; Action: TDataAction); procedure tbloginbeforeedit(dataset: TDataSet); procedure tbinputafterpost(dataset: TDataSet); procedure tbcabangbeforeedit(dataset: TDataSet); procedure tbcabangbeforepost(dataset: TDataSet); procedure tbbarangbeforeedit(dataset: TDataSet); procedure tbbarangbeforepost(dataset: TDataSet); procedure tbinputbeforepost(dataset: TDataSet); private { Private declarations } UIDPreEdit: String[30]; CabIDPreEdit, BrgIDPreEdit: Integer; public { Public declarations } IsConnSucc: Boolean; tbinputfieldtype: Array of TFieldType; procedure ExecSQL(sqlstring: String); procedure OpenQuery(sqlstring: String); const AdmAccount: Array[0..1] of String[30] = ('denna', 'arfiani');
19 L19 dmta: TdmTA; UName, UPass: String[30]; implementation uses ufungsi, uutama; {$R *.DFM} procedure TdmTA.DataModuleCreate(Sender: TObject); I: Integer; // Coba koneksi database try dbta.connected := true; // Aktifkan tabel Login OpenQuery('SELECT * FROM Login;'); if qusql.isempty then ExecSQL('INSERT INTO Login VALUES (''' + AdmAccount[0] + ''', ''' + AdmAccount[1] + ''');'); tblogin.filter := 'UserID<>''' + AdmAccount[0] + ''''; tblogin.filtered := true; tblogin.open; tbbarang.open; // Aktifkan tabel Barang tbcabang.open; // Aktifkan tabel Cabang tbinput.open; // Aktifkan tabel Input // Cek tipe data tabel Input --> diperlukan untuk unit uexcel nanti SetLength(tbInputFieldType, tbinput.fields.count-1); for I:=0 to tbinput.fields.count - 1 do if tbinput.fields[i].fullname <> 'ID_Input' then tbinputfieldtype[i] := tbinput.fields[i].datatype; IsConnSucc := true; except // Kalau koneksi ke database gagal on EDatabaseError do IsConnSucc := false; raise; procedure TdmTA.ExecSQL(sqlstring: String); // Eksekusi query SQL tertentu quexec.disablecontrols;
20 L20 try quexec.close; quexec.sql.clear; quexec.sql.add(sqlstring); quexec.execsql; finally quexec.enablecontrols; procedure TdmTA.OpenQuery(sqlstring: String); // Buka suatu tabel dengan menggunakan eksekusi query SQL qusql.disablecontrols; try qusql.close; qusql.sql.clear; qusql.sql.add(sqlstring); qusql.open; finally qusql.enablecontrols; procedure TdmTA.tbLoginBeforePost(DataSet: TDataSet); // Cek sebelum mengirimkan data Login ke database if tbloginuserid.value <> UIDPreEdit then OpenQuery('SELECT * FROM Login WHERE UCASE(UserID)=''' + UpperCase(tbLoginUserID.Value) + ''';'); if not qusql.isempty then Beep; Application.MessageBox('Username Already Exist', ' Error Message', MB_OK); DataSet.Cancel; Abort; end else if (tbloginuserid.value = '') or (tbloginuserid.value[1] = ' ') then Beep; Application.MessageBox('Invalid Username', ' Error Message', MB_OK); DataSet.Cancel; Abort;
21 L21 procedure TdmTA.tbLoginPostError(DataSet: TDataSet; E: EDatabaseError; Action: TDataAction); tmp: String; // Jika penginputan/pengeditan ke database gagal tmp := 'Error Input!' + #13 + 'Kemungkinan ada data yang sama.'; Beep; Application.MessageBox(PChar(tmp), ' Error Message', MB_OK); Action := daabort; procedure TdmTA.tbLoginBeforeEdit(DataSet: TDataSet); UIDPreEdit := tbloginuserid.value; procedure TdmTA.tbInputAfterPost(DataSet: TDataSet); // Refresh tabel setelah penginputan/pengeditan tbinput.refresh; if tbinput.isempty then futama.analyze1.enabled := false else futama.analyze1.enabled := true; procedure TdmTA.tbCabangBeforeEdit(DataSet: TDataSet); CabIDPreEdit := tbcabangid_cabang.value; procedure TdmTA.tbCabangBeforePost(DataSet: TDataSet); // Cek sebelum mengirimkan data Cabang ke database if tbcabangid_cabang.value < 0 then Beep; Application.MessageBox('Invalid ID', ' Error Message', MB_OK); DataSet.Cancel; Abort; if tbcabangid_cabang.value <> CabIDPreEdit then OpenQuery('SELECT * FROM Cabang WHERE ID_Cabang=' + IntToStr(tbCabangID_Cabang.Value) + ';');
22 L22 if not qusql.isempty then Beep; Application.MessageBox('ID Already Exist', ' Error Message', MB_OK); DataSet.Cancel; Abort; procedure TdmTA.tbBarangBeforeEdit(DataSet: TDataSet); BrgIDPreEdit := tbbarangid_barang.value; procedure TdmTA.tbBarangBeforePost(DataSet: TDataSet); // Cek sebelum mengirimkan data Barang ke database if tbbarangid_barang.value < 0 then Beep; Application.MessageBox('Invalid ID', ' Error Message', MB_OK); DataSet.Cancel; Abort; if tbbarangid_barang.value <> BrgIDPreEdit then OpenQuery('SELECT * FROM Barang WHERE ID_Barang=' + IntToStr(tbBarangID_Barang.Value) + ';'); if not qusql.isempty then Beep; Application.MessageBox('ID Already Exist', ' Error Message', MB_OK); DataSet.Cancel; Abort; procedure TdmTA.tbInputBeforePost(DataSet: TDataSet); // Cek sebelum mengirimkan data Input ke database if (tbinputbiaya_kirim.isnull) or (tbinputbiaya_kirim.value < 1) then tbinputbiaya_kirim.value := 1; if (tbinputfrek_kirim.isnull) or (tbinputfrek_kirim.value < 1) then tbinputfrek_kirim.value := 1;
23 L23 if (tbinputjml_barang.isnull) or (tbinputjml_barang.value < 1) then tbinputjml_barang.value := 1; if (tbinputstok_barang.isnull) or (tbinputstok_barang.value < 1) then tbinputstok_barang.value := 1; if (tbinputjml_permintaan.isnull) or (tbinputjml_permintaan.value < 1) then tbinputjml_permintaan.value := 1; if (tbinputbiaya_total.isnull) or (tbinputbiaya_total.value < 1) then tbinputbiaya_total.value := 1; if (tbinputjns_barang.isnull) or (tbinputjns_barang.value < 1) then if tbbarang.isempty then Beep; Application.MessageBox('Data is Empty', ' Error Message', MB_OK); DataSet.Cancel; Abort; end else tbbarang.first; tbinputjns_barang.value := tbbarangid_barang.value; if (tbinputjarak.isnull) or (tbinputjarak.value < 1) then if tbcabang.isempty then Beep; Application.MessageBox('Data is Empty', ' Error Message', MB_OK); DataSet.Cancel; Abort; end else tbcabang.first; tbinputjarak.value := tbcabangid_cabang.value; end. Listing Program Unit Barang (ubarang.pas) unit ubarang;
24 L24 nterface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, ImgList, Db, StdCtrls, Mask, wwdbedit, Wwdbspin, Buttons, Wwdbigrd, Grids, Wwdbgrid, wwspeedbutton, wwdbnavigator, wwclearpanel, ComCtrls, ExtCtrls; type TfBarang = class(tform) Bevel1: TBevel; Panel1: TPanel; lbbarang: TLabel; Panel2: TPanel; pcdatabarang: TPageControl; tsviewbarang: TTabSheet; Panel3: TPanel; Panel4: TPanel; Panel5: TPanel; Panel6: TPanel; dsbarang: TDataSource; Panel7: TPanel; Panel9: TPanel; pbarang: TPanel; Panel12: TPanel; Panel13: TPanel; Panel11: TPanel; bclose: TButton; tseditbarang: TTabSheet; Panel8: TPanel; Panel14: TPanel; Panel15: TPanel; wwdbgbarang: TwwDBGrid; wwdbgbarangibutton: TwwIButton; wwdbseid: TwwDBSpinEdit; Image1: TImage; imbarang: TImageList; wwdbnnavigate: TwwDBNavigator; wwdbnnavigatefirst: TwwNavButton; wwdbnnavigateprior: TwwNavButton; wwdbnnavigatenext: TwwNavButton; wwdbnnavigatelast: TwwNavButton; wwdbnedit: TwwDBNavigator; wwdbneditinsert: TwwNavButton; wwdbneditdelete: TwwNavButton; wwdbneditedit: TwwNavButton; wwdbneditpost: TwwNavButton;
25 L25 wwdbneditcancel: TwwNavButton; wwdbneditrefresh: TwwNavButton; wwdbnnavigatepriorpage: TwwNavButton; wwdbnnavigatenextpage: TwwNavButton; procedure FormShow(Sender: TObject); procedure pcdatabarangchange(sender: TObject); procedure bcloseclick(sender: TObject); procedure bclosekeypress(sender: TObject; Key: Char); procedure FormClose(Sender: TObject; Action: TCloseAction); procedure wwdbgbarangcalctitleimage(sender: TObject; Field: TField; TitleImageAttributes: TwwTitleImageAttributes); procedure FormActivate(Sender: TObject); procedure wwdbneditdeleteclick(sender: TObject); procedure dsbarangstatechange(sender: TObject); private { Private declarations } public { Public declarations } fbarang: TfBarang; implementation uses Math, udb, ufungsi, uutama; {$R *.DFM} procedure TfBarang.FormShow(Sender: TObject); pcdatabarang.activepage := tsviewbarang; wwdbgbarang.setfocus; pcdatabarangchange(self); procedure TfBarang.pcDataBarangChange(Sender: TObject); tmp: String; tmp := pcdatabarang.activepage.caption; tmp := StringReplace(tmp, '&', '', [rfreplaceall]); lbbarang.caption := tmp; // Batalkan update database bila berpindah tab if dsbarang.state in [dsedit, dsinsert] then dsbarang.dataset.cancel; // Saat pindah tab
26 L26 case pcdatabarang.activepageindex of // Tab 'View' 0: pbarang.parent := tsviewbarang; wwdbnedit.visible := false; wwdbnnavigate.visible := true; wwdbgbarang.readonly := true; wwdbgbarang.options := wwdbgbarang.options + [dgrowselect]; // Tab 'Edit' 1: pbarang.parent := tseditbarang; wwdbnedit.visible := true; wwdbnedit.left := wwdbnnavigate.left; wwdbnnavigate.visible := false; wwdbgbarang.readonly := false; wwdbgbarang.options := wwdbgbarang.options - [dgrowselect]; wwdbgbarang.setfocus; procedure TfBarang.bCloseClick(Sender: TObject); // Tutup window Close; procedure TfBarang.bCloseKeyPress(Sender: TObject; Key: Char); // Tekan 'Esc' untuk tutup window if Key = #27 then Close; procedure TfBarang.FormClose(Sender: TObject; Action: TCloseAction); Action := cafree; // Disable item menu 'Close' dan 'Close All' di form utama if Application.MainForm.MDIChildCount = 1 then futama.close1.enabled := false; futama.closeall1.enabled := false; procedure TfBarang.wwdbgBarangCalcTitleImage(Sender: TObject;
27 L27 Field: TField; TitleImageAttributes: TwwTitleImageAttributes); // Set image pada header grid tabel TitleImageAttributes.ImageIndex := Field.FieldNo - 1; procedure TfBarang.FormActivate(Sender: TObject); // Disable item menu 'Print' di form utama futama.print1.enabled := false; procedure TfBarang.wwdbnEditDeleteClick(Sender: TObject); I, actrow: Integer; tmp: String; tmp := 'Do you really want to delete?'; if Application.MessageBox(PChar(tmp), ' Confirm Message', MB_OKCANCEL) = ID_CANCEL then Abort; actrow := 0; wwdbgbarang.updaterowcount; // Hapus semua record yang dipilih for I:=wwdbgBarang.GetRowCount-2 downto 0 do wwdbgbarang.setactiverow(i); if wwdbgbarang.isselectedrecord then dsbarang.dataset.delete; actrow := I; // Refresh tabel dsbarang.dataset.refresh; wwdbgbarang.updaterowcount; // Set pointer ke record yang pertama dipilih atau record pertama if actrow < wwdbgbarang.getrowcount-1 then wwdbgbarang.setactiverow(actrow) else wwdbgbarang.setactiverow(0); Abort; procedure TfBarang.dsBarangStateChange(Sender: TObject); // Cek status dalam kondisi edit atau insert
28 L28 if dsbarang.state in [dsedit, dsinsert] then wwdbgbarang.options := wwdbgbarang.options - [dgmultiselect] else wwdbgbarang.options := wwdbgbarang.options + [dgmultiselect]; end. Listing Program Unit Cabang (ucabang.pas) unit ucabang; interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, ImgList, Db, StdCtrls, Mask, wwdbedit, Wwdbspin, Buttons, Wwdbigrd, Grids, Wwdbgrid, wwspeedbutton, wwdbnavigator, wwclearpanel, ComCtrls, ExtCtrls; type TfCabang = class(tform) Bevel1: TBevel; Panel1: TPanel; lbcabang: TLabel; Panel2: TPanel; pcdatacabang: TPageControl; tsviewcabang: TTabSheet; Panel3: TPanel; Panel4: TPanel; Panel5: TPanel; Panel6: TPanel; dscabang: TDataSource; Panel7: TPanel; Panel9: TPanel; pcabang: TPanel; Panel12: TPanel; Panel13: TPanel; Panel11: TPanel; bclose: TButton; tseditcabang: TTabSheet; Panel8: TPanel; Panel14: TPanel; Panel15: TPanel; Image1: TImage; wwdbgcabang: TwwDBGrid; wwdbgrid1ibutton: TwwIButton;
29 L29 imcabang: TImageList; wwdbseid: TwwDBSpinEdit; wwdbnnavigate: TwwDBNavigator; wwdbnnavigatefirst: TwwNavButton; wwdbnnavigateprior: TwwNavButton; wwdbnnavigatenext: TwwNavButton; wwdbnnavigatelast: TwwNavButton; wwdbnedit: TwwDBNavigator; wwdbneditinsert: TwwNavButton; wwdbneditdelete: TwwNavButton; wwdbneditedit: TwwNavButton; wwdbneditpost: TwwNavButton; wwdbneditcancel: TwwNavButton; wwdbneditrefresh: TwwNavButton; wwdbnnavigatepriorpage: TwwNavButton; wwdbnnavigatenextpage: TwwNavButton; procedure FormShow(Sender: TObject); procedure pcdatacabangchange(sender: TObject); procedure bcloseclick(sender: TObject); procedure bclosekeypress(sender: TObject; Key: Char); procedure FormClose(Sender: TObject; Action: TCloseAction); procedure wwdbgcabangcalctitleimage(sender: TObject; Field: TField; TitleImageAttributes: TwwTitleImageAttributes); procedure FormActivate(Sender: TObject); procedure wwdbneditdeleteclick(sender: TObject); procedure dscabangstatechange(sender: TObject); private { Private declarations } public { Public declarations } fcabang: TfCabang; implementation uses Math, udb, ufungsi, uutama; {$R *.DFM} procedure TfCabang.FormShow(Sender: TObject); pcdatacabang.activepage := tsviewcabang; wwdbgcabang.setfocus; pcdatacabangchange(self);
30 L30 procedure TfCabang.pcDataCabangChange(Sender: TObject); tmp: String; tmp := pcdatacabang.activepage.caption; tmp := StringReplace(tmp, '&', '', [rfreplaceall]); lbcabang.caption := tmp; // Batalkan update database bila berpindah tab if dscabang.state in [dsedit, dsinsert] then dscabang.dataset.cancel; // Saat pindah tab case pcdatacabang.activepageindex of // Tab 'View' 0: pcabang.parent := tsviewcabang; wwdbnedit.visible := false; wwdbnnavigate.visible := true; wwdbgcabang.readonly := true; wwdbgcabang.options := wwdbgcabang.options + [dgrowselect]; // Tab 'Edit' 1: pcabang.parent := tseditcabang; wwdbnedit.visible := true; wwdbnedit.left := wwdbnnavigate.left; wwdbnnavigate.visible := false; wwdbgcabang.readonly := false; wwdbgcabang.options := wwdbgcabang.options - [dgrowselect]; wwdbgcabang.setfocus; procedure TfCabang.bCloseClick(Sender: TObject); // Tutup window Close; procedure TfCabang.bCloseKeyPress(Sender: TObject; Key: Char); // Tekan 'Esc' untuk tutup window if Key = #27 then Close;
31 L31 procedure TfCabang.FormClose(Sender: TObject; Action: TCloseAction); Action := cafree; // Disable item menu 'Close' dan 'Close All' di form utama if Application.MainForm.MDIChildCount = 1 then futama.close1.enabled := false; futama.closeall1.enabled := false; procedure TfCabang.wwdbgCabangCalcTitleImage(Sender: TObject; Field: TField; TitleImageAttributes: TwwTitleImageAttributes); // Set image pada header grid tabel TitleImageAttributes.ImageIndex := Field.FieldNo - 1; procedure TfCabang.FormActivate(Sender: TObject); // Disable item menu 'Print' di form utama futama.print1.enabled := false; procedure TfCabang.wwdbnEditDeleteClick(Sender: TObject); I, actrow: Integer; tmp: String; tmp := 'Do you really want to delete?'; if Application.MessageBox(PChar(tmp), ' Confirm Message', MB_OKCANCEL) = ID_CANCEL then Abort; actrow := 0; wwdbgcabang.updaterowcount; // Hapus semua record yang dipilih for I:=wwdbgCabang.GetRowCount-2 downto 0 do wwdbgcabang.setactiverow(i); if wwdbgcabang.isselectedrecord then dscabang.dataset.delete; actrow := I; // Refresh tabel dscabang.dataset.refresh;
32 L32 wwdbgcabang.updaterowcount; // Set pointer ke record yang pertama dipilih atau record pertama if actrow < wwdbgcabang.getrowcount-1 then wwdbgcabang.setactiverow(actrow) else wwdbgcabang.setactiverow(0); Abort; procedure TfCabang.dsCabangStateChange(Sender: TObject); // Cek status dalam kondisi edit atau insert if dscabang.state in [dsedit, dsinsert] then wwdbgcabang.options := wwdbgcabang.options - [dgmultiselect] else wwdbgcabang.options := wwdbgcabang.options + [dgmultiselect]; end. Listing Program Unit Input (uinput.pas) unit uinput; interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, ImgList, Db, wwdblook, StdCtrls, Mask, wwdbedit, Wwdbspin, Buttons, Wwdbigrd, Grids, Wwdbgrid, wwspeedbutton, wwdbnavigator, wwclearpanel, ComCtrls, ExtCtrls; type TfInput = class(tform) Bevel1: TBevel; Panel1: TPanel; lbinput: TLabel; Panel2: TPanel; pcdatainput: TPageControl; tsviewinput: TTabSheet; Panel3: TPanel; Panel4: TPanel; Panel5: TPanel; Panel6: TPanel; dsinput: TDataSource; Panel7: TPanel; Panel9: TPanel;
33 pinput: TPanel; Panel12: TPanel; Panel13: TPanel; Panel11: TPanel; bclose: TButton; tseditinput: TTabSheet; Panel8: TPanel; Panel14: TPanel; Panel15: TPanel; wwdbginput: TwwDBGrid; wwdbginputibutton: TwwIButton; Image1: TImage; imkirim: TImageList; wwdbsefrekkirim: TwwDBSpinEdit; wwdbsejmlbarang: TwwDBSpinEdit; wwdbsestokbarang: TwwDBSpinEdit; wwdbsejmlpermintaan: TwwDBSpinEdit; wwdblcjenisbarang: TwwDBLookupCombo; wwdblcjarak: TwwDBLookupCombo; wwdbnnavigate: TwwDBNavigator; wwdbnnavigatefirst: TwwNavButton; wwdbnnavigateprior: TwwNavButton; wwdbnnavigatenext: TwwNavButton; wwdbnnavigatelast: TwwNavButton; wwdbnedit: TwwDBNavigator; wwdbneditinsert: TwwNavButton; wwdbneditdelete: TwwNavButton; wwdbneditedit: TwwNavButton; wwdbneditpost: TwwNavButton; wwdbneditcancel: TwwNavButton; wwdbneditrefresh: TwwNavButton; wwdbneditexcel: TwwNavButton; imnavigate: TImageList; odexcel: TOpenDialog; wwdbnnavigatepriorpage: TwwNavButton; wwdbnnavigatenextpage: TwwNavButton; wwdbneditseparator: TwwNavButton; procedure FormShow(Sender: TObject); procedure pcdatainputchange(sender: TObject); procedure bcloseclick(sender: TObject); procedure bclosekeypress(sender: TObject; Key: Char); procedure FormClose(Sender: TObject; Action: TCloseAction); procedure wwdbginputcalctitleimage(sender: TObject; Field: TField; TitleImageAttributes: TwwTitleImageAttributes); procedure FormActivate(Sender: TObject); procedure wwdbneditdeleteclick(sender: TObject); L33
34 L34 procedure dsinputstatechange(sender: TObject); procedure wwdbneditexcelclick(sender: TObject); private { Private declarations } public { Public declarations } finput: TfInput; implementation uses Math, udb, ufungsi, uutama, uexcel; {$R *.DFM} procedure TfInput.FormShow(Sender: TObject); pcdatainput.activepage := tsviewinput; wwdbginput.setfocus; pcdatainputchange(self); procedure TfInput.pcDataInputChange(Sender: TObject); tmp: String; tmp := pcdatainput.activepage.caption; tmp := StringReplace(tmp, '&', '', [rfreplaceall]); lbinput.caption := tmp; // Batalkan update database bila berpindah tab if dsinput.state in [dsedit, dsinsert] then dsinput.dataset.cancel; // Saat pindah tab case pcdatainput.activepageindex of // Tab 'View' 0: pinput.parent := tsviewinput; wwdbnedit.visible := false; wwdbnnavigate.visible := true; wwdbginput.readonly := true; wwdbginput.options := wwdbginput.options + [dgrowselect]; // Tab 'Edit' 1: pinput.parent := tseditinput;
35 L35 wwdbnedit.visible := true; wwdbnedit.left := wwdbnnavigate.left; wwdbnnavigate.visible := false; wwdbginput.readonly := false; wwdbginput.options := wwdbginput.options - [dgrowselect]; wwdbginput.setfocus; procedure TfInput.bCloseClick(Sender: TObject); // Tutup window Close; procedure TfInput.bCloseKeyPress(Sender: TObject; Key: Char); // Tekan 'Esc' untuk tutup window if Key = #27 then Close; procedure TfInput.FormClose(Sender: TObject; Action: TCloseAction); Action := cafree; // Disable item menu 'Close' dan 'Close All' di form utama if Application.MainForm.MDIChildCount = 1 then futama.close1.enabled := false; futama.closeall1.enabled := false; procedure TfInput.wwdbgInputCalcTitleImage(Sender: TObject; Field: TField; TitleImageAttributes: TwwTitleImageAttributes); // Set image pada header grid tabel TitleImageAttributes.ImageIndex := Field.FieldNo - 1; procedure TfInput.FormActivate(Sender: TObject); // Disable item menu 'Print' di form utama futama.print1.enabled := false;
36 L36 procedure TfInput.wwdbnEditDeleteClick(Sender: TObject); I, actrow: Integer; tmp: String; tmp := 'Do you really want to delete?'; if Application.MessageBox(PChar(tmp), ' Confirm Message', MB_OKCANCEL) = ID_CANCEL then Abort; actrow := 0; wwdbginput.updaterowcount; // Hapus semua record yang dipilih for I:=wwdbgInput.GetRowCount-2 downto 0 do wwdbginput.setactiverow(i); if wwdbginput.isselectedrecord then dsinput.dataset.delete; actrow := I; // Refresh tabel dsinput.dataset.refresh; wwdbginput.updaterowcount; // Set pointer ke record yang pertama dipilih atau record pertama if actrow < wwdbginput.getrowcount-1 then wwdbginput.setactiverow(actrow) else wwdbginput.setactiverow(0); Abort; procedure TfInput.dsInputStateChange(Sender: TObject); // Cek status dalam kondisi edit atau insert if dsinput.state in [dsedit, dsinsert] then wwdbginput.options := wwdbginput.options - [dgmultiselect] else wwdbginput.options := wwdbginput.options + [dgmultiselect]; procedure TfInput.wwdbnEditExcelClick(Sender: TObject); // Cari file spreadsheet yang hendak diimport datanya odexcel.initialdir := GetCurrentDir; if odexcel.execute then // Buka window 'Excel' lalu pilih record mana saja yang hendak dimasukkan ke dalam tabel Input Application.CreateForm(TfExcel, fexcel);
37 L37 fexcel.fetchdata(odexcel.filename); fexcel.showmodal; end. Listing Program Unit Excel (uexcel.pas) unit uexcel; interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, ImgList, Db, ADODB, Buttons, Wwdbigrd, Grids, Wwdbgrid, wwspeedbutton, wwdbnavigator, wwclearpanel, StdCtrls, ExtCtrls, Dialogs; type TfExcel = class(tform) Bevel1: TBevel; Panel1: TPanel; lbbarang: TLabel; Panel2: TPanel; Panel3: TPanel; Panel4: TPanel; Panel5: TPanel; Panel6: TPanel; dsexcel: TDataSource; Image1: TImage; Panel10: TPanel; Panel13: TPanel; Panel11: TPanel; bclose: TButton; wwdbgexcel: TwwDBGrid; wwdbgbarangibutton: TwwIButton; adoconnexcel: TADOConnection; adoqsql: TADOQuery; wwdbnnavigate: TwwDBNavigator; wwdbnnavigatefirst: TwwNavButton; wwdbnnavigatepriorpage: TwwNavButton; wwdbnnavigateprior: TwwNavButton; wwdbnnavigatenextpage: TwwNavButton; wwdbnnavigatenext: TwwNavButton; wwdbnnavigatelast: TwwNavButton;
38 L38 wwdbnnavigaterefresh: TwwNavButton; wwdbnnavigateseparator: TwwNavButton; wwdbnnavigateadd: TwwNavButton; wwdbnnavigateaddall: TwwNavButton; imnavigate: TImageList; procedure bclosekeypress(sender: TObject; Key: Char); procedure wwdbnnavigateaddclick(sender: TObject); procedure wwdbnnavigateaddallclick(sender: TObject); procedure FormShow(Sender: TObject); private { Private declarations } public { Public declarations } procedure ConnectToExcel(FileName: String); procedure FetchData(FileName: String); fexcel: TfExcel; implementation uses Math, udb; {$R *.DFM} procedure TfExcel.ConnectToExcel(FileName: String); strconn: WideString; // Koneksi ke Excel menggunakan ADOConnection strconn := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=' + FileName + ';Extended Properties=Excel 8.0;'; adoconnexcel.connected := false; adoconnexcel.connectionstring := strconn; try adoconnexcel.open; except Beep; Application.MessageBox('Error Message', PChar('Unable to connect to Excel, make sure the spreadsheet ' + ExtractFileName(FileName) + ' exist!'), MB_OK); procedure TfExcel.FetchData(FileName: String);
39 L39 // Cek koneksi Excel if not adoconnexcel.connected then ConnectToExcel(FileName); adoqsql.connection := adoconnexcel; adoqsql.close; // Ambil data dari file Excel adoqsql.sql.text := 'SELECT * FROM [Sheet1$]'; try adoqsql.open; except Beep; Application.MessageBox('Error Message', 'Unable to read data from Excel!', MB_OK); procedure TfExcel.bCloseKeyPress(Sender: TObject; Key: Char); // Tekan 'Esc' untuk tutup window if Key = #27 then Close; procedure TfExcel.wwdbnNavigateAddClick(Sender: TObject); I, J: Integer; Valid: Boolean; Data: Array of Variant; DataStr: Array of String; // Inisialisasi array iabel SetLength(Data, dmta.tbinput.fields.count-1); SetLength(DataStr, dmta.tbinput.fields.count-1); // Update jumlah record yang ada wwdbgexcel.updaterowcount; for I:=0 to wwdbgexcel.getrowcount-2 do // Fokuskan ke record-i wwdbgexcel.setactiverow(i); // Jika record tersebut telah dipilih if wwdbgexcel.isselectedrecord then Valid := true; for J:=0 to dsexcel.dataset.fields.count-1 do // Cek tipe data masing-masing cell Excel worksheet if dsexcel.dataset.fields[j].datatype = ftfloat then
40 L40 // Referensikan dengan tipe data dari tabel Input if dmta.tbinputfieldtype[j] = ftinteger then // Konversi ke tipe Integer dengan pembulatan ke atas Data[J] := Floor(dsExcel.DataSet.Fields[J].Value); DataStr[J] := IntToStr(Data[J]); end else // Tetap dengan tipe real Data[J] := dsexcel.dataset.fields[j].value; DataStr[J] := FloatToStr(Data[J]); end else Valid := false; // Jika semua data valid baru eksekusi SQL penambahan data if Valid then dmta.execsql('insert INTO Input (Biaya_Kirim, Frek_Kirim, Jns_Barang, Jarak, Jml_Barang, Stok_Barang, Jml_Permintaan, Biaya_Total) ' + 'VALUES (' + DataStr[0] + ', ' + DataStr[1] + ', ' + DataStr[2] + ', ' + DataStr[3] + ', ' + DataStr[4] + ', ' + DataStr[5] + ', ' + DataStr[6] + ', ' + DataStr[7] + ');'); dmta.tbinput.refresh; // Refresh tabel Input Close; // Tutup window 'Excel' procedure TfExcel.wwdbnNavigateAddAllClick(Sender: TObject); wwdbgexcel.selectall; // Pilih semua record wwdbnnavigateaddclick(sender); // Masukkan semua record ke dalam tabel Input procedure TfExcel.FormShow(Sender: TObject); wwdbgexcel.selectrecord; // Fokus pada record pertama // Jika banyaknya kolom di file Excel tidak sesuai dengan jumlah iable (jumlah field- 1 di tabel Input) if wwdbgexcel.fieldcount <> dmta.tbinput.fields.count-1 then Beep; Application.MessageBox('Error Message', PChar('Excel file should have exact ' + IntToStr(dmTA.tbInput.Fields.Count-1) + ' columns!'), MB_OK); Close;
41 L41 end. Listing Program Unit Fungsi (ufungsi.pas) unit ufungsi; interface uses Messages, Windows, SysUtils, Classes, Graphics, Controls, Forms; type Str30 = String[30]; function SpecCharsFilter(key: Char; spec: array of Char): Char; function NumericFilter(key: Char): Char; function AlphabeticFilter(key: Char): Char; function AlphaNumericFilter(key: Char): Char; function AlphaNumSpecCharsFilter(key: Char; spec: array of Char): Char; procedure ShowModalForm(FormClass: TFormClass); function FindMDIForm(MDIFormName: String): Boolean; procedure CloseAllMDIForm; procedure SetCenter(Cont1: TControl; Cont2: TControl); implementation function SpecCharsFilter(key: Char; spec: array of Char): Char; temp: Char; i: word; temp := #0; for i:=0 to Length(spec)-1 do if key = spec[i] then temp := key; break; result := temp; function NumericFilter(key: Char): Char; if not(((key >= #48) and (key <= #57)) or (key = #8)) then
42 L42 result := #0 else result := key; function AlphabeticFilter(key: Char): Char; if not(((key >= #65) and (key <= #90)) or ((key >= #97) and (key <= #122)) or (key = #8) or (key = #32)) then result := #0 else result := key; function AlphaNumericFilter(key: Char): Char; temp: Char; temp := NumericFilter(key); if temp <> key then temp := AlphabeticFilter(key); if temp <> key then temp := #0; result := temp; function AlphaNumSpecCharsFilter(key: Char; spec: array of Char): Char; temp: Char; temp := AlphaNumericFilter(key); if temp <> key then temp := SpecCharsFilter(key, spec); result := temp; procedure ShowModalForm(FormClass: TFormClass); with FormClass.Create(Application) do try ShowModal; finally Free; function FindMDIForm(MDIFormName: String): Boolean; MDICount: Byte; Found: Boolean; Found := false;
43 L43 MDICount := Application.MainForm.MDIChildCount; while (MDICount > 0) and (Found = false) do if Application.MainForm.ActiveMDIChild.Name = MDIFormName then Found := true; Application.MainForm.Next; Dec(MDICount); Result := Found; procedure CloseAllMDIForm; MDICount: Byte; MDICount := Application.MainForm.MDIChildCount; while MDICount > 0 do Application.MainForm.ActiveMDIChild.Close; Application.MainForm.Next; Dec(MDICount); procedure SetCenter(Cont1: TControl; Cont2: TControl); if Cont1.Width < Cont2.ClientWidth then Cont1.Left := (Cont2.ClientWidth - Cont1.Width) div 2 else Cont1.Left := 0; if Cont1.Height < Cont2.ClientHeight then Cont1.Top := (Cont2.ClientHeight - Cont1.Height) div 2 else Cont1.Top := 0; end. Listing Program Unit Kalkulasi (ukalkulasi.pas) unit ukalkulasi; interface uses Windows, Classes, SysUtils;
44 L44 type VarMatriksKorelasi = array of array of Double; TFType = (tfttoremove, tfttoenter); function PrintGaris(HowMany: Integer): String; function PrintKolom(Str: String; MaxWidth: Integer; Alignment: TAlignment): String; function Rataan(const Data: array of Double; NumOf: Integer): Double; function Korelasi(const DataX, DataY: array of Double; const RataanX, RataanY: Double; NumOf: Integer): Double; function CariAbsolutMax(const Variabel: array of Integer; const Value: array of Double; Index: Integer): Double; function KoefisienRegresi1a(const yrataan, b1, xrataan: Double): Double; function KoefisienRegresi1b(const DataX, DataY: array of Double; const RataanX, RataanY: Double; NumOf: Integer): Double; function yregresi1(const koefreg1a, koefreg1b: Double; const DataXi: Double): Double; function KuadratKorelasi(const DataYRegresi, DataY: array of Double; const RataanY: Double; NumOf: Integer): Double; function RataanKuadratSisa(const DataY, DataYRegresi: array of Double; p, NumOf: Integer): Double; function UjiStatistik(const DataY, DataYRegresi: array of Double; const RataanY: Double; p, NumOf: Integer; FType: TFType): Double; overload; function UjiStatistik(const DataR: Double; k, NumOf: Integer): Double; overload; function KuadratKorelasiParsial(IndexX: Integer; const XModel: array of Integer; const MatriksKorelasi: VarMatriksKorelasi): Double; implementation uses Math; function PrintGaris(HowMany: Integer): String; tmp: String; I: Integer; tmp := ''; for I:=1 to HowMany do tmp := tmp + '-'; Result := tmp; function PrintKolom(Str: String; MaxWidth: Integer; Alignment: TAlignment): String; tmp: String; I, LnStr, LnSp: Integer; LnStr := Length(Str); if LnStr >= MaxWidth then Result := Str
45 L45 else LnSp := MaxWidth - LnStr; tmp := ''; if Alignment = taleftjustify then tmp := tmp + Str; for I:=1 to LnSp do tmp := tmp + ' '; end else if Alignment = tarightjustify then for I:=1 to LnSp do tmp := tmp + ' '; tmp := tmp + Str; end else for I:=1 to (LnSp div 2) do tmp := tmp + ' '; tmp := tmp + Str; for I:=1 to ((LnSp div 2) + (LnSp mod 2)) do tmp := tmp + ' '; Result := tmp; function Rataan(const Data: array of Double; NumOf: Integer): Double; Result := Sum(Data) / NumOf; function Korelasi(const DataX, DataY: array of Double; const RataanX, RataanY: Double; NumOf: Integer): Double; tmpa, tmpb, tmpc: array of Double; tota, totb, totsqb, totsqc: Double; I: Integer; SetLength(tmpA, NumOf); SetLength(tmpB, NumOf); SetLength(tmpC, NumOf); for I:=0 to NumOf-1 do tmpb[i] := DataX[I] - RataanX; tmpc[i] := DataY[I] - RataanY; tmpa[i] := tmpb[i] * tmpc[i]; tota := Sum(tmpA);
46 L46 totsqb := SumOfSquares(tmpB); totsqc := SumOfSquares(tmpC); totb := Power(totSqB * totsqc, 0.5); // Kalau pembagi nol maka seharusnya NaN! // Note: MAXLONG ini hanya untuk mengindikasikan adanya pembagian dengan nol! if totb = 0 then Result := MAXLONG else Result := tota / totb; function CariAbsolutMax(const Variabel: array of Integer; const Value: array of Double; Index: Integer): Double; I, idx: Integer; maxval: Double; idx := 0; maxval := 0; for I:=0 to High(Variabel) do if Abs(Value[I]) > maxval then idx := Variabel[I]; maxval := abs(value[i]); Index := idx; Result := maxval; function KoefisienRegresi1a(const yrataan, b1, xrataan: Double): Double; Result := yrataan - b1 * xrataan; function KoefisienRegresi1b(const DataX, DataY: array of Double; const RataanX, RataanY: Double; NumOf: Integer): Double; tmpa, tmpb, tmpc: array of Double; tota, totb: Double; I: Integer; SetLength(tmpA, NumOf); SetLength(tmpB, NumOf); SetLength(tmpC, NumOf); for I:=0 to NumOf-1 do tmpb[i] := DataX[I] - RataanX; tmpc[i] := DataY[I] - RataanY;
47 L47 tmpa[i] := tmpb[i] * tmpc[i]; tota := Sum(tmpA); totb := SumOfSquares(tmpB); // Kalau pembagi nol maka seharusnya NaN! // Note: MAXLONG ini hanya untuk mengindikasikan adanya pembagian dengan nol! if totb = 0 then Result := MAXLONG else Result := tota / totb; function yregresi1(const koefreg1a, koefreg1b: Double; const DataXi: Double): Double; Result := koefreg1a + koefreg1b * DataXi; function KuadratKorelasi(const DataYRegresi, DataY: array of Double; const RataanY: Double; NumOf: Integer): Double; tmpa, tmpb: array of Double; tota, totb: Double; I: Integer; SetLength(tmpA, NumOf); SetLength(tmpB, NumOf); for I:=0 to NumOf-1 do tmpa[i] := DataYRegresi[I] - RataanY; tmpb[i] := DataY[I] - RataanY; tota := SumOfSquares(tmpA); totb := SumOfSquares(tmpB); // Kalau pembagi nol maka seharusnya NaN! // Note: MAXLONG ini hanya untuk mengindikasikan adanya pembagian dengan nol! if totb = 0 then Result := MAXLONG else Result := tota / totb; function RataanKuadratSisa(const DataY, DataYRegresi: array of Double; p, NumOf: Integer): Double; tmp: array of Double; tota, totb: Double; I: Integer; SetLength(tmp, NumOf); for I:=0 to NumOf-1 do tmp[i] := DataY[I] - DataYRegresi[I];
LAMPIRAN Listing Program
LAMPIRAN Listing Program unit umain; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ComCtrls, StdCtrls, ExtCtrls, ExtDlgs, DCPcrypt2, DCPrc4, DCPsha1,
More informationLAMPIRAN A: LIST PROGRAM
LAMPIRAN A: LIST PROGRAM Form Login unit ULogin; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, DB, IBQuery, IBDatabase, IBCustomDataSet, IBTable,
More informationUJIAN AKHIR SEMESTER TEKNIK INFORMATIKA SEKOLAH TINGGI TEKNOLOGI DUTA BANGSA
UJIAN AKHIR SEMESTER TEKNIK INFORMATIKA SEKOLAH TINGGI TEKNOLOGI DUTA BANGSA Dosen Pembimbing : Dedi W ST,. MM Nama : Elly Sunandy NIM : 13158279 Pemrograman Terstruktur Membuat program dengan Delphi 7
More informationLAMPIRAN. uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Menus, XPMan, ExtCtrls, jpeg;
LAMPIRAN Lampiran A. Listing Program 1. Unit Utama unit UnUtama; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Menus, XPMan, ExtCtrls, jpeg; type Tfrmutama
More informationLAMPIRAN 1 TATA CARA PENGGUNAAN SOFTWARE ALGORITMA GENETIKA
LAMPIRAN 1 TATA CARA PENGGUNAAN SOFTWARE ALGORITMA GENETIKA Langkah-langkah penggunaan Software Algoritma Genetika Job Shop : 1. Buka program Algoritma Genetika Job Shop 2. Masukkan data-data yang dibutuhkan
More informationVisitor Management System
WWW.VALLINME.COM Visitor Management System Ver 1.0 Mohd Noor Azam 18-03-2015 [Type the abstract of the document here. The abstract is typically a short summary of the contents of the document. Type the
More informationNATIONAL SENIOR CERTIFICATE GRADE12
NATIONAL SENIOR CERTIFICATE GRADE12 INFORMATION TECHNOLOGY P1 FEBRUARY/MARCH 2018 MARKING GUIDELINES MARKS: 150 These marking guidelines consist of 21 pages. Information Technology/P1 2 DBE/Feb. Mar. 2018
More informationPANDUAN PENGGUNA (SUPPLIER) e-purchase ORDER FOR SERVICES
PANDUAN PENGGUNA (SUPPLIER) e-purchase ORDER FOR SERVICES SUPPLIER RELATIONSHIP MANAGEMENT SUPPLY CHAIN MANAGEMENT SYSTEM (SCMS) DISEDIAKAN OLEH: UNIT SUPPLY CHAIN MANAGEMENT (SCM) JABATAN SOURCING CONTROLLER
More informationLAMPIRAN A LISTING PROGRAM
LAMPIRAN LAMPIRAN A LISTING PROGRAM //Program Utama unit umain; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ComCtrls, Menus, ExtCtrls, StdCtrls, Lucifer,VisSem,
More informationPANDUAN PENGGUNA (PENTADBIR SYSTEM/SYSTEM ADMINISTRATOR) (INFOTECH, BPPF DAN POLIS
Classroom Reservation User Manual (HEA) PANDUAN PENGGUNA (PENTADBIR SYSTEM/SYSTEM ADMINISTRATOR) (INFOTECH, BPPF DAN POLIS Table of Contents CLASSROOM RESERVATION MANAGEMENT SYSTEM - APLIKASI... 2 Apa
More informationMICROSOFT EXCEL. Membina Hamparan Elektronik Fungsi Hamparan Elektronik
MICROSOFT EXCEL Membina Hamparan Elektronik Fungsi Hamparan Elektronik Microsoft Excel 2010 Kandungan Penggunaan Asas Excel Memformat Sel, Lembaran dan Buku Kerja (Work Book) Penggunaan Asas Excel Fail
More informationPANDUAN PENGGUNA (PENSYARAH)
Classroom Reservation User Manual (HEA) PANDUAN PENGGUNA (PENSYARAH) Table of Contents CLASSROOM RESERVATION MANAGEMENT SYSTEM - APLIKASI... 2 Apa itu CRMS?... 2 CRMS Feature Summary... 3 CRMS LOGIN...
More informationThe scripting system handles two types of components: Visual and Non-visual components.
Forms and Components Old Content - visit altium.com/documentation Modified by on 13-Sep-2017 Parent page: DelphiScript Overview of Graphical Components The scripting system handles two types of components:
More informationCOMBINING TABLES. Akademi Audit Negara. CAATs ASAS ACL / 1
COMBINING TABLES CAATs ASAS ACL / 1 OBJEKTIF MODUL Mempelajari kaedah menggabung dan menghubungkan dua atau lebih table bagi mencapai objektif Audit. Mempelajari kaedah menggunakan maklumat yang sedia
More informationNATIONAL SENIOR CERTIFICATE GRADE12
NATIONAL SENIOR CERTIFICATE GRADE12 INFORMATION TECHNOLOGY P1 NOVEMBER 2017 MARKING GUIDELINES MARKS: 150 These marking guidelines consist of 26 pages. Information Technology/P1 2 DBE/November 2017 GENERAL
More informationImage. uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls ;
B 71 11 Image Image Image Image 11.1 11.1.1 Amida AmidaU.pas AmidaP.dpr 11.1.2 Form Name FormAmida Caption Position poscreencenter HorzScrollBar.Visible False VertScrollBar.Visible False 11.1.3 11.2 Image
More information2. Design and Development
Postage Calculator 1. The task Design and implement a program for employees of a travel agency who send out documents to the UK and EU only; the program will calculate the cost of postage. Each envelope
More informationjudul : dump mysql with delphi - opensource
judul : dump mysql with delphi - opensource header : hmm...ini sebenernya dah pernah tak tanyain dalam thread tapi lom ada jawaban yang memuaskan, aq coba ekplor terus dan akhirnya 3 bulan yang lalu bisa
More informationDOKUMEN TIDAK TERKAWAL
Halaman: 1/12 Tujuan : Arahan kerja ini adalah untuk menerangkan tatacara pendaftaran ID Pengguna di dalam Sistem Kewangan SAGA (Standard Accounting for Government Agencies) Universiti Putra Malaysia bagi
More informationManual Pengguna. PCN Online Service Fulfillment System
System 1 Subjek Muka Surat 1) CARTA ALIR SISTEM 2 2) PERMOHONAN OLEH AGENSI 3 3) PENGESAHAN PERMOHONAN OLEH MAMPU 8 4) LAMPIRAN 13 2 Carta alir sistem 3 PERMOHONAN OLEH AGENSI 4 Membuat permohonan baru
More informationTEKNOLOGI, GADJET & KEIBUBAPAAN
TEKNOLOGI, GADJET & KEIBUBAPAAN Kandungan YouTube Google Chrome Android Device Manager Google Keep Call recorder KeePassDroid K9 protection TeamViewer Zulkifli Alang Mahat A. YouTube 1. Klik apps youtube
More informationAPPLICATION NOTE: KONSTANTER LSP32K Interface Protocol
APPLICATION NOTE: KONSTANTER LSP32K Interface Protocol 1 Interface Type At the DB9 connector the LSP32K Power Supply device offers a serial data interface with TTL logic level for remote control and readout
More informationGRADE 12 SEPTEMBER 2012 INFORMATION TECHNOLOGY P1 MEMORANDUM
Province of the EASTERN CAPE EDUCATION NATIONAL SENIOR CERTIFICATE GRADE 12 SEPTEMBER 2012 INFORMATION TECHNOLOGY P1 MEMORANDUM MARKS: 120 This memorandum consists of 11 pages. 2 INFORMATION TECHNOLOGY
More informationuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, ImgList, StdCtrls, Buttons, MPlayer;
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, ImgList, StdCtrls, Buttons, MPlayer; type TForm1 = class(tform) Cenario: TImage;
More informationPANDUAN PENGGUNA (SUPPLIER) MAINTAIN CERTIFICATES/SUPPLIER DETAILS SUPPLIER RELATIONSHIP MANAGEMENT SUPPLY CHAIN MANAGEMENT SYSTEM (SCMS)
PANDUAN PENGGUNA (SUPPLIER) MAINTAIN CERTIFICATES/SUPPLIER DETAILS SUPPLIER RELATIONSHIP MANAGEMENT SUPPLY CHAIN MANAGEMENT SYSTEM (SCMS) DISEDIAKAN OLEH: SUPPLY CHAIN MANAGEMENT (SCM) BAHAGIAN ICT PROCESS
More informationPERU BAHAN PERKHIDMATAN KREDIT DAN PERBANKAN ARAHAN KERJA UNIT KOMPUTER. Tatacara Proses AGM03. BPKP/KJAK-104 Bilangan Semakan : 0 Tarikh :
ARAHAN KERJA UNIT KOMPUTER Tatacara Proses AGM03 BPKP/KJAK-104 Bilangan Semakan : 0 Tarikh : 30.09.13 Disediakan oleh :- Disahkan oleh ;- Pengurus PERU BAHAN Ubahan Muka surat Tarikh Keterangan Diluluskan
More informationSource code for simulations: 1 of 11
The following is the source code for the simulations reported in Clinchy, Haydon and Smith (Pattern process: what does patch occupancy really tell us about metapopulation dynamics). unit Main; interface
More informationPANDUAN PENGGUNA (SUPPLIER) MAINTAIN CERTIFICATES/SUPPLIER DETAILS SUPPLIER RELATIONSHIP MANAGEMENT SUPPLY CHAIN MANAGEMENT SYSTEM (SCMS)
PANDUAN PENGGUNA (SUPPLIER) MAINTAIN CERTIFICATES/SUPPLIER DETAILS SUPPLIER RELATIONSHIP MANAGEMENT SUPPLY CHAIN MANAGEMENT SYSTEM (SCMS) DISEDIAKAN OLEH: SUPPLY CHAIN MANAGEMENT (SCM) BAHAGIAN ICT PROCESS
More informationCARA-CARA UNTUK MEMBUAT POSTER MELALUI PERISIAN PHOTOSHOP. Untuk membuat poster sediakan beberapa bahan seperti berikut:
CARA-CARA UNTUK MEMBUAT POSTER MELALUI PERISIAN PHOTOSHOP Untuk membuat poster sediakan beberapa bahan seperti berikut: Pastikan anda telah memindahkan gambar-gambar yang di ambil ke dalam komputer Pastikan
More informationPanduan Menggunakan Autoresponder FreeAutobot.com
Panduan Menggunakan Autoresponder FreeAutobot.com Dengan memperolehi e-book ini, anda mempunyai kebenaran untuk memberi secara percuma kepada pelanggan anda atau tawarkan sebagai bonus kepada pembelian
More informationGRADE/GRAAD 11 NOVEMBER 2013 INFORMATION TECHNOLOGY P1 INLIGTINGSTEGNOLOGIE V1 MEMORANDUM
NATIONAL SENIOR CERTIFICATE NASIONALE SENIOR SERTIFIKAAT GRADE/GRAAD 11 NOVEMBER 2013 INFORMATION TECHNOLOGY P1 INLIGTINGSTEGNOLOGIE V1 MEMORANDUM MARKS/PUNTE: 150 This memorandum consists of 6 pages.
More informationPengenalan Sistem Maklumat Dalam Pendidikan
Pengenalan Sistem Maklumat Dalam Pendidikan 1 RELATIONSHIP & QUERY DALAM MICROSOFT ACCESS Kandungan Definisi Relationship (Hubungan) Jenis Relationship Membina Relationship Definisi Query dan Fungsi Query
More informationUNIVERSITI SAINS MALAYSIA
UNIVERSITI SAINS MALAYSIA Peperiksaan Semester Pertama Sidang Akademik 2004/2005 Oktober 2004 CPT103/CPM211- Struktur Data & Paradigma Pengaturcaraan Masa : 2 jam ARAHAN KEPADA CALON : Sila pastikan bahawa
More information(1) Trump (1) Trump (2) (1) Trump ExampleU ExampleP (2) Caption. TrumpU (2) Caption. (3) Image FormTrump. Top 0 Left 0.
B 114 18 (1) 18.1 52 54 Trump http://www.ss.u-tokai.ac.jp/~ooya/jugyou/joronb/trumpbmp.exe (1) (2) Trump 18.2 (1) Trump ExampleU ExampleP (2) Name Caption FormMain 18.3 (1) TrumpU (2) Name Caption FormTrump
More informationLAMPIRAN A: DDL DATABASE
LAMPIRAN A: DDL DATABASE MySQL-Front 5.1 (Build 2.7) Host: localhost Database: mobil ------------------------------------------------------ Server version 5.0.41-community-nt USE `mobil`; Source for table
More informationSend to: MM Irfan Subakti CC to Muhammad Ryanda Nugraha M with the. IF184401_DAA(F)_MID_NRP_Name.
IF184401 Design & Analysis of Algorithms (F) Midterm Exam Starting date: 9 March 2019 Deadline: 16 March 2019, 23:59 WIB. Exam type: Open Send to: MM Irfan Subakti CC to Muhammad Ryanda
More informationICT SPM 2011 SUGGESTION ANSWER. Section A
ICT SPM 2011 SUGGESTION ANSWER Section A NO SOALAN 1 i Computer ethic / ethic ii Computer law / law 2 ii 4 iv 2 3 Output 4 True 5 Gigabyte / GB 6 i Operating ii Application 7 B / D D / B 8 B 9 A 10 i Radio
More informationTutorial, Source code, Request Program Visual Basic
Tutorial, Source code, Request Program Visual Basic Oleh : Moh. A Azis Membuat Form Data Barang Program Persediaan Barang Form Data Barang digunakan untuk menyimpan data barang dan memberikan info mengenai
More informationMANAGE COURSE RESOURCES LABEL TEXT PAGE URL BOOK FILE FOLDER IMS CONTENT PACKAGE
MANAGE COURSE RESOURCES LABEL TEXT PAGE URL BOOK FILE FOLDER IMS CONTENT PACKAGE Edit summary Edit tajuk Ke kanan Ke atas/bawah NOTA: Klik untuk sembunyikan isi kandungan. Klik untuk padam/menghapus isi
More informationJABATAN KIMIA Kategori Arahan Kerja
Mukasurat: 1 daripada 10 1. TUJUAN Tujuan prosedur ini ditubuhkan adalah untuk memberikan arahan yang jelas bagi langkah atau tatacara bagaimana menjalankan analisis sampel menggunakan peralatan JEOL NMR
More informationPengguna akan diberikan Username dan Password oleh Administrator untuk login sebagai admin/conference Manager bagi conference yang akan diadakan.
Conference Manager Roles Guide - PENGGUNA MANUAL Login. Pengguna akan diberikan Username dan Password oleh Administrator untuk login sebagai admin/conference Manager bagi conference yang akan diadakan.
More informationWindows. mine sweeper Jirai JiraiU.pas JiraiP.dpr. Form Name FormJirai Caption Position podesktopcenter 16.3
B 103 16 Windows mine sweeper 16.1 n 16.2 Jirai JiraiU.pas JiraiP.dpr Form Name FormJirai Caption Position podesktopcenter 16.3 3 B 104 16.3.1 RadioGroup Algn altop Name RadioGroupSize Caption Columns
More informationSemasa buku ini ditulis XAMPP mengandungi empat versi:
Lab 1 PEMASANGAN PELAYAN WEB XAMPP 1.0 Pengenalan Di dalam topik ini kita akan menggunakan pelayan web yang berasaskan sumber terbuka XAMPP Windows 1.8.0. Kenapa Pelayan Web Xampp digunakan kerana bukannya
More informationNATIONAL SENIOR CERTIFICATE GRADE12
NATIONAL SENIOR CERTIFICATE GRADE12 INFORMATION TECHNOLOGY P1 FEBRUARY/MARCH 2017 MEMORANDUM MARKS: 150 This memorandum consists of 29 pages. Information Technology/P1 2 DBE/Feb. Mar. 2017 GENERAL INFORMATION:
More informationssk 2023 asas komunikasi dan rangkaian TOPIK 4.0 PENGALAMATAN RANGKAIAN Minggu 11
ssk 2023 asas komunikasi dan rangkaian TOPIK 4.0 PENGALAMATAN RANGKAIAN Minggu 11 PENILAIAN & KULIAH Kuliah Tugasan Ujian Teori Ujian Amali Isi kandungan 4.8 Menunjukkan asas pengiraan o Subnet Mask o
More informationJABATAN KIMIA Kategori Arahan Kerja
Mukasurat: 1 daripada 13 1. TUJUAN Tujuan prosedur ini dtubuhkan adalah untuk memberikan arahan yang jelas bagi langkah atau tatacara bagaimana menjalankan analisis sampel menggunakan peralatan Gas Chromatography
More informationA method is a procedure that is always associated with an object and defines the behavior of that object.
Using Form Components Old Content - visit altium.com/documentation Modified by Rob Evans on 15-Feb-2017 Parent page: VBScript Using Components in VBScript Forms Although Forms and Components are based
More informationNATIONAL SENIOR CERTIFICATE GRADE 12
NATIONAL SENIOR CERTIFICATE GRADE 12 INFORMATION TECHNOLOGY P1 NOVEMBER 2014 MEMORANDUM MARKS: 150 This memorandum consists of 28 pages. Information Technology/P1 2 DBE/November 2014 GENERAL INFORMATION:
More informationFIRST TIME LOGIN & SELF REGISTRATION USER GUIDE LOG MASUK KALI PERTAMA & PENDAFTARAN SENDIRI PANDUAN PENGGUNA
FIRST TIME LOGIN & SELF REGISTRATION USER GUIDE LOG MASUK KALI PERTAMA & PENDAFTARAN SENDIRI PANDUAN PENGGUNA Getting Started Step by Step Guide to Supplier First Time Login and Self Registration Persediaan
More informationCLOUD COMPUTING ADOPTION IN BANKING SYSTEM (UTM) IN TERMS OF CUSTOMERS PERSPECTIVES SHAHLA ASADI
CLOUD COMPUTING ADOPTION IN BANKING SYSTEM (UTM) IN TERMS OF CUSTOMERS PERSPECTIVES SHAHLA ASADI A dissertation submitted in partial fulfillment of the requirements for the award of the degree of Master
More informationCREATING USER ID AND PASSWORD : NOTA PENTING NOTA PENTING SEBELUM MEMULAKAN PROSES CREATE USER ID & PASSWORD
CREATING USER ID AND PASSWORD : NOTA PENTING NOTA PENTING SEBELUM MEMULAKAN PROSES CREATE USER ID & PASSWORD Sebelum meneruskan proses untuk Create User ID & Password sila pastikan anda menggunakan Internet
More informationWelcome to the Future of Entertainment!
Welcome to the Future of Entertainment! Quick Start Guide Panduan Ringkas Features/Ciri-ciri Info Banner Icons / Info Paparan Informasi Channel Type / Jenis Saluran Search / Cari To record / Series Link
More informationUNIVERSITI SAINS MALAYSIA. CMT322/CMM323 Web Engineering & Technologies [Kejuruteraan & Teknologi Web]
UNIVERSITI SAINS MALAYSIA First Semester Examination 2014/2015 Academic Session December 2014/January 2015 CMT322/CMM323 Web Engineering & Technologies [Kejuruteraan & Teknologi Web] Duration : 2 hours
More informationDelphi Generics.Collections
Delphi Generics.Collections Copyright(C) 2008 Embarcadero Technologies, Inc. All Rights Reserved. Delphi Generics.Collections Table of Contents Generics.Collections.TCollectionNotification 1 Generics.Collections.TCollectionNotifyEvent
More information1. Akses untuk koperasi adalah melalui https://apponline.skm.gov.my/userlogin.aspx.
Pengguna Koperasi 1. Akses untuk koperasi adalah melalui https://apponline.skm.gov.my/userlogin.aspx. Belum berdaftar 2. Sila masuk ID Pengguna dan Kata Laluan dengan betul. Sekiranya pengguna masih belum
More informationUNIVERSITI SAINS MALAYSIA. CST332 Internet Protocols. Architecture & Routing [Protokol, Seni Bina & Penghalaan Internet]
UNIVERSITI SAINS MALAYSIA First Semester Examination 2016/2017 Academic Session December 2016 / January 2017 CST332 Internet Protocols. Architecture & Routing [Protokol, Seni Bina & Penghalaan Internet]
More informationIntroduction to the DLL for the USB Interface Board K8061
K8061.DLL 1 Introduction to the DLL for the USB Interface Board K8061 The K8061 interface board has 8 digital input channels and 8 digital output channels. In addition, there are 8 analogue inputs, 8 analogue
More informationLAMPIRAN A. Listing Program. Program pada Borland Delphi 7.0 A-1 Program pada CodeVisionAVR C Compiler A-6
A Listing Program Program pada Borland Delphi 7.0 A-1 Program pada CodeVisionAVR C Compiler A-6 LISTING PROGRAM BORLAND DELPHI 7.0 Inisialisasi ==========================================================
More informationSemantics of fork() and exec()
Threads Week 3.2 Threading Issues Semantics of fork() and exec() system calls Signal handling Synchronous and asynchronous Thread cancellation of target thread Asynchronous or deferred Thread-local storage
More informationDETECTION OF WORMHOLE ATTACK IN MOBILE AD-HOC NETWORKS MOJTABA GHANAATPISHEH SANAEI
ii DETECTION OF WORMHOLE ATTACK IN MOBILE AD-HOC NETWORKS MOJTABA GHANAATPISHEH SANAEI A project report submitted in partial fulfillment of the requirements for the award of the degree of Master of Computer
More informationREGISTRATION GUIDE MCIS CUSTOMER PORTAL. Page 1
REGISTRATION GUIDE MCIS CUSTOMER PORTAL Page 1 Customer Portal Registration Guide Go to www.mcis.my and click the Customer Portal tab Page 2 Customer Portal Registration Guide 1. The page shown below will
More informationИспользование ассиметричных алгоритмов криптографического преобразования информации в приложениях Windows
Государственное образовательное учреждение высшего профессионального образования «Петербургский государственный университет путей сообщения» Кафедра «Информационные и вычислительные системы» Лабораторная
More informationDELPHI FOR ELECTRONIC ENGINEERS. Part 2 Programming a calculator COURSE
COURSE DELPHI FOR ELECTRONIC ENGINEERS Part 2 Programming a calculator Herman Bulle with thanks to Anton Vogelaar In the first instalment of this series, we introduced the Delphi programming environment
More informationCara Login Ke CPanel Hosting.
Cara Login Ke CPanel Hosting. Perkara pertama yang perlu dibuat setelah mendapat akaun web hosting adalah anda perlu log masuk ke web hosting cpanel bagi membuat proses instalasi. Pengguna akan menerima
More informationLAMPIRAN A RANGKAIAN SKEMATIK PERANGKAT KERAS
LAMPIRAN A RANGKAIAN SKEMATIK PERANGKAT KERAS Instrumentation Amplifier, G=749 +9V 3 5 8 6 1 AD620AN 30K 22K HPF, G=31 HPF, G=2.05-23 5 +9V +9V 1K 8 1K 8 2 2 6 6 3 3 8.2 nf 1 8.2nF 1 5 OP07 5 OP07 220K
More informationHARDWARE/SOFTWARE SYSTEM-ON-CHIP CO-VERIFICATION PLATFORM BASED ON LOGIC-BASED ENVIRONMENT FOR APPLICATION PROGRAMMING INTERFACING TEO HONG YAP
HARDWARE/SOFTWARE SYSTEM-ON-CHIP CO-VERIFICATION PLATFORM BASED ON LOGIC-BASED ENVIRONMENT FOR APPLICATION PROGRAMMING INTERFACING TEO HONG YAP A project report submitted in partial fulfilment of the requirements
More informationVIRTUAL PRIVATE NETWORK: ARCHITECTURE AND IMPLEMENTATIONS
VIRTUAL PRIVATE NETWORK: ARCHITECTURE AND IMPLEMENTATIONS A thesis submitted to the graduate school in partial fulfillment of the requirements for the degree Master of Science (Information Technology)
More informationRegistration of Supplier (ROS) TM Supplier Registration Renewal via SUS Portal (Pembaharuan Pendaftaran Pembekal TM melalui SUS Portal)
TM SUPPLIER REGISTRATION RENEWAL VIA SUPPLIER SELF-SERVICE (SUS) PORTAL USER GUIDE PEMBAHARUAN PENDAFTARAN PEMBEKAL TM MELALUI SUPPLIER SELF-SERVICE (SUS) PORTAL PANDUAN PENGGUNA Getting Started Step by
More informationUNIVERSITI SAINS MALAYSIA. CPT111/CPM111 Principles of Programming [Prinsip Pengaturcaraan]
UNIVERSITI SAINS MALAYSIA Second Semester Examination 2014/2015 Academic Session June 2015 CPT111/CPM111 Principles of Programming [Prinsip Pengaturcaraan] Duration : 2 hours [Masa : 2 jam] INSTRUCTIONS
More informationLAMPIRAN A. Foto Alat
LAMPIRAN A Foto Alat A-1 A-2 Rangkaian Skematik PCB Sistem Monitoring Infus A-3 LAMPIRAN B Program pada Mikrokontroller AVR Atmega16...B-1 Program pada Borlan Delhpi 7.0...B-9 PROGRAM UTAMA /*****************************************************
More informationISI KANDUNGAN. Tarikh akhir kemaskini: 9 November 2016 Hakcipta Pusat Komputer, UTeM ms 2
ISI KANDUNGAN UTeM RESEARCH INFORMATION SYSTEM... 3 Pengenalan... 4 Sub Modul Short Term Grant Application... 8 Sub Menu Application... 9 Sub Menu Personel Particulars... 14 Sub Menu List Of Previous Project...
More informationMSS 318 Discrete Mathematics [Matematik Diskret]
UNIVERSITI SAINS MALAYSIA Second Semester Examination 2009/2010 Academic Session April/May 2010 MSS 318 Discrete Mathematics [Matematik Diskret] Duration : 3 hours [Masa : 3 jam] Please check that this
More informationIMPLEMENTATION OF UNMANNED AERIAL VEHICLE MOVING OBJECT DETECTION ALGORITHM ON INTEL ATOM EMBEDDED SYSTEM
IMPLEMENTATION OF UNMANNED AERIAL VEHICLE MOVING OBJECT DETECTION ALGORITHM ON INTEL ATOM EMBEDDED SYSTEM CHEONG WEI WEI UNIVERSITI TEKNOLOGI MALAYSIA IMPLEMENTATION OF UNMANNED AERIAL VEHICLE MOVING OBJECT
More informationAN IMPROVED PACKET FORWARDING APPROACH FOR SOURCE LOCATION PRIVACY IN WIRELESS SENSORS NETWORK MOHAMMAD ALI NASSIRI ABRISHAMCHI
AN IMPROVED PACKET FORWARDING APPROACH FOR SOURCE LOCATION PRIVACY IN WIRELESS SENSORS NETWORK MOHAMMAD ALI NASSIRI ABRISHAMCHI A thesis submitted in partial fulfillment of the requirements for the award
More informationWritten by Mazuki Izani Thursday, 02 August :00 - Last Updated Tuesday, 03 February :54
Alhamdulillah, dalam keadaan serba kekurangan dan dengan ilmu yang sedikit ini telah berjaya menghasilkan perisian sendiri iaitu Kamus Kata Kerja daripada bahasa Inggeris ke bahasa Arab. Berbekalkan kursus
More informationEEE 428 SISTEM KOMPUTER
UNIVERSITI SAINS MALAYSIA Peperiksaan Semester Pertama Sidang Akademik 2007/2008 Oktober/November 2007 EEE 428 SISTEM KOMPUTER Masa : 3 jam ARAHAN KEPADA CALON: Sila pastikan bahawa kertas peperiksaan
More informationUNIVERSITI SAINS MALAYSIA. CPT113 Programming Methodology & Data Structures [Metodologi Pengaturcaraan & Struktur Data]
UNIVERSITI SAINS MALAYSIA First Semester Examination 2016/2017 Academic Session December 2016 / January 2017 CPT113 Programming Methodology & Data Structures [Metodologi Pengaturcaraan & Struktur Data]
More informationUNIVERSITI SAINS MALAYSIA. CST232 Operating Systems [Sistem Pengendalian]
UNIVERSITI SAINS MALAYSIA First Semester Examination 2014/2015 Academic Session December 2014/January 2015 CST232 Operating Systems [Sistem Pengendalian] Duration : 2 hours [Masa : 2 jam] INSTRUCTIONS
More informationINSTRUCTION: This section consists of TWO (2) short answer and structured essay questions. Answer ALL questions.
SECTION B : 55 MARKS BAHAGIAN B : 55 MARKAH INSTRUCTION: This section consists of TWO (2) short answer and structured essay questions. Answer ALL questions. ARAHAN: Bahagian ini mengandungi DUA (2) soalan
More informationM2U MANUAL PENGGUNA USER MANUAL M2UNHJ. 0 P a g e BAHAGIAN SIMPANAN DAN PENGELUARAN JABATAN KHIDMAT PENDEPOSIT DAN OPERASI LEMBAGA TABUNG HAJI
M2U MANUAL PENGGUNA USER MANUAL M2UNHJ 0 P a g e BAHAGIAN SIMPANAN DAN PENGELUARAN JABATAN KHIDMAT PENDEPOSIT DAN OPERASI LEMBAGA TABUNG HAJI KANDUNGAN (TABLE OF CONTENTS) BIL PERKARA HALAMAN 1 TERMA DAN
More informationDelphiScript Keywords
DelphiScript Keywords Old Content - visit altium.com/documentation Modified by on 13-Sep-2017 This reference covers the DelphiScript keywords used for the Scripting System in Altium Designer. The scripting
More informationSECURE-SPIN WITH HASHING TO SUPPORT MOBILITY AND SECURITY IN WIRELESS SENSOR NETWORK MOHAMMAD HOSSEIN AMRI UNIVERSITI TEKNOLOGI MALAYSIA
SECURE-SPIN WITH HASHING TO SUPPORT MOBILITY AND SECURITY IN WIRELESS SENSOR NETWORK MOHAMMAD HOSSEIN AMRI UNIVERSITI TEKNOLOGI MALAYSIA SECURE-SPIN WITH HASHING TO SUPPORT MOBILITY AND SECURITY IN WIRELESS
More informationunit Unit3; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
unit Unit3; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, CPort, LPComponent, SLCommonGen, SLSignalGen, Menus, SLComponentCollection, LPDrawLayers,
More informationPERKHIDMATAN KREDIT DAN PERBANKAN PROSEDUR UNIT KOMPUTER. Proses Backup ( Windows) BPKP/KlOK-118 Bilangan Semakan : Q Tarikh :
PERKHDMATAN KREDT DAN PERBANKAN PROSEDUR UNT KOMPUTER Proses Backup ( Windows) BPKP/KlOK-118 Bilangan Semakan : Q Tarikh : 30.09.13 Disediakan oleh :- Disahkan oleh :- Pengurus P PERU BAHAN Ubahan Muka
More informationGRADE 11 NOVEMBER 2012 INFORMATION TECHNOLOGY P1 INLIGTINGSTEGNOLOGIE V1 MEMORANDUM
Province of the EASTERN CAPE EDUCATION NATIONAL SENIOR CERTIFICATE GRADE 11 NOVEMBER 2012 INFORMATION TECHNOLOGY P1 INLIGTINGSTEGNOLOGIE V1 MEMORANDUM MARKS/PUNTE: 120 This memorandum consists of 10 pages.
More informationDYNAMIC MOBILE SERVER FOR LIVE CASTING APPLICATIONS MUHAMMAD SAZALI BIN HISHAM UNIVERSITI TEKNOLOGI MALAYSIA
DYNAMIC MOBILE SERVER FOR LIVE CASTING APPLICATIONS MUHAMMAD SAZALI BIN HISHAM UNIVERSITI TEKNOLOGI MALAYSIA DYNAMIC MOBILE SERVER FOR LIVE CASTING APPLICATIONS MUHAMMAD SAZALI BIN HISHAM A thesis submitted
More informationINSTRUCTION: This section consists of TWO (2) structured questions. Answer ALL questions.
SECTION B : 55 MARKS BAHAGIAN B : 55 MARKAH INSTRUCTION: This section consists of TWO (2) structured questions. Answer ALL questions. ARAHAN: Bahagian ini mengandungi TWO (2) soalan berstruktur. Jawab
More informationINSTRUCTION: This section consists of TWO (2) structured questions. Answer ALL questions.
SECTION B : 50 MARKS BAHAGIAN B : 50 MARKAH INSTRUCTION: This section consists of TWO (2) structured questions. Answer ALL questions. ARAHAN: Bahagian ini mengandungi DUA (2) soalan berstruktur. Jawab
More informationINSTRUCTION: This section consists of TWO (2) questions. Answer ALL questions. ARAHAN: Bahagian ini mengandungi DUA (2) soalan. Jawab SEMUA soalan.
SECTION B: 55 MARKS BAHAGIAN B: 55 MARKAH INSTRUCTION: This section consists of TWO (2) questions. Answer ALL questions. ARAHAN: Bahagian ini mengandungi DUA (2) soalan. Jawab SEMUA soalan. QUESTION 1
More informationEEE 348 PENGANTAR REKABENTUK LITAR BERSEPADU
UNIVERSITI SAINS MALAYSIA Peperiksaan Semester Pertama Sidang Akademik 2007/2008 Oktober/November 2007 EEE 348 PENGANTAR REKABENTUK LITAR BERSEPADU Masa : 3 Jam Sila pastikan kertas peperiksaan ini mengandungi
More informationSignature :.~... Name of supervisor :.. ~NA.lf... l.?.~mk.. :... 4./qD F. Universiti Teknikal Malaysia Melaka
"I hereby declare that I have read this thesis and in my opinion this thesis is sufficient in term of scope and quality for the reward of the Bachelor' s degree of Mechanical Engineering (Structure and
More informationRESOURCE ALLOCATION SCHEME FOR FUTURE USER-CENTRIC WIRELESS NETWORK WAHEEDA JABBAR UNIVERSITI TEKNOLOGI MALAYSIA
RESOURCE ALLOCATION SCHEME FOR FUTURE USER-CENTRIC WIRELESS NETWORK WAHEEDA JABBAR UNIVERSITI TEKNOLOGI MALAYSIA Replace this page with form PSZ 19:16 (Pind. 1/07), which can be obtained from SPS or your
More informationYAYASAN KUOK BERHAD Arahan Permohonan
YAYASAN KUOK BERHAD Arahan Permohonan (Klik sini untuk Application Instructions dalam Bahasa Inggeris) 1. Pendaftaran Akaun (Pemohon Baru) 2. Log Masuk 3. Permohonan Atas Talian & Penghantaran 4. Penghantaran
More informationINSTRUCTION: This section consists of FOUR (4) structured questions. Answer ALL questions.
SECTION B : 60 MARKS BAHAGIAN B : 60 MARKAH INSTRUCTION: This section consists of FOUR (4) structured questions. Answer ALL questions. ARAHAN: Bahagian ini mengandungi EMPAT (4) soalan berstruktur. Jawab
More informationUNIVERSITI SAINS MALAYSIA. Peperiksaan Semester Pertama Sidang Akademik 2003/2004. September/Oktober 2003
UNIVERSITI SAINS MALAYSIA Peperiksaan Semester Pertama Sidang Akademik 2003/2004 September/Oktober 2003 EEE 348E - PENGANTAR REKABENTUK LITAR BERSEPADU Masa: 3jam ARAHAN KEPADA CALON: Sila pastikan bahawa
More informationRegistration of Supplier (ROS) TM Supplier Registration Renewal via SUS Portal (Pembaharuan Pendaftaran Pembekal TM melalui SUS Portal)
TM SUPPLIER REGISTRATION RENEWAL VIA SUPPLIER SELF-SERVICE (SUS) PORTAL USER GUIDE PEMBAHARUAN PENDAFTARAN PEMBEKAL TM MELALUI SUPPLIER SELF-SERVICE (SUS) PORTAL PANDUAN PENGGUNA Getting Started Step by
More informationISU DAN CABARAN PELAKSANAAN SISTEM PENGURUSAN KESELAMATAN MAKLUMAT (ISMS) 15 Jun 2016 Dewan Taklimat Serdang
ISU DAN CABARAN PELAKSANAAN SISTEM PENGURUSAN KESELAMATAN MAKLUMAT (ISMS) 15 Jun 2016 Dewan Taklimat Serdang 1 TARIKH AUDIT Audit Dalaman Sistem Pengurusan Keselamatan Maklumat (ISMS) Universiti Putra
More informationNATIONAL SENIOR CERTIFICATE GRADE12
NATIONAL SENIOR CERTIFICATE GRADE12 INFORMATION TECHNOLOGY P1 NOVEMBER 2016 MEMORANDUM MARKS: 150 This memorandum consists of 32 pages. Information Technology/P1 2 DBE/November 2016 GENERAL INFORMATION:
More informationPENDAFTARAN KURSUS SEMESTER 1 (DEP/DEE) SESI DIS 2017
PENDAFTARAN SEMESTER (DEP/DEE) SESI DIS 07 - SEMASA Compulsory DUB0 Compulsory DUE0 Compulsory **DRB000 0 4 Common Core DUW0 5 Common Core DBM0 6 Common Core DBS0 7 Discipline Core DET0 8 Discipline Core
More informationUNIT Files. Procedure/Functionand Other Declarations (CONST, TYPE, VAR) can be stored under different Object Pascal Files (Library).
Basics of Language UNIT Files Basics of Language UNIT Files UNIT Files Procedure/Functionand Other Declarations (CONST, TYPE, VAR) can be stored under different Object Pascal Files (Library). You can reduce
More information