Monday, August 1, 2011

Menjalankan File SQL Dengan Sekali Klik

Masalah ini muncul ketika aplikasi yang dijalankan di setiap proyek menemui kendala seperti user di setiap proyek tidak ada jaringan internet, update program, minta dihapuskan data, minta di edit datanya dan lain sebagainya yang intinya adalah memudahkan user dan programmer untuk trobleshotting.

Konsep kerjanya adalah kita membuat sebuah file SQL yang akan dieksekusi kemudian kita membuat sebuah batch file untuk mengeksekusi SQL tersebut. namun yang perlu diperhatikan adalah batch file tersebut harus kita convert  ke exe terlebih dahulu sebelum dijalankan dengan menggunakan Inno Setup Compiler

Bahan - bahan yang diperlukan untuk menjalankan prosedure diatas :

  1. File SQL yang akan dieksekusi
  2. Batch_To_Exe_Converter
  3. Inno Setup Compiler
Sebagai Contoh kita akan membuat user baru di tabel  user.
  1. Buat file sqlnya dengan nama tambah_user.sql  
  2. insert into user (user,password) values ('coba','jangantanya')
  3. Buat batch file untuk mengeksekusi sql diatas dengan nama tambah_user.bat
  4. @echo off cd C:\Program Files\PostgreSQL\8.3\bin\ CLS SET PGPASSWORD=postgres echo on psql -Upostgres brantas_lokal < C:\tambah_user.sql
  5. Convert File diatas (tambah_user.bat) menjadi exe dengan Bat_To_Exe_Converter
  6. Buka Inno Setup Compiler
buatlah sebuah file installer untuk mengeksekusi program diatas berikut saya sertakan file installer yang sudah jadi:
; Script generated by the Inno Setup Script Wizard.
; SEE THE DOCUMENTATION FOR DETAILS ON CREATING INNO SETUP SCRIPT FILES!

#define MyAppName "TAMBAH_USER"
#define MyAppVersion "1.5"
#define MyAppPublisher "Casmadi Corp"
#define MyAppURL "http://www.plat-e.blogspot.com/"
#define MyAppExeName "tambah_user.exe"

[Setup]
; NOTE: The value of AppId uniquely identifies this application.
; Do not use the same AppId value in installers for other applications.
; (To generate a new GUID, click Tools | Generate GUID inside the IDE.)
AppId={{025375D2-5632-4D40-BA94-13DCED92741C}
AppName={#MyAppName}
AppVersion={#MyAppVersion}
;AppVerName={#MyAppName} {#MyAppVersion}
AppPublisher={#MyAppPublisher}
AppPublisherURL={#MyAppURL}
AppSupportURL={#MyAppURL}
AppUpdatesURL={#MyAppURL}
DefaultDirName=C:\xampp\htdocs\{#MyAppName}
DisableDirPage=yes
DefaultGroupName={#MyAppName}
DisableProgramGroupPage=yes
OutputDir=D:\update
OutputBaseFilename=add_user
SetupIconFile=D:\update\favicon.ico
Compression=lzma
SolidCompression=yes

[Languages]
Name: "english"; MessagesFile: "compiler:Default.isl"

[Files]
Source: "D:\update\tambah_user.exe"; DestDir: "{app}"; Flags: ignoreversion
Source: "D:\update\tambah_user.sql"; DestDir: "{app}"; Flags: ignoreversion
; NOTE: Don't use "Flags: ignoreversion" on any shared system files

[Run]
Filename: "{app}\{#MyAppExeName}"; Description: "{cm:LaunchProgram,{#StringChange(MyAppName, "&", "&&")}}"; Flags: nowait skipifsilent

Jalankan file diatas dengan menekan tombol F9, hasil dari kompile file diatas akan menghasilkan file dengan extention exe, yang bisa langsung mengeksekusi file sql yang telah kita buat

Lanjut ....

Sunday, July 17, 2011

Downgrade Toshiba Satellite M200

Dari dahulu saya memang sudah jatuh hati pada Sistem operasi Windows XP, selain stabil enak aja dipakenya gak rese seperti Win Vista. singkat cerita laptop istri sudah terpasang Sistem Operasi Win 7 orinya emang win 7. Tapi karena aku beli modem huawey gak bisa kedeted ama seven, dan istriku mintanya pake XP ya udah babad aja sevennya. hanya saja sebelum instal XP kita harus menyiapkan  CD xp yang sudah dimodifikasi sedemikian rupa agar CD instalasi XP bisa mengenali hardisk yang ada laptop. Caranya bisa dengan menambahkan driver AHCI milik toshiba M200 kedalam CD Installer XP dengan menggunakan Nlite, langkah - langkahnya bisa dilihat disini   .

Namun masalah downgrade blum berhenti sampe disini, karena setelah XP berhasil terinstal di laptop, kita harus berburu driver toshiba M200 untuk XP. aku cari sampe seminggu digoogle gak ketemu, di situs resminya pun nampaknya menang tidak disediakan untuk XP, :-(, kalaupun ada gak bisa dipakai. iseng - iseng cari di tempat nongkrongnya aku kalo gak ada kerjaan kaskus :P.

Langkah- langkahnya seperti berikut :

  1. Klik Kanan My Computer
  2. Pilih Tab Hardware ->Klik Device Manager
  3. Klik Kanan Pada Device yang masih tanda tanya
  4. Pada Tab Detail, Pilih Device Instance Id, copykan id hardware
  5. buka www.devid.info kemudian paste dan cari pada kotak yang tersedia  
Alhamdulilah semua Device Toshiba M200 ku terdeteksi dan berjalan dengan baik,
Semoga bisa membantu apabila bagi teman-teman yang mempunyai permasalahan sama dengan diatas.

Lanjut ....

Thursday, March 3, 2011

Testing Shell Super


Niat awal setiap sebulan sekali motor mau diisi pertamax dengan tujuan membersihkan karbu dan tangki. tapi apa salahnya mencoba shell super yang ada di SPBU non Pertamina toh harganya pun sama yaitu 8100 per liter. saya coba 2 liter dulu, eh langsung Full tank padahal untuk full tank biasanya saya isi premiun lebih kurang 3 literan hemmm whats wrong dengan SPBU Pertamina?.disamping itu isi BBM di shell gak perlu antri dan ada beragam fasilitas pendukungnya. uang kembalian pun walau cuma 400 rupiah dikembalikan, klo di SPBU pertamina ngomel dulu baru dikasih :D

Di kilometer motor sudah menunjukkan 50an KM jarak yang ditempuh dari isi shell super. dan indikator BBM di motor masih lebih dari setengah tangki. artinya dengan jarak tempuh 50 KM tidak sampai menghabiskan separuh isi tangki motor, hal ini berbeda jika menggunakan premium, dengan jarak yang sama maka isi BBM langsung habis.
  1. Jarak tempuh jadi lebih panjang, hal ini dikarenakan BBM dengasn Nilai Oktan 92 pembakaran di mesin menjadi sempurna
  2. Suara mesin jadi halus, begitu juga dengan tarikannya, enteng banget, like New :P
  3. Takaran di SPBU Shell lebih akurat
  4. Tidak perlu antri
  5. Mesin dan tanki motor lebih bersih
ntar dilihat deh, klo 2 liter bisa nyampe 4-5 hari berarti langsung ganti ke shell super, harga juga tidak berpaut jauh jika dikumulatifkan...

Lanjut ....

Tuesday, February 8, 2011

Akhirnya nikah juga

Aku sudah membuktikan omongan teman - teman
yang telah menikah. aku sudah membuktikan perkataan
para trainer ketika ikut outbond. dah aku sudah membuktikan
kalam al-qur'an.

Tugas kita hanya berusaha, ikhtiar, berdo'a, dan perbanyak
istigfar. setelah itu biarkan Allah membuat rencanya yang indah untuk
kita.

Menikah bukan perkara mudah, tapi bukan suatu hal yang perlu ditakuti apalagi dihindari.
Menikah bukan cuma menyatukan 2 hati, tapi dua keluarga dan banyak perbedaan.
Memikirkan tentang menikah memang menguras pikiran, namun jauh lebih baik memikirkan
manfaat setelah menikah.

Buat teman - teman yang belum menikah bersegeralah.
Apa yang kaurisaukan sobat?
Uang...?
Persiapan...?
Allah lebih tahu kebutuhan kita.
Allah akan menolong niat baik kita untuk menikah
Janji Allah itu pasti..
Rencana Allah itu pasti indah...

Lanjut ....

Tuesday, October 19, 2010

PHP : Excel to Postgree Converter

Dulu saya pernah membuat converter dari excel langsung ke mysql, keinginan untuk membuat converter dengan database yang berbeda muncul ketika saya menggunakan database postgree dan membutuhkan converter tersebut untuk aplikasi di kantor. akhirnya saya menemukan blog ini, dan mencoba memodifikasi dan ternyata berhasil.

Cara kerja dari converter ini sangat sederhana, Library membaca File excel, kemudian file excel tersebut dimapping sesuai dengan header tabel dan nama field yang ada didalam tabel. kemudian record tersebut dimasukkan kedalam tabel.

Cekidot aja deh contohnya dibawah ini, semoga bermanfaat :

require_once 'Excel2Psql/excel2psql.php';


$excel_file = "testing_koperasi.xls";

$excel2psql = new Excel2PgSQL($excel_file);
//$excel2psql ->setConvertArea( '$A$1:$E$5' );

$excel2psql ->setRowStart(1);
$excel2psql ->setColStart('A');

$excel2psql ->setColMapping(
array('1'=>'field_1',
'2'=>'field_2','3'=>'field_3',
'4'=>'field_4','5'=>'field_5',
'6'=>'field_6','7'=>'field_7',
'8'=>'field_8','9'=>'field_9',
'10'=>'field_10','11'=>'field_11',
'12'=>'field_12','13'=>'field_13',
'14'=>'field_14','15'=>'field_15',
'16'=>'field_16','17'=>'field_17',
'18'=>'field_18','19'=>'field_19',
'20'=>'field_20','21'=>'field_21',
'22'=>'field_22','23'=>'field_23','24'=>'field_24')
);

$excel2psql ->connectDB ('localhost','nama_user_db','pass_user_db','nama_db','nama_tabel');
$excel2psql ->injectData();

if($excel2psql ){

echo "Improt data berhasil";
}else{
echo "Improt data gagal";

}

Klik excel2pgsql.rar untuk source lengkapnya...

Lanjut ....

Wednesday, July 28, 2010

Kurs Mata Uang Dengan RSS


Wiget kurs mata uang biasa ditambilkan pada situs-situs berita seperti detik, kompas dan lain sebagainya. banyak tehnik yang digunakan untuk mendapatkan data kurs yang bisa update dari sumbernya. yang sering digunakan biasanya tehnik grabbing, yaitu mengambil beberapa bagian dari sebuah situs. tehnik ini sangat beresiko, karena kita mengambil source dari situs lain tanpa permisi, disamping itu juga akan membuat situs kita dan situs yang digrabbing semakin lama untuk dibuka.disamping itu juga ketika situs yang digrabbing berubah tampilan maka coding kita juga harus menyesuaikan.

Situs yang sering dijadikan acuan untuk grabbing biasanya situs BI, BCA dan Mandiri. nah saya mencoba berbagi dengan menggunakan teknik 2 yaitu dengan menggunakan RSS atau XML, dengan cara ini lebih aman dan pastinya mudah dalam coding. kenapa lebih mudah?

  1. RSS formatnya sudah seragam dan dipakai standard dalam situs-situs yang menyedian berita.
  2. Formatnya XML, lebih mudah dalam hal parsing data
Sayangnya situs-situs yang dijadikan sumber kurs mata uang di indonesia masih sangat jarang :-(

Berikut saya sertakan contoh penggunaan dan pemakaiannya menggunakan PHP

<html>
<head>
<title>Kurs Mata Uang dengan RSS </title>
</head>
<body>
<style type="text/css">
.currency table { border-collapse: collapse; margin: 5px 0; padding: 0; }
.currency table tbody { border-bottom: 1px solid #eee; }
.currency table th { padding: 5px 10px; font: .9em Arial, Helvetica, sans-serif; background: #0991D1; border: 1px solid #17AFF5; border-bottom: 2px solid #054D71; color: #fff; text-shadow: 1px 1px 0 #666; }
.currency table td { padding: 5px 10px; font: .8em Arial, Helvetica, sans-serif; border-bottom: 1px solid #ccc; }
.currency span { display: blockl; padding: 4px; font: .7em Arial, Helvetica, sans-serif; font-style: italic; }
.currency table tr.odd { background: #fff; }
.currency table tr.even { background: #F2F2F1;}
</style>

<div class="currency">
<table>
<tr>
<th>Mata Uang</th>
<th>Jual</th>
<th>Beli</th>
</tr>
<?php
// URL Sumber RSS
$url = "http://feeds.feedburner.com/Kurs";

$rss = simplexml_load_file($url);
if($rss)
{
echo '<h1>'.$rss->channel->title.'</h1>';
echo 'Update Terakhir '.$rss->channel->lastBuildDate.'';
$items = $rss->channel->item;

//Perulangan untuk item
foreach($items as $item)
{
$title = $item->title;
$link = $item->link;

// Memecah array menjadi 3 bagian
// mata uang, kurs jual, kurs beli
$kurs = explode(" ",$title);

echo '<tr>';
echo '<td><a href="'.$link.'">'.$kurs[0].'</a></td>
<td align="right"><a href="'.$link.'">'.number_format($kurs[1],2).'</a></td>
<td align="right"><a href="'.$link.'">'.number_format($kurs[2],2).'</a></td>';
echo '</tr>';


}// end or foreach

}
?>
</table>
</div>
</body>
</html>

Lanjut ....

Wednesday, June 30, 2010

Unlock PDF File Online

Sering kita menemui mendapatkan file pdf yang kita dapatkan dari searching sana-sini di mbah google eh malah diprotect, gak bisa diprint, gak bisa dicopy paste, gak bisa dibuka dan gak bisa yang lainnya. awalnya aku cari tools untuk unlock file PDF, tapi ternyata dapat tapi yang versi mbayar, trial, bikin sakit ati aja karena cuma bisa unlock 1 halaman :-(, blom lagi ditambah klo kita nyari cracknya yang ada malah situs-situs gak bener. tapi setelah mengembara sana-sini dapatlah saya pada 2 situs yang lumayan ampuh mengatasi masalah diatas, semoga bisa membantu :
  • Ensode.net [ http://www.ensode.net/pdf-crack.jsf ]
Situsnya agak rame dengan iklan, tombol browsenya terletak dibawah, maximal 5 Mb file PDF yang bisa diupload.
  • PDF Unlock! [http://www.pdfunlock.com/]
Sama dengan situs diatas terdapat add sense, tapi tidak sebanyak ensode.net, hanya saja tombol browse untuk upload File PDFnya terletak diatas, terlihat begitu simple dan file PDFnya bisa sampai 10 Mb yang bisa diupload.

Lanjut ....