Assalamualaikum Sahabat semua di seluruh tanah air … semua dalam keadaan sehat wal’afiat bukan ?
Pada hari ini kami, Whitecyber Team kedatangan Project perbaikan System Message pada Sistem Bank Document yang akan digunakan untuk mengelola File dan Data ISO – International Standard Organization. Siapa yang mengendalikan semua dokumen ISO ini di Perusahaan ? tentu saja SANG Pengendali Dokumen.
Tugas Pengendali Dokumen ISO menjadi Penentu Lolos Sertifikasi. Organisasi yang memutuskan menerapkan ISO 9001, maka hal yang paling terlihat dalam perubahannya adalah dokumentasi dari semua kegiatan yang berlangsung di perusahaan. Alasannya, karena dokumen kontrol ISO 9001 memastikan kegiatan yang berlangsung tersebut sesuai dengan prosedur tertulis yang diatur oleh ISO 9001.
Jika ada kegiatan yang belum tertulis pada dokumen ISO 9001, maka diharuskan untuk dibuat prosedur/ SOP/ atau instruksi kerja tertulisnya. Hal ini penting supaya kegiatan tersebut bisa berlangsung dengan baik secara konsisten dan berkesinambungan.
Pembuatan System Aplikasi ini akan menjelaskan tentang dokumen, siapa yang bertugas mengontrol atau pengendali dokumen, dan bagaimana tugasnya.
.
Apa itu Dokumen dan Alatnya?
Dokumen merupakan surat penting atau berharga yang sifatnya tertulis atau tercetak yang berfungsi atau dapat dipakai sebagai bukti ataupun keterangan. Dokumen tertulis artinya, dicatat pada lembaran kertas.
Sementara menurut standar Sistem Manajemen Mutu (SMM) ISO 9001, dokumen merupakan data yang memuat informasi penting terkait penerapan ISO 9001 berupa prosedur, laporan standar, rekaman (record), spesifikasi, dan lainnya. Dokumen yang dimaksud bisa berbentuk kertas, audio, video, foto, atau data elektronik.
.
Dengan kata lain, alat untuk dokumen kontrol ISO 9001 tidak mewajibkan SOP dalam bentuk tertulis. Dalam ISO 9001, yang terpenting adalah bagaimana caranya semua dokumen dapat mengontrol dari sisi penerbitan dan pengesahannya. Kemudian setiap bagian dapat dengan mudah mengakses dokumen tersebut baik dengan cara manual (cetak, hard copy) maupun digital (jaringan bersama, Cloud, Server Internet Basis).
Selain itu, juga ada perusahaan yang memilih cara modern dimana distribusi dokumen dilakukan sepenuhnya secara digital baik melalui jaringan lokal maupun berbasis internet. Jika Anda memilih untuk melakukan distribusi melalui internet, Anda bisa menggunakan layanan gratis dari Dropbox, Google Docs / Google Drive, atau dengan aplikasi yang dirancang oleh tim IT Anda sendiri.
Hal yang paling penting jika Anda memilih mendistribusikan dokumen ISO secara digital adalah tentang bagaimana cara Anda memberi hak akses kepada dokumen tersebut. Harus ada pengaturan hak akses seputar siapa pun yang bisa membuka, merevisi, menyetujui, mengunggah, mengunduh, membaca saja maupun menghapusnya dari sistem.
Petugas Pengendali Dokumen
Pengendali dokumen (Document Controller) dalam Sistem Manajemen Mutu ISO 9001:2015 merupakan orang atau tim yang ditunjuk untuk mengurusi masalah penerbitan, pengesahan, pendistribusian, penyimpanan, pengendalian, dan pemusnahan dokumen.
Pada penerapan di lapangan, pengendali dokumen memiliki tugas utama untuk menerapkan sistem sentralisasi, dengan cara seluruh dokumen dalam berbagai format maupun rekaman mutu disimpan terpusat pada satu lokasi yang dikendalikan oleh pengendali dokumen.
Bisa juga diterapkan desentralisasi dimana pengendali dokumen hanya mengurusi masalah penerbitan, pembaruan, dan pendistribusian dokumen dan formulir sedangkan rekaman mutunya disimpan oleh bagian terkait.
.
Hal ini dilakukan untuk memenuhi persyaratan dalam klausul 4.2.3 tentang pengendalian dokumen dan klausul 4.2.4 tentang pengendalian rekaman atau catatan mutu dalam sertifikasi ISO 9001.
Namun, tidak ada keharusan dalam ISO 9001:2015 untuk menerapkan sentralisasi maupun desentralisasi. Semua dikembalikan ke kebutuhan organisasi masing-masing.
Tugas pengendali dokumen pada dasarnya membantu wakil manajemen (management representative) dalam menerapkan persyaratan ISO 9001:2015 klausul 7.5 tentang pengendalian informasi terdokumentasi.
Dalam Standar ISO 9001:2015 sebenarnya tidak diwajibkan adanya pengendali dokumen, namun akan lebih baik Anda tetap menunjuk seorang pengendali dokumen. Tujuannya agar memudahkan dalam penerapan Sistem Manajemen Mutu ISO 9001:2015. Apabila suatu organisasi memiliki keterbatasan personil, maka pengendali dokumen dapat dirangkap oleh Management Representative.
Tugas dan Tanggung Jawab Pengendali Dokumen
Pengendali dokumen memiliki sejumlah tugas dan tanggung jawab yang berkaitan dengan pekerjaan pengendalian dokumen, Adapun tanggung jawab dan juga tugasnya secara spesifik, yaitu:
- Membantu management representative dalam menjalankan prosedur pengendalian informasi terdokumentasi.
- Memasukkan data dokumen ke dalam daftar dokumen dan memastikan bahwa informasi yang diberikan akurat dan up to date.
- Memastikan dokumen disahkan sebelum didistribusikan.
- Melakukan perubahan dokumen bila diperlukan dengan cara berkoordinasi dengan management representative.
- Memastikan seluruh dokumen telah disosialisasikan dan didistribusikan ke bagian yang berkepentingan.
- Memastikan seluruh dokumen disimpan dan dijaga dari kerusakan serta mudah untuk ditelusuri.
- Menarik atau memusnahkan dokumen yang sudah kadaluarsa untuk mencegah penggunaan tidak sengaja.
Tugas dan tanggung jawab tersebut juga sudah dinyatakan secara jelas dalam standar ISO 9001:2015 klausul 7.5.2 sebagai berikut:
Ketika membuat dan memperbarui informasi terdokumentasi, organisasi harus dapat memastikan:
- Judul dokumen, tanggal pembuatan dokumen, nama pembuat dokumen, dan nomor identifikasi dokumen telah sesuai.
- Bahasa yang digunakan, versi dari software yang digunakan, dan media yang digunakan (apakah soft copy atau hard copy) telah sesuai.
- Pemeriksaan dan persetujuan pada dokumen ditetapkan
Kemudian pada klausul 7.5.3.1 disebutkan bahwa:
Informasi terdokumentasi yang digunakan untuk keperluan sistem manajemen mutu harus dikendalikan dan organisasi harus:
- Memastikan tersedia dan sesuai, dan dapat diakses kapan dan dimana saja jika diperlukan.
- Memastikan terlindungi dari kehilangan kerahasiaan.
Selanjutnya, pada klausul 7.5.3.2 disebutkan bahwa:
Organisasi harus mengendalikan informasi terdokumentasi dengan melakukan kegiatan pengendalian:
- Distribusi dokumen, akses dokumen, pengambilan dan penggunaan dokumen.
- Penyimpanan dan penjagaan dokumen.
- Perubahan dan status revisi dokumen.
- Menentukan masa simpan dan pemusnahan dokumen
- Memastikan bahwa dokumen yang berasal dari luar organisasi yang ditetapkan oleh organisasi, yang penting untuk perencanaan dan operasi sistem manajemen mutu telah diidentifikasi dan distribusinya dikendalikan.
Kualifikasi Pengendali Dokumen
Dalam Standar ISO 9001:2015 tidak ada persyaratan detail terkait kompetensi yang harus dimiliki oleh seorang pengendali dokumen. Pengendali dokumen dapat dijabat oleh siapa saja, baik staff, manajer, bahkan Direktur sekalipun. Namun perlu diingat, seorang pengendali dokumen harus memiliki kemampuan sebagai berikut:
- Pengetahuan dalam penggunaan spreadsheet (excel), database, dan word.
- Kemampuan untuk menyimpan catatan dan laporan (filing) dengan jelas dan akurat.
- Kemampuan untuk menginput data data dengan cepat
- Keterampilan komunikasi yang baik
Seorang pengendali dokumen bertanggung jawab terhadap seluruh dokumen organisasi. Kegiatan ini harus melibatkan koordinasi dengan berbagai departemen dalam suatu organisasi dan memastikan bahwa dokumen disimpan di lokasi yang tepat dan dapat diakses dengan mudah.
Pengendali dokumen harus memastikan bahwa semua departemen dalam organisasi mengikuti prosedur yang sama yang berkaitan dengan dokumen.
Software Development
Memang banyak sekali project di Indonesia yang berhubungan dengan bahasa pemprograman PHP ini. Tentu saja kami tidak akan berpanjang lebar dalam menjelaskan apa itu PHP, apa itu MySQL, apa itu server Apache. Karena kami yakin temen-temen semua sudah sangat tidak asing dengan itu semua.
Untuk membangun program dengan XAMPP, Anda perlu mengunduh dan menginstal XAMPP terlebih dahulu. XAMPP adalah singkatan dari “Cross-Platform (X)”, “Apache (A)”, “MySQL/MariaDB (M)”, “PHP (P)”, dan “Perl (P)”. Ini adalah paket solusi web sumber terbuka yang mencakup distribusi Apache untuk banyak server dan baris perintah yang dapat dieksekusi bersama dengan modul seperti server Apache, MySQL/MariaDB, PHP, dan Perl. Setelah mengunduh dan menginstal XAMPP, Anda dapat membuat aplikasi berbasis web dengan mudah. Berikut adalah langkah-langkah untuk membuat aplikasi berbasis web dengan XAMPP:
- Unduh perangkat lunak XAMPP dari situs resmi Apache melalui browser yang dimiliki.
- Setelah selesai mengunduh, ikuti petunjuk yang diberikan untuk menginstal XAMPP.
- Aktifkan model Apache dan MySQL agar platform ini bisa berjalan di perangkat.
- Buat database di MySQL.
- Mulai menulis kode aplikasi Anda.
Semoga membantu! Berikut ini adalah gambaran dari system file yang dibangun dengan itu semua.
.
.
Kami berikan contoh code programmnya sebagai berikut :
.
<?php
/*if(!isset($_GET['kat_id']) AND !isset($_GET['user_id'])) {
$sql = "SELECT docs.*, kategori.nama AS nama_kat, kategori.user_id
FROM docs INNER JOIN kategori ON kategori.id = docs.kategori_id
WHERE docs.divisi_id = $_SESSION[divisi_id]";
} elseif(isset($_GET['kat_id']) AND !isset($_GET['user_id'])) {
$sql = "SELECT docs.*, kategori.nama AS nama_kat, kategori.user_id
FROM docs INNER JOIN kategori ON kategori.id = docs.kategori_id
WHERE docs.divisi_id = $_SESSION[divisi_id] AND kategori.id = $_GET[kat_id]";
} elseif(isset($_GET['user_id']) AND !isset($_GET['kat_id'])) {
$sql = "SELECT docs.*, kategori.nama AS nama_kat, kategori.divisi_id
FROM docs INNER JOIN kategori ON docs.kategori_id = kategori.id
WHERE kategori.user_id = $_GET[user_id] AND kategori.divisi_id IS NULL";
} else {
$sql = "SELECT docs.*, kategori.nama AS nama_kat, kategori.divisi_id
FROM docs INNER JOIN kategori ON docs.kategori_id = kategori.id
WHERE kategori.user_id = $_GET[user_id] AND kategori.id = $_GET[kat_id]";
}*/
if(isset($_SESSION['admin']) && $_SESSION['admin'] == 1) {
$sql = "SELECT docs.*, kategori.nama AS nama_kat, kategori.user_id
FROM docs INNER JOIN kategori ON kategori.id = docs.kategori_id";
}
elseif(isset($_SESSION['leader']) && $_SESSION['leader'] == 1) {
$sql = "SELECT docs.*, kategori.nama AS nama_kat, kategori.user_id
FROM docs INNER JOIN kategori ON kategori.id = docs.kategori_id
WHERE docs.divisi_id = $_SESSION[divisi_id]";
}else
{ $sql = "SELECT docs.*, kategori.nama AS nama_kat, kategori.divisi_id
FROM docs INNER JOIN kategori ON docs.kategori_id = kategori.id
WHERE kategori.user_id = $_SESSION[user_id]";
}
$hasil = mysqli_query($koneksi, $sql) ;
$getLogged = mysqli_query($koneksi, $sql) or die(mysqli_error());
$sql3 = "SELECT * FROM kategori WHERE divisi_id = $_SESSION[divisi_id]";
$hasil3 = mysqli_query($koneksi, $sql3);
$sql4 = "SELECT * FROM kategori WHERE divisi_id IS NULL AND user_id = $_SESSION[user_id]";
$hasil4 = mysqli_query($koneksi, $sql4);
?>
<div class="row">
<?php if((isset($_SESSION['admin']) && $_SESSION['admin'] == 1) || (isset($_SESSION['leader']) && $_SESSION['leader'] == 1)|| (isset($_SESSION['leader']) && $_SESSION['leader'] == 0)) { ?>
<link href="https://cdn.jsdelivr.net/npm/select2@4.1.0-rc.0/dist/css/select2.min.css" rel="stylesheet" />
<script src="https://cdn.jsdelivr.net/npm/select2@4.1.0-rc.0/dist/js/select2.min.js"></script>
<title>Halaman : [<?php echo $row['nama_kat'];?>]</title>
<div class="box">
<div class="col-md-11">
<div class="box box-primary">
<ul class="nav nav-tabs">
<li class="active"><a href="#tab_1" data-toggle="tab">ALL</a></li>
<li><a href="tab_1_1" data-toggle="tab">INBOX</a></li>
<li><a href="#tab_3-2" data-toggle="tab">SEND</a></li>
<li><a href="#tab_3-2" data-toggle="tab">DRAFTS</a></li>
</ul>
<div class="box-header">
<a class="btn btn-primary" href="index.php?in=add&page=add_docs">Buat / Tambah Dokumen</a>
</div>
<!-- /.box-header -->
<section class="content">
<div class="container-fluid">
<div class="input-group">
<div class="form-group">
<div class="input-group">
<select name="kategori" class="form-control">
<option>Pilih Departemen</option>
<option value="ISO">ISO</option>
<option value="ME">ME</option>
<option value="IE">IE</option>
<option value="FINISH GOOD">FINISH GOOD</option>
<option value="PAD PRINT">PAD PRINT</option>
<option value="CUTTING">CUTTING</option>
<option value="HEAT TRANSFER">HEAT TRANSFER</option>
<option value="TEMPLATE">TEMPLATE</option>
<option value="ACCESSORIES">ACCESSORIES</option>
<option value="SUPERMARKET">SUPERMARKET</option>
<option value="SUPERMARKET">SHIPPING</option>
<option value="SUPERMARKET">aTS</option>
<option value="SUPERMARKET">Fabric Warehouse</option>
<option value="SUPERMARKET">PPA</option>
<option value="SUPERMARKET">GARMENT 1</option>
<option value="SUPERMARKET">GARMENT 2</option>
<option value="SUPERMARKET">GARMENT HANGER</option>
<option value="SUPERMARKET">SAMPLE</option>
<option value="SUPERMARKET">MARKER</option>
</select>
</div>
</form>
</div>
</div>
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript" src="js/bootstrap.js"></script>
<div class="row">
<div class="box-body">
<table id="example1" class="table table-bordered table-hover">
<thead>
<tr>
<th>No. </th>
<th>Tanggal Upload</th>
<th>Nama File</th>
<th>File Download</th>
<th>To</th>
<th>From</th>
<th>Pesan</th>
<th>Status</th>
<th>Aksi</th>
</tr>
</thead>
<tbody>
<?php
$no=1;
$i = 1; while ($row = mysqli_fetch_assoc ($hasil) ) { ?>
<tr>
<td><?php echo $i ; ?></td>
<td><?php echo $row['tanggal'];
date_default_timezone_set('Asia/Jakarta');
$jam=date("H:i:s");
echo "";
?></td>
<td> <?php echo $row['judul'];?> </td>
<td><a href="<?php echo $row['file']; ?>"target="_blank"><i class="glyphicon glyphicon-download-alt" style="font-size:30px; color: blue; align-items: center;"></i></a></td>
<td><?php echo $row['nama_kat']; ?> - <?php echo $row['nama']; ?></td>
<td> Admin - <?php echo $row['nama_pengirim']; ?></td>
<td>
<button type="button" class="btn btn-info" data-toggle="modal" data-target="#myModal"><i class="glyphicon glyphicon-eye-open"></i></button>
<!-- Modal -->
<div id="myModal" class="modal fade" role="dialog">
<div class="modal-dialog">
<!-- konten modal-->
<div class="modal-content">
<!-- heading modal -->
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">Pesan Corrective Action Plan</h4>
</div>
<!-- body modal -->
<div class="modal-body">
<p style="text-align: left;"><?php echo $row['tanggal'];
date_default_timezone_set('Asia/Jakarta');
$jam=date("H:i:s");
echo "" ;
?></p>
<b>Pengirim : </b> Admin / <?php echo $row['nama_pengirim']; ?>
<p> <b>Penerima : </b> <?php echo $row['nama_kat']; ?> / <?php echo $row['nama']; ?> </p>
<p><b>Pesan : </b></p>
<p> <?php echo $row['isi_pesan'];?> </p> </p>
<p><i class="fa fa-paperclip" style="font-size:20px; align-items: center;"> </i> <a href = "<?php echo $row['file']; ?>" target="_blank"> <u><?php echo $row['judul']; ?> </u> </a> </i> </p>
</div>
<div class="btn-group">
<a class="btn btn-default" href="" ?><i class="fa fa-trash-o"></i> </a>
<button type="button" class="btn btn-info" data-toggle="modal" data-target="#myModal1"><i class="fa fa-reply"></i></button>
<a class="btn btn-default" href="" ?><i class="fa fa-refresh"></i> </a>
</div>
<!-- footer modal -->
<div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">Tutup Pesan</button>
</div>
</div>
</div>
</div>
</div>
<div id="myModal1" class="modal fade" role="dialog">
<div class="modal-dialog">
<!-- konten modal-->
<div class="modal-content">
<!-- heading modal -->
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">BALAS PESAN</h4>
</div>
<!-- body modal -->
<div class="modal-body">
<p style="text-align: left;"><?php echo $row['tanggal'];
date_default_timezone_set('Asia/Jakarta');
$jam=date("H:i:s");
echo "" ;
?></p>
<b>Pengirim : </b> <?php echo $row['nama_kat']; ?> / <?php echo $row['nama']; ?>
<p> <b>Penerima : </b> Admin
</p>
<div class="form-group">
<label>Nama File : </label>
<input RE/ type="text" class="form-control" Placeholder="Masukan Nama File" name="judul">
</div>
<p>
<div class="form-group">
<label>Lampirkan File : </label>
<p class="text-danger"><strong>*Ukuran File Maksimal 10 MB</strong></p>
<p class="text-danger"><strong>*File yang bisa di Upload hanya file dengan ekstensi (*.xlsx, *.xls)</strong></p>
<input type="file" name="file">
</div>
</p>
<div class="form-group">
<label> Pesan : </label>
<form action="pages/process/process_add_docs.php" method="post" enctype="multipart/form-data">
<div class="form-group">
<textarea type="text" class="form-control" Placeholder="Silahkan Isi Pesan " name="isi_pesan" cols="50" rows="12" ></textarea>
</div>
</div>
</div>
<!-- footer modal -->
<div class="modal-footer">
<button type="button" class="btn btn-info" data-toggle="modal" data-target="#myModal2">Kirim</button>
<button type="button" class="btn btn-default" data-dismiss="modal">Tutup Pesan</button>
</div>
</div>
</div>
</div>
</div>
<div id="myModal2" class="modal fade" role="dialog">
<div class="modal-dialog">
<!-- konten modal-->
<div class="modal-content">
<!-- heading modal -->
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title">Corrective Action Plan</h4>
</div>
<!-- body modal -->
<div class="modal-body">
<center> <img align="middle" src="image/lis.gif" alt="Dew drop" class="img-circle" width="200" height="200" > </center>
<center> <h2> Berhasil Kirim Pesan </h2></center>
</div>
<!-- footer modal -->
<div class="modal-footer">
<button type="button" class="btn btn-info" data-dismiss="modal">OK</button>
</td>
<td>
<?php
if ($row['status']==1)
{echo " <i class='fa fa-envelope-o'   ></i> Terbaca";
}else{
echo" <i class='glyphicon glyphicon-envelope'   ></i> Belum Terbaca";
}
?>
</td>
<td>
<a class="btn btn-warning" href="index.php?buka_pesan&id=<?php echo $row['id'];?><?php echo (!empty($row['divisi_id'])) ? "&p=" : "" ?><?php echo $row['divisi_id']; ?>"><i class="fa fa-edit"></i> </a>
<a class="btn btn-danger" href="pages/process/process_del_docs.php?id=<?php echo $row['id'];?>"><i class="fa fa-trash"></i> </a>
</td>
</tr>
<?php $i++; } ?>
</tfoot>
</tbody>
</table>
</div>
</section>
</div>
</div>
<head>
<!-- Bootstrap 3.3.7 -->
<!-- DataTables -->
<link rel="stylesheet" href="bower_components/datatables.net-bs/css/dataTables.bootstrap.min.css">
<!-- Theme style -->
<div class="-solid box-info">
<!-- Content Header (Page header) -->
<section class="content-header">
</ul>
</div>
<!-- /.box-body -->
</div>
</div>
</head>
<?php } ?>
<!-- /.box-body -->
</div>
</div>
</div>
</div>
<!-- /.box -->
<link href="path/to/select2.min.css" rel="stylesheet" />
<script src="path/to/select2.min.js"></script>
<!-- /.box -->
<div class>
<!-- /.col -->
<div class="control-sidebar-bg"></div>
<!-- jQuery 3 -->
<script type="text/javascript">
$(document).ready(function(){
$('#tombol').click(function(){
$('#modal-kotak , #bg').fadeIn("slow");
});
$('#tombol-tutup').click(function(){
$('#modal-kotak , #bg').fadeOut("slow");
});
});
</script>
<script>const nama = document.querySelector(".nama");
const tombol = document.querySelector("tombol");
tombol.addEventListener("click", function () {
nama.style.color = "blue";
});
</script>
<script src="bower_components/jquery/dist/jquery.min.js"></script>
<!-- Bootstrap 3.3.7 -->
<script src="bower_components/bootstrap/dist/js/bootstrap.min.js"></script>
<!-- DataTables -->
<script src="bower_components/datatables.net/js/jquery.dataTables.min.js"></script>
<script src="bower_components/datatables.net-bs/js/dataTables.bootstrap.min.js"></script>
<!-- SlimScroll -->
<script type="text/javascript">
$(document).ready(function() {
$('#provinsi').select2();
});
</script>
<!-- AdminLTE App -->
<!-- page script -->
<script>
$(function () {
$('#example1').DataTable()
$('#example2').DataTable({
'paging' : true,
'lengthChange': false,
'searching' : false,
'ordering' : false,
'info' : true,
'autoWidth' : false
})
})
</script>
</script>
</body>
.
Setelah dijalankan di server apache, maka program tersebut akan memunculkan layanan penyimpanan file yang dapat diedit oleh Admin, Supervisor, dan Karyawan.
.
.
Terimakasih kami ucapkan kepada Sahabat-sahabat yang mempercayakan Tugasnya ke kami, dan Atas izin dari Alloh SWT semoga kami menjadi jalan solusi buat temen-temen semua.
Semoga sharing yang singkat ini bermanfaat, dan sekedar untuk kenang-kenangan saja.