function ProsesNIM($pmbid, $pmb)
{
    $StatusMhswID = 'A';
    // Default
    $Tahun_Akd = $_REQUEST['Tahun_Akd'];
    // 1. Buat NIM Mhsw & Hitung Batas studi
    $NIM = GetaField('prodi', 'ProdiID', $pmb['ProdiID'], 'GunakanNIMSementara') == 'Y' ? GetNextNIMSementara($Tahun_Akd, $pmb) : GetNextNIM($Tahun_Akd, $pmb);
    $NIMSementara = GetaField('prodi', 'ProdiID', $pmb['ProdiID'], 'GunakanNIMSementara');
    $Batas = HitungBatasStudi($Tahun_Akd, $pmb['ProdiID']);
    //die($Batas);
    // 2. Copy data PMB ke Mhsw
    $s = "insert into mhsw\r\n    (MhswID, Login, LevelID, KodeID, Password,\r\n    NIMSementara, PMBID, PSSBID, TahunID, BIPOTID,\r\n    Nama, StatusAwalID, StatusMhswID,\r\n    ProgramID, ProdiID, Kelamin, WargaNegara, Kebangsaan,\r\n    TempatLahir, TanggalLahir,\r\n    Agama, StatusSipil,\r\n    TinggiBadan, BeratBadan,\r\n    Alamat, Kota, RT, RW, KodePos, Propinsi, Negara,\r\n    Telepon, Handphone, Email,\r\n    AlamatAsal, KotaAsal, RTAsal, RWAsal, KodePosAsal, PropinsiAsal, NegaraAsal,\r\n    TeleponAsal,\r\n    NamaAyah, AgamaAyah, PendidikanAyah, PekerjaanAyah, HidupAyah,\r\n    NamaIbu, AgamaIbu, PendidikanIbu, PekerjaanIbu, HidupIbu,\r\n    AlamatOrtu, KotaOrtu, RTOrtu, RWOrtu, KodePosOrtu, PropinsiOrtu, NegaraOrtu,\r\n    TeleponOrtu, HandphoneOrtu, EmailOrtu,\r\n    PendidikanTerakhir, AsalSekolah, JenisSekolahID, AlamatSekolah, KotaSekolah, \r\n    JurusanSekolah, NilaiSekolah, TahunLulus, IjazahSekolah,\r\n    AsalPT, MhswIDAsalPT, ProdiAsalPT, LulusAsalPT, TglLulusAsalPT,\r\n    IPKAsalPT, Pilihan1, Pilihan2, Pilihan3, PrestasiTambahan,\r\n    BatasStudi, LulusUjian, NilaiUjian, GradeNilai, Syarat, SyaratLengkap,\r\n    TotalBiaya, TotalBayar, LoginBuat, TanggalBuat)\r\n    values\r\n    ('{$NIM}', '{$NIM}', '120', '" . KodeID . "', PASSWORD('{$pmb['TanggalLahir']}'),\r\n\t'{$NIMSementara}', '{$pmb['PMBID']}', '{$pmb['PSSBID']}', '{$Tahun_Akd}', '{$pmb['BIPOTID']}',\r\n    '{$pmb['Nama']}', '{$pmb['StatusAwalID']}', '{$StatusMhswID}',\r\n    '{$pmb['ProgramID']}', '{$pmb['ProdiID']}', '{$pmb['Kelamin']}', '{$pmb['WargaNegara']}', '{$pmb['Kebangsaan']}',\r\n    '{$pmb['TempatLahir']}', '{$pmb['TanggalLahir']}',\r\n    '{$pmb['Agama']}', '{$pmb['StatusSipil']}',\r\n    '{$pmb['TinggiBadan']}', '{$pmb['BeratBadan']}',\r\n    '{$pmb['Alamat']}', '{$pmb['Kota']}', '{$pmb['RT']}', '{$pmb['RW']}', '{$pmb['KodePos']}', '{$pmb['Propinsi']}', '{$pmb['Negara']}',\r\n    '{$pmb['Telepon']}', '{$pmb['Handphone']}', '{$pmb['Email']}',\r\n    '{$pmb['AlamatAsal']}', '{$pmb['KotaAsal']}', '{$pmb['RTAsal']}', '{$pmb['RWAsal']}', '{$pmb['KodePosAsal']}', '{$pmb['PropinsiAsal']}', '{$pmb['NegaraAsal']}',\r\n    '{$pmb['TeleponAsal']}',\r\n    '{$pmb['NamaAyah']}', '{$pmb['AgamaAyah']}', '{$pmb['PendidikanAyah']}', '{$pmb['PekerjaanAyah']}', '{$pmb['HidupAyah']}',\r\n    '{$pmb['NamaIbu']}', '{$pmb['AgamaIbu']}', '{$pmb['PendidikanIbu']}', '{$pmb['PekerjaanIbu']}', '{$pmb['HidupIbu']}',\r\n    '{$pmb['AlamatOrtu']}', '{$pmb['KotaOrtu']}', '{$pmb['RTOrtu']}', '{$pmb['RWOrtu']}', '{$pmb['KodePosOrtu']}', '{$pmb['PropinsiOrtu']}', '{$pmb['NegaraOrtu']}',\r\n    '{$pmb['TeleponOrtu']}', '{$pmb['HandphoneOrtu']}', '{$pmb['EmailOrtu']}',\r\n    '{$pmb['PendidikanTerakhir']}', '{$pmb['AsalSekolah']}', '{$pmb['JenisSekolahID']}', '{$pmb['AlamatSekolah']}', '{$pmb['KotaSekolah']}',\r\n    '{$pmb['JurusanSekolah']}', '{$pmb['NilaiSekolah']}', '{$pmb['TahunLulus']}', '{$pmb['IjazahSekolah']}',\r\n    '{$pmb['AsalPT']}', '{$pmb['MhswIDAsalSekolah']}', '{$pmb['ProdiAsalPT']}', '{$pmb['LulusAsalPT']}', '{$pmb['TglLulusAsalPT']}',\r\n    '{$pmb['IPKAsalPT']}', '{$pmb['Pilihan1']}', '{$pmb['Pilihan2']}', '{$pmb['Pilihan3']}', '{$pmb['PrestasiTambahan']}',\r\n    '{$Batas}', '{$pmb['LulusUjian']}', '{$pmb['NilaiSekolah']}', '{$pmb['GradeNilai']}', '{$pmb['Syarat']}', '{$pmb['SyaratLengkap']}',\r\n    '{$pmb['TotalBiaya']}', '{$pmb['TotalBayar']}', '{$_SESSION['_Login']}', now())";
    // Nilai Ujian untuk Kasih Bangsa adalah Nilai Sekolah. Ralat baris kedua di atas ini untuk mengubah ke default
    $r = _query($s);
    // Set NIM di data PMB
    $s = "update pmb set MhswID = '{$NIM}'\r\n    where KodeID='" . KodeID . "' and PMBID = '{$pmbid}' ";
    $r = _query($s);
    // Set Status Aplikan dari murid PMB menjadi REG
    include_once "../pmb/statusaplikan.lib.php";
    SetStatusAplikan('REG', GetaField('pmb', "PMBID='{$pmbid}' and KodeID", KodeID, "AplikanID"), GetaField('pmbperiod', "KodeID='" . KodeID . "' and NA", 'N', "PMBPeriodID"));
    // Transfer BIPOTMhsw ke Mhsw
    $s = "update bipotmhsw\r\n    set MhswID = '{$NIM}',\r\n        PMBMhswID = 1,\r\n        TahunID = '{$Tahun_Akd}',\r\n        LoginEdit = '{$_SESSION['_Login']}',\r\n        TanggalEdit = now()\r\n    where PMBID = '{$pmbid}'\r\n      and PMBMhswID = 0\r\n      and KodeID = '" . KodeID . "' ";
    $r = _query($s);
    // Transfer Pembayaran ke Mhsw
    $s = "update bayarmhsw\r\n    set MhswID = '{$NIM}',\r\n        PMBMhswID = 1,\r\n        TahunID = '{$Tahun_Akd}',\r\n        LoginEdit = '{$_SESSION['_Login']}',\r\n        TanggalEdit = now()\r\n    where PMBID = '{$pmbid}'\r\n      and PMBMhswID = 0\r\n      and KodeID = '" . KodeID . "' ";
    $r = _query($s);
    // Otomatis Registrasi di Semester
    $MaxSKS = GetaField('prodi', "KodeID='" . KodeID . "' and ProdiID", $pmb['ProdiID'], 'DefSKS') + 0;
    $s = "insert into khs\r\n    (KodeID, TahunID, ProgramID, ProdiID,\r\n    MhswID, StatusMhswID, Sesi, BIPOTID,\r\n    Biaya, Bayar, MaxSKS,\r\n    Keterangan, LoginBuat, TanggalBuat)\r\n    values\r\n    ('" . KodeID . "', '{$Tahun_Akd}', '{$pmb['ProgramID']}', '{$pmb['ProdiID']}',\r\n    '{$NIM}', '{$StatusMhswID}', 1, '{$pmb['BIPOTID']}',\r\n    '{$pmb['TotalBiaya']}', '{$pmb['TotalBayar']}', {$MaxSKS},\r\n    'Auto-registrasi', '{$_SESSION['_Login']}', now())";
    $r = _query($s);
    // Tutup aplikasi
    TutupScript();
}
function ImportPMB($w, $TahunID = '')
{
    $TahunID = trim($TahunID);
    $TahunID = strlen($TahunID) <= 4 ? $TahunID . '1' : $TahunID;
    $untukNim = substr($TahunID, 0, 4);
    $MhswID = '';
    $MhswID = GetNextNIM($untukNim, $w);
    //$StatusMhswID = GetaField('statusmhsw', 'Def', 'Y', 'StatusMhswID');
    $StatusMhswID = 'A';
    if (empty($TahunID)) {
        $TahunID = GetaField('tahun', "KodeID='{$_SESSION['KodeID']}' and ProgramID='{$w['ProgramID']}' and ProdiID='{$w['ProdiID']}' and NA", 'N', 'TahunID');
    }
    // Hitung tahun batas tahun
    $BatasStudi = HitungBatasStudi($TahunID, $w['ProdiID']);
    $Password = SetPasswordMhsw($w['TanggalLahir']);
    // Oh, iya, status mahasiswa selalu diset "AKTIF"
    $w['StatusMhswID'] = 'A';
    // Fase 1: import data
    $s = "insert into mhsw (MhswID, Login, Password,\r\n    PMBID, StatusMhswID, Kelas, NamaKelas,\r\n    PMBFormJualID, BuktiSetoran, TahunID, KodeID,\r\n    BIPOTID, Nama, StatusAwalID, ProgramID, ProdiID,\r\n    Kelamin, WargaNegara, Kebangsaan,\r\n    TempatLahir, TanggalLahir,\r\n    Agama, StatusSipil,\r\n    Alamat, Kota, RT, RW,\r\n    KodePos, Propinsi, Negara,\r\n    Telepon, Handphone, Email,\r\n    AlamatAsal, KotaAsal,\r\n    RTAsal, RWAsal, TeleponAsal,\r\n    KodePosAsal, PropinsiAsal, NegaraAsal,\r\n    NamaAyah, AgamaAyah, PendidikanAyah, PekerjaanAyah, HidupAyah,\r\n    NamaIbu, AgamaIbu, PendidikanIbu, PekerjaanIbu, HidupIbu,\r\n    AlamatOrtu, KotaOrtu, RTOrtu, RWOrtu,\r\n    KodePosOrtu, PropinsiOrtu, NegaraOrtu,\r\n    TeleponOrtu, HandphoneOrtu, EmailOrtu,\r\n    AsalSekolah, JenisSekolahID,\r\n    AlamatSekolah, KotaSekolah,\r\n    NilaiSekolah, JurusanSekolah, TahunLulus,\r\n    AsalPT, ProdiAsalPT, LulusAsalPT, TglLulusAsalPT,\r\n    Pilihan1, Pilihan2, Pilihan3,\r\n    Harga, SudahBayar, NA, TanggalUjian, LulusUjian,\r\n    RuangID, NomerUjian,\r\n    NilaiUjian, GradeNilai, BatasStudi,\r\n    BuktiSetoranMhsw, TanggalSetoranMhsw, TotalSetoranMhsw, TotalBiayaMhsw,\r\n    Dispensasi, DispensasiID, JudulDispensasi, CatatanDispensasi,\r\n    LoginBuat, TanggalBuat)\r\n\r\n    values ('{$MhswID}', '{$MhswID}', PASSWORD('{$Password}'),\r\n    '{$w['PMBID']}', '{$StatusMhswID}', '{$w['Kelas']}', '{$w['NamaKelas']}',\r\n    '{$w['PMBFormJualID']}', '{$w['BuktiSetoran']}', '{$TahunID}', '{$w['KodeID']}',\r\n    '{$w['BIPOTID']}', '{$w['Nama']}', '{$w['StatusAwalID']}', '{$w['ProgramID']}', '{$w['ProdiID']}',\r\n    '{$w['Kelamin']}', '{$w['WargaNegara']}', '{$w['Kebangsaan']}',\r\n    '{$w['TempatLahir']}', '{$w['TanggalLahir']}',\r\n    '{$w['Agama']}', '{$w['StatusSipil']}',\r\n    '{$w['Alamat']}', '{$w['Kota']}', '{$w['RT']}', '{$w['RW']}',\r\n    '{$w['KodePos']}', '{$w['Propinsi']}', '{$w['Negara']}',\r\n    '{$w['Telepon']}', '{$w['Handphone']}', '{$w['Email']}',\r\n    '{$w['AlamatAsal']}', '{$w['KotaAsal']}',\r\n    '{$w['RTAsal']}', '{$w['RWAsal']}', '{$w['TeleponAsal']}',\r\n    '{$w['KodePosAsal']}', '{$w['PropinsiAsal']}', '{$w['NegaraAsal']}',\r\n    '{$w['NamaAyah']}', '{$w['AgamaAyah']}', '{$w['PendidikanAyah']}', '{$w['PekerjaanAyah']}', '{$w['HidupAyah']}',\r\n    '{$w['NamaIbu']}', '{$w['AgamaIbu']}', '{$w['PendidikanIbu']}', '{$w['PekerjaanIbu']}', '{$w['HidupIbu']}',\r\n    '{$w['AlamatOrtu']}', '{$w['KotaOrtu']}', '{$w['RTOrtu']}', '{$w['RWOrtu']}',\r\n    '{$w['KodePosOrtu']}', '{$w['PropinsiOrtu']}', '{$w['NegaraOrtu']}',\r\n    '{$w['TeleponOrtu']}', '{$w['HandphoneOrtu']}', '{$w['EmailOrtu']}',\r\n    '{$w['AsalSekolah']}', '{$w['JenisSekolahID']}',\r\n    '{$w['AlamatSekolah']}', '{$w['KotaSekolah']}',\r\n    '{$w['NilaiSekolah']}', '{$w['JurusanSekolah']}', '{$w['TahunLulus']}',\r\n    '{$w['AsalPT']}', '{$w['ProdiAsalPT']}', '{$w['LulusAsalPT']}', '{$w['TglLulusAsalPT']}',\r\n    '{$w['Pilihan1']}', '{$w['Pilihan2']}', '{$w['Pilihan3']}',\r\n    '{$w['Harga']}', '{$w['SudahBayar']}', '{$w['NA']}',\r\n    '{$w['TanggalUjian']}', '{$w['LulusUjian']}',\r\n    '{$w['RuangID']}', '{$w['NomerUjian']}',\r\n    '{$w['NilaiUjian']}', '{$w['GradeNilai']}', '{$BatasStudi}',\r\n    '{$w['BuktiSetoranMhsw']}', '{$w['TanggalSetoranMhsw']}', '{$w['TotalSetoranMhsw']}', '{$w['TotalBiayaMhsw']}',\r\n    '{$w['Dispensasi']}', '{$w['DispensasiID']}', '{$w['JudulDispensasi']}', '{$w['CatatanDispensasi']}',\r\n    '{$_SESSION['_Login']}', now())";
    $r = _query($s);
    // Fase 2: update data PMB
    $s1 = "update pmb set NIM='{$MhswID}', BIPOTID='{$w['BIPOTID']}' where PMBID='{$w['PMBID']}' ";
    $r1 = _query($s1);
    // Fase 3: Import BIPOT ISI
    //ImportBIPOT($w, $MhswID, $TahunID);
    // Fase 4: check Cicilan & Import cicilan
    //ImportCicilan($w, $MhswID, $TahunID);
    // Fase 5: Import Pembayaran
    //ImportPembayaran($w, $MhswID, $TahunID);
    // Fase 6: Buat KHS
    //BuatKHS($w, $MhswID, $TahunID);
    // Kembalikan ID
    return $MhswID;
    //$s = "insert into mhsw
}
function Proses()
{
    $jml = $_SESSION['PRC_URUTNIMS_JML'] + 0;
    $prc = $_SESSION['PRC_URUTNIMS_PRC'] + 0;
    if ($prc < $jml) {
        // Parameter
        $MhswIDLama = $_SESSION['PRC_URUTNIMS_MhswID_' . $prc];
        $NIM = GetNextNIM($_SESSION['TahunID'], GetFields('mhsw', "MhswID='{$MhswIDLama}' and KodeID", KodeID, '*'));
        // Proses
        // PMB
        $arrTablesToUpdate = array('bayarmhsw', 'bipotmhsw', 'khs', 'krs', 'pmb', 'presensimhsw', 'prosesstatusmhsw');
        foreach ($arrTablesToUpdate as $table) {
            $s1 = "update {$table} set MhswID = '{$NIM}' where MhswID='{$MhswIDLama}'";
            $r1 = _query($s1);
        }
        $s1 = "update mhsw set MhswID = '{$NIM}', NIMSementara = 'N', Login = '******', MhswIDLama='{$MhswIDLama}' where MhswID='{$MhswIDLama}'";
        $r1 = _query($s1);
        // Tampilkan
        $persen = $jml > 0 ? $prc / $jml * 100 : 0;
        $sisa = $jml > 0 ? 100 - $persen : 0;
        $persen = number_format($persen);
        echo "<p align=center>\r\n    <font size=+1>{$persen} %</font><br />\r\n    <img src='../img/B1.jpg' width=1 height=20 /><img src='../img/B2.jpg' width={$persen} height=20 /><img src='../img/B3.jpg' width={$sisa} height=20 /><img src='../img/B1.jpg' width=1 height=20 /><br />\r\n    Memproses: #{$prc}<br />\r\n    <sup>{$MhswIDLama}</sup><br />\r\n    <h1 align=center>\r\n      MhswID Baru : {$NIM}\r\n    </h1>\r\n    </p>\r\n    <hr size=1 color=silver />\r\n    <p align=center>\r\n      <input type=button name='Batal' value='Batalkan' onClick=\"window.close()\" />\r\n    </p>";
        // Next
        $_SESSION['PRC_URUTNIMS_PRC']++;
        // Reload
        $tmr = 10;
        echo <<<SCR
    <script>
    window.onload=setTimeout("window.location='../{$_SESSION['mnux']}.prc.php?gos=Proses'", {$tmr});
    </script>
SCR;
    } else {
        echo Konfirmasi("Proses Selesai", "Proses telah selesai.<br />\r\n    Data yang berhasil diproses: <b>{$_SESSION['PRC_URUTNIMS_PRC']}</b>.\r\n    <hr size=1 color=silver />\r\n    <input type=button name='Tutup' value='Tutup' onClick=\"window.close()\" />");
    }
}
function PindahSav($mhsw)
{
    $PindahProgramID = $_REQUEST['PindahProgramID'];
    $PindahProdiID = $_REQUEST['PindahProdiID'];
    $Angkatan = $_REQUEST['Angkatan'];
    if ($mhsw['ProgramID'] == $PindahProgramID && $mhsw['ProdiID'] == $PindahProdiID) {
        echo ErrorMsg('Gagal Pindah', "Program dan Program Studi sama dengan data mahasiswa yang lama.<br />\r\n      Berarti mahasiswa tidak dipindahkan.\r\n      <hr size=1 color=silver>\r\n      Pilihan: <a href='?mnux=mhswpindahprodi'>Batal Pindah</a>");
    } else {
        // Jika hanya pindah program
        if ($mhsw['ProdiID'] == $PindahProdiID) {
            $s = "update mhsw set ProgramID='{$PindahProgramID}'\r\n        where MhswID='{$mhsw['MhswID']}' ";
            $r = _query($s);
            // Tampilkan pesan pemindahan program
            echo Konfirmasi("Pemindahan Program Berhasil", "Pemindahan program terhadap mahasiswa <b>{$mhsw['MhswID']}</b> - <b>{$mhsw['Nama']}</b>\r\n        telah berhasil dilakukan.<hr size=1 color=silver>\r\n        Pilihan: <a href='?mnux=mhswakd&mhswid={$mhsw['MhswID']}&gos=MhswAkdEdt'>Data Akademik</a> |\r\n        <a href='?mnux=mhswpindahprodi'>Kembali ke Pemindahan</a>");
        } else {
            // Tahap 1: Copy data dari mhsw lama
            $MhswPindah = $mhsw;
            $MhswPindah['ProdiID'] = $PindahProdiID;
            $MhswPindah['ProgramID'] = $PindahProgramID;
            $MhswID = GetNextNIM($Angkatan, $MhswPindah);
            $StatusAwalID = $_REQUEST['StatusBaru'];
            $BIPOTID = GetaField('bipot', "Def='Y' and ProgramID='{$PindahProgramID}' and ProdiID", $PindahProdiID, 'BIPOTID');
            $s = "insert into mhsw (MhswID, PMBID, PMBFormJualID,\r\n        BuktiSetoran, TahunID, KodeID, \r\n        BIPOTID, Autodebet,\r\n        Nama, Foto, StatusAwalID, StatusMhswID,\r\n        ProgramID, ProdiID, PenasehatAkademik,\r\n        Kelamin, WargaNegara, Kebangsaan,\r\n        TempatLahir, TanggalLahir,\r\n        Agama, StatusSipil,\r\n\r\n        Alamat, Kota, RT, RW,\r\n        KodePos, Propinsi, Negara,\r\n        Telepon, Handphone, Email,\r\n\r\n        AlamatAsal, KotaAsal, RTAsal, RWAsal,\r\n        KodePosAsal, PropinsiAsal, NegaraAsal,\r\n        TeleponAsal,\r\n\r\n        NamaAyah, AgamaAyah,\r\n        PendidikanAyah, PekerjaanAyah, HidupAyah,\r\n\r\n        NamaIbu, AgamaIbu,\r\n        PendidikanIbu, PekerjaanIbu, HidupIbu,\r\n\r\n        AlamatOrtu, KotaOrtu, RTOrtu, RWOrtu,\r\n        KodePosOrtu, PropinsiOrtu, NegaraOrtu,\r\n        TeleponOrtu, HandphoneOrtu, EmailOrtu,\r\n\r\n        AsalSekolah, JenisSekolahID,\r\n        AlamatSekolah, KotaSekolah,\r\n        JurusanSekolah, NilaiSekolah, TahunLulus,\r\n\r\n        Pilihan1, Pilihan2, Pilihan3,\r\n        Harga, SudahBayar, NA,\r\n\r\n        TanggalUjian, LulusUjian, RuangID,\r\n        NomerUjian, NilaiUjian, GradeNilai,\r\n        Syarat, SyaratLengkap,\r\n        BuktiSetoranMhsw, TanggalSetoranMhsw,\r\n        TotalBiayaMhsw, TotalSetoranMhsw,\r\n        Dispensasi, DispensasiID,\r\n        JudulDispensasi, CatatanDispensasi,\r\n\r\n        NamaBank, NomerRekening,\r\n        LoginBuat, TanggalBuat)\r\n        \r\n        values ('{$MhswID}', '{$mhsw['PMBID']}', '{$mhsw['PMBFormJualID']}',\r\n        '{$mhsw['BuktiSetoran']}', '{$mhsw['TahunID']}', '{$mhsw['KodeID']}',\r\n        '{$BIPOTID}', '{$mhsw['Autodebet']}',\r\n        '{$mhsw['Nama']}', '{$mhsw['Foto']}', '{$StatusAwalID}', '{$mhsw['StatusMhswID']}',\r\n        '{$PindahProgramID}', '{$PindahProdiID}', '{$mhsw['PenasehatAkademik']}',\r\n        '{$mhsw['Kelamin']}', '{$mhsw['WargaNegara']}', '{$mhsw['Kebangsaan']}',\r\n        '{$mhsw['TempatLahir']}', '{$mhsw['TanggalLahir']}',\r\n        '{$mhsw['Agama']}', '{$mhsw['StatusSipil']}',\r\n\r\n        '{$mhsw['Alamat']}', '{$mhsw['Kota']}', '{$mhsw['RT']}', '{$mhsw['RW']}',\r\n        '{$mhsw['KodePos']}', '{$mhsw['Propinsi']}', '{$mhsw['Negara']}',\r\n        '{$mhsw['Telepon']}', '{$mhsw['Handphone']}', '{$mhsw['Email']}',\r\n\r\n        '{$mhsw['AlamatAsal']}', '{$mhsw['KotaAsal']}', '{$mhsw['RTAsal']}', '{$mhsw['RWAsal']}',\r\n        '{$mhsw['KodePosAsal']}', '{$mhsw['PropinsiAsal']}', '{$mhsw['NegaraAsal']}',\r\n        '{$mhsw['TeleponAsal']}',\r\n        \r\n        '{$mhsw['NamaAyah']}', '{$mhsw['AgamaAyah']}',\r\n        '{$mhsw['PendidikanAyah']}', '{$mhsw['PekerjaanAyah']}', '{$mhsw['HidupAyah']}',\r\n        \r\n        '{$mhsw['NamaIbu']}', '{$mhsw['AgamaIbu']}',\r\n        '{$mhsw['PendidikanIbu']}', '{$mhsw['PekerjaanIbu']}', '{$mhsw['HidupIbu']}',\r\n        \r\n        '{$mhsw['AlamatOrtu']}', '{$mhsw['KotaOrtu']}', '{$mhsw['RTOrtu']}', '{$mhsw['RWOrtu']}',\r\n        '{$mhsw['KodePosOrtu']}', '{$mhsw['PropinsiOrtu']}', '{$mhsw['NegaraOrtu']}',\r\n        '{$mhsw['TeleponOrtu']}', '{$mhsw['HandphoneOrtu']}', '{$mhsw['EmailOrtu']}',\r\n        \r\n        '{$mhsw['AsalSekolah']}', '{$mhsw['JenisSekolahID']}',\r\n        '{$mhsw['AlamatSekolah']}', '{$mhsw['KotaSekolah']}',\r\n        '{$mhsw['JurusanSekolah']}', '{$mhsw['NilaiSekolah']}', '{$mhsw['TahunLulus']}',\r\n        \r\n        '{$mhsw['Pilihan1']}', '{$mhsw['Pilihan2']}', '{$mhsw['Pilihan3']}',\r\n        '{$mhsw['Harga']}', '{$mhsw['SudahBayar']}', '{$mhsw['NA']}',\r\n        '{$mhsw['TanggalUjian']}', '{$mhsw['LulusUjian']}', '{$mhsw['RuangID']}',\r\n        '{$mhsw['NomerUjian']}', '{$mhsw['NilaiUjian']}', '{$mhsw['GradeNilai']}',\r\n        '{$mhsw['Syarat']}', '{$mhsw['SyaratLengkap']}',\r\n        '{$mhsw['BuktiSetoranMhsw']}', '{$mhsw['TanggalSetoranMhsw']}',\r\n        '{$mhsw['TotalBiayaMhsw']}', '{$mhsw['TotalSetoranMhsw']}',\r\n        '{$mhsw['Dispensasi']}', '{$mhsw['DispensasiID']}',\r\n        '{$mhsw['JudulDispensasi']}', '{$mhsw['CatatanDispensasi']}',\r\n        \r\n        '{$mhsw['NamaBank']}', '{$mhsw['NomerRekening']}',\r\n        '{$_SESSION['_Login']}', now()\r\n        )";
            $r = _query($s);
            // Tahap 2: Set Status Lama menjadi Pindah
            $StatusMhswID = $_REQUEST['StatusLama'];
            $s2 = "update mhsw set StatusMhswID='{$StatusMhswID}', NA='N'\r\n        where MhswID='{$mhsw['MhswID']}' ";
            $r2 = _query($s2);
            //Tahap 3: Buat KHS Mahasiswa
            $MaxSKS = GetaField("prodi", "ProdiID", $PindahProdiID, "TotalSKS") + 0;
            $sp = "insert into khs (TahunID, KodeID, ProgramID, ProdiID,\r\n        MhswID, StatusMhswID, Sesi, MaxSKS,\r\n        LoginBuat, TanggalBuat)\r\n        values ('{$_SESSION['tahun']}', '{$_SESSION['KodeID']}', '{$PindahProgramID}', '{$PindahProdiID}',\r\n        '{$MhswID}', 'P', '1', '{$MaxSKS}',\r\n        '{$_SESSION['_Login']}', now()  )";
            $rsp = _query($sp);
            // Tahap 4 Copy Hutang Prodi Lama ke Keuangan Prodi Baru
            $Jumlah = GetBipot($mhsw['MhswID'], $_SESSION['tahun']) + 0;
            if ($Jumlah > 0) {
                $in = "insert into bipotmhsw (MhswID, TahunID, Jumlah, Besar, TrxID, BipotNamaID, Catatan, TanggalBuat, LoginBuat)\r\n                values ('{$MhswID}', '{$_SESSION['tahun']}', 1, '{$Jumlah}', 1, '30', 'Hutang Pindah Prodi', NOW(), '{$_SESSION['_Login']}')";
                $rin = _query($in);
            }
            // Tampilkan pesan
            echo Konfirmasi("Proses Pemindahan Berhasil", "Mahasiswa telah dipindahkan ke Program/Program Studi baru dengan NPM\r\n        baru, yaitu: <b>{$MhswID}</b>.\r\n        <hr size=1 color=silver>\r\n        Pilihan: <a href='?mnux=mhswakd&mhswid={$MhswID}&gos=MhswAkdEdt'>Data Akademik</a> |\r\n        <a href='?mnux=mhswpindahprodi'>Kembali ke Pemindahan</a>");
        }
    }
}
function fnProses()
{
    $arrMhswID = array('2008TEMPMA001', '2008TEMPMA002', '2008TEMPMA003', '2008TEMPAK004', '2008TEMPAK001', '2008TEMPAK003');
    $n = 0;
    foreach ($arrMhswID as $MhswIDLama) {
        $n++;
        $NIM = GetNextNIM(substr($MhswIDLama, 0, 4), GetFields('mhsw', "MhswID='{$MhswIDLama}' and KodeID", KodeID, '*'));
        // Proses
        // PMB
        $arrTablesToUpdate = array('bayarmhsw', 'bipotmhsw', 'khs', 'krs', 'pmb', 'presensimhsw', 'prosesstatusmhsw');
        foreach ($arrTablesToUpdate as $table) {
            $s1 = "update {$table} set MhswID = '{$NIM}' where MhswID='{$MhswIDLama}'";
            $r1 = _query($s1);
        }
        $s1 = "update mhsw set MhswID = '{$NIM}', Login = '******', MhswIDLama='{$MhswIDLama}' where MhswID='{$MhswIDLama}'";
        $r1 = _query($s1);
    }
    echo "<li>Table {$table}, diproses: {$n}</li>";
    echo "</ol>";
    echo "<font size=+1>Selesai.</font>";
}
function Simpan()
{
    $JumlahData = $_REQUEST['JumlahData'] + 0;
    //$TahunIDup = $_REQUEST['TahunIDup'];
    //$ProdiIDup = $_REQUEST['ProdiIDup'];
    //$JenisTAIDup = $_REQUEST['JenisTAIDup'];
    $Sync = $_REQUEST['Sync'];
    // Insert Data
    // ===========
    for ($i = 1; $i <= $JumlahData; $i++) {
        $CheckBox = $_REQUEST['CheckBox' . $i];
        if (!empty($CheckBox)) {
            $MKKode = $_REQUEST['MKKode' . $i];
            $Nama = $_REQUEST['Nama' . $i];
            $Sesi = $_REQUEST['Sesi' . $i];
            $SKS = $_REQUEST['SKS' . $i];
            $ProdiID = $_REQUEST['ProdiID' . $i];
            //$Wajib = $_REQUEST['Wajib'.$i];
            //$JenisMKID = $_REQUEST['JenisMKID'.$i];
            //$JenisPilihanID = $_REQUEST['JenisPilihanID'.$i];
            $SKSTatapMuka = $_REQUEST['SKSTatapMuka' . $i];
            $SKSPraktikum = $_REQUEST['SKSPraktikum' . $i];
            $KurikulumKode = $_REQUEST['KurikulumKode' . $i];
            $KurikulumID = '';
            //GetaField('kurikulum', "KurikulumKode", $KurikulumKode, "KurikulumID");
            //$SKSPraktekLap = $_REQUEST['SKSPraktekLap'.$i];
            /*$Silabus = $_REQUEST['Silabus'.$i];
            		$SatuanAcara = $_REQUEST['SatuanAcara'.$i];
            		$BahanAjar = $_REQUEST['BahanAjar'.$i];
            		$Diktat = $_REQUEST['Diktat'.$i];
            		$Penanggungjawab = $_REQUEST['Penanggungjawab'.$i];
            		$TugasAkhir = $_REQUEST['TugasAkhir'.$i];			
            		$KurikulumID = $_REQUEST['KurikulumID'.$i];			
            		$JenisKurikulumID = $_REQUEST['JenisKurikulumID'.$i];	*/
            //$NA = $_REQUEST['NA'.$i];
            if ($Sync == 1) {
                // untuk proses sinkronisasi
                // reset mhsw
                $s = "select * from pmb where PMBPeriodID='20121' order by Nama";
                $r = _query($s);
                while ($w = _fetch_array($r)) {
                    $pmbid = $w['PMBID'];
                    $sm = "update mhsw set MhswID='' where PMBID='{$pmbid}'";
                    $rm = _query($sm);
                }
                // proses
                $s = "select * from pmb where PMBPeriodID='20121' order by Nama";
                $r = _query($s);
                while ($w = _fetch_array($r)) {
                    $MhswID_lama = $w['MhswID'];
                    $pmbid = $w['PMBID'];
                    $pmb = GetFields('pmb', "KodeID='" . KodeID . "' and PMBID", $pmbid, '*');
                    $Tahun_Akd = '20121';
                    //$NIM = (GetaField('prodi', 'ProdiID', $pmb['ProdiID'], 'GunakanNIMSementara')=='Y')?  GetNextNIMSementara($Tahun_Akd, $pmb) : GetNextNIM($Tahun_Akd, $pmb);
                    $NIM = GetNextNIM($Tahun_Akd, $pmb);
                    $sp = "update pmb set MhswID='{$NIM}' where PMBID='{$pmbid}'";
                    $rp = _query($sp);
                    $sbim = "update bipotmhsw set MhswID='{$NIM}' where PMBID='{$pmbid}'";
                    $rbim = _query($sbim);
                    $sbam = "update bayarmhsw set MhswID='{$NIM}' where PMBID='{$pmbid}'";
                    $rbam = _query($sbam);
                    $sk = "update khs set MhswID='{$NIM}' where MhswID='{$MhswID_lama}'";
                    $rk = _query($sk);
                }
                // mhsw
                $s = "select * from pmb where PMBPeriodID='20121' order by Nama";
                $r = _query($s);
                while ($w = _fetch_array($r)) {
                    $MhswID_lama = $w['MhswID'];
                    $pmbid = $w['PMBID'];
                    $pmb = GetFields('pmb', "KodeID='" . KodeID . "' and PMBID", $pmbid, '*');
                    $Tahun_Akd = '20121';
                    //$NIM = (GetaField('prodi', 'ProdiID', $pmb['ProdiID'], 'GunakanNIMSementara')=='Y')?  GetNextNIMSementara($Tahun_Akd, $pmb) : GetNextNIM($Tahun_Akd, $pmb);
                    $NIM = $w['MhswID'];
                    //GetNextNIM($Tahun_Akd, $pmb);
                    $sm = "update mhsw set MhswID='{$NIM}', Login='******' where PMBID='{$pmbid}'";
                    $rm = _query($sm);
                }
            } else {
                // untuk proses upload
                // update table
                // ------------
                /*$s = "insert into mk
                		(MKKode, Nama, Sesi, SKS, ProdiID, Wajib, JenisMKID, JenisPilihanID, SKSTatapMuka, SKSPraktikum, SKSPraktekLap, Silabus, 
                			SatuanAcara, BahanAjar, Diktat, Penanggungjawab, TugasAkhir, KurikulumID, JenisKurikulumID, NA, LoginBuat, TglBuat, KodeID)
                		values
                		('$MKKode', '$Nama', '$Sesi', '$SKS', '$ProdiID', '$Wajib', '$JenisMKID', '$JenisPilihanID', '$SKSTatapMuka', '$SKSPraktikum', '$SKSPraktekLap', '$Silabus',
                			'$SatuanAcara', '$BahanAjar', '$Diktat', '$Penanggungjawab', '$TugasAkhir', '$KurikulumID', '$JenisKurikulumID', '$NA', '$_SESSION[_Login]', now(), '".KodeID."')";*/
                $Data_exist = GetaField('mk', "MKKode = '{$MKKode}' and SKS='{$SKS}' and ProdiID", $ProdiID, "MKID");
                if ($Data_exist) {
                    // data sudah ada
                } else {
                    // insert new mk
                    $s = "insert into mk\r\n\t\t\t\t\t\t\t\t(MKKode, Nama, Sesi, SKS, ProdiID, SKSTatapMuka, SKSPraktikum, KurikulumID, LoginBuat, TglBuat, KodeID)\r\n\t\t\t\t\t\t\t\tvalues\r\n\t\t\t\t\t\t\t\t('{$MKKode}', '{$Nama}', '{$Sesi}', '{$SKS}', '{$ProdiID}', '{$SKSTatapMuka}', '{$SKSPraktikum}',\t'{$KurikulumID}', 'MIGRASI', now(), '" . KodeID . "')";
                    //$_SESSION[_Login]
                    //$r = _query($s);
                }
                //$Data_exist = GetaField('mk', "MKKode", $MKKode, "MKKode");
                //$r = ($Data_exist)? '' : _query($s);
            }
        }
        // end if !empty($CheckBox)
    }
    // end for $i <= $JumlahData => insert data
    echo "<script>window.close()</script>";
}
Exemple #7
0
function fnProsesnya()
{
    $MhswID = sqling($_REQUEST['MhswID']);
    $ProdiID = sqling($_REQUEST['ProdiID']);
    $ProgramID = sqling($_REQUEST['ProgramID']);
    $TahunID = sqling($_REQUEST['TahunID']);
    // Cek Tahun
    $ada = GetFields('tahun', "ProdiID='{$ProdiID}' and ProgramID='{$ProgramID}' and KodeID", KodeID, '*');
    if (empty($ada)) {
        die(ErrorMsg("Error - {$TahunID}", "Kalendar akademik dengan kode: <b>{$TahunID}</b> tidak ditemukan<br />\r\n    untuk Program Studi: {$ProdiID} dan Program Pendidikan: {$ProgramID}.<br />\r\n    Hubungi Kepala BAA untuk memastikan tahun akademik yang aktif.<br />\r\n    Atau hubungi Sysadmin untuk informasi lebih lanjut.\r\n    <hr size=1 color=silver />\r\n    <input type=button name='btnKembali' value='Kembali'\r\n      onClick=\"location='?mnux={$_SESSION['mnux']}&gos=fnDropin&MhswID={$MhswID}'\" />\r\n    <input type=button name='btnBatal' value='Batal'\r\n      onClick=\"location='?mnux={$_SESSION['mnux']}&gos='\" />"));
    }
    $mhsw = GetFields('mhsw', "MhswID='{$MhswID}' and KodeID", KodeID, '*');
    $baru = $mhsw;
    $baru['ProdiID'] = $ProdiID;
    $baru['ProgramID'] = $ProgramID;
    $baru['StatusAwalID'] = 'D';
    // Edit: Ilham
    $NIM = GetaField('prodi', 'ProdiID', $mhsw['ProdiID'], 'GunakanNIMSementara') == 'Y' ? GetNextNIM($TahunID, $baru) : GetNextNIMSementara($TahunID, $baru);
    $BIPOTID = GetaField('bipot', "ProdiID='{$ProdiID}' and ProgramID='{$ProgramID}' and Def='Y' and KodeID", KodeID, 'BIPOTID');
    $BatasStudi = HitungBatasStudi($TahunID, $ProdiID);
    // Salin data mhsw
    $s = "insert into mhsw\r\n    (MhswID, Login, LevelID, `Password`,\r\n    KDPIN, PMBID, TahunID, KodeID, BIPOTID,\r\n    Autodebet, Nama, Foto,\r\n    StatusAwalID, StatusMhswID, ProgramID, ProdiID,\r\n    PenasehatAkademik, Kelamin, WargaNegara, Kebangsaan,\r\n    TempatLahir, TanggalLahir, Agama, StatusSipil,\r\n    TinggiBadan, BeratBadan,\r\n    Alamat, Kota, RT, RW, KodePos, Propinsi, Negara, Telephone, Handphone, Email,\r\n    AlamatAsal, KotaAsal, RTAsal, RWAsal, KodePosAsal, PropinsiAsal, NegaraAsal, TeleponAsal,\r\n    AnakKe, JumlahSaudara,\r\n    NamaAyah, AgamaAyah, PendidikanAyah, PekerjaanAyah, HidupAyah,\r\n    NamaIbu, AgamaIbu, PendidikanIbu, PekerjaanIbu, HidupIbu,\r\n    AlamatOrtu, KotaOrtu, RTOrtu, RWOrtu, KodePosOrtu, PropinsiOrtu, NegaraOrtu, TeleponOrtu,\r\n    HandphoneOrtu, EmailOrtu,\r\n    PendidikanTerakhir, AsalSekolah, AsalSekolah1, \r\n    AlamatSekolah, KotaSekolah, JurusanSekolah, NilaiSekolah,\r\n    TahunLulus, IjazahSekolah,\r\n    AsalPT, MhswIDAsalPT, ProdiAsalPT, LulusAsalPT, TglLulusAsalPT, IPKAsalPT,\r\n    BatasStudi, NA,\r\n    NamaBank, NomerRekening,\r\n    LoginBuat, TanggalBuat)\r\n    values\r\n    ('{$NIM}', '{$NIM}', 120, LEFT(PASSWORD('{$NIM}'), 10),\r\n    '{$baru['KDPIN']}', '{$MhswID}', '{$TahunID}', '" . KodeID . "', '{$BIPOTID}',\r\n    '{$baru['Autodebet']}', '{$baru['Nama']}', '{$mhsw['Foto']}',\r\n    '{$baru['StatusAwalID']}', '{$baru['StatusMhswID']}', '{$ProgramID}', '{$ProdiID}',\r\n    '{$baru['PenasehatAkademik']}', '{$baru['Kelamin']}', '{$baru['WargaNegara']}', '{$baru['Kebangsaan']}',\r\n    '{$baru['TempatLahir']}', '{$baru['TanggalLahir']}', '{$baru['Agama']}', '{$baru['StatusSipil']}',\r\n    '{$baru['TinggiBadan']}', '{$baru['BeratBadan']}',\r\n    '{$baru['Alamat']}', '{$baru['Kota']}', '{$baru['RT']}', '{$baru['RW']}', '{$baru['KodePos']}', '{$baru['Propinsi']}', '{$baru['Negara']}', '{$baru['Telephone']}', '{$baru['Handphone']}', '{$baru['Email']}',\r\n    '{$baru['AlamatAsal']}', '{$baru['KotaAsal']}', '{$baru['RTAsal']}', '{$baru['RWAsal']}', '{$baru['KodePosAsal']}', '{$baru['PropinsiAsal']}', '{$baru['NegaraAsal']}', '{$baru['TeleponAsal']}',\r\n    '{$baru['AnakKe']}', '{$baru['JumlahSaudara']}',\r\n    '{$baru['NamaAyah']}', '{$baru['AgamaAyah']}', '{$baru['PendidikanAyah']}', '{$baru['PekerjaanAyah']}', '{$baru['HidupAyah']}',\r\n    '{$baru['NamaIbu']}', '{$baru['AgamaIbu']}', '{$baru['PendidikanIbu']}', '{$baru['PekerjaanIbu']}', '{$baru['HidupIbu']}',\r\n    '{$baru['AlamatOrtu']}', '{$baru['KotaOrtu']}', '{$baru['RTOrtu']}', '{$baru['RWOrtu']}', '{$baru['KodePosOrtu']}', '{$baru['PropinsiOrtu']}', '{$baru['NegaraOrtu']}', '{$baru['TeleponOrtu']}',\r\n    '{$baru['HandphoneOrtu']}', '{$baru['EmailOrtu']}',\r\n    '{$baru['PendidikanTerakhir']}', '{$baru['AsalSekolah']}', '{$baru['AsalSekolah1']}',\r\n    '{$baru['AlamatSekolah']}', '{$baru['KotaSekolah']}', '{$baru['JurusanSekolah']}', '{$baru['NilaiSekolah']}',\r\n    '{$baru['TahunLulus']}', '{$baru['IjazahSekolah']}',\r\n    '{$baru['AsalPT']}', '{$baru['MhswIDAsalPT']}', '{$baru['ProdiAsalPT']}', '{$baru['LulusAsalPT']}', '{$baru['TglLulusAsalPT']}', '{$baru['IPKAsalPT']}',\r\n    '{$BatasStudi}', 'N',\r\n    '{$baru['NamaBank']}', '{$baru['NomerBank']}',\r\n    '{$_SESSION['_Login']}', now())";
    $r = _query($s);
    // Non aktifkan data mhsw lama --> status: Keluarkan
    $sk = "update mhsw \r\n    set StatusMhswID = 'D', \r\n        Keluar = 'Y', TahunKeluar = '{$TahunID}',\r\n        CatatanKeluar = 'Pindah Prodi ke: {$ProdiID}, Program: {$ProgramID}'\r\n    where MhswID = '{$MhswID}' and KodeID = '" . KodeID . "' ";
    $rk = _query($sk);
    // Kembali
    BerhasilSimpan("?mnux={$_SESSION['mnux']}&gos=&crNamaMhsw={$baru['Nama']}", 1);
}