Tuesday, June 5, 2007

View di MySQL - Part 1

-VIEW-
Secara definisi view merupakan table virtual yang didefinisikan berdasarkan query. Difokuskan pada aspek sekuritas, user tidak secara langsung mengakses databases yang asli.
contoh :
create view p as select *from departemen;
ket:
p merupakan view yang strukturnya berdasarkan "select *from departemen";
dengan adanya view kita dapat melakukan query pada table tanpa harus khawatir table yang sebenarnya rusak.

Trigger di MySQL - Part 1

--Trigger--
Suatu stored prosedure yang dijalankan sesudah atau pada saat terjadinya modifikasi data. Digunakan untuk menjaga integritas data. beberapa sintak :
- update(modifikasi), insert (utk proses insert), delete(menghapus data)
- before/after : apakah setelah atau pada saat DML dieksekusi
- for each row : diberlakukan untuk semua row
contoh:
buat dua databases sederhana :

CREATE TABLE siswa(
nis int(10) NOT NULL,
nama varchar(30) NOT NULL
)
CREATE TABLE wali(
nis int(10) NOT NULL,
namaWali varchar(30) NOT NULL
)


insert table--

-siswa
nis nama
2 budi
3 alif
4 didin
-wali

nis namaWali
2 udin
3 aldo
4 riki

1.Trigger delete
delimiter &&
create trigger hapuswali
before delete on siswa
for each row
begin
delete from wali where nis = OLD.nis; //OLD.nis merupaka nis yang didelete pada table siswa
end;
&&
delimiter ;
- elsekusi delete
delete from siswa where nis = 2;
--output--
- siswa
nis nama
3 alif
4 didin


- wali
nis namaWali
3 aldo
4 riki

2. Trigger update
delimiter &&
create trigger tambahsiswa
after update on siswa
for each row
begin
update nis from wali set nis = new.nis where nis = old.nis;
end;
&&
delimiter ;

siswa set nis = 12 where nis = 3;

output--
-siswa
nis nama
12 alif
4 didin

-wali
nis namaWali
12 aldo
4 riki

3. Trigger insert
Untuk insert kita akan buat suatu 2 table sederhana :
create table a (
bil int not null
)
create table b (
bil2 int not null
)
- trigger insert
delimiter &&
create trigger tambahdata
after insert on a
for each row
begin
insert into b values (2*new.bil);
end;
&&
delimiter ;


insert into a values (1),(2),(3),(4),(5);

output
- a
bil
1
2
3
4
5
- b
bil2
2
4
6
8
10

Stored Procedure di MySQL - Part 1

Apakah yang dimaksud dengan stored prosedure ?
Stored prosedure merupakan sql yang disimpan server atau stroed lainnya, berguna untuk dan efektifitas dalam query. tulisan ini, menjelaskan bagaimana stored prosedure di MySQL

a. Memulai Stored Prosedure
mysql> delimiter &&
mysql> drop procedure if exists Salam&&
Query OK, 0 rows affected (0.01 sec)
mysql> create procedure Salam()
-> begin
-> select "Assalamualaikum";
-> end;
-> &&
Query OK, 0 rows affected (0.00 sec)
mysql> delimiter ;
mysql> call Salam();
+-----------------+
Assalamualaikum
+-----------------+
Assalamualaikum
+-----------------+
1 row in set (0.00 sec)
Query OK, 0 rows affected (0.00 sec)


Ket :
- delimiter && untuk memulai suatu stored procedure
- drop procedure if exists Salam&& untuk drop/delete
telah ada stored procedure dengan nama Salam
- create procedure Salam(),membuat Sp dengan nama Salam()
- begin, untuk memulai menulisan sql yang akan dieksekusi
- end ;, sebagai akhir stored procedure
- && , tutup
- delimiter ;, akhir/tutup delimiter
- call Salam(), eksekusi stored procedure

2. SP dengan parameter output
mysql> create procedure RataanGaji(out rataangaji int) //adanya parameter output yaitu rataangaji
-> begin
-> select avg(salary) into rataangaji from employee; //Menyimpan hasil avg(salary) ke rataangaji
-> end;
-> &&
Query OK, 0 rows affected (0.00 sec)
mysql> delimiter ;
mysql> call RataanGaji(@result); //@result sebagai parameter output
Query OK, 0 rows affected (0.00 sec)
mysql> select @result; //Keluarkan hasil di @result
+---------+
@result
+---------+
9905000
+---------+
1 row in set (0.00 sec)


3. SP dengan parameter input
delimiter &&
drop procedure if exists DataEmployee&&
create procedure DataEmployee(input int) //parameter int
begin
select *from employee where employee_id = input;
end;
&&
delimiter ;
call DataEmployee(101)
--outputnya--
101, 'ahmad yassin', 'yasin@yahoo.com', '081246798246', 15000000, , 1


4. SP menggunakan deklarasi variable
delimiter &&
drop procedure if exists DataEmployee2&&
create procedure DataEmployee2(input int)
begin
declare nama varchar(30);
declare gaji int;
select employee_name, salary into nama, gaji from employee where employee_id = input;
select nama,gaji;
end;
&&
delimiter ;
call DataEmployee2(101)
--output--
ahmad yassin,15000000

Wednesday, May 23, 2007

Perkembangan IT Skala Industri

Pendahuluan
Beberapa tahun yang lalu, Teknologi Informasi hanya menjadi factor pendukung dalam pengembangan skala industri. Pada saat itu IT hanya dijadikan pelengkap proses dan bagian dari otomasi proses yang ada disuatu perusahaan. Perusahaan belum memberikan kesempatan yang cukup besar ke bidang IT untuk menjadi bagian vital dari pergerakan suatu perusahaan. Perbedaan penggunaan teknologi informasi berdasarkan hierarki pada suatu perusahaan seperti adanya system informasi yang hanya diperuntukan top management, manager di setiap departemennya dan karyawan secara umum ternyata tidak dapat menyelesaikan seluruh proses bisnis yang ada. Tentunya diharapkan ada teknologi yang dapat mengakomodasi seluruh proses bisnis dan mengintegrasikan kebutuhan system pada setiap departemen menjadi suatu system utuh yang saling terkait. Pada saat ini dukungan teknologi informasi dalam pengembangan skala industri mengalami kemajuan yang sangat baik. Berbagai penemuan teknologi dan metode di pengembangan system membuat penggunan teknologi informasi di Industri menjadi suatu yang dubutuhkan. Beberapa teknologi tersebut, antara lain : OLAP, Data Warehouse, Data Mining, Supplay Chain Management, Customer Relationship Management, Knowledge Management System dan Enterprise Resource Planning. Pada tulisan ini, akan menjabarkan teknologi Enterprise Resource Palanning ( ERP ) dan penggunaannya di Industri.

Pengertian
Enterprise Resouce Planning merupakan system informasi skala enterprise yang diperuntukan bagi perusahaan jasa atau manufacturing untuk mengintegrasikan proses bisnis, otomasi system dan pengelolaan sumberdaya seperti mesin, karyawan, materi dan waktui. Secara sederhananya ERP dikembangkan untuk intergrasi semua departemen dan fungsinya dalam single system. ERP menjanjikan keuntungan dari peningkatan efisiensi dalam peningkatan kualitas dan produksi. Walaupun ERP merupakan system cross fungsi tetapi menerapkan system penyimpan tunggal berarti seluruh data perusahaan disimpan dalam satu databases.

Keuntungan ERP

Ada beberapa point yang dapat dijadikan keuntungan dalam pengembangan ERP, antara
lain :
1. Efisiensi Biaya
Perusahaan dapat melakukan efisiensi biaya karena adanya penghematan waktu untuk koordinasi dan sinkronisasi antar proses, peningkatan control dan system pendukung dalam pengambilan kebijakan dengan menggunakan analisis data skala enterprise.
2. Efektivitas Kinerja
Dengan adanya keterhubungan antar departemen akan mempermudah flow kerja atau koordinasinya dan kemudahan dalam reporting tanpa harus memanipulasi data lebih lanjut.
3. Informasi yang Terpercaya
Adanya konsistensi dan akurasi dalam pemasukan data, penggunaan databases tunggal dapat mengghindari redudansi data
4. Pengembangan Berkelanjutan
ERP dirancangan secara terstruktur dan dibagi berdasarkan beberapa modul, dengan demikian memudah dalam pengembangan system dan juga mempermudah dalam perawatan system secara umumnya.

Modul – modul dalam ERP
Secara garis besar modul ERP dibagi menjadi tiga bagian utama, yaitu :
1. Financial
Modul ini memiliki fungsi untuk mengukur keuangan dan keuntungan, controlling keuangan dan pendanaan , pengelolaan investasi dan perencanaannya.
2. Distribusi dan Manufaktur
Melakukan pengaturan logistic dari pembelian hingga distribusinya, penentuan strategi penjualan, manajemen material, perencanaan produksi hingga pengiriman produk, pemeliharaan sunber daya seperti gedung dan mesin, pengelolana kualitas
3. Human Resource
Melakukan manajemen sumber daya manusia yang efektif, pengelolaan data karyawan dan pengembangan kualitas karyawan

Tantangan dan Kekurangan ERP
Tidak semua pengembangan ERP memperoleh hasil yang baik, tidak jarang implemetasinya gagal karena beberapa factor seperti kurangnya perancangan dan system yang tidak mengakomodasi culture perusahaan tersebut. Faktor utama kegagalan tersebut antara lain :
1. Perancangan dan management yang buruk.
2. Adanya perubahan bisnis goal selama pengembangan system
3. Kurangnya pemahanan akan bisnis proses dan culture perusahaan

Untuk kekurangan, ERP relative merupakan produk yang mahal untuk diterapkan. Dan
juga dalam tahapan pengembangan selanjutnya akan sangat tergantunga dengan vendor sebagai penyedian dan juga kompleksitas system yang berakibat beberapa fasilitas merepotkan pengguna. Tetapi beberapa masalah tersebut dapt terselesaikan seperti ada ERP yang opensource seperti compiere, openbravo, adempiere dan webERP yang memudahkan perusahaan untuk mengembangkan sistemnya sendiri. Walaupun produk tersebut tidak setangguh dan se – kompleks produk berbayar seperti SAP AG, Oracle dan JDE.

Sunday, May 13, 2007

Membangun Koneksi Ke MySQL -Java

Pada tulisan ini, saya akan menjelaskan metode koneksi MySQL - Java.
1. Kita butukan driver jdbc untuk koneksi ke java, dapat di download di site MySQL.
Dalam hal ini saya gunakan mysql- connector 5 (beta)

2. buat folder sebagai tempat untuk meletakan drivernya. contohnya :C:\mysqldriver

3. Ekstrak driver yang telah di download ke folder yang dibuat pada langkah dua.
Misalkan hasilnya : C:\mysqldriver\mysqlconnector
Maka folder ini akan terdapat mysql-connector5.jar

4. Set atau CLASSPATH (melalui environtment variable) untuk driver
misalnya : C:\mysqldriver\mysql-connector\mysql-connector5.jar

5. Buat code koneksi. Contohnya :

import java.sql.*;
public class ConnectionMySQL {

public static void main(String [] args ){

//formatnya :
jdbc:mysql://localhost:port/
String url = "jdbc:mysql://localhost:3306/praktikum";
String user = "root";
String passwd = "apasaja";

try{
Class.forName("com.mysql.jdbc.Driver");

Connection c = DriverManager.getConnection(url,user,passwd);
System.out.println("sukses!!!");
}
catch(ClassNotFoundException e){
System.out.println(e.getMessage());
}
catch(SQLException e){
System.out.println(e.getMessage());
}
}
}


Jika koneksi berhasil maka outputnya : sukses!!!, selamat mencoba

Java - Inheritance

Apa itu inherintance :
Penurunan atribut dan method dari super class ke sub classnya.
Beberapa prosudure :
1. sub class merupakan extend dari superclass
2.protected,public dan default adalah akses identifier yang dapat diwariskan
3.word super, harus berada pada baris pertama dalam konstruktor, hanya digunakan dalam pemanggilan konstruktor
4.Overriding, nama method di superclass dan sub class sama. tapi berbeda implementasi.
5.Method final dan statis tidak dapat di override
Contoh :
//super class :employee
public class Employee{
protected String name;
protected int nip;

//konstruktor
Employee(){
System.out.println("Konstruksi Employee I");
}

//overloading konstruktor
Employee(String name, int nip){
this.name = name;
this.nip = nip;
System.out.println("Konstruksi Employee II");
}

//fungsi cetak
public void cetak(){
System.out.println(this.name+" "+this.nip);
}
}

//sub class I turunan dari employee
class Manager extends Employee{
private int departemen;

//konstruktornya manager
Manager(int departemen){
super.name = "Ardi Priasa"; //set nama employee Ardi Priasa
super.nip = 64104004; //set nip untuk employee yang bernama Ardi Priasa
this.departemen = departemen; //set departemen untuk manager
System.out.println("Konstruksi Manager");
}

//overriding, beda dengan fungsi cetak employee krn cetak departemen
public void cetak(){
super.cetak();
System.out.println(super.name+" "+super.nip+" "+this.departemen);
}
}

//Penerapan
public class Output{
public static void main(String [] args){
Manager mngr = new Manager(100);
mngr.cetak();
}
}
//Outputnya
Konstruksi Employee I
Konstruksi Manager
Ardi Priasa 64104004 100

Bagaimana jika kita ingin employeenya dikontruksi oleh konstruktor II?
Jawab :
Ubah konstruktor managernya menjadi
Manager(int departemen){
super("Ardi Priasa",64104004);
this.departemen = departemen;
System.out.println("Konstruksi Manager");
}



Friday, May 11, 2007

Perancangan Model Supply Chain Management Pada Bahan Pangan

I. Pendahuluan
Pada tahun 1945 negara Jepang menyatakan menyerah kepada pasukan sekutu setelah dua kota nya, yaitu Hirosima dan Nagasaki diluluhlantakan dengan bom atom. Pada saat yang bersamaan, Bangsa Indonesia mendeklarasikan kemerdekaannya. Jika kita tinjau berdasarkan sejarah maka, Indonesia dan Jepang memulai suatu peradaban nya dengan kondisi yang tidak jauh berbeda. Bahkan bangsa Jepang memulai kembali peradabannya dengan bermodalkan rasa ketidakberdaya dan kekalahan pada perang dunia ke II. Tapi, Kenapa bangsa Jepang kerap beberapa langkah lebih maju dibandingkan dengan Indonesia? Bangsa Jepang memiliki wilayah yang tidak jauh lebih besar jika dibandingkan dengan pulau Sumatera memiliki ketahan pangan yang jauh lebih baik dari Indonesia.

Apakah titik point perkembangan pertanian dan teknologi di Jepang? Inovasi, point inilah yang membedakan Jepang dengan beberapa Negara berkembang lainnya. Setiap hari ilmuan, penelitian dan engineers berpikir dan berupaya untuk menemukan dan mengembangkan produk, proses, management dan metode baru untuk meningkatkan kesejahteraan dan kualitas kehidupannya. Pada tulisan ini akan dijelaskan perkembangan dan model penerpan supply chain managemen pada pertanian Indonesia yang berfokus pada optimasi dan efektivitas biaya produksi.

II. Pengertian
Supply chain management adalah sebuah ‘proses payung’ di mana produk diciptakan dan disampaikan kepada konsumen dari sudut struktural. Sebuah supply chain (rantai suplai) merujuk kepada jaringan yang rumit dari hubungan di mana organisasi mempertahankan dengan rekan bisnisnya untuk mendapatkan sumber produksi dalam menyampaikan kepada konsumen.(Kalakota, 2000, h197). Artinya supply chain managemen merupakan koordinasi antar pihak – pihak yang terkait dalam suatu produksi dari sector hilir sampai dengan hulu dan consumer. Dalam praktiknya, produksi produk pertanian akan melibatkan beberapa proses dari mengumpulkan bahan baku, penyimpanan atau penggudangan dan pemrosesan pasca produksi dan penjualan dan hal ini pendistribusian bahan pangan. Proses tersebut melibatkan beberapa pihak dengan pada bidang cakupan yang berbeda. Contohnya, pada proses pendistribusian ataupun pengumpulan dan penggudangan bahan baku membutuhan transportasi. Proses pasca produksi dan penggudangan yang harus memperhatikan lokasi dan teknologi yang dipakai. Keterkaitan berbagai pihak dalam aspek yang berbeda ini membutuhkan suatu regulasi, koordinasi dan perencanaan yang memaksimalkan keuntungan.

a. Suplier ( petani )
Suplier berperan sebagai sumber penyedia bahan pangan, tinjauan kritisnya adalah supplier berada pada beberapa sentral produksi dan mengelompok menjadi beberapa kelompok besar dalam satu kesatuan manajemen. Dengan hal ini akan mempermudah dalam trasportasi untuk
penyimpannya

b. Penyimpanan ( Gudang )
Bahan baku pangan dari petani akan disimpan pada beberapa gudang yang guna mengatur stabilitas dan ketersedian bahan pangan. Tinjauan kritisnya gudang penyimpanan memiliki teknologi yang cukup baik untuk menghindari kerusakan seperti jamur dan membusuknya bahan pangan. Lokasi gudang setidaknya berdekatan atau mudah dijangkau oleh
perusahan pangan.

c. Industri Pangan
Dengan kemudahan akses dan ketersedian bahan pangan maka diharpakan industri pangan dapat memaksimalkan produksinya dari aspek kualitas dan juga kuantitas dan dapat melakukan distribusi produk secara efektif.

d. Konsumen akhir
Konsumen memegang peranan penting dalam industri pangan, perilaku dan tingkat komsumsinya akan menetukan perkembangan industri pangan. Hal penting adalah memperlajari perilaku konsumen, menjamin ketersedian pangan dan menjaga hubung dengan konsumen dalam kepuasan penggunaan produk.

e. Transportasi
Kita dapat mengoptimalkan cost supply dengan meminimalkan biaya transportasi. Caranya dengan mengatur lokasi gudang dan industri, mengelompokan supplier dan merancang pola distribusi yang efektif ke konsumen. Kualitas transportasi harus diperhatikan untk menghindari
kerusakan pangan. Karena kerusakan bahan pangan akan menurunkan harga dan kualitas pangan secara keseluruhan

IV. Penutup
Perancangan rantai supply yang berfokus pada transportsi dan penyimpanan bahan pangan merupakan salah satu bagian dari keseluruhan system yang dpat memaksimalkan kualitas dan
keuntungandari industri bahan pangan, Berbagai teknologi di bidang informasi dan telekomunikasi dapat diterpakan untuk mendukung supply chain management bahan pangan.


Implementasi Customer Relationship Management System Pada Distribusi Produk

Implementasi Customer Relationship Management System Pada Distribusi Produk
Pertanian
Oleh : Ardi Priasa (G64104004)
Pendahuluan
Setiap tahunnya pemerintah Indonesia selalu menghapdapi permasalahan yang terkait dengan distribusi produk pertanian maupun pangan. Kelangkaan pupuk, hilangnya suatu komoditi dari pasar. Ketidak-stabilnya harga yang sangat dipengaruhi ketersedian cadangan bahan pangan.

Jika dibuat suatu pemisalan, maka pemerintah dapat dikatakan sebagai suatu perusahaan yang bergerak dalam industri pangan yang memiliki otoritas penuh dalam distribusi dan penjualannya. Sedangkan masyarakat Indonesia merupakan konsumennya.Oleh karena itu pemerintah Indonesia dapat menerapkan suatu metodenya pengelolaan hubungan antara pemerintah sebagai perusahaan dengan rakyatnya yang berperilaku sebagai konsumen, salah satu metodenya adalah Customer Relationship Mangement (CRM)

Customer Relationshpi Mangement (CRM) merupakan suatu metode pendekatan untuk memahami dan mempengaruhi perilaku konsumen melalui komunikasi yang efektif. CRM mengkombinasikan antara bisnis proses dengan teknologi untuk mempermudah perusahaan ataupun organisasi mendapatkan, mengenal dan mempertahankan konsumen, meningkatkan penjualan dan juga customize hubungan dengan konsumen, membentuk consumer yang loyal dan menguntungkan. Pada penerapannya CRM akan terkait erat dengan Decision Support System yaitu suatu sistem yang digunakan untuk mendukung pengambilan kebijakan dalam suatu perusahaan. Dan akan menggunakan beberapa teknologi informasi yang saat ini sedang berkembang seperti data warehouse, data mining dan OLAP (On Line Analytical Processing).

Kenapa memahami konsumen itu penting?
Dalam suatu pasar yang kompetitif jika kita tidak dapat memahami komsumer maka, mereka akan berpindah pada perusahaan lainnya. Bagaimana Mengenal Konsumen Ada beberapa hal yang dapat dilakukan CRM dalam hal mengenal konsumen, antara lain
1. Mengetahui siapa konsumen dan karakteristiknya.
2. Memperhitungkan apa yang konsumen beli, mengetahui apa yang tidak diinginkannya dan juga penyebabnya.
3. Waktu dan cara konsumen membeli
4. Mempelajari pilihan konsumen dan membuat mereka loyal.
5. Menjelaskan karakteristik konsumen dan meprediksi apa yang akan dibeli
konsumen.

Teknologi CRM
Teknologi CRM saat ini menggunakan teknolgi seperti data warehouse dan juga bussiness intelegence or bussiness analytic seperti data mining dan OLAP. Dengan teknologi tersebut suatu perusahaan dapat melakukan analisa terhadap data yang tersimpan di databases. CRM dapat diintegrasikan dengan beberapa teknologi skala enterprise lainnya seperti Enterprise Resouce Planning dan Supply Chain Management.
Penerapan CRM
Dalam penerapannya, CRM dibagi ke beberapa pola interaksi antara lain :
1. Hubungan Pemerintah dan Petani
Dalam suatu system pasar, pemerintah harus menempatkan diri sebagai perusahaan yang membutuhkan bahan produksinya dari petani. Maka pemerintah harus memahami dan mempelajari karakteristik dan keinginan konsumen sehingga para petani mau menjual hasil produksi langsung ke pemerintah tanpa melalui perantara tengkulak. Titik kiritisnya adalah pemeritah memahami keinginan para petani dan membuat mereka loyal pada pemerintah, maka di waktu akan dating pemerintah tidak akan kesulitan dalam memperoleh bahan baku dan mensejahterakan petani yang merupakan profesi terbesar dinegara ini.
2. Hubungan Pemerintah dengan masyarakat
Masyarakat Indonesia yang beragam baik dari aspek geografis, suku bangsa, tingkat ekonomi dan tingkat pendidikan. Secara tidak langsung akan memaksa pemerintah untuk harus lebih memahami nya berdasaran keragaman tersebut. Jika ditinjau dari sudut bisnis maka masyarakat merupakan peluang pasar yang sangat besar, tapi untuk mewujudkan kesejahteraan yang merata, pemerintah hendaknya lebih memperhatikan aspek kesejahteraan dibandingankan benefit yang besar. Ada beberapa titik kritis yang harus diperhatikan. Pertama, pemerintah harus memahami karakteristik dan kemampuan daya beli masyarakatnya dari setiap daerah dan kebudayaan yang berbeda. Kedua, memahami kebutuhan dari setiap lapisan masyarakat.Ketiga, dapat memprediksi perilaku konsumsi masyarajak pada saat tertentu.
3. Pola hubungan dengan pihak pendukung
Dalam melakukan bisnis bahan pertanian dan pangan pemerintah memerlukan pihak – pihak pendukung yang keterlibatan pihak tersebut tidak sampai pada tahap penentuan harga dari suatu komoditi pangan atau pertanian. Pemerintah harus dapat menjamin relasi atau hubungan dengan pihak pendukung untuk kelancaran pada tahap distribusi ke konsumen (masyarakat ) dan pengumpulan bahan baku dari petani. Pihak pendukung antara lain tranportasi, penggudangan, pengemasan dan pemasaran (pemasaran) produk.

Keuntungan CRM
Beberapa point yang menjadi keuntungan penerapan CRM pada distribusi bahan pangan antara lain : biaya yang relative lebih rendah dalam pemasaran ke masyarakat dan pengumpulan bahan baku dari petani. Peningkatan pelayan ke masyarakat dalam hal ketersedian bahan pangan sesuai dengan kebutuhan dan penyerapan hasil panen dari petani yang meningkat. Stabilitas harga dan stok bahan pangan.

*Mahasiswa Ilmu Komputer – Institut pertanian Bogor