oleh :
Bima Agus Arachman
1306785
LEMBAR PENGESAHAN I
LAPORAN PRAKTEK KERJA INDUSTRI
PT. INDUSTRI TELEKOMUNIKASI INDONESIA (PERSERO)
Oleh :
NAMA
NIM
: 1306785
Program Studi
Konsentrasi
: Elektronika Industri
Disetujui oleh,
Tommi Hariyadi,S.T.,M.T
NIP. 19820428 200912 1 006
Mengetahui,
Ketua Departemen Pend. Teknik Elektro
LEMBAR PENGESAHAN II
LAPORAN PRAKTEK KERJA INDUSTRI
PT. INDUSTRI TELEKOMUNIKASI INDONESIA (PERSERO)
Oleh :
NAMA
NIM
: 1306785
Program Studi
Konsentrasi
: Elektronika Industri
Disetujui oleh,
Kepala Divisi
Pengembangan Produk
Yanardian Agrianto
Mulyo Sanyoto
PP.198806007
LEMBAR PENGESAHAN II
LAPORAN PRAKTEK KERJA INDUSTRI
PT. INDUSTRI TELEKOMUNIKASI INDONESIA (PERSERO)
Oleh :
NAMA
NIM
: 1306785
Program Studi
Konsentrasi
: Elektronika Industri
Disetujui oleh,
a.n Ka. Urusan Pengembangan
Pembelajaran
Kasnanta Suwita
NIP.198709131
Mulyo Sanyoto
PP.198806007
KATA PENGANTAR
Puji dan syukur penulis panjatkan kehadirat Allah SWT, yang telah
melimpahkan rahmat dan HidayahNya sehingga dapat menyelesaikan Laporan
Praktik Industri ini sesuai dengan rencana.
Dalam pelaksaan Praktik Industri sampai pembuatan laporan ini, penulis
tentunya mendapat banyak bantuan dari semua pihak. Oleh karena itu, penulis
mengucapkan terimakasih setulusnya kepada :
1.
2.
3.
4.
5.
yang baru, dimana aplikasi dari teori-teori yang kami pelajari belum kami
dapatkan di bangku perkuliahan.
Penulis menyadari bahwa ini dilihat dari tataran penulisan maupun
kandungan isinya masih jauh dari kesempurnaan. Untuk itu penulis mohon kritik
dan saran yang bersifat membangun sebagai pengayaan di dalam penyusunan
tulisan
Laporan Praktik Industri ini dapat bermanfaat khususnya bagi penulis dan
umumnya bagi pembaca.
Bandung,
Desember 2016
Penulis
DAFTAR ISI
KATA PENGANTAR...............................................................................................i
DAFTAR ISI............................................................................................................ii
DAFTAR GAMBAR..............................................................................................iv
BAB I.......................................................................................................................1
PENDAHULUAN...................................................................................................1
1.1
Latar Belakang..........................................................................................1
1.2
1.3
1.4
Batasan Masalah........................................................................................3
1.5
Rumusan Masalah.....................................................................................3
Django.......................................................................................................9
3.1.1
3.1.2
3.2.3
BAB IV..................................................................................................................14
PEMBAHASAN....................................................................................................14
4.1 Instalasi Python............................................................................................14
4.2 Instalasi Django...........................................................................................15
4.3 Membuat Projek Baru dengan Django.........................................................16
4.4 Membuat Model untuk banyak Variabel......................................................19
4.5 Menampilkan login Form Pada halaman Awal Web....................................26
BAB V....................................................................................................................33
PENUTUP..............................................................................................................33
5.1
Kesimpulan..............................................................................................33
5.2
Saran........................................................................................................33
DAFTAR PUSTAKA.............................................................................................34
LAMPIRAN-LAMPIRAN....................................................................................35
DAFTAR GAMBAR
Gambar 1 : Struktur Organisasi PT INTI................................................................7
Gambar 2 : Tampilan saat python sudah terinstal..................................................15
Gambar 3 : Tampilan saat django sudah terinstal..................................................16
Gambar 4 : Memanggil file direktori.....................................................................16
Gambar 5 : Membuat projek baru..........................................................................17
Gambar 6 : Letak file database..............................................................................17
Gambar 7 : Membuat aplikasi baru........................................................................18
Gambar 8 : Melakukan migrasi..............................................................................19
Gambar 9 : Me-running program...........................................................................19
Gambar 10 : Tampilan pertama django..................................................................19
Gambar 11 : Tampilan untuk membuat aplikasi....................................................20
Gambar 12 : Tampilan tabel berhasil dibuat..........................................................22
Gambar 13 : Melakukan migrasi............................................................................23
Gambar14 : Membuat username baru....................................................................23
Gambar 15 : Me-running program.........................................................................24
Gambar 16 : Tampilan awal django admin............................................................24
Gambar 17 : Tampilan setelah berhasil log in........................................................25
Gambar 18: Tampilan Tabel Gapeka......................................................................25
Gambar 19 : Tampilan Tabel Rangkaian...............................................................26
Gambar 20 : Tampilan Tabel Tarif.........................................................................26
Gambar 21 : Tampilan Tabel Transaksi.................................................................26
Gambar 22 : Tampilan login web...........................................................................35
Gambar 23 : Tampilan login web saat memasukan username dan password........35
Gambar 24 : Tampilan Home web.........................................................................36
BAB I
PENDAHULUAN
1.1 Latar Belakang
Departemen Pendidikan Teknik Elektro (DPTE) merupakan salah satu
departemen di Fakultas Pendidikan Teknologi dan Kejuruan (FPTK) UPI. Lulusan
DPTE FPTK UPI dipersiapkan sebagai tenaga kependidikan dan nonkependidikan. Setelah menempuh materi perkuliahan mahasiswa diharapkan
mampu menguasai kedua komponen pokok tersebut, yang dapat dijadikan sebagai
indikator kemampuan dari para lulusan DPTE didalam melaksanakan peran
sebagai tenaga kependidikan yang professional di SMK maupun sebagai tenaga
non-kependidikan kelak.
Memenuhi harapan tersebut, DPTE FPTK UPI memberikan atau
membekali
mahasiswanya
dengan
serangkaian
mata
kuliah
yang
Bagi Mahasiswa.
1. Meningkatkan, memperluas dengan memantapkan keterampilan
yang akan membentuk kemampuan mahasiswa sebagai bekal
untuk memasuki lapangan kerja yang sesuai dengan bidangnya,
dalam hal ini adalah bidang teknologi sekaligus sebagai proses
penyerapan teknologi baru dari lapangan kerja bagi mahasiswa.
2. Menumbuhkan
dan
memantapkan
sikap
profesional
yang
1.2.2
3. Untuk
mengetahui
kemampuan
mahasiswanya
dalam
Bagi Perusahaan
1. Terjalin hubungan yang baik dengan pihak Universitas Pendidikan
Indonesia, terutama Fakultas Pendidikan Teknologi dan Kejuruan
Departemen Pendidikann Teknik Elektro sebagai salah satu
instansi pendidikan bagi calon tenaga ahli bidang teknik yang
sangat dibutuhkan dalam perusahaan.
2. Sebagai sarana untuk mengetahui kualitas pendidikan yang ada di
Departemen Pendidikan Teknik Elektro Fakultas Pendidikan
Teknologi dan Kejuruan Universitas Pendidikan Indonesia.
3. Sebagai sarana untuk memberikan kriteria tenaga kerja yang
dibutuhkan oleh perusahaan.
Indonesia
(Persero),
mulai
dari
sejarah
berdirinya, Visi dan Misi perusahaan, struktur organisasi dan salah satu
divisi yang ada di PT. Industri Telekomunikasi Indonesia Bandung yaitu
divisi Pengembangan Produk tempat dimana kami melakukan praktik
industri.
3. BAB 3 DASAR TEORI : Memuat tentang teori dasar dari masing-masing
komponen terkait ilmu yang dipelajari, diantaranya : Django, Python
4. BAB 4 PEMBAHASAN : Memuat tentang instalasi python dan django,
langkah membuat project baru, membuat tabel pada database, dan
menampilkan database pada tampilan html.
5. BAB 5 PENUTUP : Memuat kesimpulan dan saran dari hasil kegiatan
Praktik Industri.
BAB II
TINJAUAN PERUSAHAAN
2.1 Sejarah PT. Industri Telekomunikasi Industri (Persero)
Perusahaan didirikan sebagai evolusi dari kerja sama PN Telekomunikasi
dan Siemen AG pada tahun 1966. Kerja sama ini berlanjut pada pembentukan
Pabrik Telepon dan Telegraf (PTT) sebagai Bagian dari LPP Postel pada tahun
1968. Pada tahun 1974, bagian ini dipisahkan dari LPP Postel menjadi sebuah
Perseroan Terbatas yang berada di bawah naungan Direktorat Jenderal Pos dan
Telekomunikasi. Pendirian Perusahaan ini didasarkan pada Peraturan Pemerintah
Republik Indonesia No: 34 tahun 1974 tanggal 23 September 1974 tentang
Penyetoran Modal Negara Republik Indonesia untuk Pendirian Perusahaan
Perseroan (Persero) di Bidang Industri Telekomunikasi dan Surat Keputusan
Menteri Keuangan Republik Indonesia No: Kep-1771/MK/IV/12/1974 tanggal 28
Desember 1974 tentang Penetapan Modal Perusahaan Perseroan.
PT INTI (Persero) resmi berdiri pada tanggal 30 Desember tahun 1974,
Bidang usaha INTI meliputi produk-produk radio sonde, radio High Frequency
(HF), radio Very High Frequency (VHF), pesawat telepon dan stasiun bumi untuk
Sistem Komunikasi Satelit Domestik (SKSD) Palapa. Produk stasium bumi yang
disebut terakhir ini mencatatkan sejarah dalam perkembangan INTI dengan
memberikan kontribusi pada prestasi penjualan tertinggi di periode ini, yaitu
sebesar 24,3 milyar rupiah di tahun 1981.
Pada periode tahun 2012 sampai sekarang, PT INTI (Persero)
memantapkan langkahnya untuk memasuki bisnis solusi Engineering, system
integrator dan pengembangan produk-produk genuine. Beberapa produk genuine
unggulan PT INTI antara lain: Smart PBX, General Purpose Agent (INTI Power
Utilities Monitoring & Control, Flood Forecasting and Warning System) IPERISALAH dan KWH Meter. Pengembangan untuk produk produk genuine
INTI lainnya masih berlanjut, seperti Converter Kit untuk BBM ke Gas, Smart
meter untuk Gas dan Air, EDC berbasis USSD dengan Telkomsel, Pembaca KTP
BAB III
DASAR TEORI
3.1 Django
Django adalah web framework yang berbasiskan bahasa pemrograman
Python. Django merupakan salah satu fullstack web framework yang populer di
kalangan programmer Python. (Santoso, 2015) Keunggulannya terletak pada
beragamnya dukungan terhadap berbagai database baik itu relasional maupun non
relasional.
Secara default,
Django
seperti
PostgreSQL, SQLite, MySQL, dan Oracle. Django memiliki segudang fitur builtin yang dapat membantu Anda lebih mudah untuk membangun aplikasi. Django
merupakan fullstack web framework yang dirancang dan dibangun oleh Adrian
Holovaty dan Jacob Kaplan Moss. Awal mulanya Django merupakan web
framework internal yang dimiliki oleh kantor dimana Adrian Holovaty bekerja
sebagai jurnalis. Namun seiring perkembangannya, Django dirilis menjadi open
source. Beberapa fitur yang menjadi Andalan Django adalah:
1.
2.
3.
4.
5.
6.
7.
Model adalah file yang berisi class untuk menggambarkan sebuah tabel
2.
pada database
Views adalah kumpulan function di dalam suatu modul yang akan
memproses request dan
3.
memberikan response,
sama
halnya
mendapatkan perbaikan sehingga membuat web framework yang satu ini menjadi
10
pilihan utama bagi banyak pengembang aplikasi web. Saat ini, versi terbaru
Django adalah versi 1.10 dan dapat di unduh di laman resmi djangoproject.com.
3.1.1
yang
bisa
untuk
dan
membuatnya
mudah
untuk
mengikuti
praktek
pengembangan web.
3.1.2
fork.
Untuk
saat
11
kegiatan administrasi.
5. Development Environment (Pengembangan)
Django dilengkapi dengan server web ringan
untuk
bagus
untuk
memfasilitasi
12
Python lahir pada tahun 1991 di ciptakan oleh Guido Van Rossum.
sejak di luncurkan sebagai public domain pada tahun 1992 ,bahasa
pemrogramman ini berkembang dengan dukungan komunitas pengguna dan
pengembang
seperti
Python
newsgroup,
3.2.2
dinamisme tinggi, waktu pengembangan yang cepat, aplikasi skala besar yang
yang memerlukan orientasi object dan juga fleksibelitas yang tinggi. Python
dapat di gunakan untuk membuat banyak aplikasi ,mulai dari aplikasi
perkantoran, aplikasi web, simulasi yang memerlukan tingkat tinggi, serta
administrasi sistem operasi.
Kelebihan python adalah mudah di gunakan dan merupakan bahasa
pemrogramman yang menawarkan jauh lebih banyak struktur dan dukungan
pada program besar di bandingkan yang di milik oleh shell.di sisi lain,python
juga menawarkan lebih banyak pengecekan kesalahan di bandingkan C dan
merupakan bahasa pemrogramman tingkat tinggi yang built-in seperti di list
dan dictionary yang fleksibel.yang memerlukan waktu berhari-hari untuk di
implementasikan secara efisien dalam C.di karenakan type datanya yang lebih
umum.,python dapat di aplikasikan ke ruang lingkup permasalahan yang jauh
lebih luas di bandingkan AWK dan bahkan PERL.
Python memungkinkan kita untuk membagi-bagi program menjadi
modul-modul yang dapat di gunakan kembali dalam program python lainnya.
Python mempunyai koleksi besar modul-modul standar yang dapat anda
gunakan sebagai dasar bagi program atau sebagai contoh untuk awal
mempelajari cara memprogram dengan python. Terdapat juga modul build-in
13
yang menyediakan fasilitas, seperti I/O file, system call, socket, bahkan
antarmuka untuk GUI toolkit seperti tkinter.
3.2.3
Tipe data yang bersifat tingkat tinggi dan memungkinkan kita untuk
2.
3.
14
BAB IV
PEMBAHASAN
4.1 Instalasi Python
Untuk membuat web database menggunakan bahasa python, hal yang
harus dilakukan adalah menginstalasi python pada perangkat komputer yang
digunakan. Python sendiri dapat diunduh secara gratis melalui alamat resmi
python https://www.python.org/download . Setelah diunduh langkah yang harus
dilakukan adalah sebagai berikut :
1. Run file python yang telah diundah
2. Tentukan direktori tempat instalasi python tersebut. Secara default file
akan tersimpan di c:\Python27
3. Setting system path di windows agar dapat mengenali python
a. Buka Windows Explorer, klik kanan pada Computer dikolom kiri,
pilih Properties.
b. Klik Advanced system settings, lalu klik Environment Variable
c. Pada System variables pilih Path lalu klik Edit
d. Tambahkan dibagian akhir path yang ada dengan ;c:\Python27 ;c:
\Python27\Scripts
e. Lalu klik OK hingga setting path selesai
4. Jalankan command prompt (CMD) pada Windows difolder manapun, run
>python, lalu akhiri keluar dengan Ctrl-Z enter.
15
Jika tidak ada pesan apapun seperti pada gambar diatas maka Python sudah
terinstal dengan benar.
4.2 Instalasi Django
Selain python, django pun harus kita install pada perangkat komputer yang
akan digunakan. Hingga saat ini, django sudah sampai django 1.10, namun django
yang digunakan pada laporan ini adalah django 1.9. File instalasi django dapat
diunduh di web resmi django https://www.djangoproject.com/download/. Setelah
file diunduh, hal yang harus dilakukan adalah sebagai berikut :
1.
2.
Jika setelah perintah >>>import django dijalankan dan tidak ada pesan apapun
berarti instalasi sudah benar.
16
database adalah nama project yang akan kita buat. Jika tidak ada notifikasi
error atau gagal, maka direktori akan terbuat secara otomatis pada
direktori D dengan nama database.
17
akan
menjadi
jembatan
untuk
c.
d.
dia
maka
akan
memproses requesttersebut,
adalah homepage.views.about
kita
akan
diarahkan
yang
akan
nama views-nya
18
e.
19
20
Setelah ituu akan terbentusebuah folder yang bernama tac sudah tercipta
dengan menggunakan perintah diatas. Folder tersebut berisi file admin.py,
__init__.py, tests.py, models.py, dan views.py. lalu kita akan mencoba membuat
tabel dengan mengandalkan model yang dimiliki Django. Jangan lupa untuk
mengubah hak akses dari folder tac. Salin kode berikut ke dalam file
models.py:
tac/models.py
from __future__ import unicode_literals
from django.db import models
class Gapeka(models.Model):
jadwal = models.DateTimeField('date Published')
namaRangkaian = models.CharField(max_length=200)
jalur = models.CharField(max_length=300)
21
stasiun = models.CharField(max_length=20)
rehat = models.DecimalField(max_digits=5, decimal_places=2)
arah = models.DecimalField(max_digits=5, decimal_places=2)
def __unicode__(self):
return self.namaRangkaian
class Rangkaian(models.Model):
namaRangkaian = models.ForeignKey(Gapeka,
on_delete=models.CASCADE)
jumlahGardan= models.PositiveIntegerField()
beratKereta = models.DecimalField(max_digits=5,
decimal_places=2)
pemilik = models.CharField(max_length=50)
nomorId = models.CharField(max_length=50)
def __unicode__(self):
return self.nomorId
class Transaksi(models.Model):
nomorId = models.ForeignKey(Rangkaian,
on_delete=models.CASCADE)
waktuLewat = models.DateTimeField('date Published')
beratKereta = models.DecimalField(max_digits=5,
decimal_places=2)
jumlahGardan = models.PositiveIntegerField()
kecepatan = models.DecimalField(max_digits=5,
decimal_places=2)
jalur = models.CharField(max_length=300)
def __str__(self):
return '%s' % (self.jalur)
class Tarif(models.Model):
waktuPergantian = models.DateTimeField()
jalur = models.ForeignKey(Transaksi, on_delete=models.CASCADE)
tarif = models.BigIntegerField()
22
Untuk dapat melihat hasil migrasi kita dan mengelola tabel database, kita
perlu membuat superuser untuk mengakses halaman admin django. Lakukan
perintah python.manage.py createsuperuser pada command prompt, disana kita
dapat memasukan username, email dan password.
23
Aplikasi yang kita buat sudah dapat kita jalankan di server dan melihatnya
di web browser. Kita hanya perlu menjalankan perintah python manage.py
runserver
24
Terlihat bahwa tabel yang kita buat menjadi beberapa variabel yang
berbeda fungsinya Pada halaman admin ini, kita bisa menambah dan menghapus
data pada tabel Identitas. Untuk menambah data pada tabel, kita hanya perlu
memilih add kemudian tambahkan data yang diperlukan.
25
Untuk menambah data baru pada tabel gapeka ini bisa dilakukan dengan
menekan tombol yang bertuliskan add Gapeka, setelah data yang diinput kita
save, maka secara otomastis, data tersebut akan tersimpan pada table gapeka
tersebut.
26
https://github.com/narenaryan/website/blob/gh-pages/files/static.zip
Lalu pasang pada folder web yang akan kita tambahkan login Form. Ubah
pengaturan setting.py seperti berikut :
Charge/setting.py
# Add static folder to STATIC_DIRS
STATICFILES_DIRS = [
os.path.join(BASE_DIR, "static"),
]
# Add templates to DIRS
TEMPLATES = [
{
'BACKEND':
'django.template.backends.django.DjangoTemplates',
'DIRS': ["templates"], #ubah bagian ini
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
},
},
]
27
Setelah itu kita akan buat tampilan home untuk user yang nantinya akan
digunakan setelah melakukan proses login, masukan source kode berikut :
tac/views.py
from django.conf.urls import url
from . import views
# We are adding a URL called /home
urlpatterns = [
url(r'^$', views.home, name='home'),
]
Lalu buat lagi urls.py di folder aplikasi charge dan masukan source kode
berikut :
tac/urls.py
# log/urls.py
from django.conf.urls import url
from . import views
# We are adding a URL called /home
urlpatterns = [
url(r'^$', views.home, name='home'),
]
Lalu buat folder templates pada web folder charge untuk memasukan
source kode html sebagai halaman dari web seperti base.html, login.html, dan
home.html.
28
29
</body>
</html>
30
</tr>
</table>
</p>
<p class="bs-component">
\<center>
<input class="btn btn-success btn-sm" type="submit" value="login"
/>
</center>
</p>
<input type="hidden" name="next" value="{{ next }}" />
</form>
</div>
</div>
</div>
</div>
</div>
{% endblock %}
{% block javascript %}
<script>
{% if not user.is_authenticated %}
$("ul.nav.navbar-nav.navbar-right").css("display","none");
{% endif %}
</script>
{% endblock %}
Untuk dapat menampilkan login yang berbentuk form kita buat file forms.py di
folder tac dan masukan source kode seperti berikut :
tac/forms.py
from django.contrib.auth.forms import AuthenticationForm
from django import forms
31
class LoginForm(AuthenticationForm):
username = forms.CharField(label="Username", max_length=30,
widget=forms.TextInput(attrs={'class': 'form-control', 'name':
'username'}))
password = forms.CharField(label="Password", max_length=30,
widget=forms.PasswordInput(attrs={'class': 'form-control', 'name':
'password'}))
Terakhir lakukan migrasi pada django dengan memasukan kode berikut pada
terminal atau CMD:
$ python manage.py migrate
$ python manage.py createsuperuser
$ python manage.py runserver 8000
Lalu runserver pada terminal atau cmd, dan buka localhost:8000/login maka akan
muncul tampilan seperti berikut :
Masukan user yang telah kita buat, contohnya admin dan isi password lalu klik
login seperti berikut :
32
Dan akan muncul ke halaman selanjutnya yaitu Home atau halaman awal pada
web server berikut gambanya :
33
BAB V
PENUTUP
5.1 Kesimpulan
Django adalah web framework yang berbasiskan bahasa pemrograman
Python. Dengan menggunakan django, kita bisa membuat web database dengan
lebih mudah. Kita hanya perlu mendefinisikan modul yang akan kita buat pada
file models.py dan pada admin.py.
Dalam hal ini django memiliki kelebihan karena basisnya adalah web
framework jadi source kode tidak terdiri dari satu source yang sudah berisi
tampilan, database, maupun javascript lainya di django ini kelebihannya adalah
memisahkan semua source kode menjadi beberapa bagian seperti views.py,
urls/py, form.py, dll semuanya bisa saling terintegrasi tanpa mencampur semua
kedalam satu source yang mengakibatkan terbentuknya source yang kompleks
dan sulit dipahami. Untuk itu django sangat mempermudah bagi pemula untuk
membuat suatu web yang berbasis framework dengan tampilan yang lebih
sederhana tetapi tetap terlihat seperti profesional develop web lainnya.
5.2 Saran
Penulis menyarankan sebelum membuat web database, alangkah lebih
baiknya kita sudah mengetahui kegunaan dari web database yang akan dibuat,
bagaimana web itu berjalan dan fasilitas apa yang akan disediakan pada web
tersebut. Hal ini akan memudahkan dalam membuat source code untuk web
tersebut.
Selain memahami pemrograman web menggunakan django, disarankan
agar mempelajari juga pemrograman web menggunakan framework lain sebagai
pembanding framework mana yang lebih efisien untuk digunakan.
34
DAFTAR PUSTAKA
Fajar, R. (2016). Memuat Modul Karyawan dan Kehadiran. Diambil kembali dari
https://www.codepolitan.com/membangun-aplikasi-mini-hrd-djangopengenalan-django-admin
Hatanto. (2014). Menginstall Python dan Django di Windows 7. Dimbil dari
https://hartanto.wordpress.com/2014/02/08/menginstall-python-dandjango-di-windows-7/
INTI. (2015). Diambil dari http://inti.co.id/index.php/id/
Kapalomen,
B.
(2016).
Framework
Django.
Diambil
dari
http://www.kapalomen.com/2016/06/django-framework-web-yang-cepatdan.html
Arya,Naren.(2016). right-way-django-authentication. diambil dari
http://blog.narenarya.in/right-way-django-authentication.html
35
LAMPIRAN-LAMPIRAN