• Tidak ada hasil yang ditemukan

PETUNJUK TEKNIS SISTEM MANAJEMEN PEMANFAATAN SURVEY ONLINE

N/A
N/A
Protected

Academic year: 2021

Membagikan "PETUNJUK TEKNIS SISTEM MANAJEMEN PEMANFAATAN SURVEY ONLINE"

Copied!
48
0
0

Teks penuh

(1)

PETUNJUK TEKNIS

SISTEM MANAJEMEN PEMANFAATAN SURVEY ONLINE

PUSAT PENELITIAN, PENGEMBANGAN DAN INFORMASI

BADAN NASIONAL PENEMPATAN DAN PERLINDUNGAN

TENAGA KERJA INDONESIA

(2)

APLIKASI SISTEM MANAJEMEN PEMANFAATAN SURVEY ONLINE

BADAN NASIONAL PENEMPATAN DAN PERLINDUNGAN

TENAGA KERJA INDONESIA

2018

(3)

i

KATA PENGANTAR

Atas berkat rahmat dan izin Allah SWT, Tuhan Yang Maha Kuasa,

penyususan buku “Buku Petunjuk Teknis Aplikasi SIMPAN - Online” ini

akhirnya dapat diselesaikan.

Tujuan utama Buku Petunjuk Teknis Aplikasi SIMPAN - Online ini adalah

sebagai acuan penggunaan SIMPAN - Online yang merupakan aplikasi

manajemen pelaksanaan survey online yang berfungsi mempermudah

pengaturan dan pengkoordinasian pemanfaatan survey online unit kerja Pusat

maupun daerah di lingkungan BNP2TKI yang dikelola ole h Bidang

Penelitian dan Pengembangan, Pusat Litbang dan Informasi, BNP2TKI.

Masukan, dukungan dan persamaan pemahaman tentang Buku Petunjuk

Teknis Aplikasi SIMPAN - Online ini akan kami terima dengan tangan

terbuka, dan nantinya tidak menutup kemungkinan untuk dipublikasi kembali

dalam edisi revisi. Karena kami menyadari bahwa Buku Petunjuk Aplikasi

SIMPAN - Online yang kami susun ini masih jauh dari sempurna. Oleh

karena itu, kritik dan saran membangun akan kami terima dengan senang

hati.

Kepada semua pihak yang telah berpartisipasi dan membantu sampai

tersusunnya Buku Petunjuk Teknis Aplikasi SIMPAN - Online ini, kami

sampaikan terimakasih dan penghargaan yang setinggi-tingginya. Semoga

apa yang telah kita usahakan dapat berguna bagi kita semua.

Jakarta, Desember 2018

Kepala Pusat

Penelitian dan Pengembangan Informasi

BNP2TKI

Abd. Ghofar, S.Si., MTI

NIP. 196406161987021002

(4)

PENDAHULUAN

A. Latar Belakang

Saat ini, kegiatan survey menjadi salah satu kegiatan proses penelitian

yang banyak dilakukan terutama dalam kaitannya dengan evaluasi

implementasi kebijakan. Seiring dengan perkembangan teknologi, berbagai

tools gratis yang mempermudah proses survey online dengan menggunakan

kuesioner semakin banyak bermunculan, diantaranya monkey survey, type

form, zoho survey, survey gizmo dan google form yang saat ini paling banyak

digunakan.

Hanya saja, dalam versi gratis, tools tersebut memiliki banyak

keterbatasan mulai dari jumlah responden yang terbatas, jumlah pertanyaan

yang dibatasi, pilihan untuk mengekspor data yang minim termasuk

keleluasaan dalam pengelolaan berkas kuesioner

1

. Kemudahan seperti ini

memungkinkan setiap entitas kelompok maupun individu dapat melakukan

kegiatan survey secara online dengan memanfaatkan tools – tools gratis

tersebut. Namun, dalam organisasi atau lembaga pemerintah seperti halnya

BNP2TKI, dimana tugas dan fungsi telah terpetakan secara terstruktur maka

setiap kegiatan telah melekat pada tugas fungsi masing – masing unit kerja

sesuai dengan aturan yang ada.

Pelaksanaan kegiatan survey di lingkungan BNP2TKI dengan

memanfaatkan tools survey gratis sudah banyak dilakukan. Hanya saja,

kegiatan survey tersebut tidak hanya dilakukan oleh Bidang Penelitian dan

Pengembangan sebagai unit kerja yang memiliki tugas dan fungsi penelitian

sebagaimana yang telah diatur dalam Perka Ka. BNP2TKI. No.4 Tahun 2014

Tentang Tugas Fungsi dan Uraian Tugas BNP2TKI. Pada pasal 501. Akan

tetapi juga dilakukan oleh unit kerja lainnya baik yang ada di BNP2TKI

Pusat maupun daerah (BP3TKI,LP3TKI/P4TKI). Karena itu, diperlukan

penataan agar pelaksanaan survey online sebagai bagian dari tugas fungsi

Bidang Penelitian dan Pengembangan lebih terintegrasi, terkoordinasi dan

(5)

2

terkontrol sejak dari perencanaan sampai ke pelaksanaan, pemantauan dan

evaluasinya sehingga tidak berdampak pada tumpang tindihnya tugas dan

fungsi diantara unit kerja.

Hal inilah yang melatar belakangi perlunya inovasi dalam manajemen

pemanfaatan survey online dilingkungan BNP2TKI agar fungsi Litbang lebih

optimal, efektif dan efisien melalui system manajemen yang berbasis

Teknologi Informasi. Manajemen pemanfaatan survey online melalui sistem

ini dengan bantuan teknologi informasi, diharapkan tidak hanya menunjang

dan mempermudah pengkoordinasian pelaksananaan survey tetapi juga

meningkatkan dan memudahkan pemanfaatan tools survey online, serta hal

terpentingnya adalah mengoptimalkan implementasi tugas dan fungsi Bidang

Penelitian dan Pengembangan.

B. Maksud dan Tujuan

Maksud dan tujuan petunjuk teknis pengoperasian aplikasi SIMPAN - Online

ini adalah sebagai berikut :

(1) Maksud petunjuk teknis pengoperasian aplikasi SIMPAN - Online ini

sebagai panduan bagi unit kerja Pusat dan Daerah di lingkungan

BNP2TKI dalam memanfaatkan aplikasi SIMPAN - Online ini.

(2) Tujuan petunjuk teknis pengoperasian aplikasi SIMPAN - Online ini

adalah tersedianya acuan atau pedoman cara pengoperasian aplikasi

SIMPAN - Online ini dari mulai membuka aplikasi SIMPAN - Online

ini melalui browser, login, entry data, sampai monitoring status survey

yang dilaksanakan dengan akurat dan real time.

C. Ruang Lingkup

Ruang lingkup petunjuk teknis pengoperasian aplikasi SIMPAN - Online ini

mencakup:

1) Cara mengakses aplikasi SIMPAN - Online melalui browser

2) Cara memperoleh akun pengguna aplikasi, serta cara melakukan login

pada aplikasi

3) Cara menginput data survey yang akan dilakukan

4) Cara mengatur pengguna aplikasi

5) Cara melakukan edit dan delete data survey

(6)

D. Sistematika

Petunjuk teknis pengoperasian aplikasi SiMontir ini terdiri dari 3 (tiga) bab

yaitu:

Bab 1 : Pendahuluan

Menguraikan tentang latar belakang, maksud dan tujuan, ruang lingkup, dan

sistematika petunjuk pengoperasian aplikasi SIMPAN - Online.

Bab 2 : Aplikasi Sistem Monitoring Manajemen Pemanfaatan Survey Online

Menjelaskan tentang design, implementasi system SIMPAN - Online ini /

tatacara pengoperasian aplikasi SIMPAN - Online diantaranya, monitoring

pelaksanaan survey unit kerja, input data survey, edit dan delete data survey

dan terkahir adalah source kode.

(7)

4

APLIKASI SIMPAN - Online

A. DESIGN SISTEM

1. Arsitektur Sistem

2. Data Flow Diagram

a. DFD Level 0

Pada tahap awal pengembangan simpan-online ini, melibatkan entitas

tunggal, yaitu responden. Survey yang dibuat ini merupakan survey dinamis

yang memungkinkan untuk menyajikan berbagai macam survey yang dibuat

oleh Unit Kerja di BNP2TKI. Fungsi utama survey ini adalah untuk

Responden Simpan Online

(8)

menyimpan hasil jawaban dari para responden. Hasil output dari aplikasi ini

akan ditarik langsung dari database.

b. DFD Level 1

DFD Level 1 menjelaskan proses Survey ini dibagi menjadi dua Modul,

yaitu:

1. M1, Input Data Responden.

User dalam hal ini berperan sebagai responden, akan melakukan input

data responden melalui form isian data responden. Aplikasi akan

menyimpan data responden ke dalam tabel D1 – t_responden.

2. M2, Isi Survey.

Ketika responden berhasil menyimpan data, aplikasi akan menampilkan

data pertanyaan survey berikut pilihan jawabannya. Pertanyaan diambil

dari tabel D3 – t_quest dan jawaban diambil dari tabel D4 –

t_quest_answer. Ketika responden memasukkan jawaban survey, maka

aplikasi akan menyimpan respon dari responden ke dalam tabel D5 –

t_responden_answer.

3. Entity Relationship Diagram

Relasi antar tabel ini menggambarkan bagaimana tabel saling terhubung.

Tabel master utama adalah tabel m_event. Event ini sebagai bentuk

kegiatan yang membutuhkan media survey. Dalam survey ini pertanyaan

disimpan

dalam

t_quest,

pilihan

jawaban

disimpan

dalam

t_quest_answer, responden disimpan dalam tabel t_responden, dan

jawaban dari responden disimpan dalam t_responden_answer.

(9)

6

4. Kamus Data

a. Tabel m_event

Tabel ini menyimpan data event survey. Event ini biasanya tergantung

dari kegiatan unit kerja.

(10)

b. Tabel t_responden

Tabel ini menyimpan data responden. data responden ini akan langsung

dihubungkan dengan data event. Sehingga 1 responden ini terhubungan

dengan 1 event.

(11)

8

Tabel ini berfungsi sebagai media penyimpanan pertanyaan dari survey

yang diadakan dalam event tertentu. Untuk itu data event juga

dihubungkan dalam pertanyaan ini. 1 event akan memiliki 1 atau lebih

pertanyaan.

d. Tabel t_quest_answer

Tabel Ini menyimpan semua alternatif pilihan jawaban dari pertanyaan

survey.

e. Tabel t_responden_answer

Tabel ini menyimpan data jawaban dari responden yang dipilih pada saat

mengisi survey.

(12)

B. IMPLEMENTASI SISTEM

a. Tampilan Aplikasi

Tampilan depan untuk Responden

Halaman ini merupakan halaman landing page dari simpan-online.

Pengunjung dapat mengakses semua survey online yang resmi diterbitkan

BNP2TKI melalui url :

http://simpan-online.bnp2tki.go.id

. Apabila unit kerja

ingin menampilkan survey secara spesifik kepada responden, maka link yang

bisa ditampilkan adalah sebagai berikut :

http://simpan-online.bnp2tki.go.id/kuesioner/view_event/35

ketika responden mengunjungi link tersebut, maka responden akan langsung

dibawa ke dalam sesi pertanyaan, seperti contoh di bawah ini.

(13)

10

Konsep pertanyaan disajikan secara satuan, dan responden cukup menjawab

dengan alternative:

(14)

c. Mencentang opsi jawaban

(15)

12

e. Mengisi sendiri beberapa jawaban anda dengan jawaban terbuka.

Ketika responden sudah menyelesaikan survey, maka aplikasi akan

memberikan pesan sukses dan resume jawaban.

(16)

Hasil survey yang masuk ke simpan-online dapat dilihat secara publik di

daftar survey di landing page dengan mengklik jumlah pengisi.

Berikut ini contoh hasil survey yang sudah masuk ke simpan-online.

Tampilan Backend untuk Admin dan Unit Kerja Pembuat

Kuesioner

(17)

14

Untuk dapat masuk ke dalam halaman administrator web simpan-online,

pengguna harus mengetikkan link berikut ini .

http://simpan-online.bnp2tki.go.id/Adminpage

Pengguna akan diminta memasukkan user dan password, serta

memasukkan security field (Captcha) berupa pertanyaan penambahan

bilangan. Hal ini dilakukan untuk memproteksi aplikasi dari serangan

pihak yang tidak bertanggung jawab.

(18)

Ada 4 menu, karena halaman tersebut diakses oleh Administrator, maka

di dalamnya akan memuat semua hal yang dapat dilakukan oleh

administrator konten web simpan-online. Hak seorang admin dalam web

ini adalah:

a. Mengelola event / survey secara keseluruhan dari semua unit kerja

b. Mengelola user

c. Mengupdate data profile sendiri

d. Keluar dari halaman admin.

Menu Adminpage (Unit Kerja)

Berbeda dengan admin, user unit kerja hanya diberikan 3 menu saja,

yaitu:

a. Manajemen Event. Hanya event dari unit kerja saja yang akan

ditampilkan

b. Profil Saya

c. Logout

Menambahkan Event (Unit Kerja)

Untuk menambahkan atau mengelola event survey, silakan klik

manajemen event. Setelah di klik, maka aplikasi akan menampilkan

semua event di unit kerja user.

(19)

16

Ada 4 tombol dalam setiap baris data event / suvey,

No

Tombol

Fungsi

1

Edit data survey (header)

2

Aktifkan survey dan non aktifkan survey

3

Melihat daftar pertanyaan survey

(20)

Untuk mulai menambahkan survey, silakan klik tombol “Add

Event/Kuesioner”

(21)

18

Data berhasil disimpan

Status survey ini masih menunggu approval dari administrator web

simpan-online.

Survey yang dibuat saja dibuat belum selesai untuk dapat dipublish,

karena data yang baru saja dibuat baru berupa folder utama dari survey

yang akan dilaksanakan. Untuk membuat pertanyaan, langkah berikutnya

adalah menyiapkan pertanyaan dengan cara mengklik tombol daftar

pertanyaan

Menambahkan Pertanyaan Survey

Dalam halaman daftar pertanyaan ini, user dapat melakukan beberapa

hal, yaitu :

a. Menambahkan pertanyaan

b. Mengedit pertanyaan

c. Menambah pilhan jawaban

(22)

Data event ditampilan di bagian atas sebagai petunjuk dalam membuat

pertanyaan dari event survey yang dibuat. Untuk menambahkan

pertanyaan, klik

Masukkan data pertanyaan dan pilih jenis pertanyaan :

a. Multiple, untuk jawaban pilhan dengan hanya satu pilihan yang

diperbolehkan

(23)

20

b. Deskripsi, untuk jawaban terbuka dalam bentuk jawaban panjang,

seperti jawaban untuk pertanyaan “Saran dan Masukan”, “Pendapat

anda”

c. Checkbox, untuk jawaban pilihan centang yang bisa lebih dari satu

jawaban

d. Multiisian, untuk jawaban dengan beberapa isian yang ditentukan

sendiri oleh responden. Contoh jawaban multiisian adalah jawaban

dari pertanyaan “Apa hobby anda ?”, maka responden akan bisa

mengisi sendiri beberapa jawaban dengan bebas.

Pertanyaan berhasil disimpan.

Seperti konsep header survey tadi yang bersifat folder, pertanyaan ini juga

merupakan folder dari kumpulan jawaban pertanyaan yang harus dibuat

juga.

Aksi yang dapat dilakukan dalam folder pertanyaan ini antara lain :

No

Tombol

Fungsi

1

Edit data pertanyaan

2

Melihat daftar pilihan jawaban

3

Menghapus pertanyaan

Untuk menghindari kebingungan saat membuat jawaban survey,

harap menyelesaikan folder pertanyaan dulu di awal sebelum

melanjut ke folder daftar pilihan jawaban. Misalkan anda

memiliki 15 pertanyaan, maka masukkan semua 15 pertanyaan

tersebut di halaman daftar pertanyaan, baru kemudian masuk ke

(24)

Menambahkan Jawaban Pertanyaan Survey

Untuk menambahkan jawaban pertanyaan survey, klik tombol daftar

pilihan jawaban

Muncul halaman daftar/list jawaban

Data pertanyaan dan event ditampilan di bagian atas sebagai petunjuk

dalam membuat jawaban pertanyaan dari pertanyaan survey yang dibuat.

Untuk

menambahkan

jawaban

pertanyaan,

klik

tombol

(25)

22

Form isian pilihan jawaban akan ditampilkan.

Silakan isikan pilihan jawaban, dari urutan, hingga penomoran jawaban.

Misalkan dalam soal “Usia Anda”, ada 3 isian jawaban dengan urutan :

1. a. < 18 Tahun

2. b. > 18 Tahun dan < 40 Tahun

3. c. > 40 Tahun

maka isian dalam form isian, contoh pengisiannya adalah sebagai berikut

:

(26)

Jawaban b

Jawaban c

Sedangkan untuk bagian, isian “Jika Menjawab Jawaban ini, Pertanyaan

Selanjutnya adalah Nomor : “, silakan pilih opsi pertanyaan

berikutnya atau pilih selesai untuk membuat survey selesai ketika sudah

menjawab dengan jawaban yang dipilih. Dalam hal inilah mengapa

menyelesaikan item pertanyaan dalam halaman daftar pertanyaan

sangat penting.

Ingat :

Untuk menghindari kebingungan saat membuat jawaban survey, harap

menyelesaikan folder pertanyaan dulu di awal sebelum melanjut ke

folder daftar pilihan jawaban. Misalkan anda memiliki 15 pertanyaan,

maka masukkan semua 15 pertanyaan tersebut di halaman daftar

pertanyaan, baru kemudian masuk ke setiap daftar pilihan jawaban di

(27)

24

Pilihan ini dimaksudkan untuk membuat survey yang mampu membuat

responden langsung menuju pertanyaan tertentu ketika menjawab dengan

opsi tertentu. Contoh setting jawaban dalam simpan-online adalah

sebagai berikut:

No

Pertanyaan

Jawaban

Jika Menjawab Jawaban ini,

Pertanyaan Selanjutnya adalah

Nomor :

1

Pendidikan Anda

a. SD

3

b. SMP

3

c. SMA

2

2

Jurusan Anda

a. IPA

3

b. IPS

3

c. Bahasa

3

3

Kendaraan

menuju

sekolah

a. mobil

Selesai

b. motor

Selesai

c. Jalan kaki

Selesai

Apabila diperhatikan, ketika di pertanyaan pertama, apabila responden

menjawab pertanyaan “Pendidikan Anda” dengan pilihan Jawaban c.

SMA, maka responden akan dibawa ke nomor pertanyaan 2. “Jurusan

Anda”, sedangkan jika menjawab a. SD atau b. SMP, maka responden

akan dibawa ke nomor pertanyaan 3. “Kendaraan menuju sekolah”,

Untuk contoh dalam buku petunjuk ini, berikut ini adalah ringkasan

jawaban dari pertnyaan “Usia Anda”

(28)

Dengan jawaban seperti itu, maka ketika menjawab dengan jawaban a

dan c, responden akan menyelesaikan survey yang diambil olehnya. Dan

ketika menjawab b, maka responden akan dimintai pertanyaan

berikutnya, yaitu “Skill Anda”.

Rule khusus untuk Jawaban dengan jenis pertanyaan Multiisian dan

Deskripsi

Konsep dalam merancang survey ini adalah :

“Setiap pertanyaan harus memiliki setidaknya satu jawaban. Dan

setiap jawaban harus menentukan alur survey, apakah LANJUT

KE PERTANYAAN BERIKUTNYA atau SELESAI”

Sehingga dalam versi aplikasi ini, untuk jawaban dengan jenis

pertanyaan Multiisian dan Deskripsi, meskipun tidak ada pilihan

jawaban real yang ada, pembuat survey tetap harus membuat setidaknya

1 jawaban dummy (palsu), yang kemudian ditentukan alur berikutnya,

apakah LANJUT

KE PERTANYAAN BERIKUTNYA atau

SELESAI.

Contoh jawaban yang dapat dibuat untuk pertanyaan dengan jenis

multiisian dan deskripsi adalah sebagai berikut :

(29)

26

Contoh tersebut adalah membuat jawaban dummy, yang akan membuat

responden menyelesaikan survey yang diambil oleh mereka.

(30)
(31)
(32)

C. SOURCE CODE

Controller

<?php

defined('BASEPATH') OR exit('No direct script access allowed');

class Kuesioner extends CI_Controller { public function __construct() {

parent::__construct(); $this->load->database();

$this->load->model('kuesioner_model'); }

public function index() {

$event_where = array('event_status' => '1');

$event_join = array('m_group' => 'm_group.group_id = m_event.event_createdby#inner');

$event = $this->kuesioner_model->get_table_data_rows('m_event',$event_join,$event_where,'*, (select count(rspd_id) from t_respondent where rspd_event_id=event_id and rspd_status=2) jml','event_id','event_start_date','asc');

//$c_data['qry'] = $this->db->last_query(); $c_data['event'] = $event;

$content = $this->load->view('event_list', $c_data, true);

$data['content'] = $content;

$this->load->view('main_page', $data); }

public function notfound($event_id) {

(33)

30

$negara = $this->kuesioner_model->get_table_data('m_negara',null,$negara_where,'*',null,'uraian','ASC');

$prop = $this->kuesioner_model->get_table_data('m_propinsi',null,null,'*'); $judulevent_where = array('event_id' => $event_id,'event_status' => '1'); $judulevent = $this->kuesioner_model->get_table_data('m_event',null,$judulevent_where,'*');

$c_data['negara'] = $negara; $c_data['prop'] = $prop;

$c_data['judulevent'] = $judulevent;

$content = $this->load->view('404', $c_data, true);

$data['content'] = $content;

$this->load->view('main_page', $data); }

public function view_event($event_id) { $negara_where = array(); $negara = $this->kuesioner_model->get_table_data('m_negara',null,$negara_where,'*',null,'uraian','ASC'); $edu_where = array(); $edu = $this->kuesioner_model->get_table_data('m_pendidikan',null,$edu_where,'*',null,'pend_order','ASC');

$group_where = array('group_type' => 'EKSTERN','group_status' => '1'); $group = $this->kuesioner_model->get_table_data('m_group',null,$group_where,'*',null,'group_id','ASC');

$prop = $this->kuesioner_model->get_table_data('m_propinsi',null,null,'*');

(34)

$judulevent_join = array('m_form' => 'm_event.event_audience = m_form.form_group#inner'); $judulevent = $this->kuesioner_model->get_table_data('m_event',$judulevent_join,$judulevent_where,'*'); $c_data['negara'] = $negara; $c_data['edu'] = $edu; $c_data['group'] = $group; $c_data['prop'] = $prop; $c_data['judulevent'] = $judulevent; if($judulevent){

$content = $this->load->view($judulevent->form_view, $c_data, true); }

else{

$content = $this->load->view('404', $c_data, true); }

$data['content'] = $content;

$this->load->view('main_page', $data); }

public function addRespondent() {

$this->load->helper(array('form', 'url'));

$this->load->library('form_validation');

$this->form_validation->set_rules('rspd_name', 'Nama Lengkap', array('required', 'min_length[5]'));

$this->form_validation->set_rules('rspd_gender', 'Jenis Kelamin', array('required', 'min_length[1]'));

//$this->form_validation->set_rules('rspd_country_id', 'Negara Tempat Bekerja', array('required', 'min_length[1]'));

//$this->form_validation->set_rules('rspd_kab_id', 'Kabupaten/Kota Asal', array('required', 'min_length[6]'));

(35)

32

//$this->form_validation->set_rules('rspd_kec_id', 'Kecamatan Asal', array('required', 'min_length[6]'));

//$this->form_validation->set_rules('rspd_kel_id', 'Kelurahan Asal', array('required', 'min_length[6]'));

//$this->form_validation->set_rules('rspd_phone', 'No Handphone', array('required', 'min_length[10]'));

//$this->form_validation->set_rules('rspd_pasporno', 'No Paspor', array('required', 'min_length[3]'));

//$this->form_validation->set_rules('rspd_email', 'E-mail', array('required', 'min_length[5]'));

//$this->form_validation->set_rules('rspd_job', 'Pekerjaan / Jabatan', array('required', 'min_length[3]'));

//$this->form_validation->set_rules('rspd_workplace', 'Nama Perusahaan / Tempat Bekerja', array('required', 'min_length[5]'));

//$this->form_validation->set_rules('rspd_addr', 'Alamat', array('required', 'min_length[5]'));

//$this->form_validation->set_rules('rspd_age', 'Umur', array('required', 'min_length[2]'));

//$this->form_validation->set_rules('rspd_edu_id', 'Umur', array('required', 'min_length[1]'));

//$this->form_validation->set_rules('rspd_relation_id', 'Umur', array('required', 'min_length[1]')); if ($this->form_validation->run() == FALSE) { $negara_where = array(); $negara = $this->kuesioner_model->get_table_data('m_negara',null,$negara_where,'*'); $prop = $this->kuesioner_model->get_table_data('m_propinsi',null,null,'*');

$judulevent_where = array('event_id' => $this->input->post('rspd_event_id'),'event_status' => '1');

$judulevent_join = array('m_form' => 'm_event.event_audience = m_form.form_group#inner');

$judulevent = $this->kuesioner_model->get_table_data('m_event',$judulevent_join,$judulevent_where,'*');

(36)

'rspd_name' => $this->input->post('rspd_name'), 'rspd_gender' => $this->input->post('rspd_gender'), 'rspd_country_id' => $this->input->post('rspd_country_id'), 'rspd_kab_id' => $this->input->post('rspd_kab_id'), 'rspd_kec_id' => $this->input->post('rspd_kec_id'), 'rspd_kel_id' => $this->input->post('rspd_kel_id'), 'rspd_phone' => $this->input->post('rspd_phone'), 'rspd_pasporno' => $this->input->post('rspd_pasporno'), 'rspd_email' => $this->input->post('rspd_email'), 'rspd_job' => $this->input->post('rspd_job'), 'rspd_workplace' => $this->input->post('rspd_workplace'), 'rspd_addr' => $this->input->post('rspd_addr'), 'rspd_event_id' => $this->input->post('rspd_event_id'), 'rspd_age' => $this->input->post('rspd_age'), 'rspd_edu_id' => $this->input->post('rspd_edu_id'), 'rspd_relation_id' => $this->input->post('rspd_relation_id'), 'rspd_created_date' => date('Y-m-d H:i:s'),

'rspd_status' => '1' ); $c_data['negara'] = $negara; $c_data['prop'] = $prop; $c_data['judulevent'] = $judulevent; $c_data['form_data'] = $form_data;

$content = $this->load->view($judulevent->form_view, $c_data, true);

$data['content'] = $content;

$this->load->view('main_page', $data); }

else {

(37)

34

if($this->input->post()) { $data = array( 'rspd_name' => $this->input->post('rspd_name'), 'rspd_gender' => $this->input->post('rspd_gender'), 'rspd_country_id' => $this->input->post('rspd_country_id'), 'rspd_kab_id' => $this->input->post('rspd_kab_id'), 'rspd_kec_id' => $this->input->post('rspd_kec_id'), 'rspd_kel_id' => $this->input->post('rspd_kel_id'), 'rspd_phone' => $this->input->post('rspd_phone'), 'rspd_pasporno' => $this->input->post('rspd_pasporno'), 'rspd_email' => $this->input->post('rspd_email'), 'rspd_job' => $this->input->post('rspd_job'), 'rspd_workplace' => $this->input->post('rspd_workplace'), 'rspd_addr' => $this->input->post('rspd_addr'), 'rspd_event_id' => $this->input->post('rspd_event_id'), 'rspd_age' => $this->input->post('rspd_age'), 'rspd_edu_id' => $this->input->post('rspd_edu_id'), 'rspd_relation_id' => $this->input->post('rspd_relation_id'), 'rspd_created_date' => date('Y-m-d H:i:s'),

'rspd_status' => '1' );

if ($this->kuesioner_model->insert_entry('t_respondent',$data)) {

//fill session variables rspd_id

$this->session->set_userdata('rspd_id', $this->db->insert_id());

$this->session->set_userdata('rspd_event_id', $this->input->post('rspd_event_id'));

//cari quest_id ke pertanyaan nomor awal $question_where = array('quest_event_id' => $this->session->userdata('rspd_event_id'), 'quest_order' => '1');

(38)

$question = $this->kuesioner_model->get_table_data('t_quest',null,$question_where,'*');

//fill session variables

$this->session->set_userdata('quest_id', $question->quest_id);

$this->session->set_userdata('quest_order', $question->quest_order);

//redirect ke pertanyaan nomor awal redirect(base_url().'kuesioner/viewQuestion'); } else { echo "Failed"; } } } }

public function saveResponse() {

//count total pertanyaan dalam event

$cnt_question_where = array('quest_event_id' => $this->session->userdata('rspd_event_id'),'quest_status' => '1'); $cnt_question = $this->kuesioner_model->get_table_data('t_quest',null,$cnt_question_where,'COUNT(quest_id) JML'); $this->load->helper(array('form', 'url')); if($this->input->post()) { $rspdans_multi = $this->input->post('rspdans_multi'); $quest_ans_type = $this->input->post('quest_ans_type');

(39)

36

//jika jawaban single answer

if($rspdans_multi=='0'){

//jika multiple choice if($quest_ans_type==1){

//get answer desc

$ans_desc_where = array('qans_id' => $this->input->post('rspdans_qans_id'),'qans_status' => '1'); $ans_desc = $this- >kuesioner_model->get_table_data('t_quest_answer',null,$ans_desc_where,'qans_number,qans_desc, qans_fixed_answer'); //fill variables $rspdans_qans_id = $this->input->post('rspdans_qans_id');

// cek jawaban lainnya if($ans_desc->qans_fixed_answer=='1'){ $rspdans_value = $ans_desc->qans_number." ".$ans_desc->qans_desc; }else if($ans_desc->qans_fixed_answer=='0'){ $rspdans_value = $ans_desc->qans_number." ".$this->input->post('rspdans_value'); } } //jika uraian else if($quest_ans_type==2){ $rspdans_qans_id = null; $rspdans_value = $this->input->post('rspdans_value'); }

(40)

$data = array( 'rspdans_rspd_id' => $this->session->userdata('rspd_id'), 'rspdans_quest_id' => $this->input->post('rspdans_quest_id'), 'rspdans_has_source' => $this->input->post('rspdans_has_source'), 'rspdans_created_date' => date('Y-m-d H:i:s'), 'rspdans_qans_id' => $rspdans_qans_id, 'rspdans_value' => $rspdans_value, 'rspdans_status' => '1' ); if ($this->kuesioner_model->insert_entry('t_respondent_answer',$data)) { if($rspdans_qans_id){ //cari quest_id berikutnya berdasarkan jawaban multiple choice yang dipilih

$nextquest_seq_where = array('qans_id' => $rspdans_qans_id,'qans_status' => '1'); $nextquest_seq = $this- >kuesioner_model->get_table_data('t_quest_answer',null,$nextquest_seq_where,'*'); $this->session->set_userdata('quest_id', $nextquest_seq->qans_nextquest_id); } else{ if($this->session->userdata('quest_order')==$cnt_question->JML){ $this->session->set_userdata('quest_id', 'END'); }else{ //cari quest_id berikutnya berdasarkan urutan pertanyaan berikutnya

$question_where = array('quest_event_id' => $this->session->userdata('rspd_event_id'), 'quest_order' => $this->session->userdata('quest_order')+1,'quest_status' => '1' );

(41)

38

$question = $this->kuesioner_model->get_table_data('t_quest',null,$question_where,'*'); $this->session->set_userdata('quest_id', $question->quest_id); } } //redirect ke pertanyaan if($this->session->userdata('quest_order')==$cnt_question->JML OR $this->session->userdata('quest_id')=='END'){ $data = array('rspd_status' => '2'); $where = array('rspd_id' => $this->session->userdata('rspd_id')); if ($this->kuesioner_model->update_entry('t_respondent',$data, $where)) { redirect(base_url().'kuesioner/thankYou/'); } }else{ redirect(base_url().'kuesioner/viewQuestion/'); } } else { echo "Failed"; } }

//jika jawaban multi answer else if($rspdans_multi=='1'){

//get from array input

$qans_id = $this->input->post('rspdans_qans_id');

$rspdans_qans_id = ''; $ans_counter = ''; $ans_success = '';

(42)

//repeat for all component for($i=0;$i < count($qans_id);$i++){ if ($qans_id[$i]<>""){ //counter answer $ans_counter = $ans_counter+1;

//jika multi checkbox if($quest_ans_type==3){

//get answer desc $ans_desc_where = array('qans_id' => $qans_id[$i],'qans_status' => '1'); $ans_desc = $this->kuesioner_model->get_table_data('t_quest_answer',null,$ans_desc_where,'qans_number,qans_desc, qans_fixed_answer'); //fill variables $rspdans_qans_id = $qans_id[$i]; // cek jawaban lainnya if($ans_desc->qans_fixed_answer=='1'){

$rspdans_value = $ans_desc->qans_number." ".$ans_desc->qans_desc; }else if($ans_desc->qans_fixed_answer=='0'){

$rspdans_value = $ans_desc->qans_number." ".$this->input->post('rspdans_value');

} }

(43)

40

else if($quest_ans_type==4){ $rspdans_qans_id = null; $rspdans_value = $qans_id[$i]; } $data = array( 'rspdans_rspd_id' => $this->session->userdata('rspd_id'), 'rspdans_quest_id' => $this->input->post('rspdans_quest_id'), 'rspdans_has_source' => $this->input->post('rspdans_has_source'), 'rspdans_created_date' => date('Y-m-d H:i:s'), 'rspdans_qans_id' => $rspdans_qans_id, 'rspdans_value' => $rspdans_value, 'rspdans_status' => '1' ); if ($this->kuesioner_model->insert_entry('t_respondent_answer',$data)) { $ans_success = $ans_success+1; } } } if($ans_success==$ans_counter){ if($rspdans_qans_id){ //cari quest_id berikutnya berdasarkan jawaban multiple choice yang dipilih

(44)

$nextquest_seq_where = array('qans_id' => $rspdans_qans_id,'qans_status' => '1'); $nextquest_seq = $this- >kuesioner_model->get_table_data('t_quest_answer',null,$nextquest_seq_where,'*'); $this->session->set_userdata('quest_id', $nextquest_seq->qans_nextquest_id); } else{ if($this->session->userdata('quest_order')==$cnt_question->JML){ $this->session->set_userdata('quest_id', 'END'); } else{ //cari quest_id berikutnya berdasarkan urutan pertanyaan berikutnya

$question_where = array('quest_event_id' => $this->session->userdata('rspd_event_id'), 'quest_order' => $this->session->userdata('quest_order')+1,'quest_status' => '1' ); $question = $this->kuesioner_model->get_table_data('t_quest',null,$question_where,'*'); $this->session->set_userdata('quest_id', $question->quest_id); } } //redirect ke pertanyaan if($this->session->userdata('quest_order')==$cnt_question->JML OR $this->session->userdata('quest_id')=='END'){ $data = array('rspd_status' => '2'); $where = array('rspd_id' => $this->session->userdata('rspd_id')); if ($this->kuesioner_model->update_entry('t_respondent',$data, $where)) { redirect(base_url().'kuesioner/thankYou/');

(45)

42

} }else{ redirect(base_url().'kuesioner/viewQuestion/'); } } else{

echo 'gagal input'; }

} }

}

public function viewQuestion() {

//data responden

$respondent_where = array('rspd_id' => $this->session->userdata('rspd_id')); $respondent_join = array('m_negara' => 'm_negara.negara_id = t_respondent.rspd_country_id#inner','m_event' => 'm_event.event_id = t_respondent.rspd_event_id#inner'); $respondent = $this->kuesioner_model->get_table_data('t_respondent',$respondent_join,$respondent_where,'*'); //data event

$judulevent_where = array('event_id' => $this->session->userdata('rspd_event_id'),'event_status' => '1');

$judulevent = $this->kuesioner_model->get_table_data('m_event',null,$judulevent_where,'*');

// item pertanyaan

$question_where = array('quest_event_id' => $this->session->userdata('rspd_event_id'), 'quest_id' => $this->session->userdata('quest_id'),'quest_status' => '1');

$question = $this->kuesioner_model->get_table_data('t_quest',null,$question_where,'*');

(46)

// fill session quest_order

$this->session->set_userdata('quest_order', $question->quest_order);

//count total pertanyaan dalam event

$cnt_question_where = array('quest_event_id' => $this->session->userdata('rspd_event_id'),'quest_status' => '1');

$cnt_question = $this->kuesioner_model->get_table_data('t_quest',null,$cnt_question_where,'COUNT(quest_id) JML');

$answer_where = array('quest_event_id' => $this->session->userdata('rspd_event_id'), 'quest_id' => $this->session->userdata('quest_id'),'quest_status' => '1','qans_status' => '1'); $answer_join = array('t_quest'=>'t_quest_answer.qans_quest_id = t_quest.quest_id#left'); $answer = $this->kuesioner_model->get_table_data('t_quest_answer',$answer_join,$answer_where,'*',null,'qans_or der','asc'); $c_data['judulevent'] = $judulevent; $c_data['respondent'] = $respondent; $c_data['question'] = $question; $c_data['answer'] = $answer; $c_data['prog_question'] = $question->quest_order; $c_data['cnt_question'] = $cnt_question;

$content = $this->load->view('questionnaire', $c_data, true);

$data['content'] = $content;

$this->load->view('main_page', $data); }

public function thankYou() {

(47)

44

$respondent_where = array('rspd_id' => $this->session->userdata('rspd_id')); $respondent_join = array('m_negara' => 'm_negara.negara_id = t_respondent.rspd_country_id#inner','m_event' => 'm_event.event_id = t_respondent.rspd_event_id#inner'); $respondent = $this->kuesioner_model->get_table_data('t_respondent',$respondent_join,$respondent_where,'*');

//count total pertanyaan dalam event

$cnt_question_where = array('quest_event_id' => $this->session->userdata('rspd_event_id'),'quest_status' => '1');

$cnt_question = $this->kuesioner_model->get_table_data('t_quest',null,$cnt_question_where,'COUNT(quest_id) JML');

//data event

$judulevent_where = array('event_id' => $this->session->userdata('rspd_event_id'),'event_status' => '1'); $judulevent = $this->kuesioner_model->get_table_data('m_event',null,$judulevent_where,'*'); $c_data['respondent'] = $respondent; $c_data['cnt_question'] = $cnt_question; $c_data['judulevent'] = $judulevent; $content = $this->load->view('questionnaire_end', $c_data, true); $data['content'] = $content; $this->load->view('main_page', $data); } } ?>

(48)

PENUTUP

Pedoman Penggunaan Aplikasi Sistim Manajemen Pemanfaatan Survey

Online (SIMPAN - Online) ini disusun sebagai pedoman bagi pengguna

aplikasi dalam mengatur, mengkoordinasikan pemanfaatan survey online di

lingkungan BNP2TKI baik unit kerja Pusat maupun daerah.

Pedoman ini diharapkan dapat memberikan panduan secara jelas terhadap

pengguna SIMPAN - Online sehingga pengguna dapat bertanggungjawab

untuk melaksanakan tugas sesuai dengan tupoksinya.

Akhirnya, pedoman yang disusun ini harus disadari masih banyak

kekurangan-kekurangan. Oleh karena itu kami mengharapkan saran dan

masukan dari berbagai pihak untuk menyempurnakan pedoman ini.

Gambar

Tabel  master  utama  adalah  tabel  m_event.  Event  ini  sebagai  bentuk  kegiatan yang membutuhkan media survey
Tabel ini menyimpan data event survey. Event ini biasanya tergantung  dari kegiatan unit kerja
Tabel  ini  menyimpan  data  responden.  data  responden  ini  akan  langsung  dihubungkan  dengan  data  event
Tabel  ini  berfungsi  sebagai  media  penyimpanan  pertanyaan  dari  survey  yang  diadakan  dalam  event  tertentu

Referensi

Dokumen terkait

32/2009 tentang Perlindungan dan Pengelolaan Lingkungan Hidup, Kajian Lingkungan Hidup Strategis, yang selanjutnya disingkat KLHS, adalah rangkaian analisis yang

Orang yang sadar akan dosanya yang besar dan Tuhan senantiasa me- ngampuni serta memberi kesempatan hidup memohon keampunan dosanya atau bertobat, akan selalu bersyukur

Dalam pembiayaan ini LKS sebagai pemilik dana (shahibul maal) membiayai 100% untuk kebutuhan usaha, sedangkan nasabah bertindak sebagai pengelola dana

14 Sesuai dengan judul penulisan dan rumusan masalah yang telah dipaparkan sebelumnya, maka penulis mencoba untuk membatasi ruang lingkup masalah dalam

Menu-menu yang terdapat pada form menu utama yang Penulis buat terdiri dari menu master data berisi data-data yang terdapat pada perusahaan, menu transaksi berisi

Pada penelitian in vitro, sel β pankreas normal yang diinkubasi dalam media yang mengandung glukosa dengan konsentrasi 11 mM selama 24 jam secara terus menerus, menunjukkan

Dalam sebuah kegiatan Public Relations, program sangatlah berguna untuk mengetahui opini publik terhadap perusahaan atau bisa juga menjadi suatu kegiatan yang berguna untuk

Apabila besarnya kompensasi non finansial yang diberikan kepada karyawan anggota Komunitas Arsa Jakarta sesuai dengan yang diharapkan, maka mereka akan bekerja