Class: KelolaHasil.cs Penjelasan Beberapa Source Code Utama Aplikasi .1 Class: EkstrakSimplex.cs

sampai pada tahap ini telah diperoleh hasil akhir for int a = 0; a varKiri.Length; a++ { if varKiri[a] == 0.9.1 { x11 = X[ITR, a, kolom - 1]; } else if varKiri[a] == 0.9.2 { x12 = X[ITR, a, kolom - 1]; } else if varKiri[a] == 0.9.3 { x13 = X[ITR, a, kolom - 1]; } else if varKiri[a] == 0.9.4 { x21 = X[ITR, a, kolom - 1]; } else if varKiri[a] == 0.9.5 { x22 = X[ITR, a, kolom - 1]; } else if varKiri[a] == 0.9.6 { x23 = X[ITR, a, kolom - 1]; } else if varKiri[a] == 0.9.7 { x31 = X[ITR, a, kolom - 1]; } else if varKiri[a] == 0.9.8 { x32 = X[ITR, a, kolom - 1]; } else if varKiri[a] == 0.9.9 { x33 = X[ITR, a, kolom - 1]; } if varKiri[a] == 0.9.10 X[ITR, a, kolom - 1] = 1 { L = X[ITR, a, kolom - 1]; } } if bench1 == x11 { nBenc1 = x11; } else if bench1 == x12 { nBenc1 = x12; } else if bench1 == x13 { nBenc1 = x13; } if bench2 == x21 { nBenc2 = x21; } else if bench2 == x22 { nBenc2 = x22; } else if bench2 == x23 { nBenc2 = x23; } if bench3 == x31 { nBenc3 = x31; } else if bench3 == x32 { nBenc3 = x32; } else if bench3 == x33 { nBenc3 = x33; } MessageBox .Show Lambda L = + L;

4.2.2 Class: KelolaHasil.cs

4.2.2.1 Hitung Gaji Karyawan Berdasarkan Hasil Perhitungan FLP Variabel-variabel keputusan yang telah dihitung pada kelas sebelumnya akan digunakan pada kelas ini sebagai bahan perhitungan gaji. Pada waktu kotak dialog ‘Kelola Hasil’ ini di-load, pengguna perlu menetapkan standar gaji terlebih dahulu. Tetapan gaji ini adalah tetapan gaji untuk karyawan yang kinerjanya sesuai dengan benchmark standar yang sudah ditetapkan. Setelah standar gaji ditetapkan, pengguna dapat mulai menginputkan karyawan beserta dengan hasil evaluasi kinerjanya. Karyawan yang ditambahkan akan langsung dihitung pemerolehan gajinya dengan perhitungan terhadap nilai-nilai variabel keputusan yang dipanggil dari form class sebelumnya. Tetapan nilai variabel faktor untuk inputan double nilaiKar = 0; Tangkap nilai tetapan benchmark double nBench = ekstrakSimplex .nBenc1 + ekstrakSimplex .nBenc2 + ekstrakSimplex .nBenc3; Siapkan file data karyawan untuk menyimpan hasil perhitungan gajinya if File .Existsf1 { untuk setiap data karyawan yang diinputkan periksa nilai hasil evaluasi kinerjanya kemudian ambil nilai dari kelas ekstrakSimplex sebagai nilai pembaginya dengan nilai benchmark if cbX1.SelectedItem.ToString == Sedikit { cX1 = Sedikit ; nilaiKar += ekstrakSimplex .x11; } else if cbX1.SelectedItem.ToString == Sedang { cX1 = Sedang ; nilaiKar += ekstrakSimplex .x12; } else if cbX1.SelectedItem.ToString == Banyak { cX1 = Banyak ; nilaiKar += ekstrakSimplex .x13; } else { cX1 = - ; nilaiKar += 0; } if cbX2.SelectedItem.ToString == Buruk { cX2 = Buruk ; nilaiKar += ekstrakSimplex .x21; } else if cbX2.SelectedItem.ToString == Sedang { cX2 = Sedang ; nilaiKar += ekstrakSimplex .x22; } else if cbX2.SelectedItem.ToString == Baik { cX2 = Baik ; nilaiKar += ekstrakSimplex .x23; } else { cX2 = - ; nilaiKar += 0; } if cbX3.SelectedItem.ToString == Lama { cX3 = Lama ; nilaiKar += ekstrakSimplex .x31; } else if cbX3.SelectedItem.ToString == Sedang { cX3 = Sedang ; nilaiKar += ekstrakSimplex .x32; } else if cbX3.SelectedItem.ToString == Cepat { cX3 = Cepat ; nilaiKar += ekstrakSimplex .x33; } else { cX3 = - ; nilaiKar += 0; } using StreamWriter wr = new StreamWriter f1, true { terlebih dahulu baca nilai gaji standarnya StreamReader baca = new StreamReader f2; string gajiStd = baca.ReadLine; baca.Close; kemudian hitung nilai gajinya dengan rumus nilai kinerja karyawan dibagi nilai kinerja standar dikalikan dengan gaji standar double saranGaji = nilaiKar nBench Double .ParsegajiStd; string saranGaji2 = saranGaji + ; wr.WriteLinetxNama.Text + + cX1 + + cX2 + + cX3 + + saranGaji2; wr.Close; baca.Close; kosongkan datagridview; tampilkan file data karyawan dgv.Rows.Clear; refreshTampilan; MessageBox .Show Sukses ; } } 4.2.2.2 Simpan Hasil Perhitungan Gaji ke File PDF Untuk menyimpan hasil perhitungan gaji ke file PDF digunakan library PdfPTable PdfPTable pdfTable = new PdfPTable dgv.ColumnCount; pdfTable.DefaultCell.Padding = 3; pdfTable.WidthPercentage = 100; pdfTable.HorizontalAlignment = Element .ALIGN_LEFT; atur lebar kolom untuk PdfPTable yang dibuat float [] widths = new float [] { 20f, 50f, 50f, 50f, 50f, 50f }; pdfTable.SetWidthswidths; Menambahkan header kolom foreach DataGridViewColumn column in dgv.Columns { PdfPCell cell = new PdfPCell new Phrase column.HeaderText; cell.BackgroundColor = BaseColor .LIGHT_GRAY; cell.FixedHeight = 30f; pdfTable.AddCellcell; } Menambahkan data-data nilai pada tabel dari data grid view foreach DataGridViewRow row in dgv.Rows { foreach DataGridViewCell cell in row.Cells { pdfTable.AddCellcell.Value.ToString; } } Lakukan proses ekspor ke file PDF dan simpan di path yang telah ditentukan string folderPath = Hasil Perhitungan\\ ; if Directory .ExistsfolderPath { Directory .CreateDirectoryfolderPath; } using FileStream stream = new FileStream folderPath + Hasil Perhitungan.pdf , FileMode .Create { Document pdfDoc = new Document PageSize .A4, 10f, 10f, 10f, 0f; PdfWriter .GetInstancepdfDoc, stream; pdfDoc.Open; pdfDoc.AddpdfTable; pdfDoc.Close; stream.Close; } MessageBox .Show Hasil perhitungan gaji telah berhasil disimpan di direktori aplikasi ini ;

4.3 Uji Coba Aplikasi Real Gaji