<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Together..</title>
	<atom:link href="http://www.havetogether.com/feed" rel="self" type="application/rss+xml" />
	<link>http://www.havetogether.com</link>
	<description></description>
	<lastBuildDate>Tue, 04 Oct 2011 08:13:37 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Login Database SQL Server 2005 dengan User Local</title>
		<link>http://www.havetogether.com/login-database-sql-server-2005-dengan-user-local.html</link>
		<comments>http://www.havetogether.com/login-database-sql-server-2005-dengan-user-local.html#comments</comments>
		<pubDate>Tue, 04 Oct 2011 08:01:22 +0000</pubDate>
		<dc:creator>rumono</dc:creator>
				<category><![CDATA[Database]]></category>
		<category><![CDATA[database]]></category>
		<category><![CDATA[login]]></category>
		<category><![CDATA[sql server 2005]]></category>
		<category><![CDATA[user local]]></category>

		<guid isPermaLink="false">http://www.havetogether.com/?p=486</guid>
		<description><![CDATA[Untuk login Database SQL Server 2005 dengan user local, kamu mesti mendaftarkan user tersebut ke database SQL Server 2005.. tetapi sebelumnya kamu bisa login dengan menggunakan user Administrator..]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;"><em>Software</em> <em>database</em> server buatan Microsoft biasanya hanya bisa dijalankan sebagai server di sistem operasi berbasis server, contohnya Windows Server 2003. Tetapi Microsoft SQL Server 2005 merupakan pengecualian, <em>software</em> ini bisa di-<em>install</em> secara lengkap di windows <em>client</em> seperti Windows 7 atau Windows XP.</p>
<p style="text-align: justify;">Produk sebelumnya, Microsoft SQL Server 2000, kalau di-<em>install</em> di Windows 7 biasanya akan muncul pesan &#8220;<em>Microsoft SQL Server 2000 Enterprise Edition server component is not supported on this operating system. Only client components will be available for installation</em>&#8220;. Artinya hanya bisa meng-<em>install</em> komponen <em>client</em> atau hanya bisa koneksi saja dengan <em>Database</em> SQL Server, sedang <em>database</em>-nya harus ada di komputer server. Kalau niatnya cuma mau belajar <em>Database</em> SQL Server dan hanya punya satu komputer, itupun sistem operasinya Windows 7, mendingan pakai Microsoft SQL Server 2005..</p>
<p style="text-align: justify;">Saya berasumsi kamu sudah meng-<em>install software</em> ini.. pada start menu, klik Microsoft SQL Server 2005 -&gt; SQL Server Management Studio, untuk koneksi dengan <em>Database</em> SQL Server 2005, biasanya muncul kotak dialog Connect to Server seperti gambar di bawah</p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2011/10/connsql20051_browseserver.jpg"><img class="alignnone size-full wp-image-2037" title="Mencari database server" src="http://www.havetogether.com/wp-content/uploads/2011/10/connsql20051_browseserver.jpg" alt="" width="545" height="322" /></a></p>
<p style="text-align: justify;">Kolom <em>Server name:</em> terisi <strong>WINSEVEN</strong>, secara <em>default</em> sama dengan nama komputer saya sebab <em>software</em> ini di-<em>install</em> di komputer saya. Karena kolom <em>Authentication:</em> dipilih <strong>Windows Authentication</strong> maka kolom <em>User name:</em> secara otomatis diisi dengan user local yang sedang dipakai. Dari gambar di atas user-nya adalah <strong>satellite</strong>, <strong>WINSEVEN</strong> merupakan nama komputer saya. <em>Database</em> SQL Server membacanya jadi <em>WINSEVEN\satellite</em>. Jika sudah, tekan tombol <span style="text-decoration: underline;">C</span>onnect.. pada layar monitor akan muncul kotak pesan berikut</p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2011/10/connsql20052_loginfailed.jpg"><img class="alignnone size-full wp-image-2038" title="Pesan login gagal" src="http://www.havetogether.com/wp-content/uploads/2011/10/connsql20052_loginfailed.jpg" alt="" width="590" height="154" /></a></p>
<p style="text-align: justify;">Koneksi dengan user local tidak bisa dilakukan karena user <em>WINSEVEN\satellite</em> belum terdaftar di <em>Database</em> SQL Server 2005. Untuk mendaftarkannya kamu mesti login dengan user <em>WINSEVEN\administrator</em>, setelah itu baru mendaftarkan user local <em>WINSEVEN\satellite</em>.</p>
<p style="text-align: justify;">Windows 7 biasanya men-<em>disable</em> user Administrator karena faktor keamanan. Aktifkan kembali user Administrator, caranya klik Control Panel -&gt; System and Security -&gt; Administrative Tools, pilih menu <strong>Computer Management</strong>. Ikuti langkah-langkahnya seperti gambar di bawah</p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2011/10/connsql20053_compmanagement.jpg"><img class="alignnone size-full wp-image-2043" title="Manajemen user komputer" src="http://www.havetogether.com/wp-content/uploads/2011/10/connsql20053_compmanagement.jpg" alt="" width="492" height="297" /></a></p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2011/10/connsql20054_admproperties.jpg"><img class="alignnone size-full wp-image-2044" title="Mengaktifkan user Administrator" src="http://www.havetogether.com/wp-content/uploads/2011/10/connsql20054_admproperties.jpg" alt="" width="414" height="317" /></a></p>
<p style="text-align: justify;">Sekarang user Administrator sudah aktif.. <strong style="text-align: justify;">log off komputer dan login windows kembali dengan user Administrator</strong>. Sesuai dengan daftar user di atas, seharusnya ada tiga user yang muncul pada layar login windows seperti gambar di bawah, pilih user Administrator..</p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2011/10/connsql20055_userwindows.jpg"><img class="alignnone size-full wp-image-2046" title="Daftar user windows" src="http://www.havetogether.com/wp-content/uploads/2011/10/connsql20055_userwindows.jpg" alt="" width="466" height="254" /></a></p>
<p style="text-align: justify;">Karena kamu tidak menge-set <em>password</em> untuk user Administrator maka pada saat login windows tidak perlu memasukkan <em>password</em>..</p>
<p style="text-align: justify;">Setelah berhasil login windows dengan user Administrator, jalankan kembali Microsoft SQL Server 2005 -&gt;SQL Server Management Studio. Seharusnya pada kotak dialog Connect to Server, kolom <em>User name:</em> bernilai <em>WINSEVEN\Administrator</em>, dan <em>Database</em> SQL Server 2005 bisa diakses ketika kamu menekan tombol Connect.. kamu bisa melihat user-user yang terdaftar dengan meng-<em>expand</em> menu Security -&gt; Login.</p>
<p style="text-align: justify;">Untuk mendaftarkan user local <em>WINSEVEN\satellite</em>, klik kanan <em>mouse</em> pada menu Security -&gt; Login kemudian pilih New Login&#8230;</p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2011/10/connsql20056_newuser.jpg"><img class="alignnone size-full wp-image-2047" title="Mendaftarkan user baru" src="http://www.havetogether.com/wp-content/uploads/2011/10/connsql20056_newuser.jpg" alt="" width="590" height="300" /></a></p>
<p style="text-align: justify;">Kotak dialog Login &#8211; New akan muncul, aktifkan <em>page</em> General, kemudian masukkan nama user ke kolom <em>Login name:</em>, kolom yang lain biarkan sesuai nilai <em>default</em>-nya..</p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2011/10/connsql20057_newusergen.jpg"><img class="alignnone size-full wp-image-2048" title="Page General" src="http://www.havetogether.com/wp-content/uploads/2011/10/connsql20057_newusergen.jpg" alt="" width="556" height="208" /></a></p>
<p style="text-align: justify;">Aktifkan page<em> Server Roles</em>, tentukan <em>privileges</em> untuk user baru tersebut. Ada 9 hak yang bisa kamu berikan, yang masing-masing akan saya jelaskan pada artikel lain, untuk saat ini setidaknya kamu bisa memberi tanda &#8216;centang&#8217; pada <em>checkbox public</em> dan <em>sysadmin</em>. Sebenarnya kalau di-&#8217;centang&#8217; semua juga nggak apa-apa, toh user ini yang biasa kita pakai <em>khan</em>..</p>
<p style="text-align: justify;"><em>Page</em> berikutnya, <em>User Mapping</em>, tandai semua <em>database</em> yang ada.. dan pada kolom di bawah <em>Database role membership for:</em> <em></em> minimal beri tanda &#8216;centang&#8217; pada <em>checkbox db_owner</em> dan <em>public</em> untuk masing masing <em>database</em>.</p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2011/10/connsql20058_newusermapping.jpg"><img class="alignnone size-full wp-image-2050" title="Halaman User Mapping" src="http://www.havetogether.com/wp-content/uploads/2011/10/connsql20058_newusermapping.jpg" alt="" width="400" height="215" /></a></p>
<p style="text-align: justify;">Dua <em>page</em> yang tersisa, <em>Securables</em> dan <em>Status</em>, biarkan sesuai nilai <em>default</em>-nya, kemudian klik tombol OK.</p>
<p style="text-align: justify;">Setelah selesai mendaftarkan user local, <strong>log off kembali komputer dan login windows dengan user local. Jangan lupa untuk men-<em>disable</em> user administrator</strong>.. Sekarang kamu bisa login ke <em>Database</em> SQL Server 2005 dengan user local yang tadi kamu daftarkan..</p>
<p style="text-align: justify;">Nuwun..</p>
]]></content:encoded>
			<wfw:commentRss>http://www.havetogether.com/login-database-sql-server-2005-dengan-user-local.html/feed</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Koneksi Database MySQL dengan Delphi</title>
		<link>http://www.havetogether.com/koneksi-database-mysql-dengan-delphi.html</link>
		<comments>http://www.havetogether.com/koneksi-database-mysql-dengan-delphi.html#comments</comments>
		<pubDate>Thu, 17 Mar 2011 12:13:06 +0000</pubDate>
		<dc:creator>rumono</dc:creator>
				<category><![CDATA[Aplikasi Sederhana]]></category>
		<category><![CDATA[Database]]></category>
		<category><![CDATA[aplikasi delphi]]></category>
		<category><![CDATA[database]]></category>
		<category><![CDATA[dbexpress]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[odbc]]></category>

		<guid isPermaLink="false">http://www.havetogether.com/?p=468</guid>
		<description><![CDATA[Database MySQL merupakan sistem basis data gratisan yang cukup handal, banyak digunakan baik personal maupun instansi, dalam aplikasi berbasis internet, intranet maupun lokal..]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">Database MySQL merupakan sistem basis data gratisan yang cukup handal, banyak digunakan baik personal maupun instansi, dalam aplikasi berbasis internet, intranet maupun lokal. Tidak sedikit <em>programmer </em>yang membuat aplikasi database memakai MySQL sebagai basis datanya.</p>
<p style="text-align: justify;">Dalam aplikasi database yang dibangun dengan Borland Delphi 6, untuk mengakses database MySQL kamu bisa menggunakan semua komponen database seperti ADO, BDE maupun dbExpress. Koneksi database MySQL dengan komponen BDE tidak jauh berbeda dengan komponen ADO atau dbExpress. Sebagai contoh download <a href="http://www.havetogether.com/downloads/ConnMySQL_Code.zip" title="Downloaded 691 hits"><span style="text-decoration: underline;">Connect MySQL Source Code</span></a>, ekstrak dalam komputer kamu dan buka dengan Delphi. <em>Source code</em> untuk aplikasi ini memakai database <strong>linked</strong>, buat dulu database tersebut sekalian driver ODBC-nya, caranya baca kembali artikel <a title="Membuat Driver ODBC untuk Database MySQL" href="http://www.havetogether.com/membuat-driver-odbc-untuk-database-mysql.html" target="_blank">Membuat Driver ODBC untuk Database MySQL</a><strong> </strong></p>
<p style="text-align: justify;"><strong>Koneksi dengan komponen ADO</strong></p>
<p style="text-align: justify;">Biasanya koneksi database dengan ADO melalui driver ODBC, komponen yang digunakan tidak sebanyak jika dengan komponen dbExpress, perhatikan gambar di bawah ini</p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2011/03/connmysql1_componentuses.jpg"><img class="alignnone size-full wp-image-1970" title="Perbandingan komponen ADO dan dbExpress yang digunakan" src="http://www.havetogether.com/wp-content/uploads/2011/03/connmysql1_componentuses.jpg" alt="" width="561" height="322" /></a></p>
<p style="text-align: justify;">Komponen TADOConnection berfungsi untuk koneksi dengan sumber data, bisa langsung dari file databasenya (misalnya database Ms Access) atau melalui driver ODBC. Pastikan driver ODBC untuk database MySQL telah dibuat, dan untuk mengubah koneksinya klik ganda komponen bernama <strong>adocConnMySQL </strong>sehingga muncul kotak dialog seperti di bawah ini, klik tombol Build.. kemudian lakukan langkah-langkahnya</p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2011/03/connmysql2_adoconnect.jpg"><img class="alignnone size-full wp-image-1975" title="Koneksi ADO melalui driver ODBC" src="http://www.havetogether.com/wp-content/uploads/2011/03/connmysql2_adoconnect.jpg" alt="" width="583" height="350" /></a></p>
<p style="text-align: justify;">Untuk menguji koneksi bisa dilakukan atau tidak tekan tombol Test Connection, jika berhasil akan muncul pesan &#8220;<em>Test connection succeeded</em>&#8220;.</p>
<p>Pada <em>source code</em>, perintah koneksi dengan komponen ADO dieksekusi ketika pengguna meng-klik menu koneksi -&gt; ODBC-ADO, dan dikodekan dalam prosedur <strong>miODBCClick </strong>seperti di bawah ini</p>
<pre style="padding-left: 30px;"><strong>procedure </strong>TfmConnMySQL.miODBCClick(Sender: TObject);
<strong>begin</strong>
  <strong>if </strong>sqlcConnMySQL.Connected = True <strong>then</strong>
    sqlcConnMySQL.Close;

  dsCustomer.DataSet:= tbCustomer;
  dsOrders.DataSet:= tbOrders;
  Series1.DataSource:= tbOrders;

  adocConnMySQL.Open;
  <strong>if </strong>adocConnMySQL.Connected = True <strong>then</strong>
  <strong>begin</strong>
    tbCustomer.Open;
    tbOrders.Open;
    fmConnMySQL.Caption:= 'Koneksi Database MySQL dengan ODBC-ADO';
  <strong>end</strong>;
<strong>end</strong>;
</pre>
<p style="text-align: justify;">Karena aplikasi ini bisa koneksi database dengan menggunakan dua komponen, yaitu komponen ADO dan dbExpress, salah satu komponen harus di-<em>disconnect</em>. Komponen <strong>sqlcConnMySQL</strong>, fungsinya sebagai media koneksi dengan komponen dbExpress, jika dalam kondisi <em>connect </em>maka di&#8217;tutup&#8217; dulu. Untuk menampilkan data hasil koneksi dengan ADO, pastikan <em>property </em><strong>DataSet </strong>dari komponen TDBGrid, <strong>dsCustomer </strong>dan <strong>dsOrders</strong>, diisi dengan komponen TADOTable yang bersesuaian. Setelah itu baru koneksi dengan komponen <strong>adocConnMySQL</strong> dilakukan berikut komponen TADOTable-nya.</p>
<p style="text-align: justify;"><strong>Koneksi dengan komponen dbExpress</strong></p>
<p style="text-align: justify;">Klik ganda komponen <strong>sqlcConnMySQL</strong>, di layar monitor akan muncul kotak dialog seperti gambar di bawah.. kemudian coba klik tombol Test Connection, disimbolkan dengan tanda &#8216;conteng&#8217;</p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2011/03/connmysql3_dbexfailconn.jpg"><img class="alignnone size-full wp-image-1996" title="Koneksi dbExpress gagal" src="http://www.havetogether.com/wp-content/uploads/2011/03/connmysql3_dbexfailconn.jpg" alt="" width="564" height="263" /></a></p>
<p style="text-align: justify;">Jika muncul pesan seperti di atas, artinya Borland Delphi kamu belum bisa koneksi langsung dengan database MySQL. Cari file <strong>dbexpmys.dll</strong>, biasanya di C:\Program Files\Borland\Delphi6\Bin, kemudian <em>copy </em>file tersebut ke C:\Windows\system. Tekan tombol Continue jika muncul pesan &#8220;<em>You&#8217;ll need to provide administrator permission to copy to this folder</em>&#8220;. Setelah itu buka file <strong>dbxdrivers.ini</strong>, di folder  C:\Program Files\Common Files\Borland Shared\DBExpress, dengan notepad. Bagian di bawah [MYSQL] harus seperti berikut, biasanya sih sama..</p>
<pre style="text-align: justify; padding-left: 30px;">[MYSQL]
GetDriverFunc=getSQLDriverMYSQL
LibraryName=dbexpmys.dll
VendorLib=LIBMYSQL.dll
BlobSize=-1
Database=DBNAME
ErrorResourceFile=
HostName=ServerName
LocaleCode=0000
Password=password
User_Name=user</pre>
<p style="text-align: justify;">Perhatikan pada kode <strong>VendorLib=LIBMYSQL.dll</strong>, artinya di <em>system </em>kamu harus ada file dll tersebut, file ini sudah saya sertakan pada <em>source code</em> yang tadi kamu download. Copy file <strong>libmySQL.dll</strong> ke folder C:\Windows\system, jika muncul pesan  &#8220;<em>You&#8217;ll need to provide administrator permission to copy to this folder</em>&#8221; tekan tombol Continue.</p>
<p style="text-align: justify;">Sekarang klik ganda lagi komponen <strong>sqlcConnMySQL</strong>, dan tekan tombol Test Connection. Pesan &#8220;<em>Succesfully Connected</em>&#8221; seharusnya muncul di layar monitor kamu. Mulai sekarang Borland Delphi kamu sudah bisa koneksi langsung dengan database MySQL, dan bisa membuat aplikasi lain dengan komponen dbExpress tanpa melakukan langkah-langkah di atas.</p>
<p style="text-align: justify;">Seperti koneksi dengan komponen ADO, untuk koneksi dengan komponen dbExpress juga menggunakan menu. <em>Source code</em>-nya pun tidak jauh berbeda</p>
<pre style="padding-left: 30px;"><strong>procedure </strong>TfmConnMySQL.midbExpressClick(Sender: TObject);
<strong>begin</strong>
  <strong>if </strong>adocConnMySQL.Connected = True <strong>then</strong>
    adocConnMySQL.Close;

  dsCustomer.DataSet:= cdsCustomer;
  dsOrders.DataSet:= cdsConnDetail;
  Series1.DataSource:= cdsConnDetail;

  sqlcConnMySQL.Open;
  cdsCustomer.Active:= sqlcConnMySQL.Connected;
  fmConnMySQL.Caption:= 'Koneksi Database MySQL dengan dbExpress';
<strong>end</strong>;</pre>
<p style="text-align: justify;"><strong>Menampilkan data dari database MySQL dalam grafik</strong></p>
<p style="text-align: justify;">Tema ini sebenarnya sudah dibahas dalam artikel <a title="Menampilkan Database dalam Grafik" href="http://www.havetogether.com/menampilkan-database-dalam-grafik.html" target="_blank">Menampilkan Database dalam Grafik</a>, kamu bisa baca kembali artikel ini. Bedanya, kali ini diletakkan dalam tab tersendiri, tab grafik, dan karena ada dua jenis koneksi maka nilai <em>property </em><strong>DataSource </strong>dari komponen <strong>Series1</strong> ditentukan dalam prosedur <strong>miODBCClick </strong>dan <strong>midbExpressClick</strong>.</p>
<p style="text-align: justify;">Sedikit tambahan biasanya setiap saya membuat aplikasi yang melibatkan komponen untuk akses data, misal TADOTable atau TClientDataset, saya selalu memastikan komponen-komponen ini dalam keadaan tidak aktif ketika aplikasi ini di&#8217;tutup&#8217;.  Sehingga <em>memory </em>komputer terbebaskan dan tidak dipenuhi oleh operasi yang sudah tidak diperlukan lagi. Perintah ini dikodekan dalam <em>events </em><strong>OnClose </strong>pada <em>form </em><strong>fmConnMySQL</strong></p>
<pre style="text-align: justify; padding-left: 30px;"><strong>procedure </strong>TfmConnMySQL.FormClose(Sender: TObject;
 <strong>var </strong>Action: TCloseAction);
<strong>begin</strong>
  adocConnMySQL.Close;
  tbCustomer.Close;
  tbOrders.Close;
  sqlcConnMySQL.Close;
  cdsCustomer.Close;
  cdsConnDetail.Close;
<strong>end</strong>;</pre>
<p style="text-align: justify;">Nuwun..</p>
<p style="text-align: justify;">Daftar  download untuk artikel ini:<br />
1. <a href="http://www.havetogether.com/downloads/ConnMySQL_Code.zip" title="Downloaded 691 hits"><span style="text-decoration: underline;">Connect MySQL Source Code - 73.87 kB</span></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.havetogether.com/koneksi-database-mysql-dengan-delphi.html/feed</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Membuat Driver ODBC untuk Database MySQL</title>
		<link>http://www.havetogether.com/membuat-driver-odbc-untuk-database-mysql.html</link>
		<comments>http://www.havetogether.com/membuat-driver-odbc-untuk-database-mysql.html#comments</comments>
		<pubDate>Mon, 28 Feb 2011 07:58:12 +0000</pubDate>
		<dc:creator>rumono</dc:creator>
				<category><![CDATA[Database]]></category>
		<category><![CDATA[database]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[odbc]]></category>

		<guid isPermaLink="false">http://www.havetogether.com/?p=445</guid>
		<description><![CDATA[Agar bisa mengakses suatu database MySQL kita harus melakukan koneksi terlebih dahulu, Salah satu cara yang paling mudah dan fleksibel adalah dengan membuat driver ODBC..]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">Data dari database sever dapat diakses dengan aplikasi yang dibuat sendiri, dengan delphi misalnya, atau melalui <em>software </em>siap pakai seperti Microsoft Excel. Agar bisa mengaksesnya kita harus melakukan koneksi ke database terlebih dahulu. Salah satu cara koneksi yang paling mudah dan fleksibel adalah dengan membuat driver ODBC.</p>
<p style="text-align: justify;">Sesuai judul artikel, saya memakai database MySQL ver.5.1, versi terbaru saat artikel ini dibuat adalah 5.5.9, kamu bisa mendownload di alamat http://dev.mysql.com/downloads/mysql/. Install kemudian buatlah sebuah database. Kalau mau <em>ngikutin </em>artikel ini, buat database dengan nama <strong>linked</strong> dan <em>import </em>datanya dari database Ms Access pada artikel terdahulu, atau download lagi <a href="http://www.havetogether.com/downloads/linked.zip" title="Downloaded 665 hits"><span style="text-decoration: underline;">Database Linked</span></a>.</p>
<p style="text-align: justify;"><strong>Koneksi Database MySQL dengan Program MySQL Front</strong></p>
<p style="text-align: justify;">Untuk membuat dan meng-<em>import </em>database MySQL lebih mudah pakai program MySQL Front ver.5.1.4.16, download pada alamat http://www.mysqlfront.de/wp/download/ kemudian install di komputer kamu. Jalankan aplikasi tersebut, sebuah kotak dialog Add Session akan ditampilkan. Klik tab General, masukkan dekripsi koneksi pada kolom Name</p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2011/02/odbcmysql1_conngeneral.jpg"><img class="alignnone size-full wp-image-1859" title="Memberi nama koneksi" src="http://www.havetogether.com/wp-content/uploads/2011/02/odbcmysql1_conngeneral.jpg" alt="" width="343" height="176" /></a></p>
<p style="text-align: justify;">Aktifkan tab Connection kemudian ketikan <strong>localhost </strong>pada kotak isian Server dan biarkan yang lain sesuai dengan nilai <em>default</em>-nya</p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2011/02/odbcmysql2_connconnection.jpg"><img class="alignnone size-full wp-image-1860" title="Server database MySQL" src="http://www.havetogether.com/wp-content/uploads/2011/02/odbcmysql2_connconnection.jpg" alt="" width="343" height="247" /></a></p>
<p style="text-align: justify;">Masukkan user dan password untuk login ke database MySQL pada tab Login. Biasanya pada saat instalasi database MySQL, sebuah user dengan nama <strong>root </strong>sudah dibuatkan dan tanpa password, isikan saja user ini pada kolom User. Kamu bisa memasukkan nama database yang akan diakses atau bisa juga mengosongkannya seperti gambar berikut ini</p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2011/02/odbcmysql3_connlogin.jpg"><img class="alignnone size-full wp-image-1861" title="Memasukkan user" src="http://www.havetogether.com/wp-content/uploads/2011/02/odbcmysql3_connlogin.jpg" alt="" width="343" height="216" /></a></p>
<p style="text-align: justify;">Jika sudah selesai klik tombol Ok, sebuah kotak dialog Open Session akan muncul pada layar monitor dengan sebuah deskripsi koneksi yang tadi kamu buat. Kotak dialog ini akan selalu muncul ketika kamu menjalankan program MySQL Front.</p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2011/02/odbcmysql4_connopen.jpg"><img class="alignnone size-full wp-image-1864" title="Daftar deskripsi koneksi" src="http://www.havetogether.com/wp-content/uploads/2011/02/odbcmysql4_connopen.jpg" alt="" width="341" height="299" /></a></p>
<p style="text-align: justify;">Untuk meng-<em>update</em> deskripsi koneksi, tekan tombol Properties&#8230;, tombol New&#8230; untuk membuat deskripsi koneksi baru. Tekan tombol Open untuk memulai koneksi database MySQL. Biasanya muncul kotak dialog Database Login untuk mengkonfirmasi ulang user dan password-nya, beri tanda &#8216;centang&#8217; pada <em>checkbox </em>Save Password jika kamu tidak ingin memunculkan kotak dialog ini ketika melakukan koneksi lagi, kemudian tekan tombol Ok.</p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2011/02/odbcmysql5_connlogininfo.jpg"><img class="alignnone size-full wp-image-1865" title="Konfirmasi ulang user" src="http://www.havetogether.com/wp-content/uploads/2011/02/odbcmysql5_connlogininfo.jpg" alt="" width="304" height="205" /></a></p>
<p style="text-align: justify;"><strong>Membuat Database Baru</strong></p>
<p style="text-align: justify;">Setelah koneksi berhasil, buatlah database baru dengan nama <strong>linked</strong>, seperti gambar di bawah ini. Ketika kamu akan mengklik menu Database, pastikan pada <em>sidebar </em>Navigator kursor ada pada server localhost (sedang disorot). Jika kursor berada pada salah satu database (misalnya test) maka menu Database -&gt; New -&gt; Database malah tidak aktif.</p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2011/02/odbcmysql6_newdatabase.jpg"><img class="alignnone size-full wp-image-1870" title="Membuat database MySQL" src="http://www.havetogether.com/wp-content/uploads/2011/02/odbcmysql6_newdatabase.jpg" alt="" width="590" height="367" /></a></p>
<p style="text-align: justify;">Sekarang database <strong>linked </strong>ada pada daftar di bawah server localhost</p>
<p style="text-align: justify;"><strong>Meng-<em>import</em> Data dari Database Ms Access</strong></p>
<p style="text-align: justify;">Pada <em>sidebar </em>Navigator, sorot database <strong>linked </strong>kemudian klik kanan <em>mouse</em>, sehingga muncul menu <em>pop-up</em>, dan lakukan langkah-langkahnya seperti gambar di bawah</p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2011/02/odbcmysql7_filemsaccess.jpg"><img class="alignnone size-full wp-image-1873" title="Mengimport data dari database Ms Access" src="http://www.havetogether.com/wp-content/uploads/2011/02/odbcmysql7_filemsaccess.jpg" alt="" width="590" height="280" /></a></p>
<p style="text-align: justify;">Isi database Ms Access akan ditampilkan, sorot semuanya dan tekan tombol Forward, pada kotak dialog berikutnya pilih type MyISAM dan biarkan yang lain sesuai nilai <em>default</em>-nya dan tekan tombol Forward lagi.</p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2011/02/odbcmysql8_forwardmsaccess.jpg"><img class="alignnone size-full wp-image-1874" title="Mengimport data dari database Ms Access, lanjutan" src="http://www.havetogether.com/wp-content/uploads/2011/02/odbcmysql8_forwardmsaccess.jpg" alt="" width="499" height="316" /></a></p>
<p style="text-align: justify;">Tekan tombol Finish pada kotak dialog berikutnya dan tunggu sampai proses <em>import </em>data selesai. Sekarang database MySQL <strong>linked</strong> telah berisi sejumlah data.</p>
<p style="text-align: justify;"><strong>Membuat Driver ODBC untuk Database MySQL</strong></p>
<p style="text-align: justify;">Driver ODBC untuk MySQL biasanya tidak disertakan dalam OS windows, baik Windows XP maupun Windows 7. Terlebih dahulu kamu harus men-<em>download</em> connector ODBC untuk MySQL pada alamat http://dev.mysql.com/downloads/connector/odbc/. Kemudian kamu instal dalam komputer kamu.</p>
<p style="text-align: justify;">Untuk membuat driver ODBC seperti biasa klik Start -&gt; Control Panel -&gt; ODBC, pada kotak dialog ODBC Data Source Administrator, aktifkan tab System DNS. Ikuti langkahnya seperti gambar berikut ini</p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2011/02/odbcmysql9_newodbc1.jpg"><img class="alignnone size-full wp-image-1878" title="Membuat driver ODBC untuk database MySQL" src="http://www.havetogether.com/wp-content/uploads/2011/02/odbcmysql9_newodbc1.jpg" alt="" width="570" height="300" /></a></p>
<p style="text-align: justify;">Ketika tombol Finish ditekan akan muncul kotak dialog MySQL Connector/ODBC Data Source Configuration, lakukan setting seperti pada gambar di bawah ini</p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2011/02/odbcmysql10_newodbc2.jpg"><img class="alignnone size-full wp-image-1879" title="Konfigurasi koneksi ke database MySQL" src="http://www.havetogether.com/wp-content/uploads/2011/02/odbcmysql10_newodbc2.jpg" alt="" width="313" height="300" /></a></p>
<p style="text-align: justify;">Sekarang sebuah driver ODBC bernama <strong>mysql_linked</strong> telah ada dalam daftar ODBC.</p>
<p>Nuwun..</p>
<p>Daftar  download untuk artikel ini:<br />
1. <a href="http://www.havetogether.com/downloads/linked.zip" title="Downloaded 665 hits"><span style="text-decoration: underline;">Database Linked - 19.19 kB</span></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.havetogether.com/membuat-driver-odbc-untuk-database-mysql.html/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Cara Berkomunikasi dalam Domain Tanpa Menjadi Anggota</title>
		<link>http://www.havetogether.com/cara-berkomunikasi-dalam-domain-tanpa-menjadi-anggota.html</link>
		<comments>http://www.havetogether.com/cara-berkomunikasi-dalam-domain-tanpa-menjadi-anggota.html#comments</comments>
		<pubDate>Fri, 13 Aug 2010 23:26:47 +0000</pubDate>
		<dc:creator>rumono</dc:creator>
				<category><![CDATA[Jaringan]]></category>
		<category><![CDATA[domain]]></category>
		<category><![CDATA[workgroup]]></category>

		<guid isPermaLink="false">http://www.havetogether.com/?p=423</guid>
		<description><![CDATA[Berkomunikasi dengan komputer dalam suatu domain tidak perlu menjadi anggota domain, tetap dalam workgroup..]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">Kumpulan lebih dari sepuluh komputer yang bisa saling berkomunikasi dalam suatu jaringan biasanya memerlukan server sebagai pengatur manajemen terpusat. <em>Domain </em>merupakan kelompok komputer dengan informasi terpusat seperti <em>user account </em>dan sebagainya. Komputer server yang dipakai untuk menyimpan informasi terpusat kemudian dinamakan <em>Domain Controller</em>, file  untuk menyimpan data-data tersebut disebut <em>Active Directory</em>. Secara <em>default </em>pada saat pertama kali diinstal windows server tidak langsung menjadi <em>Domain Controller</em> tetapi hanya server biasa saja, perlu menginstal <em>Active Directory</em> agar bisa menjadi <em>Domain Controller</em>. Begitu juga dengan komputer lain yang berfungsi sebagai <em>client </em>tidak langsung tergabung dalam domain tetapi <em>Workgroup</em>.</p>
<p style="text-align: justify;">Logikanya untuk bisa berkomunikasi dengan komputer lain yang tergabung dalam suatu domain maka komputer kamu perlu didaftarkan sebagai anggota domain tersebut.. bagaimana seandainya kamu sering berkomunikasi dengan beberapa domain yang berbeda.. apa mesti daftar di semua domain dan setiap kali mau bergabung harus mengganti  domain seperti gambar dibawah ini</p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2010/11/workdomain1_domainproperty.jpg"><img class="alignnone size-full wp-image-1737" title="Setting Domain Komputer" src="http://www.havetogether.com/wp-content/uploads/2010/11/workdomain1_domainproperty.jpg" alt="" width="538" height="308" /></a></p>
<p style="text-align: justify;">Kamu bisa bergabung dan berkomunikasi dalam suatu domain dengan tidak perlu menjadi anggota domain, tetap dalam workgroup (misalnya WORKGROUP) dengan memanfaatkan fasilitas <em>Manage my network passwords</em> dari menu <em>User Accounts </em>pada Windows XP. Untuk Windows 7, pakai fasilitas <em>Manage your credentials</em> dari menu <em>User Accounts</em>.</p>
<p style="text-align: justify;">1. <strong>Windows XP</strong></p>
<p style="text-align: justify;">Buka menu <em>Control Panel</em>, klik ganda menu <em>User Accounts</em>. Jika mempunyai banyak user, pilih user yang biasa kamu pakai, kemudian klik menu <em>Manage my network passwords</em></p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2010/11/workdomain2_managexp.jpg"><img class="alignnone size-full wp-image-1742" title="Pilih User Windows XP" src="http://www.havetogether.com/wp-content/uploads/2010/11/workdomain2_managexp.jpg" alt="" width="590" height="261" /></a></p>
<p style="text-align: justify;">Pada kotak dialog<em> Stored User Names and Passwords</em>, klik tombol <strong>Add </strong>untuk menambahkan user network yang akan dipakai ketika berkomunikasi dengan komputer anggota domain. <em> Username</em> berikut <em>password</em>-nya ini harus sudah terdaftar dalam domain tersebut dan hak-haknya sesuai dengan user network tersebut (bukan user lokal).  Kolom <strong>Server </strong>berisi nama komputer yang ingin diakses, bukan berarti komputer yang bertindak sebagai server. Jadi jika ingin berkomunikasi dengan semua komputer yang terhubung dalam domain maka tambahkan semua komputer dalam daftar di kotak dialog <em>Stored User Names and Passwords</em> tersebut. Pada kolom <strong>User name: </strong>sertakan nama domain sebelum nama user, seperti gambar di bawah ini</p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2010/11/workdomain3_managexpstoreduser.jpg"><img class="alignnone size-full wp-image-1743" title="Menambahkan User Network Windows XP" src="http://www.havetogether.com/wp-content/uploads/2010/11/workdomain3_managexpstoreduser.jpg" alt="" width="549" height="330" /></a></p>
<p style="text-align: justify;">Penambahan daftar komputer ini hanya dilakukan sekali, lain hari ketika ingin mengakses komputer dalam domain tersebut tidak perlu membuat daftar lagi. Untuk mengubahnya, klik nama komputer yang dimaksud kemudian tekan tombol <strong>Properties</strong>.</p>
<p style="text-align: justify;">2. <strong>Windows 7</strong></p>
<p style="text-align: justify;">Caranya hampir sama dengan Windows XP, buka menu <em>Control Panel</em>, klik ganda menu <em>User Accounts</em> kemudian klik menu <em>Manage your credentials</em></p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2010/11/workdomain4_manage7.jpg"><img class="alignnone size-full wp-image-1749" title="Store Credentials Windows 7" src="http://www.havetogether.com/wp-content/uploads/2010/11/workdomain4_manage7.jpg" alt="" width="590" height="311" /></a></p>
<p style="text-align: justify;">Klik <em>Add a Windows credential</em> untuk menambahkan user network, seperti pada Windows XP masukkan nama komputer pada kolom <strong>Internet or network address</strong> dan <em>username </em>berikut <em>password</em>-nya kemudian tekan tombol OK.</p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2010/11/workdomain5_manage7storeduser.jpg"><img class="alignnone size-full wp-image-1750" title="Menambahkan User Network Windows 7" src="http://www.havetogether.com/wp-content/uploads/2010/11/workdomain5_manage7storeduser.jpg" alt="" width="585" height="224" /></a></p>
<p style="text-align: justify;">Untuk mengubahnya tekan tombol <em>drop-down</em> sehingga muncul <em>property </em>dari daftar komputer yang dimaksud, lihat gambar di bawah ini, kemudian tekan <strong>Edit</strong>. Menu <strong>Remove from vault</strong> untuk menghapus daftar komputer yang dimaksud.</p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2010/11/workdomain6_manage7edit.jpg"><img class="alignnone size-full wp-image-1751" title="Property Windows Credentials" src="http://www.havetogether.com/wp-content/uploads/2010/11/workdomain6_manage7edit.jpg" alt="" width="586" height="165" /></a></p>
<p style="text-align: justify;">Nuwun..</p>
]]></content:encoded>
			<wfw:commentRss>http://www.havetogether.com/cara-berkomunikasi-dalam-domain-tanpa-menjadi-anggota.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Memasukkan Data dari File Teks/Excel ke Database</title>
		<link>http://www.havetogether.com/memasukkan-data-dari-file-teksexcel-ke-database.html</link>
		<comments>http://www.havetogether.com/memasukkan-data-dari-file-teksexcel-ke-database.html#comments</comments>
		<pubDate>Tue, 11 May 2010 22:18:34 +0000</pubDate>
		<dc:creator>rumono</dc:creator>
				<category><![CDATA[Database]]></category>
		<category><![CDATA[database]]></category>
		<category><![CDATA[excel]]></category>

		<guid isPermaLink="false">http://www.havetogether.com/?p=414</guid>
		<description><![CDATA[Bagi yang mengerti database memang ada cara yang lebih mudah untuk memasukkan data dari file ke database yaitu dengan menggunakan fasilitas Import and Export Data atau dengan pernyataan SQL..]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">Biasanya orang lebih banyak menyimpan datanya dalam aplikasi seperti Microsoft Excel, karena memang banyak orang yang telah terbiasa dengan aplikasi tersebut. Masalah akan timbul ketika data yang sudah terlanjur diketikkan  tersebut ingin dimasukkan langsung ke <em>database</em>.. nggak ada kerjaan banget, kalau harus mengetik ulang ke <em>database </em>apalagi jika datanya kelewat banyak..</p>
<p style="text-align: justify;">Bagi yang mengerti <em>database </em>memang ada cara yang lebih mudah yaitu dengan menggunakan fasilitas Import and Export Data atau dengan pernyataan SQL. Untuk programmer yang ingin menambahkan fasilitas import data dalam aplikasi yang dikembangkannya, agar setiap user bisa memasukkan sendiri data dari file teks atau Excel, tentu saja pilihannya adalah pernyataan SQL.</p>
<p style="text-align: justify;">Saya mengasumsikan kamu memakai <em>database </em>SQL Server 2000, yang biasanya pada saat installasi telah membuatkan beberapa contoh <em>database</em>. Dalam artikel ini saya memakai <em>database </em>Northwind, dan data file akan dimasukkan dalam tabel Customers.. Sebelumnya download dulu file excel <a href="http://www.havetogether.com/downloads/sampledata.xls" title="Downloaded 344 hits"><span style="text-decoration: underline;">Sample Data Excel</span></a>, sedang contoh file teks bisa diperoleh dengan mengkonversi file excel tersebut menjadi file Text (tab delimited)..</p>
<p style="text-align: justify;">Cara mengkonversinya, buka file excel tersebut kemudian klik menu File -&gt; Save as&#8230;, dan ikut langkahnya seperti gambar berikut ini</p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2010/11/datafile1_convexcel.jpg"><img class="alignnone size-full wp-image-1641" title="Mengkonversi file excel ke file text" src="http://www.havetogether.com/wp-content/uploads/2010/11/datafile1_convexcel.jpg" alt="" width="590" height="300" /></a></p>
<p style="text-align: justify;">Pada saat kamu menekan tombol Save, akan muncul dua pesan.. tekan tombol OK pada pesan pertama dan tekan tombol Yes pada pesan kedua. Seperti gambar di atas, Saya menyimpan file text tadi di path &#8216;F:\Private\project for blog\&#8217;.. Seharusnya sekarang di folder tersebut ada file <strong>sampledata.txt</strong>. Selanjutnya tutup kembali aplikasi Microsoft Excel, jika muncul pesan konfirmasi untuk menyimpan, sebaiknya tekan tombol No agar keadaan file excel tetap seperti sedia kala..</p>
<p style="text-align: justify;">Pernyataan SQL untuk memasukkan data dari file tergantung pada jenis file-nya. Dalam artikel ini saya menggunakan dua macam pernyataan yaitu BULK INSERT dan INSERT INTO..</p>
<p style="text-align: justify;"><strong>1. Memasukkan data dari file teks dengan pernyataan BULK INSERT<br />
</strong></p>
<p style="text-align: justify;">Secara ringkas pernyataan SQL untuk memasukkan data dari file <strong>sampledata.txt</strong> seperti gambar di bawah ini</p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2010/11/datafile2_sqlstatement.jpg"><img class="alignnone size-full wp-image-1646" title="Pernyataan SQL, BULK INSERT" src="http://www.havetogether.com/wp-content/uploads/2010/11/datafile2_sqlstatement.jpg" alt="" width="500" height="228" /></a></p>
<p style="text-align: justify;">Saya memakai <em>syntax </em>tersebut dalam <em>database </em>SQL Server 2000, untuk <em>database </em>lain mungkin <em>syntax</em>-nya berbeda. Pemilik (<em>owner</em>) tabel biasanya <strong>dbo</strong>, walaupun tidak tertutup kemungkinan ada tabel yang <em>owner</em>-nya adalah user yang membuat tabel tersebut. Variabel <strong>DATAFILETYPE </strong>dipilih <strong>char</strong> karena file data terdiri atas karakter, variabel ini mempunyai empat macam nilai</p>
<table style="width: 494px; height: 77px;" border="1">
<tbody>
<tr>
<td style="text-align: center;"><strong>Nilai</strong></td>
<td style="text-align: center;"><strong>Keterangan</strong></td>
</tr>
<tr>
<td>char</td>
<td>Meng-<em>copy </em>data dari file yang terdiri atas karakter</td>
</tr>
<tr>
<td>native</td>
<td>Meng-<em>copy </em>dengan menggunakan tipe data <em>database</em></td>
</tr>
<tr>
<td>widechar</td>
<td>Meng-<em>copy </em>data dari file yang terdiri atas karakter Unicode</td>
</tr>
<tr>
<td>widenative</td>
<td>Sama seperti native, kecuali untuk data bertipe char, varchar dan teks</td>
</tr>
</tbody>
</table>
<p style="text-align: justify;">Variabel <strong>FIELDTERMINATOR</strong>, menentukan pemisah antar nilai kolom dari data dalam file. Biasanya file teks hasil konversi dari file excel dipisahkan dengan tab, untuk membuktikannya buka file sampledata.txt dengan Notepad.. Dan karakter pengganti tab dalam pernyataan SQL adalah <strong>\t</strong>. Jika pemisah nilai kolom dari data seperti di bawah ini maka nilai variabel <strong>FIELDTERMINATOR </strong>adalah <strong>;</strong> (karakter titik koma)</p>
<pre style="text-align: justify; padding-left: 30px;">CustomerID;CompanyName;ContactName;ContactTitle;Address
SPKOM;Spirit Komunika;Nugi;Sales Manager;Jl Dr. Muwardi Raya No.29-30 Jakarta
MAPRI;PT Malta Printindo;Angoro;Sales Manager;Jl Kedoya Raya No.2 A Kedoya Selatan
GRPRI;PT Gramedia Printing Group;Bayu;Sales Manager;Jl Palmerah Selatan 22-28 Jakarta</pre>
<p style="text-align: justify;">Tabel berikut ini menjelaskan daftar karakter pemisah kolom atau baris dalam pernyataan SQL</p>
<table style="width: 404px; height: 124px;" border="1">
<tbody>
<tr>
<td style="text-align: center;"><strong>Nilai</strong></td>
<td style="text-align: center;"><strong>Keterangan</strong></td>
</tr>
<tr>
<td>Tab</td>
<td>\t</td>
</tr>
<tr>
<td>Newline character</td>
<td>\n</td>
</tr>
<tr>
<td>Carriage return</td>
<td>\r</td>
</tr>
<tr>
<td>Backslash</td>
<td>\\</td>
</tr>
<tr>
<td>Tanpa pemisah</td>
<td>\0</td>
</tr>
<tr>
<td>Karakter tertentu</td>
<td>(*, A, t, l, dst..)</td>
</tr>
<tr>
<td>Gabungan dari beberapa karakter</td>
<td>(**\t**, end, !!!!!!!!!!, \t&#8211;\n, dst..)</td>
</tr>
</tbody>
</table>
<p style="text-align: justify;">Variabel <strong>FIRSTROW</strong>, menentukan baris dari data dalam file yang nantinya akan di-<em>copy </em>sebagai baris pertama, nilainya tergantung pada file data. Dalam file excel (sampledata.xls) maupun file teks hasil konversi (sampledata.txt), baris pertama menunjukkan judul kolom dan yang dianggap sebagai data adalah baris kedua maka nilai variabel FIRSTROW sama dengan 2.</p>
<p style="text-align: justify;">Variabel <strong>ROWTERMINATOR</strong>, menentukan pemisah antar baris data. Batas akhir dari baris data dalam file sampledata.txt adalah adanya baris data yang baru (<em>newline</em>). Dalam pernyataan SQL, lihat tabel di atas, simbol karakter <em>newline </em>ditulis <strong>\n</strong>.</p>
<p style="text-align: justify;">Jika pada saat kamu mengeksekusi pernyataan di atas, baik dalam aplikasi eksekutor SQL (misalnya SQL Query Analyzer milik SQL Server 2000) atau dalam aplikasi yang dibuat melalui bahasa pemrograman visual (misalnya Borland Delphi), muncul pesan &#8216;<em>Bulk Insert: Unexpected end-of-file (EOF) encountered in data file</em>&#8216; artinya bagian akhir dari file data banyak mengandung baris-baris kosong, lihat gambar di bawah</p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2010/11/datafile3_emptyrow.jpg"><img class="alignnone size-full wp-image-1668" title="Baris kosong pada file data" src="http://www.havetogether.com/wp-content/uploads/2010/11/datafile3_emptyrow.jpg" alt="" width="500" height="240" /></a></p>
<p style="text-align: justify;">Jika pada setiap baris dalam file data terdapat kolom kosong, lihat gambar di bawah, maka nilai yang dimasukkan dalam field/kolom terakhir <em>database </em>ada karakter yang tidak dikenal, biasanya kotak.</p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2010/11/datafile4_emptyfield.jpg"><img class="alignnone size-full wp-image-1669" title="Kolom kosong pada file data" src="http://www.havetogether.com/wp-content/uploads/2010/11/datafile4_emptyfield.jpg" alt="" width="500" height="200" /></a></p>
<p style="text-align: justify;">
<p style="text-align: justify;">Kamu bisa menghapusnya langsung dalam file teks.. Untuk baris, tekan tombol <em>keyboard </em><strong>Del </strong>sampai kursor <em>keyboard </em>berada tepat di bawah baris terakhir. Sedang untuk kolom, tekan tombol <em>keyboard </em><strong>Del </strong>sampai kursor <em>keyboard </em>berada tepat di samping kolom terakhir dari setiap baris.. Tapi jika datanya mempunyai banyak baris, cara ini tentu saja tidak efisien, bisa-bisa malah menghapus datanya.. Selain cara itu kamu bisa mengeditnya melalui file sumbernya, file excel (sampledata.xls). . ikuti langkahnya seperti gambar di bawah ini</p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2010/11/datafile5_deleterow.jpg"><img class="alignnone size-full wp-image-1671" title="Menghapus baris kosong dari file data" src="http://www.havetogether.com/wp-content/uploads/2010/11/datafile5_deleterow.jpg" alt="" width="585" height="340" /></a></p>
<p style="text-align: justify;">Lakukan hal yang sama pada kolom terakhir, setelah itu konversi lagi file excel tersebut menjadi file teks  seperti langkah-langkah di atas..</p>
<p style="text-align: justify;"><strong>2. Memasukkan data dari file Excel </strong><strong>dengan pernyataan INSERT INTO<br />
</strong></p>
<p style="text-align: justify;"><em>Syntax </em>pernyataan SQL untuk memasukkan data dari file Excel bisa menggunakan pernyataan INSERT INTO, perhatikan gambar di bawah ini</p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2010/11/datafile6_insertstatement.jpg"><img class="alignnone size-full wp-image-1685" title="Pernyataan SQL, INSERT INTO" src="http://www.havetogether.com/wp-content/uploads/2010/11/datafile6_insertstatement.jpg" alt="" width="564" height="191" /></a></p>
<p style="text-align: justify;">Pernyataan INSERT INTO fungsinya jelas untuk memasukkan data ke tabel <em>database</em>. Metode OPENROWSET untuk mengakses data <em>remote </em>dari <em>data source</em> OLE DB, berikut <em>syntax </em>lengkapnya</p>
<pre style="text-align: justify; padding-left: 30px;"><strong>OPENROWSET </strong>( 'provider_name',
 { 'datasource' ; 'user_id' ; 'password' | 'provider_string' },
 { [ catalog. ] [ schema. ] object | 'query' } )</pre>
<p style="text-align: justify;">Variabel <strong>provider_name</strong>, menunjukan nama provider OLE DB yang dikenal dalam <em>registry </em>komputer. Beberapa provider yang biasa dikenal untuk SQL Server 2000 :</p>
<p style="text-align: justify;">- SQLOLEDB, provider Microsoft OLE DB untuk SQL Server<br />
- MSDASQL, provider OLE DB untuk ODBC SQL Server<br />
- Microsoft.Jet.OLEDB.4.0, provider Microsoft OLE DB yang umum digunakan untuk produk-produk microsoft</p>
<p style="text-align: justify;">Variabel yang kedua kamu bisa memilih kombinasi  <strong>datasource ; user_id ; password</strong> atau <strong>provider_string</strong> tergantung pada sumber datanya. Variabel <strong>datasource </strong>bisa diisi dengan nama database, <strong>user_id</strong> dan <strong>password </strong>fungsinya jelas <em>user </em>dan <em>password</em>-nya. Dalam contoh seperti gambar di atas, saya memilih variabel <strong>provider_string</strong> karena sumber datanya adalah file Excel.</p>
<p style="text-align: justify;">Sedang varibel yang ketiga kamu juga bisa memilih kombinasi <strong>[ catalog. ] [ schema. ] object</strong> atau pernyataan <strong>Query</strong>. Contoh penulisan kombinasi [ catalog. ] [ schema. ] object, seperti <em>syntax </em>di bawah ini</p>
<pre style="text-align: justify; padding-left: 30px;">Northwind.dbo.Customers</pre>
<p style="text-align: justify;">Karena sumber datanya dari file maka variabel ketiga lebih cocok dengan Query.. Kamu bisa membatasi data dalam <em>sheet </em>file Excel dengan menyertakan nama kolom setelah nama <em>sheet</em>. Penulisan Query di bawah ini hanya akan memasukkan data dari kolom A sampai kolom I dan hanya sampai pada baris ke-3</p>
<pre style="text-align: justify; padding-left: 30px;">'SELECT * FROM [Sheet1$A1:I3]'</pre>
<p style="text-align: justify;">Artinya kolom <strong>Phone </strong>dan <strong>Fax </strong>tidak dimasukkan dalam <em>database </em>dan hanya dua <em>record </em>yang di-<em>copy </em>ke <em>database</em>.</p>
<p style="text-align: justify;">Jika pada saat kamu mengeksekusi pernyataan di atas, muncul pesan &#8216;<em>Cannot insert the value NULL into column &#8216;CustomerID&#8217;, table &#8216;Northwind.dbo.Customers&#8217;; column does not allow nulls. INSERT fails</em>&#8216; artinya bagian akhir dari file data banyak mengandung baris-baris kosong, untuk memastikannya kamu bisa melihat isi filenya terlebih dahulu dengan pernyataan berikut</p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2010/11/datafile7_emptyrecord.jpg"><img class="alignnone size-full wp-image-1691" title="Hasil Query File Excel" src="http://www.havetogether.com/wp-content/uploads/2010/11/datafile7_emptyrecord.jpg" alt="" width="553" height="320" /></a></p>
<p style="text-align: justify;">Kamu bisa mengatasinya dengan mengedit file sumbernya, file Excel (sampledata.xls). . ikuti langkahnya seperti gambar di bawah ini</p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2010/11/datafile5_deleterow.jpg"><img class="alignnone size-full wp-image-1671" title="Menghapus baris kosong dari file data" src="http://www.havetogether.com/wp-content/uploads/2010/11/datafile5_deleterow.jpg" alt="" width="585" height="340" /></a></p>
<p>Atau dengan mengubah pernyataan SQL-nya menjadi</p>
<pre style="padding-left: 30px;"><span style="color: #0000ff;">INSERT INTO</span> Northwind.dbo.[Customers]
<span style="color: #0000ff;">SELECT</span> * <span style="color: #0000ff;">FROM OPENROWSET</span>(<span style="color: #ff0000;">'Microsoft.Jet.OLEDB.4.0'</span>,
<span style="color: #ff0000;">'Excel 8.0;Database=F:\Private\project for blog\sampledata.xls'</span>,
<span style="color: #ff0000;">'SELECT * FROM [Sheet1$A1:K4]'</span>)</pre>
<p style="text-align: justify;">Kedua <em>Syntax </em>pernyataan SQL di atas (BULK INSERT dan INSERT INTO) bisa di-kode-kan dalam bahasa pemrograman Borland Delphi, download <a href="http://www.havetogether.com/downloads/Copy_Code.1.1.zip" title="Downloaded 256 hits"><span style="text-decoration: underline;">Copy Data Source Code ver.1.1</span></a> kemudian ekstrak di komputer kamu dan buka project <strong>Copy.dpr</strong>.. Dalam s<em>ource code</em> tersebut saya menggunakan beberapa komponen yang merupakan komponen tambahan, TPDJButton dan TCheckDBGrid. Jika kamu belum punya komponen tersebut download, <a href="http://www.havetogether.com/downloads/TPDJButton_Component.zip" title="Downloaded 111 hits"><span style="text-decoration: underline;">TPDJButton Component</span></a> dan <a href="http://www.havetogether.com/downloads/TCheckDBGrid_Component.zip" title="Downloaded 90 hits"><span style="text-decoration: underline;">TCheckDBGrid Component</span></a> kemudian instal dalam program Delphi kamu.. perhatikan kode pada <em>event </em>OnShow dari form fmCopyFile</p>
<pre style="text-align: justify; padding-left: 30px;"><strong>procedure </strong>TfmCopyFile.FormShow(Sender: TObject);
<strong>var</strong>
  sConn: <strong>String</strong>;
<strong>begin</strong>
  sConn:= 'Provider=SQLOLEDB.1;'+
          'Integrated Security=SSPI;'+
          'Persist Security Info=False;'+
          'Initial Catalog=Northwind;'+
          'Data Source=SIS03S';
  adocCopyFile.ConnectionString:= sConn;
  adocCopyFile.Connected:= True;
  <strong>if </strong>adocCopyFile.Connected <strong>then</strong>
    qCustomers.Open;
<strong>end</strong>;</pre>
<p style="text-align: justify;">Sebelum menjalankannya edit isi variabel <strong>sConn</strong>, terutama pada karakter <strong>Data Source=SIS03S</strong> dengan  nama <em>server database </em>kamu (saya menggunakan <em>server database </em>bernama <strong>SIS03S</strong>).</p>
<p style="text-align: justify;">Nuwun..</p>
<p style="text-align: justify;">Daftar  download untuk artikel ini:<br />
1. <a href="http://www.havetogether.com/downloads/sampledata.xls" title="Downloaded 344 hits"><span style="text-decoration: underline;">Sample Data Excel - 15.5 kB</span></a><br />
2. <a href="http://www.havetogether.com/downloads/Copy_Code.1.1.zip" title="Downloaded 256 hits"><span style="text-decoration: underline;">Copy Data Source Code ver.1.1 - 5.31 kB</span></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.havetogether.com/memasukkan-data-dari-file-teksexcel-ke-database.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Membuat About yang Atraktif</title>
		<link>http://www.havetogether.com/membuat-about-yang-atraktif.html</link>
		<comments>http://www.havetogether.com/membuat-about-yang-atraktif.html#comments</comments>
		<pubDate>Sat, 03 Apr 2010 22:09:22 +0000</pubDate>
		<dc:creator>rumono</dc:creator>
				<category><![CDATA[Aplikasi Sederhana]]></category>
		<category><![CDATA[aplikasi delphi]]></category>

		<guid isPermaLink="false">http://www.havetogether.com/?p=403</guid>
		<description><![CDATA[Setiap aplikasi biasanya dilengkapi dengan about yang merupakan informasi ringkas tentang aplikasi atau credit title dari aplikasi..]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">Setiap aplikasi biasanya dilengkapi dengan <em>about </em>yang merupakan informasi ringkas tentang aplikasi atau <em>credit title</em> dari aplikasi. Untuk membuat <em>form about </em>yang menarik, kamu bisa memanfaatkan komponen-komponen standar Delphi.</p>
<p style="text-align: justify;">Buka kembali project TChart dari artikel terdahulu atau jika tidak punya download <a href="http://www.havetogether.com/downloads/TChart_Code.1.9.zip" title="Downloaded 56 hits"><span style="text-decoration: underline;">TChart Source Code ver.1.9</span></a> dan segera ekstrak di komputer kamu.. sebelum membukanya, buat dulu driver  ODBC untuk database linked (baca artikel <a href="../menampilkan-database-dalam-grafik.html" target="_blank">Menampilkan  Database dalam Grafik</a>, di bagian awal artikel ini ada tulisan tentang cara membuat driver ODBC).  Sesudah itu download <a href="http://www.havetogether.com/downloads/About_Code.zip" title="Downloaded 77 hits"><span style="text-decoration: underline;">About Source Code</span></a>, ekstrak di komputer kamu dan tambahkan dengan meng-klik kanan mouse  pada project TChart.exe, pilih menu Add..  kemudian cari  file .pas yang ingin  ditambahkan seperti gambar di bawah  ini</p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2010/11/about1_addproject.jpg"><img class="alignnone size-full wp-image-1622" title="Menambahkan unit uAbout ke project TChart" src="http://www.havetogether.com/wp-content/uploads/2010/11/about1_addproject.jpg" alt="" width="579" height="300" /></a></p>
<p style="text-align: justify;">Untuk memanggilnya melalui <em>form </em>fmMainTChart (unit uMainTChart),  klik ganda pada sel di sebelah kanan <em>event </em>OnClick komponen label1.. dan tambahkan kode program seperti ini</p>
<pre style="text-align: justify; padding-left: 30px;"><strong>procedure </strong>TfmMainTChart.Label1Click(Sender: TObject);
<strong>begin</strong>
  Chart4.BevelOuter:= bvRaised;
  fmAbout.ShowModal;
<strong>end</strong>;</pre>
<p style="text-align: justify;">Jalankan aplikasi dengan menekan tombol Run… jika muncul pesan <em>Form    ‘fmMainTChart‘ references form ‘fmAbout&#8217; declarated in unit  ‘uAbout’   which is not in your USES list. Do you wish to add it?</em> tekan tombol   Yes. Tekan kembali tombol Run..</p>
<p style="text-align: justify;">Ketika <em>form about </em>ini  ditampilkan, teks informasi akan bergerak naik per baris sampai baris terakhir setelah itu baris pertama akan dimunculkan lagi demikian seterusnya. Efek ini hanya menggunakan komponen <em>memo </em>Memo1 dan komponen <em>timer </em>Timer1. Tuliskan isi teks <em>about </em>pada <em>property </em>Lines komponen Memo1, kemudian klik ganda komponen Timer1..</p>
<pre style="text-align: justify; padding-left: 30px;"><strong>procedure </strong>TfmAbout.Timer1Timer(Sender: TObject);
<strong>begin</strong>
  Memo1.Top := Memo1.Top-1;
  <strong>if </strong>Memo1.Top = -Memo1.Height <strong>then</strong>
    Memo1.Top := Panel1.Height;
<strong>end</strong>;</pre>
<p style="text-align: justify;">Selama komponen Timer1 dijalankan (aktif) maka posisi atas komponen Memo1 (<em>property </em>Top) secara terus menerus digeser vertikal sebanyak 1 pixel. Dan pada saat posisi atasnya mencapai batas maksimal komponen Memo1 (<em>property</em> Height) maka posisi atasnya akan dikembalikan ke keadaan semula (sama dengan nilai <em>property </em>Height komponen Panel1), demikian seterusnya. Jika teks yang bergerak terlalu lambat/cepat, kamu bisa mengubah nilai <em>property</em> Interval komponen Timer1.</p>
<p style="text-align: justify;">Komponen Timer1 ini akan aktif ketika <em>form about </em>ditampilkan dan tidak aktif ketika <em>form about </em>ditutup. Klik ganda sel di sebelah kanan <em>event </em>OnShow dan OnClose dari <em>form </em>fmAbout..</p>
<pre style="text-align: justify; padding-left: 30px;"><strong>procedure </strong>TfmAbout.FormShow(Sender: TObject);
<strong>begin</strong>
  Memo1.Top := Panel1.Height;
  Timer1.Enabled := True;
<strong>end</strong>;

<strong>procedure </strong>TfmAbout.FormClose(Sender: TObject; <strong>var </strong>Action: TCloseAction);
<strong>begin</strong>
  Timer1.Enabled := False;
<strong>end</strong>;</pre>
<p style="text-align: justify;">Posisi awal komponen Memo1 pada saat <em>form about </em>ditampilkan sama dengan nilai <em>property </em>Height komponen Panel1.</p>
<p style="text-align: justify;">Nuwun..</p>
<p style="text-align: justify;">Daftar  download untuk artikel ini:<br />
1. <a href="http://www.havetogether.com/downloads/TChart_Code.1.9.zip" title="Downloaded 56 hits"><span style="text-decoration: underline;">TChart Source Code ver.1.9 - 185.88 kB</span></a><br />
2. <a href="http://www.havetogether.com/downloads/About_Code.zip" title="Downloaded 77 hits"><span style="text-decoration: underline;">About Source Code - 12.66 kB</span></a><br />
3. <a href="http://www.havetogether.com/downloads/TChart_Application.1.9.zip" title="Downloaded 48 hits"><span style="text-decoration: underline;">TChart Application ver.1.9 - 838.75 kB</span></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.havetogether.com/membuat-about-yang-atraktif.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Grafik Sinyal Digital</title>
		<link>http://www.havetogether.com/grafik-sinyal-digital.html</link>
		<comments>http://www.havetogether.com/grafik-sinyal-digital.html#comments</comments>
		<pubDate>Sat, 03 Apr 2010 21:05:46 +0000</pubDate>
		<dc:creator>rumono</dc:creator>
				<category><![CDATA[Aplikasi Sederhana]]></category>
		<category><![CDATA[aplikasi delphi]]></category>
		<category><![CDATA[chart]]></category>
		<category><![CDATA[grafik]]></category>

		<guid isPermaLink="false">http://www.havetogether.com/?p=399</guid>
		<description><![CDATA[Seluruh sistem operasi dalam komputer sebenarnya menggunakan kombinasi bilangan biner yaitu 0 (nol) dan 1 (satu), proses tersebut kemudian dinamakan proses digital..]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">Seluruh sistem operasi dalam komputer sebenarnya menggunakan kombinasi bilangan biner yaitu 0 (nol) dan 1 (satu), proses tersebut kemudian dinamakan proses digital. Komponen TChart mendukung pembuatan grafik untuk sinyal digital model ini.</p>
<p style="text-align: justify;">Buka kembali project TChart dari artikel terdahulu atau jika tidak punya download <a href="http://www.havetogether.com/downloads/TChart_Code.1.8.zip" title="Downloaded 44 hits"><span style="text-decoration: underline;">TChart Source Code ver.1.8</span></a> dan segera ekstrak di komputer kamu.. sebelum membukanya, buat dulu driver  ODBC untuk database linked (baca artikel <a href="../menampilkan-database-dalam-grafik.html" target="_blank">Menampilkan  Database dalam Grafik</a>, di bagian awal artikel ini ada tulisan tentang cara membuat driver ODBC).  Sesudah itu download <a href="http://www.havetogether.com/downloads/Digital_Code.zip" title="Downloaded 32 hits"><span style="text-decoration: underline;">Digital Source Code</span></a>, ekstrak di komputer kamu dan tambahkan dengan meng-klik kanan mouse  pada project TChart.exe, pilih menu Add..  kemudian cari  file .pas yang ingin  ditambahkan seperti gambar di bawah  ini</p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2010/11/digital1_addproject.jpg"><img class="alignnone size-full wp-image-1510" title="Menambahkan unit uDigital ke project TChart" src="http://www.havetogether.com/wp-content/uploads/2010/11/digital1_addproject.jpg" alt="" width="590" height="293" /></a></p>
<p style="text-align: justify;">Aktifkan <em>form </em>fmMainTChart (unit uMainTChart), kemudian klik  ganda  komponen <em>popmenu</em> pmOtherDemo.. klik ganda menu Digital Chart.. dan tambahkan kode program seperti ini</p>
<pre style="text-align: justify; padding-left: 30px;"><strong>procedure </strong>TfmMainTChart.miDigitalChartClick(Sender: TObject);
<strong>begin</strong>
  fmDigital.ShowModal;
<strong>end</strong>;</pre>
<p style="text-align: justify;">Jalankan aplikasi dengan menekan tombol Run… jika muncul pesan <em>Form   ‘fmMainTChart‘ references form ‘fmDigital’ declarated in unit ‘uDigital’   which is not in your USES list. Do you wish to add it?</em> tekan tombol   Yes. Tekan kembali tombol Run.. Jika tidak ada lagi pesan yang muncul, aplikasi telah berjalan dengan baik.</p>
<p style="text-align: justify;">1. <strong>Inisialisasi aplikasi</strong></p>
<p style="text-align: justify;">Umumnya grafik untuk sinyal digital ditampilkan dalam bentuk &#8216;tangga&#8217;, klik ganda komponen TChart, aktifkan tab Series, kemudian pilih series (misalnya Channel 1) dan aktifkan tab Format.. Perhatikan gambar di bawah, <em>checkbox</em> Stairs diberi tanda &#8216;centang&#8217; untuk memberi efek &#8216;tangga&#8217; pada series grafik yang dipilih. <em>Property </em>Stairs untuk keempat series diberi tanda &#8216;centang&#8217;..</p>
<p><a href="http://www.havetogether.com/wp-content/uploads/2010/11/digital2_stairs.jpg"><img class="size-full wp-image-1511 alignnone" title="checkbox Stairs" src="http://www.havetogether.com/wp-content/uploads/2010/11/digital2_stairs.jpg" alt="" width="431" height="352" /></a></p>
<p style="text-align: justify;">Pada bagian <strong>public </strong>unit uDigital, dideklarasikan variabel <strong>bRunTimer </strong>dengan tipe data Boolean, variabel ini menentukan jalan tidaknya proses simulasi data grafik. Inisialisasi beberapa <em>property </em>komponen TChart dan variabel <strong>bRunTimer</strong>, ditentukan dalam <em>event </em>OnCreate dari form fmDigital. Aktifkan form fmDigital kemudian klik ganda sel di sebelah kanan <em>event </em>OnCreate..</p>
<pre style="text-align: justify; padding-left: 30px;"><strong>procedure </strong>TfmDigital.FormCreate(Sender: TObject);
<strong>begin</strong>
  bRunTimer:= False;
  Chart1.ApplyZOrder:= chOrder.Checked;
  Chart1.Legend.Inverted:= True;
<strong>end</strong>;</pre>
<p style="text-align: justify;"><em>Property </em>ApplyZOrder digunakan untuk mengontrol ketika beberapa series pada komponen TChart yang sama harus ditampilkan terpisah dalam sumbu Z yang berbeda, sehingga keempat series tidak terlihat &#8216;menumpuk&#8217; tetapi ada jarak untuk masing-masing series. <em>Property</em> ini berlaku jika grafik ditampilkan 3D dan mempunyai lebih dari satu series. Pemberian nilai True pada <em>property </em>Inverted dari subtab Legend untuk membalikkan urutan <em>legend </em>grafik, dimulai dari series berindeks terbesar ke yang terkecil.</p>
<p style="text-align: justify;">2. <strong>Tampilan grafik </strong></p>
<p style="text-align: justify;"><em>Legend </em>grafik ditampilkan sesuai dengan prosedur Chart1GetLegendText, klik ganda sel di sebelah kanan <em>event</em> OnGetLegendText dari komponen TChart..</p>
<pre style="text-align: justify; padding-left: 30px;"><strong>procedure </strong>TfmDigital.Chart1GetLegendText(Sender: TCustomAxisPanel;
 LegendStyle: TLegendStyle; Index: Integer; <strong>var </strong>LegendText: <strong>String</strong>);
<strong>begin</strong>
  <strong>if </strong>LegendStyle = lsLastValues <strong>then</strong>
    LegendText:= LegendText+' --&gt; '+Chart1.Series[Index].Title;
<strong>end</strong>;</pre>
<p style="text-align: justify;">Teks <em>legend </em>grafik akan diganti jika <em>property </em>LegendStyle komponen TChart bernilai lsLastValues (atau <em>checkbox </em>chLastValues diberi tanda &#8216;centang&#8217;). Klik ganda <em>checkbox </em>chLastValues..</p>
<pre style="text-align: justify; padding-left: 30px;"><strong>procedure </strong>TfmDigital.chLastValuesClick(Sender: TObject);
<strong>begin</strong>
  <strong>if </strong>chLastValues.Checked <strong>then</strong>
    Chart1.Legend.LegendStyle:= lsLastValues
  <strong>else</strong>
    Chart1.Legend.LegendStyle:= lsAuto;
<strong>end</strong>;</pre>
<p style="text-align: justify;"><em>Property </em>LegendStyle untuk menentukan materi mana yang akan ditampilkan dalam <em>legend </em>grafik. Jika diberi nilai <strong>Automatic </strong>(atau lsAuto) maka secara otomatis &#8216;judul&#8217; series akan menjadi <em>legend </em>grafik. Dan jika diberi nilai <strong>Last Values </strong>(atau lsLastValues) maka <em>legend </em>grafik sesuai dengan prosedur Chart1GetLegendText di atas.</p>
<p style="text-align: justify;">Dua prosedur untuk kedua komponen <em>checkbox </em>yang lain, <em>checkbox </em>chView untuk menampilkan grafik dalam wujud 3 Dimensi sedang <em>checkbox </em>chOrder untuk mengontrol ada tidaknya sumbu Z grafik. Klik ganda pada masing-masing komponen tersebut..</p>
<pre style="text-align: justify; padding-left: 30px;"><strong>procedure </strong>TfmDigital.chViewClick(Sender: TObject);
<strong>begin</strong>
  Chart1.View3D:= chView.Checked;
<strong>end</strong>;

<strong>procedure </strong>TfmDigital.chOrderClick(Sender: TObject);
<strong>begin</strong>
  Chart1.ApplyZOrder:= chOrder.Checked;
  Chart1.Repaint;
<strong>end</strong>;
</pre>
<p style="text-align: justify;">3. <strong>Simulasi data</strong></p>
<p style="text-align: justify;">Untuk simulasi aplikasi, data sinyal digital berupa data random dengan range 2 data (0 dan 1) di-<em>plot </em>pada keempat series dengan menggunakan komponen <em>timer </em>Timer1. Klik ganda komponen tersebut..</p>
<pre style="text-align: justify; padding-left: 30px;"><strong>procedure </strong>TfmDigital.Timer1Timer(Sender: TObject);
<strong>var</strong>
  iGainData: Longint;
<strong>begin</strong>
  <strong>for </strong>iGainData:= 0 <strong>to </strong>Chart1.SeriesCount-1 <strong>do</strong>
  <strong>with </strong>Chart1.Series[iGainData] <strong>do</strong>
    Add(2*iGainData+Random(2), '', clTeeColor);

  <strong>with </strong>Chart1.BottomAxis <strong>do </strong>
  <strong>begin</strong>
    Automatic := False;
    Maximum := Series1.XValues.Last;
    Minimum := Maximum - 100;
  <strong>end</strong>;
<strong>end</strong>;</pre>
<p style="text-align: justify;">Variabel <strong>iGainData </strong>untuk menaikkan series pada posisi tertentu sehingga keempat series tersebut tidak saling tumpang tindih. <em>Plot </em>data pada masing-masing series menggunakan metode <strong>Add </strong>dengan syntax :</p>
<pre style="text-align: justify; padding-left: 30px;"><strong>function </strong>Add(<strong>Const </strong>AValue:Double; <strong>Const </strong>ALabel:<strong>String</strong>;
             AColor:TColor):Longint; virtual;</pre>
<p style="text-align: justify;">Metode <strong>Add </strong>digunakan untuk menambahkan data pada series jika nilai sumbu horisontal grafik (x) secara otomatis ditentukan ketika nilai sumbu vertikal (y) akan di-<em>plot</em>. Varibel <strong>ALabel </strong>dan <strong>AColor </strong>merupakan parameter pilihan seperti pada metode <strong>AddXY</strong>.</p>
<p style="text-align: justify;">Nilai Y grafik untuk series kedua bergeser secara vertikal sebanyak 2 (dua) kalinya. Sedang yang ketiga bergeser 4 (empat) kalinya dan yang keempat bergeser sebanyak 6 (enam) kalinya.</p>
<p style="text-align: justify;">Kode program selanjutnya untuk menggeser grafik ke kiri setiap ada data yang di-<em>plot </em>dalam series. Nilai skala maksimum sumbu bawah grafik mengambil nilai terakhir yang telah di-<em>plot </em>dalam series. Dan range sumbu horisontal grafik yang ingin ditampilkan adalah 100 data. Kode untuk menentukan sumbu horisontal ini dapat ditulis dalam <em>event</em> OnAfterAdd pada keempat series.</p>
<p style="text-align: justify;">Untuk mengendalikan bekerja/tidaknya <em>timer </em>simulasi data, digunakan komponen <em>button </em>btRun. Klik ganda komponen ini..</p>
<pre style="text-align: justify; padding-left: 30px;"><strong>procedure </strong>TfmDigital.btRunClick(Sender: TObject);
<strong>begin</strong>
  bRunTimer:= <strong>not </strong>bRunTimer;
  Timer1.Enabled:= bRunTimer;
  <strong>if </strong>bRunTimer <strong>then</strong>
    btRun.Caption:= 'Stop'
  <strong>else</strong>
    btRun.Caption:= '&amp;Run';
<strong>end</strong>;</pre>
<p style="text-align: justify;">Proses akan bekerja ketika variabel <strong>bRunTimer </strong>bernilai True, jika sebaliknya <em>timer </em>akan terhenti.</p>
<p style="text-align: justify;">Nuwun..</p>
<p style="text-align: justify;">Daftar  download untuk artikel ini:<br />
1. <a href="http://www.havetogether.com/downloads/TChart_Code.1.8.zip" title="Downloaded 44 hits"><span style="text-decoration: underline;">TChart Source Code ver.1.8 - 183.54 kB</span></a><br />
2. <a href="http://www.havetogether.com/downloads/Digital_Code.zip" title="Downloaded 32 hits"><span style="text-decoration: underline;">Digital Source Code - 2.3 kB</span></a><br />
3. <a href="http://www.havetogether.com/downloads/TChart_Application.1.8.zip" title="Downloaded 28 hits"><span style="text-decoration: underline;">TChart Application ver.1.8 - 825.36 kB</span></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.havetogether.com/grafik-sinyal-digital.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Mengambil Data Database Melalui Ms Excel</title>
		<link>http://www.havetogether.com/mengambil-data-database-melalui-ms-excel.html</link>
		<comments>http://www.havetogether.com/mengambil-data-database-melalui-ms-excel.html#comments</comments>
		<pubDate>Tue, 23 Mar 2010 21:58:08 +0000</pubDate>
		<dc:creator>rumono</dc:creator>
				<category><![CDATA[Database]]></category>
		<category><![CDATA[database]]></category>
		<category><![CDATA[excel]]></category>
		<category><![CDATA[odbc driver]]></category>

		<guid isPermaLink="false">http://www.havetogether.com/?p=394</guid>
		<description><![CDATA[Umumnya data dari suatu database disajikan dalam bentuk laporan, agar enak dibaca. Cara mudah dan cepat menyajikan data dari database dapat dilakukan dengan Microsoft Excel..]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">Umumnya data dari suatu database disajikan dalam bentuk laporan, agar enak dibaca. Laporan-laporan ini biasanya dibuat oleh programmer dengan <em>report buildin</em>g misalnya Crystal Report, Fast Report, Quick Report dan sebagainya. Masalahnya tidak setiap orang bisa membuatnya, waktu pembuatannya juga kadang-kadang lama dan tidak fleksibel..</p>
<p style="text-align: justify;">Sebenarnya ada cara yang lebih mudah dan cepat, dan setiap orang yang tahu komputer dan <em>ngerti</em> data apa yang mau disajikan pasti bisa.. yaitu dengan <em>software </em>Microsoft Excel. Sebagai contoh download <a href="http://www.havetogether.com/downloads/linked.zip" title="Downloaded 665 hits"><span style="text-decoration: underline;">Database Linked</span></a>, ekstrak di komputer kamu (pada artikel ini, file sampel database ditempatkan dalam &#8220;F:\Private\project for blog\test&#8221;). Sebagai penghubung antara database dan <em>software </em>Excel, buat dulu driver ODBC dengan cara seperti dua gambar di bawah ini..</p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2010/11/linked1_odbc1.jpg"><img class="alignnone size-full wp-image-1319" title="Membuat driver ODBC, langkah 1" src="http://www.havetogether.com/wp-content/uploads/2010/11/linked1_odbc1.jpg" alt="" width="415" height="354" /></a></p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2010/11/linked2_odbc2.jpg"><img class="alignnone size-full wp-image-1320" title="Membuat driver ODBC, langkah 2" src="http://www.havetogether.com/wp-content/uploads/2010/11/linked2_odbc2.jpg" alt="" width="429" height="330" /></a></p>
<p style="text-align: justify;">Buka <em>software </em>Excel, klik menu Data -&gt; Import External Data -&gt; New Database Query&#8230; ikuti langkah-langkahnya seperti gambar di bawah ini..</p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2010/11/exquery1_datasource.jpg"><img class="alignnone size-full wp-image-1452" title="Import data dari data source" src="http://www.havetogether.com/wp-content/uploads/2010/11/exquery1_datasource.jpg" alt="" width="551" height="218" /></a></p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2010/11/exquery2_inputtable.jpg"><img class="alignnone size-full wp-image-1453" title="Query Wizard" src="http://www.havetogether.com/wp-content/uploads/2010/11/exquery2_inputtable.jpg" alt="" width="590" height="263" /></a></p>
<p style="text-align: justify;">Setelah tombol Finish ditekan, sebuah jendela Microsoft Query akan muncul, berikut ini fungsi dari beberapa tombol <em>toolbar </em>(di bawah menu).</p>
<p style="text-align: justify;">1. <strong>Show/Hide Tables</strong>, untuk menampilkan/menyembunyikan tabel yang telah dipilih dalam <em>query</em>.</p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2010/11/exquery3_showtable.jpg"><img class="alignnone size-full wp-image-1454" title="Menu untuk menambahkan tabel database" src="http://www.havetogether.com/wp-content/uploads/2010/11/exquery3_showtable.jpg" alt="" width="139" height="114" /></a></p>
<p style="text-align: justify;">2. <strong>Show/Hide Criteria</strong>, untuk menampilkan/menyembunyikan kriteria dari filter data dalam <em>query</em>. Record data yang ditampilkan sesuai dengan kriteria yang ditentukan dalam kolom. Gambar di bawah ini menjelaskan cara menampilkan data CUSTOMER dimana kolom Country-nya hanya berisi &#8216;US&#8217;. Untuk menghapus kembali kriteria filter, blok kriteria yang dimaksud kemudian  tekan tombol <em>keyboard </em><strong>Delete</strong>.</p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2010/11/exquery4_criteria.jpg"><img class="alignnone size-full wp-image-1455" title="Menu untuk menentukan kriteria qurey" src="http://www.havetogether.com/wp-content/uploads/2010/11/exquery4_criteria.jpg" alt="" width="562" height="318" /></a></p>
<p style="text-align: justify;">Gambar di atas hanya menampilkan 3 buah kolom: Company, Addr1, Country. Untuk mengaturnya menjadi seperti itu, blok kolom yang dimaksud (dengan menekan judul kolom data) kemudian <em>drag </em>ke posisi yang kamu mau. Kalau tidak ingin menampilkan suatu kolom, blok kolom tersebut kemudian tekan tombol <em>keyboard </em><strong>Delete</strong>, jangan khawatir! datanya tidak terhapus, hanya agar tidak ditampilkan saja. Untuk menampilkan kolom yang lain, <em>drag </em>kolom yang dimaksud pada tabel kemudian tempatkan pada posisi yang kamu inginkan, lihat gambar di bawah ini..</p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2010/11/exquery5_dragcolumn.jpg"><img class="alignnone size-full wp-image-1457" title="Cara menambahkan kolom query" src="http://www.havetogether.com/wp-content/uploads/2010/11/exquery5_dragcolumn.jpg" alt="" width="379" height="250" /></a></p>
<p style="text-align: justify;">3. <strong>Add Table(s)</strong>, untuk menambahkan tabel lain dalam <em>query</em>. Klik tombol ini, kemudian pilih tabel ORDERS..</p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2010/11/exquery6_addtable.jpg"><img class="alignnone size-full wp-image-1458" title="Cara menambahkan tabel query" src="http://www.havetogether.com/wp-content/uploads/2010/11/exquery6_addtable.jpg" alt="" width="361" height="260" /></a></p>
<p style="text-align: justify;">Secara otomatis sebuah tabel ditambahkan dalam daftar tabel, juga sebuah garis link kolom dari dua tabel yang bersesuaian (keduanya merupakan <em>key </em>dari masing-masing tabel).. dalam database contoh, hanya ada sebuah kolom yaitu CustNo. Untuk lebih jelas kolom mana yang dihubungkan pada kedua tabel, klik ganda pada garis link tersebut..</p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2010/11/exquery7_linkline.jpg"><img class="alignnone size-full wp-image-1459" title="Join antar tabel query" src="http://www.havetogether.com/wp-content/uploads/2010/11/exquery7_linkline.jpg" alt="" width="590" height="277" /></a></p>
<p style="text-align: justify;">Kolom CustNo pada tabel CUSTOMER dihubungkan dengan kolom CustNo dari tabel ORDERS, dan tipe hubungan yang dipilih no.1 artinya hanya akan menampilkan data dengan isi kolom CustNo yang bersesuaian pada kedua tabel tersebut. Jika dipilih no.2 maka semua data pada tabel ORDERS akan ditampilkan, sedang data tabel CUSTOMER yang ditampilkan hanya jika data kolom CustNo tabel CUSTOMER bersesuaian dengan data kolom CustNo tabel ORDERS. Berlaku sebaliknya ketika dipilih no.3.</p>
<p style="text-align: justify;">4. <strong>Criteria Equals</strong> <img class="alignnone size-full wp-image-1461" title="exquery8_criteriaequals" src="http://www.havetogether.com/wp-content/uploads/2010/11/exquery8_criteriaequals.jpg" alt="" width="24" height="22" />, untuk membuat filter berdasarkan record data yang dipilih pada suatu kolom. Letakkan kursor mouse pada salah satu record data kemudian klik tombol ini, secara otomatis pada Criteria Value: terisi judul kolom, sedang Value: terisi record yang tadi dipilih. Data yang ditampilkannya sesuai dengan kriteria tersebut.</p>
<p style="text-align: justify;">5. <strong>Cycle Through Totals</strong> <img class="alignnone size-full wp-image-1462" title="exquery9_total" src="http://www.havetogether.com/wp-content/uploads/2010/11/exquery9_total.jpg" alt="" width="24" height="22" />, untuk membuat kolom nilai statistik seperti average, sum, max, min, count. Cara memakainya, letakkan kursor pada salah satu record data yang akan menjadi nilai statistik kemudian tekan tombol ini. Secara otomatis kolom tersebut menjadi nilai statistik, biasanya nilai statistik yang pertama kali muncul adalah sum. Jika ingin mendapatkan nilai statistik yang lain tekan lagi tombol ini sampai ditemukan nilai statistik yang sesuai. Urutannya adalah : sum, avg, count, min, max, dan terakhir kembali lagi menjadi nilai sebenarnya dari kolom tersebut.</p>
<p style="text-align: justify;">6. <strong>Short Ascending</strong> <img class="alignnone size-full wp-image-1463" title="exquery10_sortasc" src="http://www.havetogether.com/wp-content/uploads/2010/11/exquery10_sortasc.jpg" alt="" width="24" height="22" />, untuk mengurutkan record data dari yang record pertama sampai yang terakhir. Cara memakainya, letakkan kursor pada salah satu record yang akan diurutkan kemudian tekan tombol ini. Jika ingin diurutkan terbalik, dari record terakhir ke record pertama tekan tombol <strong>Short Descending</strong> <img class="alignnone size-full wp-image-1464" title="exquery11_sortdesc" src="http://www.havetogether.com/wp-content/uploads/2010/11/exquery11_sortdesc.jpg" alt="" width="24" height="22" />.</p>
<p style="text-align: justify;">7. <strong>Query Now</strong> <img class="alignnone size-full wp-image-1465" title="exquery12_querynow" src="http://www.havetogether.com/wp-content/uploads/2010/11/exquery12_querynow.jpg" alt="" width="24" height="22" />, untuk menjalankan query sesuai dengan kriteria yang telah ditentukan. Tetapi jika tombol <strong>Auto Query</strong> <img class="alignnone size-full wp-image-1466" title="exquery13_autoquery" src="http://www.havetogether.com/wp-content/uploads/2010/11/exquery13_autoquery.jpg" alt="" width="24" height="22" /> dalam keadaan aktif (melesak ke dalam) maka query secara otomatis akan selalu dijalankan ketika ada perubahan kriteria. Pastikan tombol Auto Query ini selalu dalam keadaan aktif.</p>
<p style="text-align: justify;">Bagi kamu yang telah terbiasa dengan bahasa pemrograman SQL dapat menekan tombol <strong>SQL </strong>untuk melihat atau bahkan langsung mengedit kode-nya.</p>
<p style="text-align: justify;">Jika sudah selesai menentukan tabel, kriteria filter dan kolom-kolom yang akan ditampilkan, klik menu File -&gt; Return Data to Microsoft Excel, sehingga muncul kotak dialog Import Data seperti gambar di bawah ini..</p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2010/11/exquery14_returnexcel.jpg"><img class="alignnone size-full wp-image-1467" title="Kembali ke Ms Excel" src="http://www.havetogether.com/wp-content/uploads/2010/11/exquery14_returnexcel.jpg" alt="" width="540" height="376" /></a></p>
<p style="text-align: justify;">Tekan tombol OK.. Sekarang pada file excel kamu sudah ditampilkan data dari database.. Jika data yang ditampilkan belum sesuai dengan kebutuhan, kamu masih bisa mengeditnya dengan mengklik kanan mouse pada salah satu sel di file excel kemudian pada menu yang muncul klik Edit Query..</p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2010/11/exquery15_editquery.jpg"><img class="alignnone size-full wp-image-1468" title="Menu Edit Query" src="http://www.havetogether.com/wp-content/uploads/2010/11/exquery15_editquery.jpg" alt="" width="590" height="390" /></a></p>
<p style="text-align: justify;">Pilih menu Refresh Data, kalau kamu cuma ingin mendapatkan data yang termutakhir tanpa melakukan perubahan <em>query</em>.</p>
<p style="text-align: justify;">Nuwun..</p>
<p style="text-align: justify;">Daftar  download untuk artikel ini:<br />
1. <a href="http://www.havetogether.com/downloads/linked.zip" title="Downloaded 665 hits"><span style="text-decoration: underline;">Database Linked - 19.19 kB</span></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.havetogether.com/mengambil-data-database-melalui-ms-excel.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Grafik Mini yang Resizeable dan Garis Divider</title>
		<link>http://www.havetogether.com/grafik-mini-yang-resizeable-dan-garis-divider.html</link>
		<comments>http://www.havetogether.com/grafik-mini-yang-resizeable-dan-garis-divider.html#comments</comments>
		<pubDate>Mon, 22 Mar 2010 21:48:36 +0000</pubDate>
		<dc:creator>rumono</dc:creator>
				<category><![CDATA[Aplikasi Sederhana]]></category>
		<category><![CDATA[aplikasi delphi]]></category>
		<category><![CDATA[chart]]></category>
		<category><![CDATA[grafik]]></category>

		<guid isPermaLink="false">http://www.havetogether.com/?p=375</guid>
		<description><![CDATA[Ukuran grafik dapat diubah sesuai dengan perubahan ukuran form induknya, dan garis divider merupakan garis pembatas antara titik baru dan titik lama yang di-plot dalam grafik..]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">Ukuran grafik dapat diubah sesuai dengan perubahan ukuran <em>form </em>induknya, dan garis <em>divider </em>merupakan garis pembatas antara titik baru dan titik lama yang di-<em>plot</em> dalam grafik.</p>
<p style="text-align: justify;">Masih dalam project TChart, buka kembali atau jika tidak punya download <a href="http://www.havetogether.com/downloads/TChart_Code.1.7.zip" title="Downloaded 29 hits"><span style="text-decoration: underline;">TChart Source Code ver.1.7</span></a> dan segera ekstrak di komputer kamu.. sebelumnya buat dulu driver  ODBC database linked (baca artikel <a href="../menampilkan-database-dalam-grafik.html" target="_blank">Menampilkan  Database dalam Grafik</a>, terutama tentang cara membuat driver ODBC).  Sesudah itu download <a href="http://www.havetogether.com/downloads/Mini_Code.zip" title="Downloaded 28 hits"><span style="text-decoration: underline;">Mini Chart Source Code</span></a>, ekstrak di komputer kamu dan tambahkan pada project  TChart.. Caranya klik kanan mouse  pada project TChart.exe, pilih menu Add..  kemudian cari  file .pas yang ingin  ditambahkan seperti gambar di bawah  ini</p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2010/11/mini1_addproject.jpg"><img class="alignnone size-full wp-image-1432" title="Menambahkan unit uMini ke project TChart" src="http://www.havetogether.com/wp-content/uploads/2010/11/mini1_addproject.jpg" alt="" width="590" height="261" /></a></p>
<p style="text-align: justify;">Aktifkan <em>form </em>fmMainTChart (unit uMainTChart), kemudian klik ganda  komponen <em>popmenu</em> pmOtherDemo.. klik ganda menu Mini Small Charts.. dan tambahkan kode program seperti ini</p>
<pre style="text-align: justify; padding-left: 30px;"><strong>procedure </strong>TfmMainTChart.miMiniSmallChartsClick(Sender: TObject);
<strong>begin</strong>
  fmMini.ShowModal;
<strong>end</strong>;
</pre>
<p style="text-align: justify;">Jalankan aplikasi dengan menekan tombol Run… jika muncul pesan <em>Form  ‘fmMainTChart‘ references form ‘fmMini’ declarated in unit ‘uMini’  which is not in your USES list. Do you wish to add it?</em> tekan tombol  Yes. Tekan kembali tombol Run..</p>
<p style="text-align: justify;">1. <strong>Inisialisasi aplikasi</strong></p>
<p style="text-align: justify;">Pada bagian <strong>Public</strong> unit dideklarasikan variabel <strong>iValueXChart2 </strong>dan <strong>iValueXChart4 </strong>bertipe Longint. Variabel pertama digunakan untuk menggambar garis <em>divider </em>vertikal pada komponen Chart2 dan variabel yang kedua pada Chart4. Dan Banyaknya data yang akan di-<em>plot </em>pada beberapa series berdasarkan nilai dari konstanta <strong>NumData</strong>, yaitu 30.</p>
<p style="text-align: justify;">Seperti umumnya aplikasi, beberapa nilai awal ditentukan pada saat  kontsruktor <em>Create </em>dipanggil. Klik ganda <em>event</em> OnCreate dari <em>form </em>fmMini..</p>
<pre style="text-align: justify; padding-left: 30px;"><strong>procedure </strong>TfmMini.FormCreate(Sender: TObject);
<strong>begin</strong>
  iValueXChart2:= -1;
  iValueXChart4:= NumData <strong>div </strong>2;

  BarSeries1.FillSampleValues(6);
  PieSeries1.FillSampleValues(8);
  LineSeries1.FillSampleValues(NumData);
  AreaSeries1.FillSampleValues(NumData);
  LineSeries2.FillSampleValues(NumData);
  LineSeries3.FillSampleValues(NumData);
<strong>end</strong>;</pre>
<p style="text-align: justify;">Posisi awal garis <em>divider </em>vertikal pada komponen Chart2 berada di luar kotak grafik. Sedang pada Chart4 berada tepat di tengah karena banyaknya data yang di-<em>plot </em>pada series AreaSeries1 dan LineSeries3 berdasarkan nilai konstanta <strong>NumData </strong>(30 data). Metode <strong>FillSampleValues </strong>akan mem-<em>plot </em>nilai random pada suatu series dengan rentang data sebanyak angka dalam tanda kurung.</p>
<p style="text-align: justify;">Ketika aplikasi ini diperbesar/diperkecil, grafik yang terpasang di dalamnya perlu disesuaikan dengan perubahan yang terjadi. Klik ganda <em>event </em>OnResize dari <em>form </em>fmMini..</p>
<pre style="text-align: justify; padding-left: 30px;"><strong>procedure </strong>TfmMini.FormResize(Sender: TObject);
<strong>begin</strong>
  Panel1.Width:= ClientWidth <strong>div </strong>2;
  Chart1.Height:= ClientHeight <strong>div </strong>2;
  Chart3.Height:= ClientHeight <strong>div </strong>2;
<strong>end</strong>;</pre>
<p style="text-align: justify;"><em>Property Align</em> komponen Panel1 bernilai alLeft, sehingga jika <em>form </em>di-<em>resize </em>maka <em>property Height</em> akan mengikuti perubahan ukuran <em>form</em>. Sedang <em>property Width</em>-nya ditentukan setengah dari perubahan nilai <em>property ClientWidth</em> form. Ukuran komponen Panel2 secara otomatis akan mengikuti perubahan ukuran <em>form </em>dan komponen Panel1 karena <em>property Align</em>-nya bernilai alClient.</p>
<p style="text-align: justify;">Begitu juga dengan ukuran komponen Chart2 akan mengikuti perubahan ukuran Panel1 dan komponen Chart1. Ukuran Chart4 juga akan mengikuti perubahan ukuran Panel2 dan komponen Chart3. Karena <em>property Align</em> kedua komponen TChart tersebut (Chart2 dan Chart4) bernilai alClient. Pada komponen Chart1 dan Chart3, nilai <em>property Align</em>-nya alTop, perubahan ukuran Panel1 dan Panel2 hanya akan mengubah lebar (<em>property Width</em>) kedua komponen TChart tersebut sementara tingginya (<em>property Height</em>) tetap. Untuk menyesuaikan ukurannya, <em>property Height </em>komponen Chart1 ditentukan setengah dari nilai <em>property ClientHeight</em> komponen Panel1 dan <em>property Height </em>komponen Chart3 juga ditentukan setengah dari nilai <em>property ClientHeight</em> komponen Panel2.</p>
<p style="text-align: justify;">2. <strong>Membuat garis <em>Divider</em></strong></p>
<p style="text-align: justify;">Setelah data di-<em>plot </em>pada series LineSeries2 dan LineSeries3, sebuah garis <em>divider </em>vertikal segera digambar pada komponen TChart dimana kedua series tersebut berada (Chart2 dan Chart4). Klik ganda sel di sebelah kanan <em>event</em> OnAfterDrawValue pada masing-masing series tersebut..</p>
<pre style="text-align: justify; padding-left: 30px;"><strong>procedure </strong>TfmMini.LineSeries2AfterDrawValues(Sender: TObject);
<strong>begin</strong>
  <strong>if </strong>iValueXChart2 &gt;= 0 <strong>then</strong>
  <strong>begin</strong>
    <strong>with </strong>Chart2, Canvas <strong>do</strong>
    <strong>begin</strong>
      Pen.Color:= clRed;
      DoVertLine(Series[0].CalcXPos(iValueXChart2),
                 ChartRect.Top+1,
                 ChartRect.Bottom-1);
    <strong>end</strong>;
  <strong>end</strong>;
<strong>end</strong>;

<strong>procedure </strong>TfmMini.LineSeries3AfterDrawValues(Sender: TObject);
<strong>begin</strong>
  <strong>if </strong>iValueXChart4 &gt;= 0 <strong>then</strong>
  <strong>begin</strong>
    <strong>with </strong>Chart4,Canvas <strong>do</strong>
    <strong>begin</strong>
      Pen.Color:= clBlue;
      DoVertLine(Series[0].CalcXPos(iValueXChart4),
                 ChartRect.Top+1,
                 ChartRect.Bottom-1);
    <strong>end</strong>;
  <strong>end</strong>;
<strong>end</strong>;</pre>
<p style="text-align: justify;">Garis <em>divider </em>vertikal berwarna merah digambar pada series LineSeries2 dan berwarna biru pada series LineSeries3 dengan menggunakan metode <strong>DoVertLine</strong>, dengan <em>syntax </em>:</p>
<pre style="text-align: justify; padding-left: 30px;"><strong>procedure </strong>DoVertLine (X,Y0,Y1:Integer); virtual; abstract;</pre>
<p style="text-align: justify;">Metode ini akan menggambar garis vertikal dari Y0 sampai Y1 pada posisi horisontal X. Pada kedua prosedur di atas Variabel <strong>Y0 </strong>merupakan posisi atas kotak grafik ditambah 1 pixel, variabel <strong>Y1 </strong>diisi dari nilai posisi bawah kotak grafik setelah dikurangi 1 pixel dan posisi horisontal X diperoleh dengan menggunakan metode <strong>CalXPos </strong>berdasarkan nilai x masing-masing series.</p>
<p style="text-align: justify;">3. <strong>Simulasi data grafik</strong></p>
<p style="text-align: justify;">Untuk simulasi data yang di-<em>plot </em>pada series digunakan komponen <em>timer </em>Timer1, klik ganda komponen <em>timer </em>tersebut..</p>
<pre style="text-align: justify; padding-left: 30px;"><strong>procedure </strong>TfmMini.Timer1Timer(Sender: TObject);

  <strong>Procedure </strong>RefreshChart(AOwner: TChart; <strong>var </strong>iValueXChart: Longint);
  <strong>var</strong>
    a: Longint;
    dLastValue: Double;
  <strong>begin</strong>
    Inc(iValueXChart);
    <strong>if </strong>iValueXChart &gt;= NumData <strong>then</strong>
      iValueXChart:= 0;

    <strong>for </strong>a:= 0 <strong>to </strong>AOwner.SeriesCount-1 <strong>do</strong>
    <strong>begin</strong>
      <strong>if </strong>iValueXChart = 0 <strong>then</strong>
      <strong>begin</strong>
        <strong>with </strong>AOwner <strong>do</strong>
        <strong>begin</strong>
          LeftAxis.Automatic:= True;
          LeftAxis.SetMinMax(MinYValue(LeftAxis), MaxYValue(LeftAxis));
        <strong>end</strong>;
        dLastValue:= AOwner.Series[a].YValues.Last;
      <strong>end</strong>
      <strong>else</strong>
        dLastValue:= AOwner.Series[a].YValue[iValueXChart-1];

      AOwner.Series[a].YValue[iValueXChart]:= dLastValue+Random(ChartSamplesMax)-
                                              (ChartSamplesMax <strong>div </strong>2);
    <strong>end</strong>;
  <strong>end</strong>;

<strong>var</strong>
  iDataBar: Longint;
<strong>begin</strong>
  RefreshChart(Chart2, iValueXChart2);
  RefreshChart(Chart4, iValueXChart4);

  <strong>with </strong>PieSeries1 <strong>do</strong>
    RotationAngle:= (RotationAngle+1) <strong>mod </strong>359;

  <strong>with </strong>BarSeries1 <strong>do</strong>
  <strong>begin</strong>
    iDataBar:= Random(Count);
    YValue[iDataBar]:= YValue[iDataBar]*(80.0+Random(40))/100.0;
  <strong>end</strong>;
<strong>end</strong>;</pre>
<p style="text-align: justify;">Prosedur lokal <strong>RefreshChart </strong>untuk mengubah nilai suatu series setiap detik berdasarkan posisi nilai x-nya (variabel <strong>iValueXChart</strong>). Setiap detik nilai variabel <strong>iValueXChart </strong>akan bertambah 1 (satu) dengan prosedur <strong>Inc</strong>. Nilai variabel tersebut di-<em>reset </em>(bernilai 0) jika telah sama dengan banyaknya data (konstanta NumData). Jika posisi x grafik kembali ke awal (bernilai 0) maka dengan mengunakan metode <strong>SetMinMax</strong>, nilai skala minimum dan maksimum sumbu kiri grafik diisi dengan nilai minimum dan maksimum sumbu kiri grafik tersebut. Dan nilai y yang terakhir, disimpan dalam variabel <strong>dLastValue</strong>. Jika posisi x grafik tidak 0 (nol) maka nilai variabel <strong>dLastValue </strong>sama dengan nilai y pada posisi x saat itu. Nilai variabel <strong>dLastValue </strong>tersebut ditambah dengan suatu nilai random menjadi nilai y grafik pada posisi x yang sekarang.</p>
<p style="text-align: justify;">Seluruh series yang terdapat pada komponen Chart2 dan Chart4 akan di-<em>plot </em>dengan mengunakan prosedur lokal <strong>RefreshChart</strong>, dimana nilai x untuk series pada Chart2 berasal dari nilai variabel <strong>iValueXChart2 </strong>sedang pada Chart4 dari nilai variabel <strong>iValueXChart4</strong>. Dengan kata lain variabel <strong>iValueXChart </strong>pada prosedur lokal <strong>RefreshChart </strong>diganti dengan <strong>iValueXChart2 </strong>atau <strong>iValueXChart4 </strong>tergantung nilai variabel <strong>AOwner</strong>-nya.</p>
<p style="text-align: justify;">Untuk series bertipe Pie yang terdapat dalam Chart1 akan terus berputar dengan sudut putar sama dengan nilai sisa pembagian sudut putar saat itu (setelah ditambah 1 derajat) dengan 359 derajat. Sedang nilai y yang di-<em>plot </em>pada series bertipe Bar berasal dari nilai y saat itu dikalikan dengan 80 % nilai random antar 0 sampai 39.</p>
<p style="text-align: justify;">4. <strong>Mengaktifkan/me-non aktif-kan proses simulasi data grafik</strong></p>
<p style="text-align: justify;">Proses simulasi data grafik dengan komponen <em>timer </em>akan aktif ketika aplikasi ini dipanggil, dikodekan melalui <em>event </em>OnShow <em>form </em>fmMini. Dan non aktif  ketika aplikasi ini ditutup, dikodekan dalam <em>event </em>OnClose pada <em>form </em>fmMini. Klik ganda kedua <em>event </em>ini..</p>
<pre style="text-align: justify; padding-left: 30px;"><strong>procedure </strong>TfmMini.FormShow(Sender: TObject);
<strong>begin</strong>
  Timer1.Enabled:= True;
<strong>end</strong>;

<strong>procedure </strong>TfmMini.FormClose(Sender: TObject; <strong>var </strong>Action: TCloseAction);
<strong>begin</strong>
  Timer1.Enabled:= False;
<strong>end</strong>;</pre>
<p style="text-align: justify;">Nuwun..</p>
<p style="text-align: justify;">Daftar  download untuk artikel ini:<br />
1. <a href="http://www.havetogether.com/downloads/TChart_Code.1.7.zip" title="Downloaded 29 hits"><span style="text-decoration: underline;">TChart Source Code ver.1.7 - 181.05 kB</span></a><br />
2. <a href="http://www.havetogether.com/downloads/Mini_Code.zip" title="Downloaded 28 hits"><span style="text-decoration: underline;">Mini Chart Source Code - 2.48 kB</span></a><br />
3. <a href="http://www.havetogether.com/downloads/TChart_Application.1.7.zip" title="Downloaded 21 hits"><span style="text-decoration: underline;">TChart Application ver.1.7 - 825.89 kB</span></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.havetogether.com/grafik-mini-yang-resizeable-dan-garis-divider.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Membagi Grafik dalam Beberapa Halaman</title>
		<link>http://www.havetogether.com/membagi-grafik-dalam-beberapa-halaman.html</link>
		<comments>http://www.havetogether.com/membagi-grafik-dalam-beberapa-halaman.html#comments</comments>
		<pubDate>Sun, 21 Mar 2010 15:08:22 +0000</pubDate>
		<dc:creator>rumono</dc:creator>
				<category><![CDATA[Aplikasi Sederhana]]></category>
		<category><![CDATA[aplikasi delphi]]></category>
		<category><![CDATA[chart]]></category>
		<category><![CDATA[grafik]]></category>

		<guid isPermaLink="false">http://www.havetogether.com/?p=368</guid>
		<description><![CDATA[Data yang telah di-plot dalam grafik dapat dibagi dalam beberapa halaman tergantung jumlah total data dan banyaknya data per halaman..]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">Data yang telah di-<em>plot </em>dalam grafik dapat dibagi dalam beberapa halaman tergantung jumlah total data dan banyaknya data per halaman. Halaman-halaman itu kemudian dapat ditelusuri dengan metode-metode <em>scroll </em>grafik.</p>
<p style="text-align: justify;">Buka lagi project TChart dalam artikel yang lalu, atau download  <a href="http://www.havetogether.com/downloads/TChart_Code.1.6.zip" title="Downloaded 35 hits"><span style="text-decoration: underline;">TChart Source Code ver.1.6</span></a> dan segera ekstrak di komputer kamu, sebelum membukanya buat dulu driver  ODBC database linked (baca artikel <a href="../menampilkan-database-dalam-grafik.html" target="_blank">Menampilkan Database dalam Grafik</a>, terutama tentang cara membuat driver ODBC). Sesudah itu download <a href="http://www.havetogether.com/downloads/Paging_Code.zip" title="Downloaded 38 hits"><span style="text-decoration: underline;">Paging Source Code</span></a>, ekstrak di komputer kamu.. Dan seperti artikel-artikel yang lalu  tambahkan pada project  TChart dengan cara klik kanan mouse  pada project TChart.exe. Pilih menu Add.. kemudian cari  file .pas yang ingin  ditambahkan seperti gambar di bawah ini</p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2010/11/paging1_addproject.jpg"><img class="alignnone size-full wp-image-1417" title="Menambahkan unit uPaging ke project TChart" src="http://www.havetogether.com/wp-content/uploads/2010/11/paging1_addproject.jpg" alt="" width="590" height="300" /></a></p>
<p style="text-align: justify;">Aktifkan form fmMainTChart (unit uMainTChart), kemudian klik ganda komponen pmOtherDemo.. klik ganda menu Paging Chart..</p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2010/11/paging2_popmenupaging.jpg"><img class="alignnone size-full wp-image-1418" title="Menu Paging Chart" src="http://www.havetogether.com/wp-content/uploads/2010/11/paging2_popmenupaging.jpg" alt="" width="590" height="282" /></a></p>
<p style="text-align: justify;">Ketikkan kode seperti di bawah ini..</p>
<pre style="padding-left: 30px;"><strong>procedure </strong>TfmMainTChart.miPagingChartClick(Sender: TObject);
<strong>begin </strong>
  fmPaging.ShowModal;
<strong>end</strong>;</pre>
<p style="text-align: justify;">Tekan tombol Run untuk menjalankan aplikasi ini… jika muncul pesan <em>Form ‘fmMainTChart‘ references form ‘fmPaging’ declarated in unit ‘uPaging’ which is not in your USES list. Do you wish to add it?</em> tekan tombol Yes. Tekan kembali tombol Run..</p>
<p style="text-align: justify;">1. <strong>Membuat halaman grafik</strong></p>
<p><strong> </strong></p>
<p style="text-align: justify;">Data yang di-plot dalam series grafik dilakukan pada saat <em>form </em>dibangun dengan kontruktor <em>Create</em>, aktifkan <em>form</em> fmPaging, klik ganda sel di sebelah kanan event <strong>OnCreate</strong>..</p>
<pre style="text-align: justify; padding-left: 30px;"><strong>procedure </strong>TfmPaging.FormCreate(Sender: TObject);
<strong>begin</strong>
  Series1.FillSampleValues(100);
  sePaging.Value:= 18;
  ctPagingPageChange(ctPaging);
<strong>end</strong>;</pre>
<p style="text-align: justify;">Data sebanyak 100 data di-<em>plot </em>dalam Series1 dengan metode <strong>FillSampleValues</strong>. Dan <em>property Value</em> komponen sePaging diinisialisasikan dengan nilai 18. Nilai <em>property </em>tersebut menunjukkan banyaknya data per halaman, sebagai pengganti <em>SpinEdit</em><strong> </strong>Points per Page pada sub tab Paging dari komponen TChart (atau <em>property MaxPointsPerPage</em>) yang nilainya bisa diubah ketika aplikasi dijalankan. Perhatikan gambar di bawah ini</p>
<p style="text-align: justify;"><a href="http://www.havetogether.com/wp-content/uploads/2010/11/paging3_subtabpaging.jpg"><img class="alignnone size-full wp-image-1419" title="sub tab Paging" src="http://www.havetogether.com/wp-content/uploads/2010/11/paging3_subtabpaging.jpg" alt="" width="431" height="351" /></a></p>
<p style="text-align: justify;">Prosedur <strong>ctPagingPageChange </strong>dipanggil untuk menginisialisasi beberapa komponen.. <em>Event </em><strong>OnPageChange </strong>ini terjadi ketika <em>property Page</em> komponen TChart telah diubah dan sebelum halaman grafik tersebut  berubah. <em>Property MaxPointsPerPage</em> (atau <em>SpinEdit</em> Points  per Page pada sub tab Paging) harus lebih besar dari 0 (nol) untuk  mengaktifkan mekanisme pemberian nomor halaman secara otomatis. Klik ganda sel di sebelah kanan <em>event </em>OnPageChange pada komponen TChart ctPaging..</p>
<pre style="text-align: justify; padding-left: 30px;"><strong>procedure </strong>TfmPaging.ctPagingPageChange(Sender: TObject);
<strong>begin</strong>
  ctPaging.UndoZoom;
  lCurrent.Caption:= 'Current/Total : '+IntToStr(ctPaging.Page)+
                     '/'+IntToStr(ctPaging.NumPages);
  btFirst.Enabled:= btPrevious.Enabled;
  btPrevious.Enabled:= ctPaging.Page &gt; 1;
  btNext.Enabled:= ctPaging.Page &lt; ctPaging.NumPages;
  btLast.Enabled:= btNext.Enabled;
<strong>end</strong>;</pre>
<p style="text-align: justify;">Untuk menghitung banyaknya halaman grafik dengan benar, komponen TChart harus tidak dalam keadaan diperbesar/diperkecil yaitu dengan memanggil metode <strong>UndoZoom</strong>. Informasi suatu halaman terhadap total halaman grafik ditampilkan melalui <em>property Caption</em> komponen lCurrent. <em>Property Page</em> komponen TChart menge-<em>set </em>halaman grafik saat ini sedang <em>property NumPages</em> menunjukkan total halaman grafik.</p>
<p style="text-align: justify;">Untuk grafik yang mempunyai halaman lebih dari satu, komponen <em>button </em>btFirst dapat diakses tergantung aktif/tidaknya <em>button </em>btPrevious. Komponen <em>button </em>btPrevious akan aktif jika halaman grafik yang sekarang ditampilkan bukan halaman pertama. Dan <em>button </em>btNext akan aktif jika halaman grafik yang sekarang ditampilkan bukan halaman terakhirnya, sedang aktif/tidaknya <em>button </em>btLast tergantung pada aktif/tidaknya <em>button</em> btNext. Jika grafik hanya terdiri atas satu halaman maka keempat komponen <em>button </em>tersebut tidak aktif.</p>
<p style="text-align: justify;">2. <strong>Mengubah setting halaman grafik</strong></p>
<p style="text-align: justify;">Perhatikan kembali gambar sub tab Paging di atas.. nilai <em>SpinEdit</em> Points  per Page dan <em>checkbox </em>Scale Last Page bisa diubah melalui komponen sePaging dan chScale. Klik ganda pada komponen sePaging..</p>
<pre style="text-align: justify; padding-left: 30px;"><strong>procedure </strong>TfmPaging.sePagingClick(Sender: TObject);
<strong>begin</strong>
  ctPaging.MaxPointsPerPage:= sePaging.Value;
  ctPagingPageChange(ctPaging);
<strong>end</strong>;</pre>
<p style="text-align: justify;">Komponen sePaging ini merupakan pengganti <em>SpinEdit </em>Points per Page, perubahan nilainya akan mempengaruhi banyaknya data per halaman (nilai <em>property MaxPointsPerPage</em> komponen TChart sama dengan nilai <em>property Value </em>komponen sePaging). Banyaknya halaman grafik mungkin akan berubah setiap kali ada perubahan nilai komponen sePaging sehingga prosedur ctPagingPageChange perlu dipanggil kembali untuk menyesuaikan keadaan beberapa komponen.</p>
<p style="text-align: justify;">Jika pada saat mengedit komponen TChart, <em>checkbox </em>Scale Last Page pada sub tab Paging tidak di&#8217;centang&#8217; maka halaman terakhir akan ditampilkan dengan range sumbu horisontal grafik sama dengan halaman yang lain. Jika sebaliknya maka skala halaman terakhir grafik akan diatur berdasarkan pada banyaknya titik yang tampak pada halaman terakhir tersebut. Untuk mengontrol <em>property </em>ini, digunakan chScale, klik ganda komponen ini..</p>
<pre style="text-align: justify; padding-left: 30px;"><strong>procedure </strong>TfmPaging.chScaleClick(Sender: TObject);
<strong>begin</strong>
  ctPaging.ScaleLastPage:= chScale.Checked;
<strong>end</strong>;</pre>
<p style="text-align: justify;">3. <strong>Mengontrol halaman grafik</strong></p>
<p style="text-align: justify;">Keempat komponen <em>button </em>digunakan untuk menampilkan suatu halaman ke halaman lain, klik ganda pada salah satu komponen <em>button </em>tersebut. Keempatnya menggunakan sebuah prosedur  ButtonClick..</p>
<pre style="text-align: justify; padding-left: 30px;"><strong>procedure </strong>TfmPaging.ButtonClick(Sender: TObject);
<strong>begin</strong>
  <strong>if </strong>Sender = btFirst <strong>then</strong>
    ctPaging.Page:= 1
  <strong>else</strong>
  <strong>if </strong>Sender = btPrevious <strong>then</strong>
    ctPaging.PreviousPage
  <strong>else</strong>
  <strong>if </strong>Sender = btNext then
    ctPaging.NextPage
  <strong>else</strong>
    ctPaging.Page:= ctPaging.NumPages;
<strong>end</strong>;</pre>
<p style="text-align: justify;">Jika user menekan <em>button </em>btFirst maka halaman pertama grafik akan ditampikan. Jika btPrevious ditekan maka metode <strong>PreviousPage </strong>akan membawa ke halaman sebelumnya sedang untuk menampilkan halaman selanjutnya panggil metode <strong>NextPage </strong>yaitu ketika pengguna menekan <em>button </em>btNext. Dan halaman yang terakhir akan ditampilkan ketika user menekan <em>button </em>btLast.</p>
<p style="text-align: justify;">Nuwun..</p>
<p style="text-align: justify;">Daftar  download untuk artikel ini:<br />
1. <a href="http://www.havetogether.com/downloads/TChart_Code.1.6.zip" title="Downloaded 35 hits"><span style="text-decoration: underline;">TChart Source Code ver.1.6 - 178.32 kB</span></a><br />
2. <a href="http://www.havetogether.com/downloads/Paging_Code.zip" title="Downloaded 38 hits"><span style="text-decoration: underline;">Paging Source Code - 2.71 kB</span></a><br />
3. <a href="http://www.havetogether.com/downloads/TChart_Application.1.6.zip" title="Downloaded 29 hits"><span style="text-decoration: underline;">TChart Application ver.1.6 - 824.68 kB</span></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.havetogether.com/membagi-grafik-dalam-beberapa-halaman.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

