BAB II LANDASAN TEORI
2.1
Konsep Dasar SAP
ERP (Enterprise Resource Planning) merupakan sistem informasi yang mendukung transaksi atau operasi sehari-hari dalam pengelolaan sumber daya (resource) perusahaan. Sumber daya tersebut meliputi dana, manusia, mesin, suku cadang, waktu, material dan kapasitas. ERP dibagi menjadi beberapa sub sistem lagi seperti : Manufacturing, Supply Chain Management, Financials, Projects, Human Resources and Customer Relationship Management. SAP (System Application & Products) merupakan software yang difocuskan dalam penerapan dan implementasi sistem ERP secara umum disitu sudah ada Product Lifecycle Management (PLM), Human Resource Management Systems (HRMS), Supplier Relationship Management (SRM), Supply Chain Management (SCM), Customer Relationship Management (CRM), Advanced Planner and Optimizer (APO), Business Information Warehouse (BW) dan semua yang berhubungan dengan resource management.
2.2
Konsep Dasar Database
Database adalah kumpulan data item yang terstruktur, karena susunan data dapat diperkirakan, kita bisa memanipulasi item-item data tersebut untuk
6
7
menghasilkan informasi yang berguna. Database demikian dapat diubah kedalam bentuk tabel dengan memperhatikan file tabel, file Primary Key dan sebagainya yang merupakan dari database. Jadi pembuatan databasenya mencakup dua tindakan utama, yakni penentuan struktur dari database dan pengisian data kedalamnya yang mencakup penentuan Primary Key. Sebelum pembuatan database pada SQL Server 2005, terlebih dahulu harus diperkirakan bentuk dan rancangan databasenya yang akan dibuat agar lebih efisien dan efektif. Untuk mempermudah dan mempersingkat pembuatan database seperti tabel apa saja yang diperlukan dan field yang akan mempunyai nilai yang unik (Primary Key). Komponen SQL Server 2005 Komponen Tabel
Deskripsi Berisi data perbaris yang disebut record dan hubungannya
Diagram Indeks
dengan tabel lain. Tampilan grafis objek-objek database File tambahan yang berguna untuk meningkatkan kecepatan
View/query
pencarian data pada tabel. Tabel virtual yang berisi 1 atau lebih tabel yang berguna
Stored Procedure Triger
untuk melihat data yang diperlukan. Kode Transact SQL yang disimpan dalam server Prosedur khusus yang secara otomatis akan dijalankan apabila operasi tertentu dilakukan dalam tabel Tabel 2.1 Komponen dari SQL server 2005
a) Pembuatan Database di SQL Server 2005 SQL Server 2005 menyediakan dua alternatif dalam pembuatan database, yakni:
8
)1 Dari Query Analyzer. Start > Programs > Microsoft SQL Server > Query Analyzer. Create Database nama_database;
Gambar 2.1 Pembuatan Database melalui Query Analyzer )2 Dari Enterprise Manager Start > Programs > Microsoft SQL Server > Enterprise Manager. Klik kanan pada folder Database>New Database
Gambar 2.2 Pembuatan Database melalui Enterprise Manager
9
b) Pembuatan Table SQL Server 2005 Panggilah Enterprise Manager dan tampilkan database yang telah kita buat, klik tanda (+) pada Database klik pada sub Tables lalu klik kanan pilih menu –> New Table
Gambar 2.3 Table SQL Server 2005 Keterangan: •
Simbol kunci adalah primary key.
•
Colom name adalah nama field atau nama kolom.
•
Data Type adalah Tipe data untuk kolom yang bersangkutan.
•
Length adalah panjang atau lebar kolom.
•
Allow Nulls adalah diperbolehkannya kolom tersebut tidak berisi data atau nulls.
•
Description adalah keterangan mengenai kolom tersebut.
•
Default value adalah nilai default yang diisikan pada record kosong
10
•
Identity adalah field akan diisi otomatis oleh SQL Server dengan angka yang berurutan.
•
Identity Seed adalah nilai awal identity.
•
Indentity increment adalah nilai increment ditambah nilai sebelumnya, misal nilai indentity seednya 1, lalu indentity increment 2 maka rekord pertama bernilai 1.
•
Formula adalah rumus untuk mengisi field yang bersangkutan.
Deskripsi jenis data pada SQL Server 2005. Jenis Data Bit Int
Deskripsi Bilangan integer dengan nilai 1 dan 0 Bilangan integer mulai dari -2.147.483.648
s/d
2.147.483.647 Smallint -32.768 s/d 32.767 Tinyint 0 s/d 255 Numeric -1038 s/d 1038-1 Money -263 s/d 263-1 Smallmoney -214.748.3648 s/d 214.748.3647 Float -1,79E+308 s/d 1,79E+308 Real -3,40E+38 s/d 3,40E+38 Datetime 1 January 1753 s/d 31 Desember 9999 Smalldatetime 1 January 1900 s/d 31 Desenber 2079 Char Data string dengan ukuran maksimal 8000 byte Varchar Data string dengan ukuran maksimal 8000 byte Text Data string dengan ukuran maksimal 2.147.483.647 byte Nchar Karakter unicode dengan ukuran maksimal 4000 byte Nvarchar Karakter unicode dengan ukuran maksimal 4000 byte Ntext Variabel dengan ukuran maksimal 1.073.741.823 byte Binary Ukuran maksimal 8000 byte Varbinary Ukuran maksimal 8000 byte Image Gambar s/d 2.147.483.647 byte Cursor Referansi ke kursor Timestamp Angka Eksklusif yang dikenali database Uniqueiidentifier Angka unik yang berbasis GUID 128 bit Tabel 2.2 Tabel Jenis Data SQL Server 2005
11
2.3
Konsep Dasar PHP
2.3.1 Pengertian PHP
PHP merupakan singkatan dari "PHP: Hypertext Preprocessor", adalah sebuah bahasa scripting yang terpasang pada HTML. Sebagian besar sintaks mirip dengan bahasa C, Java, asp dan Perl, ditambah beberapa fungsi PHP yang spesifik. Tujuan utama bahasa ini adalah untuk memungkinkan perancang web untuk menulis halaman web dinamik dengan cepat.
2.3.2
Kelebihan PHP
Pada saat ini bahasa PERL dan CGI sudah jauh ketinggalan jaman sehingga sebagian besar designer web banyak beralih ke bahasa server-side scripting yang lebih dinamis seperti PHP. Seluruh aplikasi berbasis web dapat dibuat dengan PHP. Namun kekuatan yang paling utama PHP adalah pada konektivitasnya dengan system database di dalam web. Sistem database yang dapat didukung oleh PHP adalah: 1. Oracle 2. MySQL 3. Ms.Access
12
4. Sybase 5. PostgreSQL 6. MS SQL Server 7. dan lainnya PHP dapat berjalan di berbagai system operasi seperti windows 98/NT, UNIX/LINUX, solaris maupun macintosh. Keunggulan lainnya dari PHP adalah PHP juga mendukung komunikasi dengan layanan seperti protocol IMAP, SNMP, NNTP, POP3 bahkan HTTP
2.4
Konsep Dasar Ajax
AJAX itu sendiri adalah kepanjangan dari Asynchronous Java and XML. Istilah AJAX digunakan pada website yang berinteraksi dengan server melalui javascript secara asinkron (background), sehingga pengguna tidak perlu me-load keseluruhan isi page. Hal ini menyebabkan pengiritan waktu dan bandwidth, juga menghasilkan website yang makin interaktif. Biasanya pada aplikasi berbasis web tradisional, untuk merubah isi sebuah page maka page tersebut harus di-load ulang, akan tetapi dengan menggunakan javascript atau cascading style sheets (CSS), programmer web bisa membuat sebuah aplikasi yang dinamis tanpa harus me-load ulang keseluruhn isi page-nya. Dalam tulisan ini penulis akan mencoba menjelaskan secara detail bagaimana tehnik membuat aplikasi berbasis web yang menggunakan konsep AJAX.
13
Konsep Dasar JQUERY
2.5
JQuery merupakan suatu framework (library) Javascript yang menekankan bagaimana interaksi antara Javascript dan HTML. JQuery pertama kali dirilis pada tahun 2006 oleh John Resig. Pada perkembangannya JQuery tidak sekedar sebagai framework Javascript, namun memiliki kehandalan dan kelebihan yang cukup
banyak.
Hal
tersebut
menyebabkan
banyak
developer
web
menggunakannya. JQuery memiliki slogan “Write less, do more” yang kurang lebih maksudnya adalah kesederhanaan dalam penulisan code, tapi dengan hasil yang lebih banyak. JQuery merupakan library open source dengan lisensi GNU General Public License dan MIT License. Dari sisi ukurannya, framework JQuery sungguh ramping, hanya sekitar 20 KB dan hanya terdiri dari satu file. Namun demikian, bagi yang menginginkan fungsi lebih, JQuery memungkinkan penambahan fungsionalitas dalam bentuk plugin. Saat ini tersedia ribuan plugin yang dapat diperoleh secara gratis di internet.
2.5.1
•
Manfaat JQUERY
Mengakses bagian halaman tertentu dengan mudah. Tanpa adanya library Javascript khusus, untuk mengakses suatu bagian tertentu dari halaman, harus mengikuti aturan Document Object
14
Model (DOM) dan pengaksesan harus secara spesifik menyesuaikan dengan struktur HTML. Dengan kata lain, pengaksesan bagian tertentu dari halaman sangat tergantung pada struktur dari HTML. JQuery menawarkan cara yang mudah (bahkan sangat mudah) dalam mengakses bagian tertentu dari halaman. Pengaksesan juga tidak terlalu bergantung pada struktur HTML. •
Mengubah tampilan bagian halaman tertentu. CSS (Cascading Style Sheet) menawarkan metode yang cukup handal dalam mengatur dan mempercantik halaman web. Namun terkadang CSS punya kelemahan yang cukup mengganggu, yaitu beberapa perintah CSS tidak didukung oleh semua browser. Cukup merepotkan jika kita harus mendesign halaman web dengan beberapa CSS sekaligus. Sekali lagi JQuery menawarkan solusi untuk mengatasi hal tersebut. Dengan JQuery, “kesenjangan” yang terjadi antara browser dalam urusan CSS akan tertutup dengan baik.
•
Mengubah isi dari halaman. Jaman dulu cukup sulit jika kita akan mengubah sebagian isi dari halaman. Mengubah disini dapat berarti mengganti teks, menambahkan teks atau gambar, mengurutkan suatu daftar (list), menghapus baris tabel dan sebagainya. Dengan JQuery, hal tersebut dapat dilakukan dengan hanya beberapa baris perintah.
•
Merespond interaksi user dalam halaman. Website yang baik tidak cukup digambarkan dengan user-interface dan tampilan yang memukau. Namun lebih dari itu, bagaimana pengunjung dapat berinteraksi dengan website dan dapat mengatur tampilannya sendiri.
15
Interaktivitas sangat bergantung bagaimana pemrograman yang dipakai dalam menangani event-handling. Javascript sendiri memiliki beberapa event-handling seperti onclick untuk menangani event saat terjadi click. Namun demikian, event handling pada Javascript terbatas pada objectobject tertentu, dan jenisnya pun terbatas. JQuery melengkapi semuanya dengan tambahan penanganan event-handling yang semakin mudah. •
Menambahkan animasi ke halaman. Animasi seringkali disertakan dalam suatu halaman web untuk menambah kecantikannya. Saat ini animasi masih cukup digemari oleh para peselancar situs. Animasi dapat dibuat dalam berbagai gaya, ada yang menggunakan Flash, gambar bergerak (GIF), video, dan sebagainya. Masing-masing tentu memiliki kelebihan dan kekurangan masing-masing. JQuery sendiri menawarkan konsep animasi (walaupun masih sederhana) yang cukup apik namun ramah bandwidth alias ringan. Salah satu animasi yang bisa dibuat dengan JQuery adalah fading jika terdapat suatu bagian dari halaman ditambahkan atau dihilangkan.
•
Mengambil informasi dari server tanpa me-refresh seluruh halaman. Mengambil informasi dari server tanpa refresh halaman merupakan salah satu konsep dasar dari yang namanya AJAX (Asynchronous Javascript and XML). Pada penerapannya, cukup ribet jika harus membangun website dengan konsep AJAX, saat ini banyak library khusus yang berusaha mempermudahnya. JQuery merupakan salah satunya.
•
Menyederhanakan penulisan Javascript biasa.
16
Semboyan JQuery adalah “Write less, do more” atau dengan kata lain kesederhanaan dalam penulisan kode, tetapi menghasilnya tampilan yang lebih. Sebenarnya inilah yang menjadi daya tarik tersendiri buat para pengembang web untuk menggunakan JQuery.
2.6
Perangkat Lunak (Software)
Menurut Terminologi IEEE: Software adalah koleksi dari program-program komputer, prosedur-prosedur, aturan-aturan serta data dan dokumentasi yang terhimpun didalamnya.
2.6.1
Rekayasa Perangkat lunak(Software Enginering) Menurut Fritz Bauer (1969)
Software Engineering adalah pendekatan sistematik untuk pengembangan, pengoperasian, perawatan suatu perangkat lunak yaitu dengan menerapkan prinsip rekayasa dalam usaha memperoleh perangkat lunak yang ekonomis, dapat bekerja secara andal dan efisien pada mesin sebenarnya. Rekayasa Perangkat Lunak(Software
Ilmu
komputer
(Computer
Enginering) 1. Pengetahuan praktis untuk pengembangan.
Science) 1. Teori-teori
2. Untuk menghasilkan perangkat lunak yang
2. Dasar-dasar Ilmu Komputer
berguna. Tabel 2.3 Tabel Perbedaan Perangkat Lunak dan Ilmu Komputer
17
2.6.2
Model Proses Rekayasa Web
Model Proses Perangkat Lunak representasi abstrak dari proses perangkat lunak. Model yang dianggap cocok dan baik untuk rekayasa web adalah model modified waterfall dan spiral. WaterFall (Air Terjun) Definisi Persyaratan
Perancangan Sistem dan perangkat lunak Implementasi Dan Pengujian Unit
Integrasi Dan Pengujian Sistem
Operasi Dan Pemeliharaan
Gambar 2.4 Model Proses Rekayasa Mengunakan Teori Waterfall
2.6.3
Reverse engineering (RE)
Adalah proses menemukan prinsip-prinsip teknologi perangkat, objek atau sistem melalui analisis struktur, fungsi dan operasi. Sering melibatkan mengambil sesuatu (misalnya, perangkat mekanik, komponen elektronik, atau program perangkat lunak) terpisah dan menganalisis cara kerja secara lebih rinci untuk
18
digunakan dalam pemeliharaan, atau mencoba untuk membuat perangkat baru atau program yang melakukan hal yang sama tanpa menggunakan apapun fisik bagian dari asli.
2.7.
Koneksi PHP –ODBC PHP sudah menyediakan perintah-perintah built-in untuk melakukan
koneksi ke database. Salah satu koneksi ke database yang disupport oleh PHP adalah dengan melalui ODBC. Dengan ODBC ini maka memungkinkan PHP untuk berkomunikasi dengan database server apapun selama database tersebut memiliki driver untuk ODBC. ODBC merupakan singkatan dari Open database Connectivity yaitu merupakan suatu standart yang dikembangkan oleh Microsoft untuk mengakses database agar lebih mudah dengan fungsi yang bersifat umum. Tentu saja untuk mengakses database pada PHP tidak lagi menggunakan cara-cara seperti pada MS Acces, VBasic ataupun Delphi yang dengan menggunakan komponen tertentu. Untuk mengakses database pada PHP diperlukan perintah SQL (Structured Query Language). Pada program berbasis Windows sumber data ODBC dapat diakses pada program melalui DSN (Data Source Name). Nantinya penulis membahas tentang bagaimana cara mengakses database MS SQL Server melalui PHP menggunakan ODBC. Pada dasarnya PHP mendukung berbagai macam database seperti MS Acces, MySQL, Oracle, Paradox, dBas, MS SQL Server dan lain sebagainya.
19
2.8. ERD (Entity Relationship Diagram)
Entity Relationship Diagram (ERD) adalah suatu model keterhubungan antar satu entity atau entitas (kesatuan) yang merupakan suatu jaringan abstrak yang bertujuan untuk menunjukan objek-objek data (Entity) dan keterhubungan dari objek-objek itu. Tujuannya adalah agar mudah dimengerti pemakaian dan mudah disajikan oleh perancangan database. Komponen dari ERD adalah Entitas, Relationship dan atribut.
2.8.1. Entitas
Adalah suatu kumpulan objek atau suatu yang dapat dibedakan, diindentifikasikan secara unik dalam dunia nyata seperti orang, tempat dan kejadian.
Gambar 2.5 Entitas
2.8.2. Relationship
Hubungan yang terjadi antara satu entity atau lebih dan setiap relasi mempunyai batas pada entity yang berhubungan.
20
Gambar 2.6 Relationship
2.8.3. Atribut
Karakteristik dari entity atau relationship yang menyediakan penjelasan detail tentang entity atau relationship tersebut. Nilai atribut merupakan suatu data yang aktual atau informasi yang disimpan pada semua atribut didalam suatu entity atau relationship.
Gambar 2.7 Atribut