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