<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-22491498</id><updated>2012-01-25T13:48:24.956+07:00</updated><category term='N01. Personal Expression'/><category term='N06. ASP.NET C#'/><category term='N11. PHP Reference'/><category term='N07. Visual Basic Tips'/><category term='N02. IT Management'/><category term='N04. SQL Maneuver'/><category term='N05. Database Issues'/><category term='N03. my articles on Elektro Indonesia'/><category term='N00. Articles in English'/><category term='N12. C++ dialect'/><category term='N15. Oracle Issues'/><category term='N14. Qt'/><category term='N00. A Letter To CI[E]O'/><category term='N06. Reporting Issues'/><category term='N10. Referensi Bahasa C# (OOP)'/><category term='N13 - linux matters'/><title type='text'>IT Knowledge, Sofware Engineering, and Management</title><subtitle type='html'>...</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://widyanahar.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://widyanahar.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>N.A. Widyanahar</name><uri>http://www.blogger.com/profile/15078397541522591412</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='29' src='http://1.bp.blogspot.com/_z-gOROj07o0/SvD6e8Mf7DI/AAAAAAAAAHg/adRKozl4o-w/S220/profil1.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>32</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-22491498.post-6660362859985278883</id><published>2011-11-23T10:22:00.000+07:00</published><updated>2011-11-23T10:22:45.491+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='N02. IT Management'/><category scheme='http://www.blogger.com/atom/ns#' term='N00. A Letter To CI[E]O'/><title type='text'>Menempatkan Seorang system analyst.</title><content type='html'>Mengapa Saya Harus Mencari seorang System analyst?&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Membangun sebuah tim, bukanlah pekerjaan mudah. dan mempertahankannya bisa jadi lebih sulit. Seperti halnya programer, database engineer, atau qa staff yang tidak ada di tempatnya, seorang &lt;strong&gt;system analyst&lt;/strong&gt; menjadi &lt;em&gt;top wanted&lt;/em&gt;, ketika kita memulai project lifecyle kita, setidaknya sampai seorang &lt;strong&gt;business analyst&lt;/strong&gt; telah siap dengan business requirement. Tidak adanya &lt;em&gt;role&lt;/em&gt; ini menyisakan lubang dalam puzzle mesin pengembangan yang harus kita persiapkan dari awal.&lt;br /&gt;&lt;br /&gt;&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Proses rekrutmen yang semula tampak mudah dan sekedar menjadi shortlisted job, tiba 2 mejadi sedikit rumit, karena di luar sana seseorang dengan pengalaman C# atau Java dan sekaligus menguasai UML, bukanlah kombinasi yang sederhana seperti dugaan semula. Belum lagi hal-hal sekunder di luar kualifikasi, yang akan membuat batasan pencarian semakin terlihat bak utopia, seperti:&lt;br /&gt;&lt;br /&gt;1. skema take home pay yang tidak kompetitif di pasar tenaga kerja.&lt;br /&gt;2. yang ada ialah sebagian besar tidak masuk kualifikasi, dan... di antara nama-nama itu beberapa kandidat yang menarik tampaknya terlalu senior. &lt;br /&gt;3. Lambatnya respon dan proses administrasi yang tidak mendukung irama cepat sebuah proyek. &lt;br /&gt;4. &lt;em&gt;The Clock is Thicking!&lt;/em&gt; Ketika waktu terus berjalan, dan deliverable harus bertambah, saya menyadari bahwa posisi pekerjaan itu harusnya merupakan investasi sumber daya, yang jauh2 hari sudah dipersiapkan sebelum proyek dieksekusi. Tentu dalam hal ini satu atau dua siklus masa pengembangan sebagai seorang programer akan sangat membantunya dalam membentuk profil profesionalnya. Wah, semakin lunak dan rendah ekspektasi saya.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-MhckRdKEdaQ/TsxmG6GEzkI/AAAAAAAAAJU/XrNxr30UrtU/s1600/ineedamap.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" hda="true" src="http://3.bp.blogspot.com/-MhckRdKEdaQ/TsxmG6GEzkI/AAAAAAAAAJU/XrNxr30UrtU/s1600/ineedamap.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Saya memerlukan seorang &lt;strong&gt;system analyst&lt;/strong&gt; karena tim memerlukan seseorang dengan fokus dan waktu untuk:&lt;br /&gt;&lt;br /&gt;1. berbicara dan menerjemahkan persyaratan bisnis dengan seorang &lt;strong&gt;business analyst&lt;/strong&gt;.&lt;br /&gt;2. Menganalisa persyaratan bisnis dan mendapatkan desain yang paling tepat dari sudut pandang aplikasi.&lt;br /&gt;3. harus ada seseorang yang menjadi referensi di tengah masa pengembangan.&lt;br /&gt;4. saya ingin membuat tabel dan layout ui aplikasi dari use case yang dia buat. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Dan pada saat yang sama saya tidak menginginkan tambahan pekerjaan pada seorang &lt;strong&gt;business analyst &lt;/strong&gt;di sisi kiri, dan begitu juga seorang &lt;strong&gt;analyst programer&lt;/strong&gt; di sisi kanan. Pada hampir semua proyek besar, keberadaan system analyst mutlak diperlukan, untuk mendefinisikan bagaimana proses bisnis berjalan dalam sebuah sistem aplikasi.&lt;br /&gt;&lt;span style="font-size: x-small;"&gt;&lt;em&gt;NAW, 2011&lt;/em&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22491498-6660362859985278883?l=widyanahar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://widyanahar.blogspot.com/feeds/6660362859985278883/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22491498&amp;postID=6660362859985278883' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/6660362859985278883'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/6660362859985278883'/><link rel='alternate' type='text/html' href='http://widyanahar.blogspot.com/2011/11/menempatkan-seorang-system-analyst.html' title='Menempatkan Seorang system analyst.'/><author><name>N.A. Widyanahar</name><uri>http://www.blogger.com/profile/15078397541522591412</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='29' src='http://1.bp.blogspot.com/_z-gOROj07o0/SvD6e8Mf7DI/AAAAAAAAAHg/adRKozl4o-w/S220/profil1.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-MhckRdKEdaQ/TsxmG6GEzkI/AAAAAAAAAJU/XrNxr30UrtU/s72-c/ineedamap.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22491498.post-6744826550612856828</id><published>2011-09-30T01:08:00.002+07:00</published><updated>2011-09-30T01:12:12.979+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='N00. A Letter To CI[E]O'/><title type='text'>My CEO, pls read Tom deMarco</title><content type='html'>What's????&lt;br /&gt;Anda mengeluhkan kenapa tim development selalu deliver pekerjaan terlambat? Mengapa programer datang dan pergi?????&lt;br /&gt;Ok, saya punya banyak hal yang bersumber dari kesalahan &lt;strike&gt;Bapak sendiri&lt;/strike&gt; banyak orang.&lt;br /&gt;&lt;br /&gt;Saya tidak akan meminta Anda untuk membaca Grady Booch. Well of course!&lt;br /&gt;Tetapi ada baiknya Anda melihat kenyataan di lapangan dengan duduk di suite room Anda ditemani bacaan&amp;nbsp; Tom deMarco: peopleware....!&lt;br /&gt;&lt;br /&gt;Proyek IT sama sekali berbeda dengan proyek-proyek lain!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22491498-6744826550612856828?l=widyanahar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://widyanahar.blogspot.com/feeds/6744826550612856828/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22491498&amp;postID=6744826550612856828' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/6744826550612856828'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/6744826550612856828'/><link rel='alternate' type='text/html' href='http://widyanahar.blogspot.com/2011/09/my-ceo-pls-read-tom-demarco.html' title='My CEO, pls read Tom deMarco'/><author><name>N.A. Widyanahar</name><uri>http://www.blogger.com/profile/15078397541522591412</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='29' src='http://1.bp.blogspot.com/_z-gOROj07o0/SvD6e8Mf7DI/AAAAAAAAAHg/adRKozl4o-w/S220/profil1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22491498.post-7885896635341488268</id><published>2011-09-30T00:59:00.000+07:00</published><updated>2011-09-30T00:59:13.013+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='N02. IT Management'/><category scheme='http://www.blogger.com/atom/ns#' term='N00. A Letter To CI[E]O'/><title type='text'>Menghadapi Renegoisasi Team Member, Fokus pada Tujuan</title><content type='html'>Sudah lazim sebuah proyek mengalami berbagai kejadian yang dinamis, yang berpengaruh terhadap keseluruhan proyek, baik pengaruh baik maupun buruk terhadap tujuan akhir proyek. Kasus yang sangat umum terjadi ialah ancaman mundurnya seorang anggota kunci.&lt;br /&gt;&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;Saya akan cenderung melakukan semua hal yang masuk akal agar sebuah proyek berjalan sukses, termasuk mungkin melakukan langkah yang melampaui batasan normatif, namun&amp;nbsp; menjadi solusi. Termasuk di dalamnya mengamankan agar pekerjaan berlangsung sesuai dengan garis waktu yang ditetapkan. Pekerjaan berdenyut terus selama pihak-pihak yang terlibat ada di tempat dan porsinya masing-2, dan berada pada potensi terbaiknya untuk berkontribusi terhadap deliverable pekerjaan.&amp;nbsp; Setiap pemain harus menyelesaikan orkestra hingga nada terakhir. &lt;br /&gt;&lt;br /&gt;Saya percaya bahwa mengontrol motivasi adalah bagian terpenting untuk memastikan setiap orang berada di tempatnya hingga selesai. Apabila dijumpai tanda-tanda bahwa di tengah jalan ada salah satu anggota yang hendak mengundurkan diri, saya akan cenderung menghindari keputusan yg didasarkan pada perdebatan tidak perlu tentang persepsi atas tarik-ulur, tawar-menawar, motif-motif, dan alasan setiap pihak.&lt;br /&gt;&lt;br /&gt;Saya akan melakukan upaya2 dan semua cara preventif, antisipatif terhadap potensi-2 hambatan atas kondisi tersebut.&lt;br /&gt;&lt;br /&gt;Saya hendak mengatakan bahwa &lt;i&gt;urgency &lt;/i&gt;atas tercapainya tujuan organisasi jauh lebih penting daripada perdebatan tentang preseden apabila terjadi dialektika tidak sehat dalam relasi antara karyawan (anggota proyek) dan perusahaan. Persepsi menang kalah, atau merasa dikendalikan salah satu pihak dengan cara zero sum game, hanya akan mengantar pada membesarnya kemungkinan proyek gagal.&lt;br /&gt;&lt;br /&gt;Saya sangat yakin bahwa cara preventif bahkan jauh lebih efektif baik dari sisi biaya atau faktor-2 lainnya.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22491498-7885896635341488268?l=widyanahar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://widyanahar.blogspot.com/feeds/7885896635341488268/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22491498&amp;postID=7885896635341488268' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/7885896635341488268'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/7885896635341488268'/><link rel='alternate' type='text/html' href='http://widyanahar.blogspot.com/2011/09/menghadapi-renegoisasi-team-member.html' title='Menghadapi Renegoisasi Team Member, Fokus pada Tujuan'/><author><name>N.A. Widyanahar</name><uri>http://www.blogger.com/profile/15078397541522591412</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='29' src='http://1.bp.blogspot.com/_z-gOROj07o0/SvD6e8Mf7DI/AAAAAAAAAHg/adRKozl4o-w/S220/profil1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22491498.post-5405748834692827386</id><published>2011-08-31T14:20:00.001+07:00</published><updated>2011-08-31T14:22:18.653+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='N02. IT Management'/><category scheme='http://www.blogger.com/atom/ns#' term='N00. A Letter To CI[E]O'/><title type='text'>Menjaga Komitmen Tim Bukan Hanya Tugas Team Leader</title><content type='html'>&lt;div class="MsoNormal"&gt;Salah satu hal yang penting dalam&amp;nbsp; project yang bersifat &lt;i style="mso-bidi-font-style: normal;"&gt;mission critical&lt;/i&gt; ialah memastikan anggota tim tetap commit dan loyal sepanjang masa proyek.&lt;/div&gt;&lt;div class="MsoNormal"&gt;Dan hal ini tidak mudah. Memastikan programer tetap di tempatnya, bukan hanya tugas &lt;b&gt;Team Leader&lt;/b&gt;, tetapi merupakan tugas keseluruhan &lt;b&gt;Project Member&lt;/b&gt;, &lt;b&gt;Stakeholder&lt;/b&gt; dan &lt;b&gt;Top Level Management&lt;/b&gt;.&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;/div&gt;&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;&lt;div class="MsoNormal"&gt;&lt;b&gt;Team Leader&lt;/b&gt; bisa saja sepanjang waktu memotivasi team untuk stays on the track, keep up the good work. &amp;nbsp;Tetapi &lt;b&gt;stakeholder &lt;/b&gt;harus mendukungnya langsung dan tidak langsung.&lt;/div&gt;&lt;div class="MsoNormal"&gt;Seperti lazimnya tanaman di atas pot, Anda bukan hanya harus memastikan pot berisi cukup air dan gizi, semua hal yang berada di luar pot juga menentukan katakanlah hal-hal seperti sirkulasi udara, &amp;nbsp;intensitas sinar matahari, dan semua hal di sekitar pot tersebut. &amp;nbsp;Semua faktor tersebut harus dikelola menjadi &lt;i style="mso-bidi-font-style: normal;"&gt;good exposure&lt;/i&gt;, hidup &amp;nbsp;seperti orkestra yang harmonis untuk menjadi media tumbuhnya produktivitas. &lt;b&gt;Team Leader&lt;/b&gt; adalah faktor di dalam pot, stakeholder adalah faktor di luar pot. Keduanya harus seiring seirama.&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="MsoNormal"&gt;Salah satu contoh cukup jelas ialah ketika &lt;b&gt;Team Leader&lt;/b&gt; mengatakan bahwa perusahaan sangat mengapresiasi kinerja tim, maka pada saat yang sama tim harus mempunyai proyeksi dari situasi nyata&amp;nbsp; bahwa perusahaan adalah tipe yang apresiatif. Ketika &lt;b&gt;Team Leader&lt;/b&gt; berjuang mengatakan kepada anggota yang skeptis bahwa tidak ada perbedaan signifikan antara kerja keras dan biasa saja bagi mereka, dan mereka mulai mempengaruhi kiri kanan. Ternyata beredar kabar di email bahwa perusahaan&amp;nbsp; menunda bonus yang&amp;nbsp; semula dijanjikan apabila sejumlah &lt;i style="mso-bidi-font-style: normal;"&gt;deliverable&lt;/i&gt; tercapai, dengan alasan yang tidak jelas.&amp;nbsp;&lt;/div&gt;&lt;div class="MsoNormal"&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-family: &amp;quot;Cambria&amp;quot;,&amp;quot;serif&amp;quot;; font-size: 11pt; line-height: 115%;"&gt;Sangatlah penting apa yang ditampilkan secara positif oleh Team Leader adalah apa yang sesungguhnya terjadi di perusahaan saat ini.&amp;nbsp; wid@20110831&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22491498-5405748834692827386?l=widyanahar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://widyanahar.blogspot.com/feeds/5405748834692827386/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22491498&amp;postID=5405748834692827386' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/5405748834692827386'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/5405748834692827386'/><link rel='alternate' type='text/html' href='http://widyanahar.blogspot.com/2011/08/menjaga-komitmen-tim-bukan-hanya-tugas.html' title='Menjaga Komitmen Tim Bukan Hanya Tugas Team Leader'/><author><name>N.A. Widyanahar</name><uri>http://www.blogger.com/profile/15078397541522591412</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='29' src='http://1.bp.blogspot.com/_z-gOROj07o0/SvD6e8Mf7DI/AAAAAAAAAHg/adRKozl4o-w/S220/profil1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22491498.post-2774871380582829209</id><published>2011-02-02T17:24:00.004+07:00</published><updated>2011-04-05T11:58:19.869+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='N04. SQL Maneuver'/><category scheme='http://www.blogger.com/atom/ns#' term='N00. Articles in English'/><title type='text'>Monitoring SQL Server Space</title><content type='html'>Monitoring the space of SQL Server Machine.&lt;br /&gt;&lt;br /&gt;How do we monitor our SQL Server file data? Acknowledge the size and the growth is an important thing for all of us.&amp;nbsp;Knowing the condition of the machine is critical in term of Database Server need a specific condition in its physical infrastructure –&amp;nbsp;the harddisk/physical device should be in a sufficient free space. The growth of the database and its current used space is also very critical to acknowledge because it will provide us knowledge how we interact with the data growth, decide, and how we maintain them. Not only critical for the database itself, but also for the Operating System as well. You can imagine if one of our database files growing in 30MB per daily, and someday in the future it hits Windows Server with hundreds MB left in space? How come??&lt;br /&gt;&lt;br /&gt;Of course, every database is living on its own speed. The very active growth is everywhere as well as the ordinary one, as you can mention any retail or banking database or your sms content business which growing in 100 thousand records daily. And in other plant, the medical record of certain hospital may require no more than thousand rows per day.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/_z-gOROj07o0/TUkq-TSWxoI/AAAAAAAAAIc/sX7K-uHSbUg/s1600/pic1.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="230" s5="true" src="http://1.bp.blogspot.com/_z-gOROj07o0/TUkq-TSWxoI/AAAAAAAAAIc/sX7K-uHSbUg/s320/pic1.JPG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;We should also take care of the ratio between the maximum capacity and the growth per day. The blue one is the most acceptable thing. The orange is in danger speed.&lt;br /&gt;&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;System SP or Systables?&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;SQL Server (2000 or 2005) provide us some system Stored Procedures and tables to identify the need above. Day by day there always come a point for us have the choices. It’s pretty good to have the built-in SP ahead, but you want to go deep down, knowing the very basic entity of the information is very much valuable. I would like to say that for simple need, we can depend only for the the system Stored Procedure. You can run sp_helpdb - for example – if you just need to check one server machine. But How we do that if we want to check several machine at the same time? I believe we will be more happy by doing some SELECT query on sysdatabase tables.&lt;br /&gt;Of course, we also need to put other syntax combination in the mind, to make all these stuffs possible.&lt;br /&gt;&lt;br /&gt;In SQL Server 2000 and SQL Server 2005 I found the are two beautiful object to get this out. One is &lt;strong&gt;master..xp_fixeddrives&lt;/strong&gt; stored procedure. and the other is &lt;strong&gt;sysfile&lt;/strong&gt; table. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Server Space&lt;br /&gt;First, what in my mind is how to check the physical space for the server?&lt;br /&gt;&lt;br /&gt;We have master..xp_fixeddrives on the table. Running this will give us all free space information on the current machine.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;EXEC master..xp_fixeddrives&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;And the result is&lt;br /&gt;&lt;br /&gt;drive MB free&lt;br /&gt;----- -----------&lt;br /&gt;C 1053&lt;br /&gt;D 16438&lt;br /&gt;&lt;br /&gt;(2 row(s) affected)&lt;br /&gt;&lt;br /&gt;To check other machine from specific/other location, we just type the IP/domain name of the SQL Instance to be monitored.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;EXEC [10.2.5.32].master..xp_fixeddrives&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Imagine that we have one instance as monitoring central engine, and n-number of server being monitored.&lt;br /&gt;&lt;br /&gt;We can create a temporary table/variable table/ or physical table to save the result of rows above.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;IF EXISTS (SELECT * FROM tempdb..sysobjects&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;WHERE id = object_id(N'[tempdb]..[#disk_free_space]'))&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;DROP TABLE #disk_free_space&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;CREATE TABLE #disk_free_space (&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;DriveLetter CHAR(1) NOT NULL,&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;FreeMB INTEGER NOT NULL)&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;INSERT INTO #disk_free_space&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;EXEC [10.2.5.32].master..xp_fixeddrives&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;And then create a variable table to add other relevant information&lt;br /&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;declare @TotalSpace table(&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;Server varchar(100),&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;Drive varchar(10),&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;Alloc int&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;Insert into @TotalSpace&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;SELECT 'Server-1 - &amp;gt; [10.2.5.32]' , * FROM #disk_free_space&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;And execute the query the get the picture in the modest way.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;Select Server, Drive, RTRIM(RIGHT(SPACE(22) + convert(varchar(20), convert(money, Alloc),1),22)) + ' MB' As Size from @TotalSpace&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;You can get all server space by inserting each result of master..xp_fixeddrives as depicted below.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Server1 - &amp;gt; [10.2.5.31] C 15,958.00 MB&lt;br /&gt;Server1 - &amp;gt; [10.2.5.31] D 83,088.00 MB&lt;br /&gt;Server2 - &amp;gt; [10.2.5.32] C 52,973.00 MB&lt;br /&gt;Server2 - &amp;gt; [10.2.5.32] D 26,635.00 MB&lt;br /&gt;Server3 - &amp;gt; [10.2.5.34] C 20,597.00 MB&lt;br /&gt;Server3 - &amp;gt; [10.2.5.34] D 144,449.00 MB&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Space Used by Each Database&lt;/strong&gt;&lt;br /&gt;&lt;br /&gt;After we identify the total space of the volume in the machine.. All databases occupied is the next target we need to know. We can do this by query SELECT command to &lt;strong&gt;sysfile&lt;/strong&gt; table. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Let say I just want to see the file name , the location of the file, and the size.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;SELECT fileid, name, filename, size, growth from sysfiles&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;And because the size in page (8KB) we need to convert this into MB (usual unit). Multiply this by &lt;br /&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;SELECT fileid, name, filename, size * 8 /1000 as [size – MB] , growth from sysfiles&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;The result would be:&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/_z-gOROj07o0/TUku-8onneI/AAAAAAAAAIk/4U_UzEk0W1E/s1600/pic2.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="52" s5="true" src="http://4.bp.blogspot.com/_z-gOROj07o0/TUku-8onneI/AAAAAAAAAIk/4U_UzEk0W1E/s320/pic2.JPG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;This query will work on the current database (wtrack). To get the information to a specific database you should spell the database name first.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;SELECT fileid, name, filename, size * 8 /1000 as [size – MB] , growth&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;from [WTrack].dbo.sysfiles&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;We need to retrieve all database name using &lt;strong&gt;sysdatabases&lt;/strong&gt; table.&lt;br /&gt;&lt;br /&gt;&lt;span style="background-color: white; color: blue;"&gt;select name from master.dbo.sysdatabases&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;By combining these two system tables and using cursor definition we can grab all databases size, as this script below. Please notice some system database name exclude from the query.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;Declare @sql varchar(6600)&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;Declare @nama varchar(30)&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;IF EXISTS (SELECT * FROM tempdb..sysobjects&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;WHERE id = object_id(N'[tempdb]..[#mytemp]'))&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;DROP TABLE #mytemp&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;create Table #mytemp&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;(&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;servername varchar(20), fileid smallint, name nchar(128), filename nchar(260), ukuran int, size varchar(30), growth int&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;)&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;Declare namaDB Cursor For&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;select name from master.dbo.sysdatabases where name not in ('master','model','msdb','tempdb')&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;AND name in ('zmyTools','ztes2','ztestdaily')&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;order by name&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;Open namaDB &lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;FETCH NEXT FROM namaDB into @nama&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;WHILE @@FETCH_STATUS = 0&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;BEGIN&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;SET @sql ='SELECT ''' + @servername + ''', fileid, name, filename, size * 8 /1000, ' &lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;SET @sql = @sql + ' RTRIM(RIGHT(SPACE(22) + convert(varchar(20), convert(money, size *8/1000),1),22)) + '' MB'' as mySize, growth FROM [' + @servername + '].[' + @nama + '].dbo.sysfiles ' &lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;SET @sql = ' INSERT INTO #mytemp ' + @sql&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;EXEC(@sql)&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;FETCH NEXT FROM namaDB into @nama&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;END&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;Close namaDB&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;deallocate namaDB&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;Select * from #mytemp&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22491498-2774871380582829209?l=widyanahar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://widyanahar.blogspot.com/feeds/2774871380582829209/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22491498&amp;postID=2774871380582829209' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/2774871380582829209'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/2774871380582829209'/><link rel='alternate' type='text/html' href='http://widyanahar.blogspot.com/2011/02/monitoring-sql-server-space.html' title='Monitoring SQL Server Space'/><author><name>N.A. Widyanahar</name><uri>http://www.blogger.com/profile/15078397541522591412</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='29' src='http://1.bp.blogspot.com/_z-gOROj07o0/SvD6e8Mf7DI/AAAAAAAAAHg/adRKozl4o-w/S220/profil1.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_z-gOROj07o0/TUkq-TSWxoI/AAAAAAAAAIc/sX7K-uHSbUg/s72-c/pic1.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22491498.post-4807906813600492932</id><published>2009-07-24T10:50:00.002+07:00</published><updated>2009-11-19T16:22:02.873+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='N14. Qt'/><category scheme='http://www.blogger.com/atom/ns#' term='N00. Articles in English'/><title type='text'>Qt: How to add resource file (such as image)</title><content type='html'>It is common that we need to add some images in our widget/form/control to create a good application layout. We can do this by inserting into the widget, the image directly or create a resource file as well. Resource file in the Qt Application is .qrc file.&lt;br /&gt;&lt;br /&gt;In a simple shot, we use the resource file by firstly create the file, and include the files into the Qt Application project, and compiling the application.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Ho to do that in detail? &lt;br /&gt;&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="fullpost"&gt;&lt;br /&gt;&lt;br /&gt;0. Create the file.&lt;br /&gt;&lt;br /&gt;Open any plain text editor, and type the following:&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #0066cc;"&gt;&lt;br /&gt;&amp;lt;RCC&amp;gt;&lt;br /&gt;&amp;lt;qresource prefix="/" &amp;gt;&lt;br /&gt;&amp;lt;/qresource&amp;gt;&lt;br /&gt;&amp;lt;/RCC&amp;gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;the tagline above is necessary to get file working. after this, insert the image file name as follows:&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #0066cc;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;So the complete stucture will be like this:&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #0066cc;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;By this scenario, the image file location is the same as the .qrc file. Next, save the file with let say setting&lt;span style="font-weight: bold;"&gt;.qrc&lt;/span&gt;.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;1. Open your Qt project (QtCreator). Add the following line into your .PRO files.&lt;br /&gt;&lt;br /&gt;RESOURCES = images/setting.qrc&lt;br /&gt;&lt;br /&gt;Here keyword &lt;span style="font-weight: bold;"&gt;RESOURCE&lt;/span&gt; is followed by the location of the .qrc file. Notice also that .qrc files is located under folder images (one level lower from the main folder, where .PRO file reside).&lt;br /&gt;&lt;br /&gt;2. Build the file, so that the &lt;strong&gt;setting.QRC&lt;/strong&gt; file is appeared in your project list, together with other source files.&lt;br /&gt;&lt;br /&gt;3. Go to your user interface file (form/widget) that is .ui file. If you want to use the resource in the form window icon. You can set it via Property Pages named windowIcon. You can see two option when clicking the Property, Choose Resource and Choose File. When choosing the first option you will see Select Resource Dialog, and choose of image in the display.&lt;br /&gt;&lt;br /&gt;4. Complete the step by compiling the files.&lt;br /&gt;&lt;br /&gt;That's all, and have a try!&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&amp;lt;file&amp;gt;filename&amp;lt;/file&amp;gt;&lt;br /&gt;&amp;lt;file&amp;gt;filename&amp;lt;/file&amp;gt; &lt;br /&gt;&lt;br /&gt;&amp;lt;RCC&amp;gt;&lt;br /&gt;&amp;lt;qresource prefix="/"&amp;gt;&lt;br /&gt;&amp;lt;file&amp;gt;image1.png&amp;lt;/file&amp;gt;&lt;br /&gt;&amp;lt;file&amp;gt;image2.png&amp;lt;/file&amp;gt;&lt;br /&gt;&amp;lt;/qresource&amp;gt;&lt;br /&gt;&amp;lt;/RCC&amp;gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22491498-4807906813600492932?l=widyanahar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://widyanahar.blogspot.com/feeds/4807906813600492932/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22491498&amp;postID=4807906813600492932' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/4807906813600492932'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/4807906813600492932'/><link rel='alternate' type='text/html' href='http://widyanahar.blogspot.com/2009/07/how-to-add-resource-file-such-as-image.html' title='Qt: How to add resource file (such as image)'/><author><name>N.A. Widyanahar</name><uri>http://www.blogger.com/profile/15078397541522591412</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='29' src='http://1.bp.blogspot.com/_z-gOROj07o0/SvD6e8Mf7DI/AAAAAAAAAHg/adRKozl4o-w/S220/profil1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22491498.post-3820575332825838479</id><published>2009-03-20T19:15:00.005+07:00</published><updated>2011-04-28T14:43:31.486+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='N13 - linux matters'/><title type='text'>pengingat instruksi di linux</title><content type='html'>Sekedar untuk mengingat perintah-perintah yang perlu.&lt;br /&gt;&lt;span class="fullpost"&gt;&lt;br /&gt;&lt;b&gt;RUTIN&lt;/b&gt;&lt;br /&gt;- melihat daftar file di suatu folder: &lt;b&gt;ls&lt;/b&gt;&lt;br /&gt;- mengkopi file: &lt;b&gt;cp [nama file] [tujuan dir]&lt;/b&gt;&lt;br /&gt;- mengubah nama file/memindahkan file: &lt;b&gt;mv [namafilelama] [lokasibaru][namafilebaru]&lt;/b&gt;&lt;br /&gt;- membuat direktori baru: &lt;b&gt;mkdir [namafolder]&lt;/b&gt; , untuk membuat writable tambahkan &lt;br /&gt;argumen -m770 (kode oktal hak akses), contoh &lt;b&gt;mkdir -m770 test&lt;/b&gt;&lt;br /&gt;- mengkopi semua isi folder (subfolder maupun isinya) dg atribute yg sama (akses, dsb)&lt;br /&gt;&lt;b&gt;cp -r -p [folder sumber] [folder tujuan]&lt;/b&gt;&lt;br /&gt;- menghapus direktori: &lt;b&gt;rmdir [nama folder]&lt;/b&gt;&lt;br /&gt;- menghapus file: &lt;b&gt;rm [nama file] -i&lt;/b&gt;&amp;nbsp; (dengan i untuk menampilkan konfirmasi)&lt;/span&gt;&lt;br /&gt;&lt;span class="fullpost"&gt;- melihat total penggunaan memori:&lt;b&gt;free -m&lt;/b&gt;&lt;br /&gt;- melihat resource yg dipakai oleh seluruh proses: &lt;b&gt;ps aux&lt;/b&gt;&lt;br /&gt;- melihat aplikasi yg sedang berjalan: &lt;b&gt;top&lt;/b&gt;&lt;br /&gt;- membersihkan layar: &lt;b&gt;clear &lt;/b&gt;&lt;br /&gt;- mengecek ip komputer lokal: &lt;b&gt;ifconfig -a&lt;/b&gt;&lt;br /&gt;- masuk ke suatu sub direktori/folder: &lt;b&gt;cd [nama folder]&lt;/b&gt;&lt;br /&gt;- keluar dari terminal : &lt;b&gt;exit&lt;/b&gt;&lt;br /&gt;- menuju lokasi absolut folder: dahului dengan karakater slash atau "/" misal &lt;b&gt;/usr/bin/&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;APLIKASI &lt;/b&gt;&lt;br /&gt;- mengeksekusi sebuah file executable: &lt;b&gt;./[nama file]&lt;/b&gt;&lt;br /&gt;- melihat file dependency sebuah aplikasi: &lt;b&gt;ldd .[nama file]&lt;/b&gt;&lt;br /&gt;- membuat sebuah paket/file instalasi siap running: &lt;b&gt;chmod +x [nama file].bin&lt;/b&gt;&lt;br /&gt;- mengganti owner sebuah file: &lt;b&gt;chown&lt;/b&gt;&lt;br /&gt;- mengekstraks file .gz: &lt;b&gt;gunzip &lt;nama file+ekstensinya=""&gt;&lt;/nama&gt;&lt;/b&gt;&lt;br /&gt;- menjalankan aplikasi dengan super user: &lt;b&gt;sudo&lt;/b&gt;&lt;br /&gt;- mengecek environment system &lt;b&gt;env&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;EDITOR FILE Setting &lt;/b&gt;&lt;br /&gt;misal mengatur setting pada .bash_profile&lt;br /&gt;&lt;b&gt;vi .bash_profile &lt;/b&gt;&lt;br /&gt;setelah masuk ketikkan &lt;b&gt;i&lt;/b&gt; untuk mengisi ditengah entry atau &lt;b&gt;a&lt;/b&gt; untuk menambahkan di akhir baris. isikan setting yg dikehendaki lalu tekan ESC untuk keluar dari mode penulisan. lalu tekan &lt;b&gt;:w &lt;/b&gt;untuk menyimpan hasil edit, dan keluar dengan &lt;b&gt;:q! &lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;referensi lain:&lt;br /&gt;&lt;a href="http://pemula.linux.or.id/pengguna/command.html"&gt;http://pemula.linux.or.id/pengguna/command.html&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="fullpost"&gt;&lt;a href="http://www.linuxhomenetworking.com/wiki/index.php/Quick_HOWTO_:_Ch03_:_Linux_Networking"&gt;http://www.linuxhomenetworking.com/wiki/index.php/Quick_HOWTO_:_Ch03_:_Linux_Networking&lt;/a&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22491498-3820575332825838479?l=widyanahar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://widyanahar.blogspot.com/feeds/3820575332825838479/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22491498&amp;postID=3820575332825838479' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/3820575332825838479'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/3820575332825838479'/><link rel='alternate' type='text/html' href='http://widyanahar.blogspot.com/2009/03/pengingat-instruksi-di-linux.html' title='pengingat instruksi di linux'/><author><name>N.A. Widyanahar</name><uri>http://www.blogger.com/profile/15078397541522591412</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='29' src='http://1.bp.blogspot.com/_z-gOROj07o0/SvD6e8Mf7DI/AAAAAAAAAHg/adRKozl4o-w/S220/profil1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22491498.post-5132535329278227467</id><published>2008-11-21T14:04:00.000+07:00</published><updated>2008-11-25T11:46:58.769+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='N12. C++ dialect'/><title type='text'>Data type Range</title><content type='html'>Data type range.&lt;br /&gt;&lt;br /&gt;Below find out the list of data type range for C++. I got the list from MSDN: ttp://msdn.microsoft.com/en-us/library/s3f49ktz(VS.71).aspx&lt;br /&gt;&lt;span class="fullpost"&gt;&lt;br /&gt;&lt;table class="MsoTableElegant" style="border: medium none ; border-collapse: collapse;" border="1" cellpadding="0" cellspacing="0"&gt;  &lt;tbody&gt;&lt;tr style=""&gt;   &lt;td  style="border-style: double solid solid double; padding: 0in 5.4pt; width: 21%;color:black;" valign="top" width="21%"&gt;   &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;Type Name&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: double solid solid none; padding: 0in 5.4pt; width: 13%;color:black black black -moz-use-text-color;" valign="top" width="13%"&gt;   &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;Bytes&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: double solid solid none; padding: 0in 5.4pt; width: 25%;color:black black black -moz-use-text-color;" valign="top" width="25%"&gt;   &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;Other Names&lt;/span&gt;&lt;/b&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: double double solid none; padding: 0in 5.4pt; width: 41%;color:black black black -moz-use-text-color;" valign="top" width="41%"&gt;   &lt;p class="MsoNormal"&gt;&lt;st1:place st="on"&gt;&lt;st1:placetype st="on"&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;Range&lt;/span&gt;&lt;/b&gt;&lt;/st1:placetype&gt;&lt;b&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt; of &lt;st1:placename st="on"&gt;Values&lt;/st1:placename&gt;&lt;/span&gt;&lt;/b&gt;&lt;/st1:place&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr style=""&gt;   &lt;td  style="border-style: none solid solid double; padding: 0in 5.4pt; width: 21%;color:-moz-use-text-color black black;" valign="top" width="21%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;int&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: none solid solid none; padding: 0in 5.4pt; width: 13%;color:-moz-use-text-color black black -moz-use-text-color;" valign="top" width="13%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;*&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: none solid solid none; padding: 0in 5.4pt; width: 25%;color:-moz-use-text-color black black -moz-use-text-color;" valign="top" width="25%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;signed,&lt;br /&gt; signed int&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: none double solid none; padding: 0in 5.4pt; width: 41%;color:-moz-use-text-color black black -moz-use-text-color;" valign="top" width="41%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;System dependent&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr style=""&gt;   &lt;td  style="border-style: none solid solid double; padding: 0in 5.4pt; width: 21%;color:-moz-use-text-color black black;" valign="top" width="21%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;unsigned int&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: none solid solid none; padding: 0in 5.4pt; width: 13%;color:-moz-use-text-color black black -moz-use-text-color;" valign="top" width="13%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;*&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: none solid solid none; padding: 0in 5.4pt; width: 25%;color:-moz-use-text-color black black -moz-use-text-color;" valign="top" width="25%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;unsigned&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: none double solid none; padding: 0in 5.4pt; width: 41%;color:-moz-use-text-color black black -moz-use-text-color;" valign="top" width="41%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;System dependent&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr style=""&gt;   &lt;td  style="border-style: none solid solid double; padding: 0in 5.4pt; width: 21%;color:-moz-use-text-color black black;" valign="top" width="21%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;__int8&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: none solid solid none; padding: 0in 5.4pt; width: 13%;color:-moz-use-text-color black black -moz-use-text-color;" valign="top" width="13%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: none solid solid none; padding: 0in 5.4pt; width: 25%;color:-moz-use-text-color black black -moz-use-text-color;" valign="top" width="25%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;char,&lt;br /&gt; signed char&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: none double solid none; padding: 0in 5.4pt; width: 41%;color:-moz-use-text-color black black -moz-use-text-color;" valign="top" width="41%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;–128 to 127&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr style=""&gt;   &lt;td  style="border-style: none solid solid double; padding: 0in 5.4pt; width: 21%;color:-moz-use-text-color black black;" valign="top" width="21%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;__int16&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: none solid solid none; padding: 0in 5.4pt; width: 13%;color:-moz-use-text-color black black -moz-use-text-color;" valign="top" width="13%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;2&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: none solid solid none; padding: 0in 5.4pt; width: 25%;color:-moz-use-text-color black black -moz-use-text-color;" valign="top" width="25%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;short,&lt;br /&gt; short int,&lt;br /&gt; signed short int&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: none double solid none; padding: 0in 5.4pt; width: 41%;color:-moz-use-text-color black black -moz-use-text-color;" valign="top" width="41%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;–32,768 to 32,767&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr style=""&gt;   &lt;td  style="border-style: none solid solid double; padding: 0in 5.4pt; width: 21%;color:-moz-use-text-color black black;" valign="top" width="21%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;__int32&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: none solid solid none; padding: 0in 5.4pt; width: 13%;color:-moz-use-text-color black black -moz-use-text-color;" valign="top" width="13%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;4&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: none solid solid none; padding: 0in 5.4pt; width: 25%;color:-moz-use-text-color black black -moz-use-text-color;" valign="top" width="25%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;signed,&lt;br /&gt; signed int&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: none double solid none; padding: 0in 5.4pt; width: 41%;color:-moz-use-text-color black black -moz-use-text-color;" valign="top" width="41%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;–2,147,483,648 to 2,147,483,647&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr style=""&gt;   &lt;td  style="border-style: none solid solid double; padding: 0in 5.4pt; width: 21%;color:-moz-use-text-color black black;" valign="top" width="21%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;__int64&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: none solid solid none; padding: 0in 5.4pt; width: 13%;color:-moz-use-text-color black black -moz-use-text-color;" valign="top" width="13%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;8&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: none solid solid none; padding: 0in 5.4pt; width: 25%;color:-moz-use-text-color black black -moz-use-text-color;" valign="top" width="25%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;none&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: none double solid none; padding: 0in 5.4pt; width: 41%;color:-moz-use-text-color black black -moz-use-text-color;" valign="top" width="41%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;–9,223,372,036,854,775,808 to 9,223,372,036,854,775,807&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr style=""&gt;   &lt;td  style="border-style: none solid solid double; padding: 0in 5.4pt; width: 21%;color:-moz-use-text-color black black;" valign="top" width="21%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;char&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: none solid solid none; padding: 0in 5.4pt; width: 13%;color:-moz-use-text-color black black -moz-use-text-color;" valign="top" width="13%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: none solid solid none; padding: 0in 5.4pt; width: 25%;color:-moz-use-text-color black black -moz-use-text-color;" valign="top" width="25%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;signed char&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: none double solid none; padding: 0in 5.4pt; width: 41%;color:-moz-use-text-color black black -moz-use-text-color;" valign="top" width="41%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;–128 to 127&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr style=""&gt;   &lt;td  style="border-style: none solid solid double; padding: 0in 5.4pt; width: 21%;color:-moz-use-text-color black black;" valign="top" width="21%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;unsigned char&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: none solid solid none; padding: 0in 5.4pt; width: 13%;color:-moz-use-text-color black black -moz-use-text-color;" valign="top" width="13%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: none solid solid none; padding: 0in 5.4pt; width: 25%;color:-moz-use-text-color black black -moz-use-text-color;" valign="top" width="25%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;none&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: none double solid none; padding: 0in 5.4pt; width: 41%;color:-moz-use-text-color black black -moz-use-text-color;" valign="top" width="41%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;0 to 255&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr style=""&gt;   &lt;td  style="border-style: none solid solid double; padding: 0in 5.4pt; width: 21%;color:-moz-use-text-color black black;" valign="top" width="21%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;short&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: none solid solid none; padding: 0in 5.4pt; width: 13%;color:-moz-use-text-color black black -moz-use-text-color;" valign="top" width="13%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;2&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: none solid solid none; padding: 0in 5.4pt; width: 25%;color:-moz-use-text-color black black -moz-use-text-color;" valign="top" width="25%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;short int,&lt;br /&gt; signed short int&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: none double solid none; padding: 0in 5.4pt; width: 41%;color:-moz-use-text-color black black -moz-use-text-color;" valign="top" width="41%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;–32,768 to 32,767&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr style=""&gt;   &lt;td  style="border-style: none solid solid double; padding: 0in 5.4pt; width: 21%;color:-moz-use-text-color black black;" valign="top" width="21%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;unsigned short&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: none solid solid none; padding: 0in 5.4pt; width: 13%;color:-moz-use-text-color black black -moz-use-text-color;" valign="top" width="13%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;2&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: none solid solid none; padding: 0in 5.4pt; width: 25%;color:-moz-use-text-color black black -moz-use-text-color;" valign="top" width="25%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;unsigned short int&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: none double solid none; padding: 0in 5.4pt; width: 41%;color:-moz-use-text-color black black -moz-use-text-color;" valign="top" width="41%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;0 to 65,535&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr style=""&gt;   &lt;td  style="border-style: none solid solid double; padding: 0in 5.4pt; width: 21%;color:-moz-use-text-color black black;" valign="top" width="21%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;long&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: none solid solid none; padding: 0in 5.4pt; width: 13%;color:-moz-use-text-color black black -moz-use-text-color;" valign="top" width="13%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;4&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: none solid solid none; padding: 0in 5.4pt; width: 25%;color:-moz-use-text-color black black -moz-use-text-color;" valign="top" width="25%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;long int,&lt;br /&gt; signed long int&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: none double solid none; padding: 0in 5.4pt; width: 41%;color:-moz-use-text-color black black -moz-use-text-color;" valign="top" width="41%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;–2,147,483,648 to 2,147,483,647&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr style=""&gt;   &lt;td  style="border-style: none solid solid double; padding: 0in 5.4pt; width: 21%;color:-moz-use-text-color black black;" valign="top" width="21%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;unsigned long&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: none solid solid none; padding: 0in 5.4pt; width: 13%;color:-moz-use-text-color black black -moz-use-text-color;" valign="top" width="13%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;4&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: none solid solid none; padding: 0in 5.4pt; width: 25%;color:-moz-use-text-color black black -moz-use-text-color;" valign="top" width="25%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;unsigned long int&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: none double solid none; padding: 0in 5.4pt; width: 41%;color:-moz-use-text-color black black -moz-use-text-color;" valign="top" width="41%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;0 to 4,294,967,295&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr style=""&gt;   &lt;td  style="border-style: none solid solid double; padding: 0in 5.4pt; width: 21%;color:-moz-use-text-color black black;" valign="top" width="21%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;enum&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: none solid solid none; padding: 0in 5.4pt; width: 13%;color:-moz-use-text-color black black -moz-use-text-color;" valign="top" width="13%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;*&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: none solid solid none; padding: 0in 5.4pt; width: 25%;color:-moz-use-text-color black black -moz-use-text-color;" valign="top" width="25%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;none&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: none double solid none; padding: 0in 5.4pt; width: 41%;color:-moz-use-text-color black black -moz-use-text-color;" valign="top" width="41%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;Same as int&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr style=""&gt;   &lt;td  style="border-style: none solid solid double; padding: 0in 5.4pt; width: 21%;color:-moz-use-text-color black black;" valign="top" width="21%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;float&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: none solid solid none; padding: 0in 5.4pt; width: 13%;color:-moz-use-text-color black black -moz-use-text-color;" valign="top" width="13%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;4&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: none solid solid none; padding: 0in 5.4pt; width: 25%;color:-moz-use-text-color black black -moz-use-text-color;" valign="top" width="25%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;none&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: none double solid none; padding: 0in 5.4pt; width: 41%;color:-moz-use-text-color black black -moz-use-text-color;" valign="top" width="41%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;3.4E +/- 38 (7 digits)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr style=""&gt;   &lt;td  style="border-style: none solid solid double; padding: 0in 5.4pt; width: 21%;color:-moz-use-text-color black black;" valign="top" width="21%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;double&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: none solid solid none; padding: 0in 5.4pt; width: 13%;color:-moz-use-text-color black black -moz-use-text-color;" valign="top" width="13%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;8&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: none solid solid none; padding: 0in 5.4pt; width: 25%;color:-moz-use-text-color black black -moz-use-text-color;" valign="top" width="25%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;none&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: none double solid none; padding: 0in 5.4pt; width: 41%;color:-moz-use-text-color black black -moz-use-text-color;" valign="top" width="41%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;1.7E +/- 308 (15 digits)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr style=""&gt;   &lt;td  style="border-style: none solid double double; padding: 0in 5.4pt; width: 21%;color:-moz-use-text-color black black;" valign="top" width="21%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;long double&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: none solid double none; padding: 0in 5.4pt; width: 13%;color:-moz-use-text-color black black -moz-use-text-color;" valign="top" width="13%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;10&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: none solid double none; padding: 0in 5.4pt; width: 25%;color:-moz-use-text-color black black -moz-use-text-color;" valign="top" width="25%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;none&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td  style="border-style: none double double none; padding: 0in 5.4pt; width: 41%;color:-moz-use-text-color black black -moz-use-text-color;" valign="top" width="41%"&gt;   &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:12;color:#000000;"   &gt;1.2E +/- 4932 (19 digits)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22491498-5132535329278227467?l=widyanahar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://widyanahar.blogspot.com/feeds/5132535329278227467/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22491498&amp;postID=5132535329278227467' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/5132535329278227467'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/5132535329278227467'/><link rel='alternate' type='text/html' href='http://widyanahar.blogspot.com/2008/11/data-type-range.html' title='Data type Range'/><author><name>N.A. Widyanahar</name><uri>http://www.blogger.com/profile/15078397541522591412</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='29' src='http://1.bp.blogspot.com/_z-gOROj07o0/SvD6e8Mf7DI/AAAAAAAAAHg/adRKozl4o-w/S220/profil1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22491498.post-177676538442350597</id><published>2008-09-18T21:32:00.000+07:00</published><updated>2008-09-18T21:43:11.322+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='N12. C++ dialect'/><title type='text'>Data Conversion</title><content type='html'>Below is several notes on Data Conversion: something funny that we need regularly.&lt;br /&gt;&lt;br /&gt;---------------------------&lt;br /&gt;&lt;span style="font-weight:bold;"&gt;1. FLOAT TO STRING&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;use this function:&lt;br /&gt;_gcvt&lt;br /&gt;&lt;br /&gt;the format is&lt;br /&gt;char *_gcvt( double value, int digits, char *buffer );&lt;br /&gt;&lt;br /&gt;value: the floating point number we wish to convert.&lt;br /&gt;digits: number of decimal place.&lt;br /&gt;buffer: storage location for result&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;to use it, take a look at this sample:&lt;br /&gt;&lt;br /&gt;   char buffer[50];&lt;br /&gt;   double source = -3.1415e5;&lt;br /&gt;   _gcvt( source, 2, buffer );&lt;br /&gt;   &lt;br /&gt;then, we have buffer that we can treat as string value.&lt;br /&gt;&lt;br /&gt;&lt;span class="fullpost"&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22491498-177676538442350597?l=widyanahar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://widyanahar.blogspot.com/feeds/177676538442350597/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22491498&amp;postID=177676538442350597' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/177676538442350597'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/177676538442350597'/><link rel='alternate' type='text/html' href='http://widyanahar.blogspot.com/2008/09/data-conversion.html' title='Data Conversion'/><author><name>N.A. Widyanahar</name><uri>http://www.blogger.com/profile/15078397541522591412</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='29' src='http://1.bp.blogspot.com/_z-gOROj07o0/SvD6e8Mf7DI/AAAAAAAAAHg/adRKozl4o-w/S220/profil1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22491498.post-8991167876520423347</id><published>2008-06-20T11:03:00.000+07:00</published><updated>2008-06-20T13:16:44.285+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='N10. Referensi Bahasa C# (OOP)'/><title type='text'>004. Event dan Delegate</title><content type='html'>&lt;p class="MsoNormal"&gt;Apakah Event dan Delegate?&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Konsep Event dan Delegate bekerja sama dalam sebuah Class untuk mengatur dan menginformasikan suatu kejadian apabila member dan data dalam sebuah Class diproses atau berubah.&lt;/p&gt; &lt;span class="fullpost"&gt; &lt;h2&gt;Delegate&lt;/h2&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;Delegate dalam C# berguna untuk membuat referensi suatu method, atau sebagai function pointer. Untuk mendeklarasikannya, kita menambahkan keyword delegate pada nama delegate, seperti di bawah ini&lt;/span&gt;:&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style=";font-family:&amp;quot;;font-size:11;"  &gt;&lt;span style=""&gt;     &lt;/span&gt;delegate void contohdelegate();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;      &lt;p class="MsoNormal" style=""&gt;&lt;o:p&gt;  &lt;/o:p&gt;&lt;br /&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:blue;"   &gt;class&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt; &lt;span style="color:teal;"&gt;CForm1&lt;/span&gt; : &lt;span style="color:teal;"&gt;FormUtama&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;span style=""&gt;    &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;span style="color:blue;"&gt;delegate&lt;/span&gt; &lt;span style="color:blue;"&gt;void&lt;/span&gt; &lt;span style="color:teal;"&gt;ExecuteMethod&lt;/span&gt;(&lt;span style="color:blue;"&gt;string&lt;/span&gt; s);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style="text-indent: 0.5in;"&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:blue;"   &gt;public&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt; &lt;span style="color:blue;"&gt;void&lt;/span&gt; method1()&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;span style=""&gt;        &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;span style=""&gt;            &lt;/span&gt;&lt;span style="color:blue;"&gt;string&lt;/span&gt; s = &lt;span style="color:maroon;"&gt;"test"&lt;/span&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;span style=""&gt;        &lt;/span&gt;}&lt;span style="color:green;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;span style="color:blue;"&gt;public&lt;/span&gt; &lt;span style="color:blue;"&gt;void&lt;/span&gt; method2(&lt;span style="color:blue;"&gt;string&lt;/span&gt; s)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;        &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;span style=""&gt;        &lt;/span&gt;{&lt;br /&gt;&lt;span style=""&gt;            &lt;/span&gt;s = &lt;span style="color:maroon;"&gt;"bagus"&lt;/span&gt;;&lt;br /&gt;&lt;span style=""&gt;        &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="text-indent: 0.5in;"&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Pada method yang meninstansiasi delegate tersebut, kita gunakan beberapa cara berikut ini:&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style="color:green;"&gt;// cara. 1.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:blue;"   &gt;&lt;span style=""&gt;         &lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;ExecuteMethod em = null;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:blue;"   &gt;&lt;span style=""&gt;           &lt;/span&gt;string l;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:blue;"   &gt;&lt;span style=""&gt;           &lt;/span&gt;em += new ExecuteMethod(method1);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=""&gt;     &lt;/span&gt;&lt;span style="color:green;"&gt;&lt;span style=""&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:blue;"&gt;&lt;span style=""&gt; &lt;/span&gt;em.Invoke();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:green;"   &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:green;"   &gt;baris terakhir bisa digantikan dengan baris dibawah ini&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:green;"   &gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;span style=""&gt;   &lt;/span&gt;&lt;span style=""&gt; &lt;/span&gt;&lt;span style="color:green;"&gt;&lt;span style=""&gt;       &lt;/span&gt;&lt;/span&gt;&lt;span style="color:blue;"&gt;em();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;Pada sintaks di atas, method invoke akan sama dengan em(). Cara berikutnya seperti sintaks di bawah ini. Tampak bahwa nama method langsung langsung dituliskan mengikuti deklarasi. Cara ini disebut menggunakan named method.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style="color:green;"&gt;//cara. 2.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style="color:green;"&gt;&lt;span style=""&gt;       &lt;span style="color: rgb(51, 51, 255);"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;ExecuteMethod em = method1;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;    &lt;/span&gt;&lt;span style="color:green;"&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;        em();&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:green;"   &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;Di samping cara instansiasi di atas bisa juga dengan anonimous method seperti di bawah ini. Penggunaan instansiasi ini untuk mengurangi overhead sebuah delegate… dengan menghindari penggunaan sebuah method yang tidak perlu.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;span style=""&gt;            &lt;/span&gt;&lt;span style="color:teal;"&gt;ExecuteMethod&lt;/span&gt; em = &lt;span style="color:blue;"&gt;delegate&lt;/span&gt;() { };&lt;br /&gt;&lt;span style=""&gt;     &lt;/span&gt;&lt;span style=""&gt;       &lt;/span&gt;em();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;h2&gt;&lt;span style=""&gt;Event&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h2&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;Event merupakan suatu cara atau mekanisme yang memungkinkan sebuah kejadian, yang ditimbulkan oleh perubahan data atau proses di sebuah method, bisa diketahui statusnya dan dipakai untuk keperluan selanjutnya, seperti berkomunikasi dengan objek lain.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;Contoh-contoh event misalnya ialah kejadian saat mouse click, saat data belum berubah, saat data telah berubah, saat tombol &lt;enter&gt; ditekan, dan seterusnya.&lt;o:p&gt;&lt;/o:p&gt;&lt;/enter&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b style=""&gt;&lt;span style="font-family:Arial;"&gt;Cara deklarasi event&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-family:Arial;"&gt;Untuk menambahkan sebuah event di class, kita perlu menuliskan event keyword, dan menyediakan sebuah delegate dan sebuah nama event. Pada contoh ini, sebuah delegate didefinisikan dan dikaitkan dengan event bernama CobaEvent.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin: 0in 0.85pt 0.0001pt 0.5in;"&gt;&lt;span style=";font-family:&amp;quot;;font-size:11;"  &gt;public delegate void SampleEventDelegate(object sender, EventArgs e);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin: 0in 0.85pt 0.0001pt 0.5in;"&gt;&lt;span style=";font-family:&amp;quot;;font-size:11;"  &gt;public class SampleEventSource&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin: 0in 0.85pt 0.0001pt 0.5in;"&gt;&lt;span style=";font-family:&amp;quot;;font-size:11;"  &gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin: 0in 0.85pt 0.0001pt 0.5in;"&gt;&lt;span style=";font-family:&amp;quot;;font-size:11;"  &gt;&lt;span style=""&gt;    &lt;/span&gt;public &lt;b&gt;event&lt;/b&gt; SampleEventDelegate CobaEvent;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 35.15pt;"&gt;&lt;span style=";font-family:&amp;quot;;font-size:11;"  &gt;}&lt;/span&gt;&lt;span style=";font-family:&amp;quot;;font-size:11;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Urutannya ialah:&lt;/p&gt;  &lt;ol style="margin-top: 0in;" start="1" type="1"&gt;&lt;li class="MsoNormal" style=""&gt;deklarasi      delegate&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;deklarasi      event.&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;membuat      method yang akan memicu event tersebut. &lt;/li&gt;&lt;/ol&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style="color:blue;"&gt;class&lt;/span&gt; &lt;span style="color:teal;"&gt;ClassBentuk2&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;span style=""&gt;    &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;        &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;span style="color:blue;"&gt;public&lt;/span&gt; &lt;span style="color:blue;"&gt;delegate&lt;/span&gt; &lt;span style="color:blue;"&gt;void&lt;/span&gt; &lt;span style="color:teal;"&gt;ExecuteMethod&lt;/span&gt;();&lt;br /&gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;span style="color:blue;"&gt;public&lt;/span&gt; &lt;span style="color:blue;"&gt;event&lt;/span&gt; &lt;span style="color:teal;"&gt;ExecuteMethod&lt;/span&gt; testevent;&lt;o:p&gt;&lt;br /&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;        &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;span style="color:blue;"&gt;public&lt;/span&gt; &lt;span style="color:blue;"&gt;void&lt;/span&gt; method1()&lt;br /&gt;&lt;span style=""&gt;        &lt;/span&gt;{&lt;br /&gt;&lt;span style=""&gt;            &lt;/span&gt;testevent();&lt;br /&gt;&lt;span style=""&gt;        &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;span style=""&gt;    &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Bagaimanan cara menggunakan Event?&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Pada contoh kode di bawah ini, sebuah event akan digenerate saat user mengeksekusi method1. Disini isi eventnya ialah mengeksekusi method TestBiasa(). Pada pemanggilan event ini, digunakan anonymous method untuk untuk menangkap event yang terjadi.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;        &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;span style=""&gt;            &lt;/span&gt;&lt;span style="color:teal;"&gt;ClassBentuk2&lt;/span&gt; c4 = &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:teal;"&gt;ClassBentuk2&lt;/span&gt;();&lt;br /&gt;&lt;span style=""&gt;            &lt;/span&gt;&lt;span style="color:green;"&gt;//c4.method1();&lt;/span&gt;&lt;br /&gt;&lt;span style=""&gt;            &lt;/span&gt;c4.testevent += &lt;span style="color:blue;"&gt;delegate&lt;/span&gt; { TestBiasa(); };&lt;br /&gt;&lt;span style=""&gt;            &lt;/span&gt;c4.method1();&lt;/span&gt;&lt;/p&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22491498-8991167876520423347?l=widyanahar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://widyanahar.blogspot.com/feeds/8991167876520423347/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22491498&amp;postID=8991167876520423347' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/8991167876520423347'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/8991167876520423347'/><link rel='alternate' type='text/html' href='http://widyanahar.blogspot.com/2008/06/event-dan-delegate.html' title='004. Event dan Delegate'/><author><name>N.A. Widyanahar</name><uri>http://www.blogger.com/profile/15078397541522591412</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='29' src='http://1.bp.blogspot.com/_z-gOROj07o0/SvD6e8Mf7DI/AAAAAAAAAHg/adRKozl4o-w/S220/profil1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22491498.post-7760008310796014409</id><published>2008-06-17T14:07:00.000+07:00</published><updated>2008-06-20T09:59:02.264+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='N11. PHP Reference'/><title type='text'>Paging di PHP</title><content type='html'>Bagaimana cara melakukannya di PHP?&lt;br /&gt;Setelah saya menuliskan caranya di .NET. maka saya akan meringkasnya untuk Anda dengan PHP. Banyak sekali blog yang telah menuliskan hal ini, di antaranya:&lt;br /&gt;&lt;br /&gt;1. http://www.php-mysql-tutorial.com/php-mysql-paging.php&lt;br /&gt;2. http://anangss.wordpress.com/2005/08/08/konsep-paging-di-php/&lt;br /&gt;&lt;br /&gt;&lt;span class="fullpost"&gt;&lt;br /&gt;&lt;br /&gt;Kalau di .NET kita bisa menggunakan fitur yang ada di komponen datagridnya, maka dengan PHP kita sebetulnya menggunakan mekanisme refresh dengan argumen yang berisi masukan parameter angka pembatasan, yang nantinya akan digunakan sebagai parameter LIMIT di query. Jadi intinya ialah pemanfaatan query-nya.&lt;br /&gt;&lt;br /&gt;&lt;span class="fullpost"&gt;&lt;br /&gt;&lt;br /&gt;Bagaimana caranya?&lt;br /&gt;Pertama dengan paging ini, berarti kita membutuhkan alat navigasi, yang biasanya berupa link, di antaranya:&lt;br /&gt;1. posisi-2 relatif seperti: first, previous, next, last.&lt;br /&gt;2. angka-angka halaman seperti: 1, 2, 3, 4, .... last.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Jadi, pada saat pertama kali load. halaman php yang diakses akan sama dengan akses ke halaman  seperti ini:&lt;br /&gt;&lt;br /&gt;http://localhost:8082/namaweb/datadisplay.php?pos=0&lt;br /&gt;&lt;br /&gt;tampak bahwa argumennya ialah pos sama dengan 0&lt;br /&gt;&lt;br /&gt;Bila user menekan next, maka refresh page akan dilakukan yang merujuk pada:&lt;br /&gt;&lt;br /&gt;http://localhost:8082/namaweb/datadisplay.php?pos=1&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;$ssql= "select * from m_product order by productname limit $page,$home";&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span class="fullpost"&gt;&lt;br /&gt;&lt;br /&gt;Berikut kode selengkapnya. Pada contoh ini pengaksesan data kita tempatkan di sebuah class tersendiri, dimana untuk mengeksekusi query cukup dipanggil function DataSelect.&lt;br /&gt;&lt;br /&gt;&lt;textarea name="textfield" rows="10"&gt;&lt;/textarea&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;ceil($n&gt;&lt;br /&gt;&lt;/ceil($n&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22491498-7760008310796014409?l=widyanahar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://widyanahar.blogspot.com/feeds/7760008310796014409/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22491498&amp;postID=7760008310796014409' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/7760008310796014409'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/7760008310796014409'/><link rel='alternate' type='text/html' href='http://widyanahar.blogspot.com/2008/06/paging-di-php.html' title='Paging di PHP'/><author><name>N.A. Widyanahar</name><uri>http://www.blogger.com/profile/15078397541522591412</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='29' src='http://1.bp.blogspot.com/_z-gOROj07o0/SvD6e8Mf7DI/AAAAAAAAAHg/adRKozl4o-w/S220/profil1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22491498.post-695893358919292228</id><published>2008-06-17T11:19:00.017+07:00</published><updated>2011-04-29T11:16:24.943+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='N15. Oracle Issues'/><title type='text'>Browsing Database Homepage dengan APEX</title><content type='html'>&lt;span class="fullpost"&gt;Masih dengan Oracle 10g XE.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Setelah terinstal dengan baik maka kita bisa menggunakan APEX &lt;br /&gt;Tapi disini kita menggunakannya di mesin server yang terinstal.&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&lt;a href="http://127.0.0.1:8080/APEX"&gt;http://127.0.0.1:8080/APEX&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;yang juga bisa diakses dari menu Oracle Database 10g Express Edition/Go to Database Home Page&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-NSd3qwWk-Ks/TbkqWm5ZaeI/AAAAAAAAAJI/5N9Eq69xKDY/s1600/DB1.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="160" j8="true" src="http://2.bp.blogspot.com/-NSd3qwWk-Ks/TbkqWm5ZaeI/AAAAAAAAAJI/5N9Eq69xKDY/s320/DB1.JPG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Agar Homepage Database ini&amp;nbsp;berhasil diakses, network service harus dalam posisi aktif.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-sFubKR9l5a4/Tbo7HNaLEAI/AAAAAAAAAJM/myQF3NCK69U/s1600/network.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="309" j8="true" src="http://2.bp.blogspot.com/-sFubKR9l5a4/Tbo7HNaLEAI/AAAAAAAAAJM/myQF3NCK69U/s320/network.JPG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;Untuk mengakses halaman Database ini dari komputer lain, maka yang kita lakukan ialah mengeksekusi perintah berikut ini pada command line SQL Anda.&lt;br /&gt;&lt;br /&gt;Step:&lt;br /&gt;1. Buka SQL Command Anda, lalu login&lt;br /&gt;2. Ketikkan perintah berikut ini: &lt;br /&gt;&lt;br /&gt;&lt;span style="color: blue; font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace; font-size: x-small;"&gt;EXEC DBMS_XDB.SETLISTENERLOCALACCESS(FALSE);&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;dengan mengeksekusi perintah di atas, bukan saja saya bisa menggunakan ip server di mesin ybs, tetapi tentunya saya bisa browse halaman APEX dari komputer lain. termasuk windows tentunya.&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;a href="http://mylinux:8080/APEX"&gt;http://mylinux:8080/APEX&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Referensi:&lt;br /&gt;&lt;a href="http://daust.blogspot.com/2006/01/xe-changing-default-http-port.html"&gt;http://daust.blogspot.com/2006/01/xe-changing-default-http-port.html&lt;/a&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22491498-695893358919292228?l=widyanahar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://widyanahar.blogspot.com/feeds/695893358919292228/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22491498&amp;postID=695893358919292228' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/695893358919292228'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/695893358919292228'/><link rel='alternate' type='text/html' href='http://widyanahar.blogspot.com/2008/06/acknowledgement.html' title='Browsing Database Homepage dengan APEX'/><author><name>N.A. Widyanahar</name><uri>http://www.blogger.com/profile/15078397541522591412</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='29' src='http://1.bp.blogspot.com/_z-gOROj07o0/SvD6e8Mf7DI/AAAAAAAAAHg/adRKozl4o-w/S220/profil1.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-NSd3qwWk-Ks/TbkqWm5ZaeI/AAAAAAAAAJI/5N9Eq69xKDY/s72-c/DB1.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22491498.post-2727924511113073786</id><published>2008-06-16T13:53:00.000+07:00</published><updated>2008-06-16T15:20:18.086+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='N06. ASP.NET C#'/><title type='text'>Paging: Pengaturan jumlah baris data per  halaman pada Grid</title><content type='html'>Paging dilakukan agar dalam sekali tampilan muncul sekumpulan data tertentu dalam satu kali tampil. Semisal dalam penarikan data ada 100 baris yang tampil, maka kita bisa mengatur agar hanya 20 baris untuk setiap kali tampil. Dengan demikian akan dibutuhkan navigasi halaman untuk mencapai data berikutnya. Pada DataGrid hal ini difasilitasi dengan baik.&lt;br /&gt;&lt;br /&gt;&lt;span class="fullpost"&gt;&lt;br /&gt;Langkah yang harus kita lakukan ialah:&lt;br /&gt;1. Mengatur property AllowPaging pada DataGrid, untuk menentukan bahwa grid menggunakan paging. Nilai yang diisikan ialah true.&lt;br /&gt;2. Melalui property PageSize pada DataGrid, untuk mengatur jumlah baris yang tampak sekali tampil. Data yang diisikan ialah jumlah baris yang dikehendaki.&lt;br /&gt;3. Mengisi event PageIndexChanged pada Datagrid, untuk menentukan tampilan page berikutnya yang harus kelihatan.&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(51, 51, 255);font-family:courier new;" &gt;private void DataGrid1_PageIndexChanged(object source, System.Web.UI.WebControls.DataGridPageChangedEventArgs e)&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);font-family:courier new;" &gt;  {&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);font-family:courier new;" &gt;   DataGrid1.CurrentPageIndex = e.NewPageIndex;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);font-family:courier new;" &gt;   DataGrid1.DataSource = dsk;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);font-family:courier new;" &gt;   DataGrid1.DataBind();&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);font-family:courier new;" &gt;   DataNumbering(DataGrid1);&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);font-family:courier new;" &gt;  }&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Untuk mengakses event pageindexchanged ini kita bisa lakukan dengan membuka window properties pada bagian event dan mendobelklik kolom PageIndexChanged, sehingga akan muncul template kode sepert ini dibawah ini:&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);font-size:85%;" &gt;&lt;span style="font-family:courier new;"&gt;private void DataGrid1_PageIndexChanged(object source, System.Web.UI.WebControls.DataGridPageChangedEventArgs e)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt; {&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  }&lt;/span&gt;&lt;/span&gt; &lt;br /&gt;&lt;br /&gt;Penjelasan dari kode di atas adalah sebagai berikut:&lt;br /&gt;&lt;br /&gt;Event di atas akan diproses oleh program, setiap kali page index pada sebuah grid berubah. Perubahan ini tentu saja dipicu dengan user menekan tombol next atau previous pada grid yang muncul setelah kita melakukan langkah 2.&lt;br /&gt;&lt;br /&gt;Dengan membagi-bagi baris data dalam paging, maka setiap page dikenali dengan page index. Pada event di atas kita, harus menentukan agar page index yang dituju menjadi page index saat itu yaitu dengan kode berikut ini.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);font-size:85%;" &gt;&lt;span style="font-family:courier new;"&gt;   DataGrid1.CurrentPageIndex = e.NewPageIndex;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Di samping itu, kita juga harus melakukan binding ulang pada data.&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);font-size:85%;" &gt;&lt;span style="font-family: courier new;"&gt;  DataGrid1.DataSource = datasetKita;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;  DataGrid1.DataBind();&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Sehingga isi event di atas akan menjadi seperti ini:&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);font-size:85%;" &gt;&lt;span style="font-family:courier new;"&gt;private void DataGrid1_PageIndexChanged(object source, System.Web.UI.WebControls.DataGridPageChangedEventArgs e)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt; {&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   DataGrid1.CurrentPageIndex = e.NewPageIndex;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   DataGrid1.DataSource = datasetKita;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   DataGrid1.DataBind();&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  }&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;Dengan melengkapi kode di atas maka Datagrid akan berhasil menampilkan paging sebagaimana yang kita kehendaki.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22491498-2727924511113073786?l=widyanahar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://widyanahar.blogspot.com/feeds/2727924511113073786/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22491498&amp;postID=2727924511113073786' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/2727924511113073786'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/2727924511113073786'/><link rel='alternate' type='text/html' href='http://widyanahar.blogspot.com/2008/06/paging-pengaturan-jumlah-baris-data-per.html' title='Paging: Pengaturan jumlah baris data per  halaman pada Grid'/><author><name>N.A. Widyanahar</name><uri>http://www.blogger.com/profile/15078397541522591412</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='29' src='http://1.bp.blogspot.com/_z-gOROj07o0/SvD6e8Mf7DI/AAAAAAAAAHg/adRKozl4o-w/S220/profil1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22491498.post-8259775919525210660</id><published>2008-06-16T13:11:00.000+07:00</published><updated>2008-06-17T09:19:54.457+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='N11. PHP Reference'/><title type='text'>Session sebagai  penyimpan data</title><content type='html'>Session&lt;br /&gt;Session merupakan variabel penyimpan data yang ada sampai browser tempat aplikasi web kita dimatikan.  Dengan kata lain, selama browser masih ada, maka variabel session ini bisa kita deklarasikan di sebuah halaman, dan nilainya bisa kita pertukarkan atau kirim ke berbagai halaman lainnya selama masih menggunakan browser yang sama.&lt;br /&gt;&lt;br /&gt;&lt;span class="fullpost"&gt;&lt;br /&gt;Untuk memulai sebuah session, maka kita harus memanggil function session_start() terlebih dahulu. &lt;br /&gt;&lt;br /&gt;  Session_start()&lt;br /&gt;&lt;br /&gt;Pada kode program di bawah ini, kita memasukkan variabel berisi “masukan user 1” yang ada di form1.php dan kita gunakan di form2.php&lt;br /&gt;&lt;br /&gt;-- form1.php&lt;br /&gt;&lt;?php&lt;br /&gt;session_start();&lt;br /&gt;$_SESSION['var1']="masukan user 1"; &lt;br /&gt;?&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;di file tujuan nilai SESSION var1 kita akses kembali dengan sintaks berikut ini:&lt;br /&gt;&lt;br /&gt;--form2.php&lt;br /&gt;&lt;?php&lt;br /&gt;session_start();&lt;br /&gt;echo $_SESSION['var1'];&lt;br /&gt;?&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22491498-8259775919525210660?l=widyanahar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://widyanahar.blogspot.com/feeds/8259775919525210660/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22491498&amp;postID=8259775919525210660' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/8259775919525210660'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/8259775919525210660'/><link rel='alternate' type='text/html' href='http://widyanahar.blogspot.com/2008/06/session-sebagai-penyimpan-data.html' title='Session sebagai  penyimpan data'/><author><name>N.A. Widyanahar</name><uri>http://www.blogger.com/profile/15078397541522591412</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='29' src='http://1.bp.blogspot.com/_z-gOROj07o0/SvD6e8Mf7DI/AAAAAAAAAHg/adRKozl4o-w/S220/profil1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22491498.post-7102044214916939671</id><published>2008-06-12T14:44:00.000+07:00</published><updated>2008-06-17T09:43:35.213+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='N02. IT Management'/><title type='text'>Draft Manajemen Administrasi Source Code</title><content type='html'>Dalam proses pengembangan Software, diperlukan sebuah konsep yang memadai untuk mengelola source code. &lt;br /&gt;&lt;br /&gt;Berikut adalah rancangan konsepnya.&lt;br /&gt;&lt;br /&gt;&lt;span class="fullpost"&gt; &lt;br /&gt;&lt;div class="Section1"&gt;    &lt;h1  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;Poin-poin Prosedur&lt;/span&gt; &lt;/h1&gt;  &lt;ol style="margin-top: 0in;" start="1" type="1"&gt;&lt;li class="MsoNormal" style=""&gt;Memuat      daftar komponen/aplikasi yang beserta source codenya.&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;Perlu      disusun sistematika dan hirarkhi lokasi penyimpanan setiap source code,      khususnya produk yang memuat lokasi source code&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;Memetakan      daftar PIC developer setiap source code.&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;Memuat      keterangan setiap source code per release atau per update/patch.&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;Memuat      versi produk&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;Menuliskan      dependency file/komponen.&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;Memberikan      semacam file README, yang berisi ringkasan poin-poin penting seperti poin      3 -6 di atas.&lt;/li&gt;&lt;/ol&gt;    &lt;p class="MsoNormal"&gt;&lt;o:p&gt;&lt;br /&gt;&lt;/o:p&gt;&lt;/p&gt;  &lt;h1  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;Media Penyimpanan&lt;/span&gt;&lt;/h1&gt;  &lt;ol style="margin-top: 0in;" start="1" type="1"&gt;&lt;li class="MsoNormal" style=""&gt;Menyiapkan      lokasi utama source code&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;Menyusun      struktur folder penyimpanan per produk&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;Menyiapkan      lokasi backup source code&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;Scheduling      backup, untuk membackup secara rutin file source code.&lt;/li&gt;&lt;/ol&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;/div&gt;&lt;br /&gt;&lt;h1  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;Manajemen Update Kode&lt;/span&gt;&lt;/h1&gt;  &lt;p class="MsoNormal"&gt;Disini developer menggunakan SVN sebagai alat bantu untuk menyimpan source code di Server. Letak setiap folder akan disusun berdasarkan &lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 0.25in;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;ol style="margin-top: 0in;" start="1" type="1"&gt;&lt;li class="MsoNormal" style=""&gt;First      Copy: Mengumpulkan semua source code ke dalam folder SVN yang telah      dibuatkan.&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;Update Copy/ Saat Maintain Perubahan Aplikasi: Mengambil Source Code Terbaru dan Mengeditnya.&lt;/li&gt;&lt;/ol&gt;  &lt;div class="Section1"&gt;  &lt;p class="MsoNormal"&gt;Pada saat menyelesaikan update kode, setelah mengumpulkan ke SVN. Masing-masing developer juga men-cc &lt;st1:place st="on"&gt;&lt;st1:state st="on"&gt;kan&lt;/st1:state&gt;&lt;/st1:place&gt; scenario testing ke PIC dokumentasi release, bersama dengan README yang mengandung informasi update/patch untuk release tersebut.&lt;/p&gt;&lt;br /&gt;note: untuk SVN, silakan melihat referensi dari s/w ini.&lt;br /&gt;&lt;o:p&gt;&lt;/o:p&gt;  &lt;/div&gt;&lt;h1  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;Simple Web&lt;/span&gt; &lt;/h1&gt;  &lt;p class="MsoNormal"&gt;Web sederhana untuk mengecek latest source code berdasarkan produk, feature, dan, dependency. Dimaintain oleh PIC dokumentasi release. Sehingga informasi awal keberadaaan sebuah source code bisa segera diketahui.&lt;/p&gt;      &lt;h1  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;Prosedur Administrasi Kode&lt;/span&gt;&lt;/h1&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Developer:&lt;/p&gt;  &lt;ol style="margin-top: 0in;" start="1" type="1"&gt;&lt;li class="MsoNormal" style=""&gt;Login      ke SVN dan CheckOut untuk mengambil source code terbaru&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;Mengupdate      Kode dan Mengetes hasil perubahan Source Code.&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;Melakukan      Commit ke SVN untuk mengirim perubahan source code ke Server&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;Membuat      README file seperti poin pada bagian Konsep Dokumentasi&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;Mengirim      notifikasi email ke PIC Dokumentasi&lt;/li&gt;&lt;/ol&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;PIC Dokumentasi:&lt;/p&gt;  &lt;ol style="margin-top: 0in;" start="1" type="1"&gt;&lt;li class="MsoNormal" style=""&gt;Mengkopi      README file source code untuk selanjutnya di-load ke database administrasi      source code.&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;Memastikan      repository server dengan SVN berjalan dengan baik. &lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;Melakukan      backup dengan Scheduling.&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;Memberikan      notifikasi kepada Developer secara periodik ada tidaknya update source      code berdasarkan status yang ada di repository.&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;Mengupdate      daftar ringkasan jumlah dan status Source Code secara periodik&lt;/li&gt;&lt;/ol&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;h1  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;Isi README file&lt;/span&gt;&lt;/h1&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style="margin-left: 0.75in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style=""&gt;&lt;span style=""&gt;1.&lt;span style=""&gt;      &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;Nama PIC developer&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 0.75in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style=""&gt;&lt;span style=""&gt;2.&lt;span style=""&gt;      &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;Menuliskan keterangan setiap source code per release/per update/patch&lt;/p&gt;&lt;p class="MsoNormal" style="margin-left: 0.75in; text-indent: -0.25in;"&gt;&lt;span style=""&gt;&lt;span style=""&gt;3.&lt;span style=""&gt;      &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;Memuat versi produk&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 0.75in; text-indent: -0.25in;"&gt;&lt;!--[if !supportLists]--&gt;&lt;span style=""&gt;&lt;span style=""&gt;4.&lt;span style=""&gt;      &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;!--[endif]--&gt;Menuliskan dependency file/komponen.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22491498-7102044214916939671?l=widyanahar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://widyanahar.blogspot.com/feeds/7102044214916939671/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22491498&amp;postID=7102044214916939671' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/7102044214916939671'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/7102044214916939671'/><link rel='alternate' type='text/html' href='http://widyanahar.blogspot.com/2008/06/draft-manajemen-administrasi-source.html' title='Draft Manajemen Administrasi Source Code'/><author><name>N.A. Widyanahar</name><uri>http://www.blogger.com/profile/15078397541522591412</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='29' src='http://1.bp.blogspot.com/_z-gOROj07o0/SvD6e8Mf7DI/AAAAAAAAAHg/adRKozl4o-w/S220/profil1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22491498.post-4566769252475659090</id><published>2008-06-11T18:34:00.000+07:00</published><updated>2008-06-16T15:23:01.459+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='N10. Referensi Bahasa C# (OOP)'/><title type='text'>003. C#: Interface Class</title><content type='html'>&lt;p class="MsoNormal"&gt;Interface merupakan Class umum yang memuat definisi umum, yang akan digunakan sebagai rujukan bagi Class yang mengimplementasikan Class ini. Pada interface, method dan property yang didefinisikan belum ditentukan. Class yang menggunakan sebuah interface berarti terikat kontrak untuk mengimplementasikan semua method, property, maupun indexer dari interface tersebut.&lt;/p&gt; &lt;br /&gt;&lt;span class="fullpost"&gt; &lt;br /&gt; &lt;p class="MsoNormal"&gt;  &lt;br /&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;Interface mempunyai kegunaan yang hampir sama dengan abstract class yang akan disampaikan dalam bagian lain bab ini, dengan perbedaan:&lt;/p&gt;  &lt;ol style="margin-top: 0in;" start="1" type="1"&gt;&lt;li class="MsoNormal" style=""&gt;Interface      merupakan kontrak yang harus diikuti semua property/methodnya oleh class      yang mengimplementasikannya. Sedangkan abstract Class tidak.&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;Interface      hanya mendefinisikan kerangka method dan property yang akan dipakai. Isi      prosesnya akan diimplementasikan di Class. Abstract Class bisa mengandung      definisi method/property, dan bisa pula mengandung proses implementasinya.&lt;/li&gt;&lt;/ol&gt;    &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style="color: blue;"&gt;interface&lt;/span&gt; &lt;span style="color: teal;"&gt;Interface1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;            &lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;span style=""&gt;    &lt;/span&gt;{&lt;br /&gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;span style="color: blue;"&gt;void&lt;/span&gt; method1();&lt;br /&gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;span style="color: blue;"&gt;void&lt;/span&gt; method2();&lt;br /&gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;span style="color: blue;"&gt;string&lt;/span&gt; property1&lt;br /&gt;&lt;span style=""&gt;        &lt;/span&gt;{&lt;br /&gt;&lt;span style=""&gt;            &lt;/span&gt;&lt;span style="color: blue;"&gt;set&lt;/span&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;span style=""&gt;            &lt;/span&gt;&lt;span style="color: blue;"&gt;get&lt;/span&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;span style=""&gt;        &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;span style=""&gt;    &lt;/span&gt;}&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Untuk mengimplementasikan Interface ini sama dengan melakukan inheritance pada class biasa, dan kemudian template property dan methodnya dengan melakukan klik kanan pada interface tersebut, pada contoh ini &lt;span style="font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;span style="color: teal;"&gt;Interface1&lt;/span&gt; &lt;/span&gt;, dan pilih menu &lt;span style="font-weight: bold;font-size:85%;" &gt;&lt;span style="font-family: arial;"&gt;Implement Interface&lt;/span&gt;&lt;/span&gt;. Dari hasil template yang dihasilkan seperti kode di bawah, masukkan kode proses yang diinginkan.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: blue;"&gt;class&lt;/span&gt;&lt;span style="font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt; &lt;span style="color: teal;"&gt;ClassIInterface&lt;/span&gt; : &lt;span style="color: teal;"&gt;Interface1&lt;/span&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;span style=""&gt;    &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;span style=""&gt;       &lt;/span&gt;&lt;span style="color: green;"&gt;// #region Interface1 Members&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;; color: green;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;span style="color: blue;"&gt;void&lt;/span&gt; &lt;span style="color: teal;"&gt;Interface1&lt;/span&gt;.method1()&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;span style=""&gt;        &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;span style=""&gt;            &lt;/span&gt;&lt;span style="color: blue;"&gt;throw&lt;/span&gt; &lt;span style="color: blue;"&gt;new&lt;/span&gt; &lt;span style="color: teal;"&gt;Exception&lt;/span&gt;(&lt;span style="color: maroon;"&gt;"The method or operation is not implemented."&lt;/span&gt;);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;span style=""&gt;        &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;span style="color: blue;"&gt;void&lt;/span&gt; &lt;span style="color: teal;"&gt;Interface1&lt;/span&gt;.method2()&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;      &lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;span style=""&gt;        &lt;/span&gt;{&lt;br /&gt;&lt;span style=""&gt;            &lt;/span&gt;&lt;span style="color: blue;"&gt;throw&lt;/span&gt; &lt;span style="color: blue;"&gt;new&lt;/span&gt; &lt;span style="color: teal;"&gt;Exception&lt;/span&gt;(&lt;span style="color: maroon;"&gt;"The method or operation is not implemented."&lt;/span&gt;);&lt;br /&gt;&lt;span style=""&gt;        &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;span style="color: blue;"&gt;string&lt;/span&gt; &lt;span style="color: teal;"&gt;Interface1&lt;/span&gt;.property1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;        &lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;span style=""&gt;        &lt;/span&gt;{&lt;br /&gt;&lt;span style=""&gt;            &lt;/span&gt;&lt;span style="color: blue;"&gt;get&lt;/span&gt;&lt;br /&gt;&lt;span style=""&gt;            &lt;/span&gt;{&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;span style=""&gt;                &lt;/span&gt;&lt;span style="color: blue;"&gt;throw&lt;/span&gt; &lt;span style="color: blue;"&gt;new&lt;/span&gt; &lt;span style="color: teal;"&gt;Exception&lt;/span&gt;(&lt;span style="color: maroon;"&gt;"The method or operation is not implemented."&lt;/span&gt;);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;span style=""&gt;            &lt;/span&gt;}&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;span style=""&gt;            &lt;/span&gt;&lt;span style="color: blue;"&gt;set&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;span style=""&gt;            &lt;/span&gt;{&lt;br /&gt;&lt;span style=""&gt;                &lt;/span&gt;&lt;span style="color: blue;"&gt;throw&lt;/span&gt; &lt;span style="color: blue;"&gt;new&lt;/span&gt; &lt;span style="color: teal;"&gt;Exception&lt;/span&gt;(&lt;span style="color: maroon;"&gt;"The method or operation is not implemented."&lt;/span&gt;);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;span style=""&gt;            &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;span style=""&gt;        &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;span style=""&gt;     &lt;/span&gt;&lt;span style="color: green;"&gt;//&lt;span style=""&gt;   &lt;/span&gt;#endregion&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-size: 10pt; font-family: &amp;quot;Courier New&amp;quot;;"&gt;&lt;span style=""&gt;    &lt;/span&gt;}&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22491498-4566769252475659090?l=widyanahar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://widyanahar.blogspot.com/feeds/4566769252475659090/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22491498&amp;postID=4566769252475659090' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/4566769252475659090'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/4566769252475659090'/><link rel='alternate' type='text/html' href='http://widyanahar.blogspot.com/2008/06/003-c-interface-class.html' title='003. C#: Interface Class'/><author><name>N.A. Widyanahar</name><uri>http://www.blogger.com/profile/15078397541522591412</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='29' src='http://1.bp.blogspot.com/_z-gOROj07o0/SvD6e8Mf7DI/AAAAAAAAAHg/adRKozl4o-w/S220/profil1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22491498.post-4289731727524527425</id><published>2008-06-10T13:32:00.000+07:00</published><updated>2008-06-16T16:09:41.930+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='N10. Referensi Bahasa C# (OOP)'/><title type='text'>002.  Abstract Class</title><content type='html'>Abstract Class merupakan Class yang khusus dibuat untuk keperluan inheritance. Tujuan dari pembuatan abstract class ini ialah untuk membuat definisi umum bagi class-class yang akan menjadi turunan darinya.  &lt;br /&gt;&lt;span class="fullpost"&gt;&lt;br /&gt; &lt;p class="MsoNormal"&gt;Untuk membuatnya kita cukup menambahkan keyword abstract di depan class yang kita definisikan.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;  &lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;color:blue;"   &gt;  abstract&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;color:blue;"   &gt;class&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;color:teal;"   &gt;ClassBasis&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p  class="MsoNormal" style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style=""&gt;    &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;    &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Definisi umum ini bisa jadi sudah mempunyai method yang dibuat khusus untuk diturunkan.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;  &lt;/span&gt;&lt;span style=";font-size:85%;color:blue;"  &gt;abstract&lt;/span&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;span style=";font-size:85%;color:blue;"  &gt;class&lt;/span&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;span style=";font-size:85%;color:teal;"  &gt;ClassBasis&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;    &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;span style="color:blue;"&gt;public&lt;/span&gt; &lt;span style="color:blue;"&gt;void&lt;/span&gt; method1(&lt;span style="color:blue;"&gt;ref&lt;/span&gt; &lt;span style="color:blue;"&gt;string&lt;/span&gt; s)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;      &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;        &lt;/span&gt;{&lt;br /&gt;&lt;span style=""&gt;            &lt;/span&gt;s = &lt;span style="color:maroon;"&gt;"this is a sample of method"&lt;/span&gt;;&lt;br /&gt;&lt;span style=""&gt;        &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;&lt;span style=""&gt;    &lt;/span&gt;}&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Abstract class bisa juga mempunyai sebuah abstract method, yang baru dibuatkan method implementasinya di class turunan.&lt;/p&gt;            &lt;p  class="MsoNormal" style="font-family:courier new;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;span style="font-size:85%;"&gt;&lt;span style=""&gt;  &lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;color:blue;"   &gt;abstract&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;color:blue;"   &gt;class&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=""&gt;ClassBasis&lt;br /&gt;&lt;/span&gt;{&lt;span style="color:blue;"&gt;   public&lt;/span&gt; &lt;span style="color:blue;"&gt;abstract &lt;/span&gt;&lt;span style="color:blue;"&gt;void&lt;/span&gt; method2(&lt;span style="color:blue;"&gt;ref &lt;/span&gt;&lt;span style="color:blue;"&gt;string&lt;/span&gt; s);&lt;o:p&gt;&lt;/o:p&gt;&lt;span style=""&gt; &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;}&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="color:black;"&gt;Abstract Class tidak bisa diinstansiasi. Abstract method tidak mempunyai implementasi, sehingga penulisannya dilakukan hanya dengan mengikutkan semikolon, bukan blok method {} seperti biasanya. Abstract method ini bisa digunakan oleh Class turunannya dengan melakukan override.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="color:black;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;color:blue;"   &gt;class&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; &lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;color:teal;"   &gt;ChildBasis&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; : &lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;color:teal;"   &gt;ClassBasis&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal"  style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style=""&gt;    &lt;/span&gt;{&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal"  style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;span style="color:blue;"&gt;public&lt;/span&gt; &lt;span style="color:blue;"&gt;override&lt;/span&gt; &lt;span style="color:blue;"&gt;void&lt;/span&gt; method2(&lt;span style="color:blue;"&gt;ref&lt;/span&gt; &lt;span style="color:blue;"&gt;string&lt;/span&gt; s)&lt;br /&gt;&lt;span style=""&gt;        &lt;/span&gt;{&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"  style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style=""&gt;            &lt;/span&gt;    s = &lt;span style="color:maroon;"&gt;"this is a child implement method"&lt;/span&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style=""&gt;        &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p face="courier new" class="MsoNormal"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style=""&gt;    &lt;/span&gt;}&lt;/span&gt;&lt;span style=";font-size:85%;color:black;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p style="font-family: courier new;" class="MsoNormal"&gt;&lt;span style=";font-size:85%;color:black;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="color:black;"&gt;Pada class turunan dari abstract class, melalui IDE VS2005 kita bisa membuat implementasi methodnya dengan mengarahkan kursor pada nama class di belakang class turunan, dan memilih menu implements Abstract Class, sehingga abstract method di Class Induk akan ditulis secara otomatis template-nya di Class turunan.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp3.blogger.com/_z-gOROj07o0/SE4kJR_qG_I/AAAAAAAAADA/qIJnzFZXfag/s1600-h/buku_tes.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp3.blogger.com/_z-gOROj07o0/SE4kJR_qG_I/AAAAAAAAADA/qIJnzFZXfag/s320/buku_tes.jpg" alt="" id="BLOGGER_PHOTO_ID_5210141560782068722" border="0" /&gt;&lt;/a&gt;template kode yang dihasilkan akan memudahkan penulisan implementasi yang kita inginkan, seperti di bawah ini:&lt;br /&gt;&lt;br /&gt;&lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style="color:blue;"&gt;class&lt;/span&gt; &lt;span style="color:teal;"&gt;TBasis&lt;/span&gt; : &lt;span style="color:teal;"&gt;ClassBasis&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;span style=""&gt;    &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;span style="color:blue;"&gt;public&lt;/span&gt; &lt;span style="color:blue;"&gt;override&lt;/span&gt; &lt;span style="color:blue;"&gt;void&lt;/span&gt; method2(&lt;span style="color:blue;"&gt;ref&lt;/span&gt; &lt;span style="color:blue;"&gt;string&lt;/span&gt; s)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;span style=""&gt;        &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;span style=""&gt;            &lt;/span&gt;&lt;span style="color:blue;"&gt;throw&lt;/span&gt; &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:teal;"&gt;Exception&lt;/span&gt;(&lt;span style="color:maroon;"&gt;"The method or operation is not implemented."&lt;/span&gt;);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;span style=""&gt;        &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;span style=""&gt;    &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22491498-4289731727524527425?l=widyanahar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://widyanahar.blogspot.com/feeds/4289731727524527425/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22491498&amp;postID=4289731727524527425' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/4289731727524527425'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/4289731727524527425'/><link rel='alternate' type='text/html' href='http://widyanahar.blogspot.com/2008/06/abstract-class.html' title='002.  Abstract Class'/><author><name>N.A. Widyanahar</name><uri>http://www.blogger.com/profile/15078397541522591412</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='29' src='http://1.bp.blogspot.com/_z-gOROj07o0/SvD6e8Mf7DI/AAAAAAAAAHg/adRKozl4o-w/S220/profil1.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp3.blogger.com/_z-gOROj07o0/SE4kJR_qG_I/AAAAAAAAADA/qIJnzFZXfag/s72-c/buku_tes.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22491498.post-1111351243079693248</id><published>2008-06-05T10:30:00.000+07:00</published><updated>2008-06-19T14:16:47.370+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='N06. Reporting Issues'/><title type='text'>VB.NET: Crystal Report dengan VS2005</title><content type='html'>&lt;p class="MsoNormal"&gt;&lt;span style=""&gt; &lt;/span&gt;Berikut saya ringkaskan Langkah-2 kunci dalam menyusun sebuah report dengan Crystal Report di lingkungan Visual Studio 2005. Bahasa yang digunakan ialah VB.NET.&lt;/p&gt; &lt;br /&gt;&lt;br /&gt;&lt;span class="fullpost"&gt;&lt;br /&gt; &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;ol style="margin-top: 0in;" start="1" type="1"&gt;&lt;li class="MsoNormal" style=""&gt;Buat      file DataSet .xsd&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;Buat      file Report, atur sumber datanya ke DataSet di atas&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;Buat      dataSet yg terhubung ke database&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;Buat      form baru, tambahkan Crystal Report Viewer&lt;/li&gt;&lt;/ol&gt;  &lt;p class="MsoNormal" style="margin-left: 0.25in;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 0.25in;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left: 0.25in;"&gt;Berikut kodenya:&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;span style="font-family: courier new;font-size:85%;color:blue;"  &gt;Dim&lt;/span&gt;&lt;span style="font-family: courier new;font-size:85%;" &gt; sIn(0) &lt;/span&gt;&lt;span style="font-family: courier new;font-size:85%;color:blue;"  &gt;As&lt;/span&gt;&lt;span style="font-family: courier new;font-size:85%;" &gt; &lt;/span&gt;&lt;span style="font-family: courier new;font-size:85%;color:blue;"  &gt;String&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;          &lt;p class="MsoNormal" style="font-family: courier new;"&gt;&lt;span style=";font-size:85%;" &gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;span style="color:blue;"&gt;Dim&lt;/span&gt; da &lt;span style="color:blue;"&gt;As&lt;/span&gt; &lt;span style="color:blue;"&gt;New&lt;/span&gt; OleDbDataAdapter&lt;br /&gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;span style="color:blue;"&gt;Dim&lt;/span&gt; cm &lt;span style="color:blue;"&gt;As&lt;/span&gt; &lt;span style="color:blue;"&gt;New&lt;/span&gt; OleDbCommand&lt;br /&gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;span style="color:blue;"&gt;Dim&lt;/span&gt; cn &lt;span style="color:blue;"&gt;As&lt;/span&gt; OleDbConnection&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;&lt;span style=""&gt;        &lt;/span&gt;rpt = &lt;span style="color:blue;"&gt;New&lt;/span&gt; crReport&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="font-family: courier new;"&gt;&lt;span style=";font-size:85%;" &gt;&lt;span style="color:green;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;        &lt;p class="MsoNormal" style="font-family: courier new;"&gt;&lt;span style=";font-size:85%;" &gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;span style="color:blue;"&gt;Dim&lt;/span&gt; ds &lt;span style="color:blue;"&gt;As&lt;/span&gt; &lt;span style="color:blue;"&gt;New&lt;/span&gt; DataSet&lt;br /&gt;&lt;span style=""&gt;        &lt;/span&gt;cn = &lt;span style="color:blue;"&gt;New&lt;/span&gt; OleDbConnection(infoSession.Login_Connection)&lt;br /&gt;&lt;span style=""&gt;        &lt;/span&gt;cn.Open()&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;            &lt;p class="MsoNormal" style="font-family: courier new;"&gt;&lt;span style=";font-size:85%;" &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;span style="color:blue;"&gt;With&lt;/span&gt; cm&lt;br /&gt;&lt;span style=""&gt;            &lt;/span&gt;.Connection = cn&lt;br /&gt;&lt;span style=""&gt;            &lt;/span&gt;.CommandText = &lt;span style="color:maroon;"&gt;"Select kdprop, kddati2 from vw_tabel"&lt;/span&gt;&lt;br /&gt;&lt;span style=""&gt;            &lt;/span&gt;.CommandType = CommandType.Text&lt;br /&gt;&lt;span style=""&gt;            &lt;/span&gt;.ExecuteNonQuery()&lt;br /&gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;span style="color:blue;"&gt;End&lt;/span&gt; &lt;span style="color:blue;"&gt;With&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="font-family: courier new;"&gt;&lt;span style=";font-size:85%;color:blue;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;          &lt;p class="MsoNormal" style="font-family: courier new;"&gt;&lt;span style=";font-size:85%;" &gt;&lt;span style=""&gt;        &lt;/span&gt;da.SelectCommand = cm&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="font-family: courier new;"&gt;&lt;span style=";font-size:85%;" &gt;&lt;span style=""&gt;        &lt;/span&gt;da.Fill(ds, &lt;span style="color:maroon;"&gt;"Databaru"&lt;/span&gt;)&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;&lt;span style=""&gt;        &lt;/span&gt;rpt.SetDataSource(ds)&lt;/span&gt;&lt;/p&gt;            &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;"  &gt;&lt;span style="font-family: courier new;font-size:85%;" &gt;        &lt;/span&gt;&lt;span style="font-family: courier new;font-size:85%;color:blue;"  &gt;With&lt;/span&gt;&lt;span style="font-family: courier new;font-size:85%;" &gt; &lt;/span&gt;&lt;span style="font-family: courier new;font-size:85%;color:blue;"  &gt;Me&lt;/span&gt;&lt;span style="font-family: courier new;font-size:85%;" &gt;.CrstalReportViewer1&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family: courier new;font-size:85%;" &gt;            &lt;/span&gt;&lt;span style="font-family: courier new;font-size:85%;" &gt;.ReportSource = rpt&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family: courier new;font-size:85%;" &gt;            &lt;/span&gt;&lt;span style="font-family: courier new;font-size:85%;" &gt;.Visible = &lt;/span&gt;&lt;span style="font-family: courier new;font-size:85%;color:blue;"  &gt;True&lt;/span&gt;&lt;span style="font-family: courier new;font-size:85%;" &gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family: courier new;font-size:85%;" &gt;            &lt;/span&gt;&lt;span style="font-family: courier new;font-size:85%;" &gt;.Refresh()&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family: courier new;font-size:85%;" &gt;            &lt;/span&gt;&lt;span style="font-family: courier new;font-size:85%;" &gt;.Show()&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family: courier new;font-size:85%;" &gt;        &lt;/span&gt;&lt;span style="font-family: courier new;font-size:85%;color:blue;"  &gt;End&lt;/span&gt;&lt;span style="font-family: courier new;font-size:85%;" &gt; &lt;/span&gt;&lt;span style="color:blue;"&gt;&lt;span style="font-family: courier new;font-size:85%;" &gt;With&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:blue;"   &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;      &lt;p class="MsoNormal" style="margin-left: 0.25in;"&gt;&lt;span style=";font-family:&amp;quot;;font-size:10;color:blue;"   &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;Satu aspek penting yang perlu dicatat ialah bagaimana dataset yang kita buat berkomunikasi dengan Crystal Report kita. Dalam hal ini yang menjadi mediator ialah dataset dalam .xsd kita. Hasil perolehan query dalam kode dataset kita dimasukkan melalui dataset dalam .xsd ini.&lt;/p&gt;        &lt;p class="MsoNormal" style="margin-left: 0.25in;"&gt;&lt;o:p&gt;&lt;/o:p&gt;Dengan me-refresh data CR kita, perubahan dari struktur data biasanya akan memberikan pesan berikut ini:&lt;o:p&gt;&lt;br /&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;o:p&gt; &lt;/o:p&gt;  &lt;p class="MsoNormal" style="margin-left: 0.25in;"&gt;Note:&lt;/p&gt;  &lt;ol style="margin-top: 0in;" start="1" type="1"&gt;&lt;li class="MsoNormal" style=""&gt;Misalkan      kita ingin mengupdate struktur dari sumber data yang telah berubah, maka      kita menuju ke file dataset xsd kita dulu. Setelah perubahan struktur      tercermin disitu, baru kita menuju ke Crystal Reportnya. &lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;Bagaimanakah      cara kita untuk mengupdate xsd? Ambil dataset yang hendak dirubah, klik      kanan dan pilih configure, tentukan query yang dikehendaki pada kotak      dialog dan tekan Finish.&lt;/li&gt;&lt;/ol&gt;2007,&lt;br /&gt;widya&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22491498-1111351243079693248?l=widyanahar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://widyanahar.blogspot.com/feeds/1111351243079693248/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22491498&amp;postID=1111351243079693248' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/1111351243079693248'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/1111351243079693248'/><link rel='alternate' type='text/html' href='http://widyanahar.blogspot.com/2008/06/vbnet-crystal-report-dengan-vs2005.html' title='VB.NET: Crystal Report dengan VS2005'/><author><name>N.A. Widyanahar</name><uri>http://www.blogger.com/profile/15078397541522591412</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='29' src='http://1.bp.blogspot.com/_z-gOROj07o0/SvD6e8Mf7DI/AAAAAAAAAHg/adRKozl4o-w/S220/profil1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22491498.post-1981919047989590774</id><published>2008-06-05T10:16:00.000+07:00</published><updated>2008-06-20T11:14:45.303+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='N10. Referensi Bahasa C# (OOP)'/><title type='text'>001. virtual untuk override</title><content type='html'>&lt;span style="font-weight: bold;"&gt;keyword virtual&lt;/span&gt;  &lt;p class="MsoNormal"&gt;Virtual merupakan keyword yang digunakan untuk membuat sebuah method, property, atau event dari sebuah class induk bisa di-override di class turunan dari class induk tersebut.&lt;br /&gt;&lt;/p&gt; &lt;br /&gt;&lt;span class="fullpost"&gt;&lt;br /&gt;&lt;p&gt; Ini berarti memberi keleluasaan apakah suatu class itu menggunakan method dengan proses yang sama atau sama sekali berbeda dari induknya, namun dengan nama method yang sama.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Misal: property dari class induk adalah seperti ini:&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt; Public Virtual int jumlahroda()&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;{&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style=""&gt;            &lt;/span&gt;return 2;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;}&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Di Class turunannya, kita bisa meng-override method di atas dengan keyword override seperti ini:&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;Public override int jumlahroda()&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;{&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style=""&gt; &lt;/span&gt;&lt;span style=""&gt;           &lt;/span&gt;return 3;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;}&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Di Class turunan yang lain, apabila jumlah rodanya sama dengan Class induknya maka kita tidak perlu melakukan override.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Contoh kode lebih jelasnya seperti ini, seperti ini:&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;    &lt;/span&gt;class&lt;/span&gt;&lt;span style=""&gt; &lt;span style="color:teal;"&gt;ClassUtama&lt;/span&gt;&lt;br /&gt;&lt;span style=""&gt;    &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;        &lt;/span&gt;&lt;span style="color:blue;"&gt;public&lt;/span&gt; &lt;span style="color:blue;"&gt;virtual&lt;/span&gt; &lt;span style="color:blue;"&gt;string&lt;/span&gt; bentuk()&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;      &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;        &lt;/span&gt;{&lt;br /&gt;&lt;span style=""&gt;            &lt;/span&gt;&lt;span style="color:blue;"&gt;return&lt;/span&gt; &lt;span style="color:maroon;"&gt;"default"&lt;/span&gt;;&lt;br /&gt;&lt;span style=""&gt;        &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;    &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;        &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style="color:blue;"&gt;class&lt;/span&gt; &lt;span style="color:teal;"&gt;ClassBentuk1&lt;/span&gt; : &lt;span style="color:teal;"&gt;ClassUtama&lt;/span&gt;&lt;br /&gt;&lt;span style=""&gt;    &lt;/span&gt;{&lt;br /&gt;&lt;span style=""&gt;     &lt;/span&gt;&lt;span style=""&gt;&lt;br /&gt;  &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;            &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;    &lt;/span&gt;&lt;span style="color:blue;"&gt;class&lt;/span&gt; &lt;span style="color:teal;"&gt;ClassBentuk2&lt;/span&gt; : &lt;span style="color:teal;"&gt;ClassUtama&lt;/span&gt;&lt;br /&gt;&lt;span style=""&gt;    &lt;/span&gt;{&lt;br /&gt;&lt;span style=""&gt;       &lt;/span&gt;&lt;span style="color:blue;"&gt;public&lt;/span&gt; &lt;span style="color:blue;"&gt;override&lt;/span&gt; &lt;span style="color:blue;"&gt;string&lt;/span&gt;&lt;span style=""&gt;  &lt;/span&gt;bentuk()&lt;br /&gt;&lt;span style=""&gt;       &lt;/span&gt;{&lt;br /&gt;&lt;span style=""&gt;           &lt;/span&gt;&lt;span style="color:blue;"&gt;return&lt;/span&gt; &lt;span style="color:maroon;"&gt;"oval"&lt;/span&gt;;&lt;br /&gt;&lt;span style=""&gt;       &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;&lt;span style=""&gt;    &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Pada contoh ini kita mempunyai sebuah class induk bernama ClassUtama. Dan Class turunan bernama ClassBentuk1 dan ClassBentuk2. &lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;      &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;            ClassUtama&lt;/span&gt;&lt;span style=""&gt; c = &lt;span style="color:blue;"&gt;new&lt;/span&gt;&lt;span style=""&gt;   &lt;/span&gt;&lt;span style="color:teal;"&gt;ClassUtama&lt;/span&gt;();&lt;br /&gt;&lt;span style=""&gt;            &lt;/span&gt;&lt;span style="color:blue;"&gt;string&lt;/span&gt; hasil = c.bentuk();&lt;br /&gt;&lt;span style=""&gt;            &lt;/span&gt;&lt;span style="color:teal;"&gt;Console&lt;/span&gt;.WriteLine(&lt;span style="color:maroon;"&gt;"parent class: "&lt;/span&gt; + hasil);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;br /&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;      &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;            &lt;/span&gt;&lt;span style="color:teal;"&gt;ClassUtama&lt;/span&gt; c1 = &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:teal;"&gt;ClassBentuk1&lt;/span&gt;();&lt;br /&gt;&lt;span style=""&gt;            &lt;/span&gt;&lt;span style="color:blue;"&gt;string&lt;/span&gt; hs = c1.bentuk();&lt;br /&gt;&lt;span style=""&gt;            &lt;/span&gt;&lt;span style="color:teal;"&gt;Console&lt;/span&gt;.WriteLine(&lt;span style="color:maroon;"&gt;"child class 1: "&lt;/span&gt; + hs);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;        &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;span style=""&gt;           &lt;/span&gt;&lt;span style="color:teal;"&gt;ClassUtama&lt;/span&gt; c2 = &lt;span style="color:blue;"&gt;new&lt;/span&gt; &lt;span style="color:teal;"&gt;ClassBentuk2&lt;/span&gt;();&lt;br /&gt;&lt;span style=""&gt;            &lt;/span&gt;&lt;span style="color:blue;"&gt;string&lt;/span&gt; h2 = c2.bentuk();&lt;br /&gt;&lt;span style=""&gt;            &lt;/span&gt;&lt;span style="color:teal;"&gt;Console&lt;/span&gt;.WriteLine(&lt;span style="color:maroon;"&gt;"child class 2: "&lt;/span&gt; + h2);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Hasil ekseksekusinya akan tampak seperti ini:&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;      &lt;p style="color: rgb(255, 0, 0);" class="MsoNormal"&gt;&lt;span style=""&gt; &lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(153, 0, 0);font-family:arial;" &gt;                       &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(153, 0, 0);font-family:arial;" &gt;Parent class: default&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 0, 0);font-family:arial;" &gt;                        Child class 1: default&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 0, 0);font-family:arial;" &gt;                        Child class 2: oval&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Turunan pertama akan method bentuknya akan mengambil method dari class induknya, karena dia tidak melakukan override. &lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22491498-1981919047989590774?l=widyanahar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://widyanahar.blogspot.com/feeds/1981919047989590774/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22491498&amp;postID=1981919047989590774' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/1981919047989590774'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/1981919047989590774'/><link rel='alternate' type='text/html' href='http://widyanahar.blogspot.com/2008/06/01-keyword-virtual-untuk-melakukan.html' title='001. virtual untuk override'/><author><name>N.A. Widyanahar</name><uri>http://www.blogger.com/profile/15078397541522591412</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='29' src='http://1.bp.blogspot.com/_z-gOROj07o0/SvD6e8Mf7DI/AAAAAAAAAHg/adRKozl4o-w/S220/profil1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22491498.post-2428241998247799918</id><published>2008-06-05T09:22:00.000+07:00</published><updated>2008-06-10T14:06:42.047+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='N10. Referensi Bahasa C# (OOP)'/><title type='text'>000. Acknowledge</title><content type='html'>This category is to provide a basic reference of OOP in .NET Language such as C#. Most of  writings will be in Bahasa Indonesia, due to the audience where this materials is targetted to.&lt;br /&gt;&lt;br /&gt;Tulisan pada kategori ini digunakan sebagai referensi dasar bagi penulisan sintaks dan bahasa pemrograman berorientasi object. Tujuan dari tulisan ini ialah semacam buku saku untuk mengumpulkan hal-hal fundamental dalam penulisan sintaks program, khususnya C#. Terutama buat catatan pribadi, karena hal-hal konseptual seringkali lupa kalau tidak dipakai.&lt;br /&gt;&lt;br /&gt;Salam,&lt;br /&gt;widyanahar&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22491498-2428241998247799918?l=widyanahar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://widyanahar.blogspot.com/feeds/2428241998247799918/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22491498&amp;postID=2428241998247799918' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/2428241998247799918'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/2428241998247799918'/><link rel='alternate' type='text/html' href='http://widyanahar.blogspot.com/2008/06/001-acknowledge.html' title='000. Acknowledge'/><author><name>N.A. Widyanahar</name><uri>http://www.blogger.com/profile/15078397541522591412</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='29' src='http://1.bp.blogspot.com/_z-gOROj07o0/SvD6e8Mf7DI/AAAAAAAAAHg/adRKozl4o-w/S220/profil1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22491498.post-5090077232546929513</id><published>2008-06-03T09:52:00.000+07:00</published><updated>2008-06-17T10:21:01.412+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='N04. SQL Maneuver'/><title type='text'>Kriteria filter yang berasal dari field data tabel pendukung lainnya.</title><content type='html'>&lt;span style="color: rgb(0, 102, 0); font-weight: bold;font-family:arial;" &gt;Kriteria filter yang berasal &lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); font-weight: bold;font-family:arial;" &gt;dari field data tabel pendukung lainnya&lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;.&lt;/span&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;&lt;applicable&gt;&lt;/applicable&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;br /&gt;&lt;br /&gt;Semisal kita ingin mencari seseorang yang berada di sembarang (nama) departemen, dimana tabel utama mempunyai data yang tidak mempunyai detail atau relasi &lt;span style=""&gt; &lt;/span&gt;di tabel sekunder, dan tabel sekunder ini berelasi dengan tabel ketiga tempat dimana kolom pencarian berada. Bagaimana Querynya?&lt;/p&gt;  &lt;br /&gt;&lt;span class="fullpost"&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Misal tabelnya ialah:&lt;/p&gt;    &lt;p class="MsoNormal" style="text-indent: 0.5in;"&gt;&lt;span style=""&gt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;m_individu&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"  style="text-indent: 0.5in;font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;m_individuemploy&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="text-indent: 0.5in;"&gt;&lt;span style=""&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;m_department&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;      &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;Mungkin kita akan tergesa untuk memberikan klausa seperti ini:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-size:85%;"&gt;            &lt;/span&gt;&lt;span style=""&gt;                        &lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;Departmentname &lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;color:gray;"   &gt;like&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="color:red;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;'%'&lt;/span&gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;Yang menjadi masalah kolom Departmentname berada di m_Department sehingga klausa ini tidak selalu membawa hasil yang memuaskan, dalam hal table m_individu sebagai tabel utama tidak selalu mempunyai data pasangannya di m_individuemploy (one to many relationship).&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;Untuk menyelamatkannya, &lt;span style=""&gt; &lt;/span&gt;Anda tinggal menambahkan fungsi isnull berikut ini:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;&lt;span style="font-size:85%;"&gt;      &lt;/span&gt;&lt;span style=";font-size:85%;color:fuchsia;"  &gt;                       &lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt; isnull&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;color:gray;"   &gt;(&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;c&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;color:gray;"   &gt;.&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;Departmentname&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;color:gray;"   &gt;,&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;color:red;"   &gt;''&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;color:gray;"   &gt;)&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; &lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;color:gray;"   &gt;like&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; &lt;/span&gt;&lt;span style="color:red;"&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;'%'&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;span style=""&gt;&lt;span style="color:red;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;Simak data berikut ini di m_individu:&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shapetype id="_x0000_t75" coordsize="21600,21600" spt="75" preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f"&gt;  &lt;v:stroke joinstyle="miter"&gt;  &lt;v:formulas&gt;   &lt;v:f eqn="if lineDrawn pixelLineWidth 0"&gt;   &lt;v:f eqn="sum @0 1 0"&gt;   &lt;v:f eqn="sum 0 0 @1"&gt;   &lt;v:f eqn="prod @2 1 2"&gt;   &lt;v:f eqn="prod @3 21600 pixelWidth"&gt;   &lt;v:f eqn="prod @3 21600 pixelHeight"&gt;   &lt;v:f eqn="sum @0 0 1"&gt;   &lt;v:f eqn="prod @6 1 2"&gt;   &lt;v:f eqn="prod @7 21600 pixelWidth"&gt;   &lt;v:f eqn="sum @8 21600 0"&gt;   &lt;v:f eqn="prod @7 21600 pixelHeight"&gt;   &lt;v:f eqn="sum @10 21600 0"&gt;  &lt;/v:formulas&gt;  &lt;v:path extrusionok="f" gradientshapeok="t" connecttype="rect"&gt;  &lt;o:lock ext="edit" aspectratio="t"&gt; &lt;/v:shapetype&gt;&lt;v:shape id="_x0000_i1026" type="#_x0000_t75" style="'width:366.75pt;"&gt;  &lt;v:imagedata src="file:///C:\DOCUME~1\nura\LOCALS~1\Temp\msohtml1\01\clip_image001.jpg" title="gambar1"&gt; &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp2.blogger.com/_z-gOROj07o0/SES0G02dNMI/AAAAAAAAACI/NJjNxC-p_fw/s1600-h/gambar1.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp2.blogger.com/_z-gOROj07o0/SES0G02dNMI/AAAAAAAAACI/NJjNxC-p_fw/s320/gambar1.jpg" alt="" id="BLOGGER_PHOTO_ID_5207485098506400962" border="0" /&gt;&lt;/a&gt;&lt;!--[endif]--&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;dan simak tabel m_individuemploy, berikut ini. Tampak bahwa data tidak mengandung individu dengan memberid m000000002.&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1025" type="#_x0000_t75" style="'width:6in;height:53.25pt'"&gt;  &lt;v:imagedata src="file:///C:\DOCUME~1\nura\LOCALS~1\Temp\msohtml1\01\clip_image002.jpg" title="gambar2"&gt; &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp2.blogger.com/_z-gOROj07o0/SES37y312tI/AAAAAAAAACw/6RsZgbJwTK0/s1600-h/gambar2.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp2.blogger.com/_z-gOROj07o0/SES37y312tI/AAAAAAAAACw/6RsZgbJwTK0/s320/gambar2.jpg" alt="" id="BLOGGER_PHOTO_ID_5207489307043289810" border="0" /&gt;&lt;/a&gt;&lt;!--[endif]--&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;Simak data m_department berikut ini:&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1027" type="#_x0000_t75" style="'width:159pt;height:78.75pt'"&gt;  &lt;v:imagedata src="file:///C:\DOCUME~1\nura\LOCALS~1\Temp\msohtml1\01\clip_image004.jpg" title="gambar3"&gt; &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp3.blogger.com/_z-gOROj07o0/SES2yB9lAOI/AAAAAAAAACY/qIZEyGXV_F8/s1600-h/gambar3.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp3.blogger.com/_z-gOROj07o0/SES2yB9lAOI/AAAAAAAAACY/qIZEyGXV_F8/s320/gambar3.jpg" alt="" id="BLOGGER_PHOTO_ID_5207488039783563490" border="0" /&gt;&lt;/a&gt;&lt;!--[endif]--&gt;&lt;span style=""&gt; &lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;Semisal kita ingin menampilkan semua data di tabel m_individu dari semua departmen,&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;Dengan query pertama hasilnya akan seperti ini:&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;            &lt;/span&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1029" type="#_x0000_t75" style="'width:6in;height:36pt'"&gt;  &lt;v:imagedata src="file:///C:\DOCUME~1\nura\LOCALS~1\Temp\msohtml1\01\clip_image005.jpg" title="gambar4"&gt; &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp1.blogger.com/_z-gOROj07o0/SES3A_DEjNI/AAAAAAAAACg/OgMdLa1wOGM/s1600-h/gambar4.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp1.blogger.com/_z-gOROj07o0/SES3A_DEjNI/AAAAAAAAACg/OgMdLa1wOGM/s320/gambar4.jpg" alt="" id="BLOGGER_PHOTO_ID_5207488296699333842" border="0" /&gt;&lt;/a&gt;&lt;!--[endif]--&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;Tampak bahwa kita kehilangan baris data dari ‘arif’, mengapa? Karena&lt;span style=""&gt;  &lt;/span&gt;informasi data arif (m00000000002) tidak ada di tabel m_individuemploy.&lt;span style=""&gt;  &lt;/span&gt;&lt;br /&gt;&lt;/p&gt;&lt;p class="MsoNormal" style=""&gt;&lt;br /&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;Relasi LEFT OUTER JOIN pun tidak bisa menampilkan data tersebut.&lt;span style=""&gt;  &lt;/span&gt;Memang, apabila klausa where dihilangkan maka seluruh data tampil.&lt;span style=""&gt;  &lt;/span&gt;Tetapi dalam kasus ini diasumsikan kita membutuhkan klausa nama departemen tersebut. Apabila kita menggunakan klausa pertama, hasilnya akan seperti di atas. Untuk memperbaikinya kita gunakan klausa kedua, sehingga seluruh data yang diinginkan akan tampil. &lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;Sehingga keseluruhan query akan tampak seperti ini&lt;/p&gt;                  &lt;p class="MsoNormal" style="margin-left: 0.5in;"&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;SELECT&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; a&lt;span style="color:gray;"&gt;.&lt;/span&gt;[memberid] &lt;span style="color:gray;"&gt;,&lt;/span&gt;[firstname]&lt;span style="color:gray;"&gt;,&lt;/span&gt; [lastname]&lt;span style="color:gray;"&gt;,&lt;/span&gt; [midname]&lt;span style="color:gray;"&gt;,&lt;/span&gt;&lt;br /&gt;case&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; [sex] &lt;span style="color:blue;"&gt;when&lt;/span&gt; 1 &lt;span style="color:blue;"&gt;then&lt;/span&gt; &lt;span style="color:red;"&gt;'male'&lt;/span&gt; &lt;span style="color:blue;"&gt;else&lt;/span&gt; &lt;span style="color:red;"&gt;'female'&lt;/span&gt; &lt;span style="color:blue;"&gt;end&lt;/span&gt; &lt;span style="color:blue;"&gt;as&lt;/span&gt; gender&lt;span style="color:gray;"&gt;, &lt;/span&gt;&lt;br /&gt;c&lt;span style="color:gray;"&gt;.&lt;/span&gt;departmentname&lt;span style="color:gray;"&gt;,&lt;/span&gt; d&lt;span style="color:gray;"&gt;.&lt;/span&gt;position&lt;span style="color:gray;"&gt;,&lt;/span&gt; d&lt;span style="color:gray;"&gt;.&lt;/span&gt;employeeid&lt;span style="color:gray;"&gt;, &lt;/span&gt;&lt;br /&gt;[maritalstatus]&lt;span style="color:gray;"&gt;,&lt;/span&gt; [dob] FROM&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; [m_individu] a&lt;br /&gt;left&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; &lt;span style="color:gray;"&gt;outer&lt;/span&gt; &lt;span style="color:gray;"&gt;JOIN&lt;/span&gt; m_individuemploy d &lt;span style="color:blue;"&gt;on&lt;/span&gt; a&lt;span style="color:gray;"&gt;.&lt;/span&gt;memberid &lt;span style="color:gray;"&gt;=&lt;/span&gt; d&lt;span style="color:gray;"&gt;.&lt;/span&gt;memberid&lt;br /&gt;left&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; &lt;span style="color:gray;"&gt;outer&lt;/span&gt; &lt;span style="color:gray;"&gt;JOIN&lt;/span&gt; m_department c &lt;span style="color:blue;"&gt;on&lt;/span&gt; d&lt;span style="color:gray;"&gt;.&lt;/span&gt;departmentid &lt;span style="color:gray;"&gt;=&lt;/span&gt; c&lt;span style="color:gray;"&gt;.&lt;/span&gt;departmentid&lt;br /&gt;WHERE&lt;br /&gt;isnull&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;(&lt;/span&gt;&lt;span style=""&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;c&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;color:gray;"   &gt;.&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;Departmentname&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;color:gray;"   &gt;,&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;color:red;"   &gt;''&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;color:gray;"   &gt;)&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;color:gray;"   &gt;like&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;color:red;"   &gt;'%'&lt;/span&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size:85%;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;Dan hasilnya akan seperti ini:&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;!--[if gte vml 1]&gt;&lt;v:shape id="_x0000_i1028" type="#_x0000_t75" style="'width:6in;height:45.75pt'"&gt;  &lt;v:imagedata src="file:///C:\DOCUME~1\nura\LOCALS~1\Temp\msohtml1\01\clip_image007.jpg" title="gambar5"&gt; &lt;/v:shape&gt;&lt;![endif]--&gt;&lt;!--[if !vml]--&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp2.blogger.com/_z-gOROj07o0/SES3RPbsZvI/AAAAAAAAACo/83CydqEOpCY/s1600-h/gambar5.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp2.blogger.com/_z-gOROj07o0/SES3RPbsZvI/AAAAAAAAACo/83CydqEOpCY/s320/gambar5.jpg" alt="" id="BLOGGER_PHOTO_ID_5207488575975483122" border="0" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p class="MsoNormal" style=""&gt;&lt;br /&gt;&lt;/p&gt;&lt;p class="MsoNormal" style=""&gt;Jadi, hati-hati dengan cara pemasukan kolom kriteria yang bukan dari tabel utama.&lt;/p&gt;&lt;p class="MsoNormal" style=""&gt;wid, june 2008&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p class="MsoNormal" style=""&gt;&lt;/p&gt;&lt;br /&gt;&lt;p class="MsoNormal" style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22491498-5090077232546929513?l=widyanahar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://widyanahar.blogspot.com/feeds/5090077232546929513/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22491498&amp;postID=5090077232546929513' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/5090077232546929513'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/5090077232546929513'/><link rel='alternate' type='text/html' href='http://widyanahar.blogspot.com/2008/06/kriteria-filter-yang-berasal-dari-field.html' title='Kriteria filter yang berasal dari field data tabel pendukung lainnya.'/><author><name>N.A. Widyanahar</name><uri>http://www.blogger.com/profile/15078397541522591412</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='29' src='http://1.bp.blogspot.com/_z-gOROj07o0/SvD6e8Mf7DI/AAAAAAAAAHg/adRKozl4o-w/S220/profil1.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp2.blogger.com/_z-gOROj07o0/SES0G02dNMI/AAAAAAAAACI/NJjNxC-p_fw/s72-c/gambar1.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22491498.post-5909986039176242052</id><published>2008-06-02T11:16:00.000+07:00</published><updated>2008-06-05T10:41:18.094+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='N01. Personal Expression'/><title type='text'>My 2 Lost Articles on Mikrodata, 1997</title><content type='html'>Saya pernah menulis 2  artikel tentang teknologi akses data ADO tahun 1997~2000 di majalah IT yang sudah almarhum: Mikrodata.&lt;br /&gt;&lt;br /&gt;Apabila Anda yang kebetulan mampir di blog ini menyimpan edisi majalah tersebut, pls info ke saya, mungkin dengan mengirimkan fotokopian artikel tsb ke saya. Insyaallah nanti saya ganti biaya fotokopinya. Saya memerlukannya untuk arsip pribadi saya. Saya akan sangat berterima kasih, apabila Anda berkenan membantu.&lt;br /&gt;&lt;br /&gt;wid.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22491498-5909986039176242052?l=widyanahar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://widyanahar.blogspot.com/feeds/5909986039176242052/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22491498&amp;postID=5909986039176242052' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/5909986039176242052'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/5909986039176242052'/><link rel='alternate' type='text/html' href='http://widyanahar.blogspot.com/2008/06/my-2-lost-articles-on-mikrodata-1997.html' title='My 2 Lost Articles on Mikrodata, 1997'/><author><name>N.A. Widyanahar</name><uri>http://www.blogger.com/profile/15078397541522591412</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='29' src='http://1.bp.blogspot.com/_z-gOROj07o0/SvD6e8Mf7DI/AAAAAAAAAHg/adRKozl4o-w/S220/profil1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22491498.post-9119911106866368515</id><published>2008-03-11T18:19:00.021+07:00</published><updated>2011-04-19T16:12:01.193+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='N05. Database Issues'/><title type='text'>Database Server TroubleShooting</title><content type='html'>Table Of Content&lt;br /&gt;&lt;span style="font-size: 11px;"&gt;01. &lt;/span&gt;&lt;a href="#01"&gt;&lt;span style="font-size: 11px;"&gt;Failure in Executing SP on other Server in LinkServer Environment&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-size: 11px;"&gt;02. &lt;/span&gt;&lt;a href="#02"&gt;&lt;span style="font-size: 11px;"&gt;Failed to update SQL Server linktable in Access 2000&lt;/span&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="" name="01"&gt;&lt;br /&gt;01.&lt;/a&gt; &lt;strong&gt;Failure in Executing SP on other Server in LinkServer Environment&lt;/strong&gt;&lt;br /&gt;You got failure in executing SP with the following message (but you&amp;nbsp; get no probs with common SELECT operation): &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: red; font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace; font-size:11px;"&gt;Msg 7411, Level 16, State 1, Line 1  Server '202.129.191.112' is not configured for RPC.&lt;/span&gt;&lt;br /&gt;&amp;nbsp; &lt;br /&gt;Solution: &lt;br /&gt;In The Link Server property, RPC Out should be set as True. &lt;br /&gt;Applies to SQL Server 2005&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="" name="02"&gt;&lt;br /&gt;02.&lt;/a&gt;&lt;strong&gt;Failed to update SQL Server linktable in Access 2000&lt;/strong&gt;&lt;br /&gt;Ever had this error message when editing SQL Server link tables in Access?&lt;br /&gt;&lt;br /&gt;&lt;span style="color: green; font-family: &amp;quot;Courier New&amp;quot;, Courier, monospace; font-size:11px;"&gt; "this record has been changed by another user....etc"&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;I have experienced this before, and curious on the Primary keys/Index in the SQL Server Table. (one of major cause in update failure)&lt;br /&gt;&lt;br /&gt;The cause is there is one or more fields in the table containing bit type data type without default value. (the fields are not allowed to be empty)&lt;br /&gt;source: http://stackoverflow.com/questions/973076/linked-access-db-record-has-been-changed-by-another-user&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22491498-9119911106866368515?l=widyanahar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://widyanahar.blogspot.com/feeds/9119911106866368515/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22491498&amp;postID=9119911106866368515' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/9119911106866368515'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/9119911106866368515'/><link rel='alternate' type='text/html' href='http://widyanahar.blogspot.com/2008/03/nhibernate-dengan-net-c-nice-trial-1.html' title='Database Server TroubleShooting'/><author><name>N.A. Widyanahar</name><uri>http://www.blogger.com/profile/15078397541522591412</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='29' src='http://1.bp.blogspot.com/_z-gOROj07o0/SvD6e8Mf7DI/AAAAAAAAAHg/adRKozl4o-w/S220/profil1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22491498.post-357001138755668648</id><published>2008-03-04T14:03:00.000+07:00</published><updated>2008-07-11T10:44:58.830+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='N06. Reporting Issues'/><category scheme='http://www.blogger.com/atom/ns#' term='N00. Articles in English'/><title type='text'>How to Design sub report with classical CR 8.5 in VB6 IDE</title><content type='html'>Widyanahar: 3 march: 2008&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;I am trying to write this article due to the fact that it is uneasy to get &lt;/span&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;span style="font-size:85%;"&gt;howtos or step-by-steps info for this issue, even with our google, it is still hard to find out. &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;Thought that many of you experiencing the same problem on this! This article should be useful for those who is still in middle of legacy system which is running crystal report 85 with VB6 desperately. (You know that this is 2008). &lt;/span&gt;&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;/p&gt; &lt;br /&gt;&lt;span class="fullpost"&gt; &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;Here is the code for accessing the subreport:&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;&lt;span style=""&gt;                &lt;/span&gt;&lt;span style="font-size:85%;"&gt;cr.DiscardSavedData&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;&lt;span style=""&gt;                &lt;/span&gt;cr.Database.SetDataSource rsmain, 3, 1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;&lt;span style=""&gt;                           &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;&lt;span style=""&gt;                &lt;/span&gt;cr.Subreport1.OpenSubreport.Database.SetDataSource rssub, 3, 1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;&lt;span style=""&gt;                &lt;/span&gt;cr.Subreport1.OpenSubreport.Database.Verify&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;&lt;span style=""&gt;                &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;&lt;span style=""&gt;                &lt;/span&gt;frmReportView.CRViewer1.ReportSource = cr&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;&lt;span style=""&gt;                &lt;/span&gt;frmReportView.CRViewer1.ViewReport&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=""&gt;&lt;span style=""&gt;                &lt;/span&gt;frmReportView.Show vbModal&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-size:85%;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-size:85%;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-size:10;"&gt;&lt;span style="font-size:85%;"&gt;Note: you use Active Data, prepare two ADO Recordset for main report dan subreport , say both as &lt;b style=""&gt;rsmain&lt;/b&gt; as &lt;b style=""&gt;rssub.&lt;/b&gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;Here is the step-by-step:&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;ol  style="margin-top: 0in;font-family:arial;" start="1" type="1"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-size:85%;"&gt;The report files is included within the vb projects (.dsr file) rathe than .rpt, representing the main report and sub report.&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-size:85%;"&gt;The Sub Report file will be placed in one of sections within main report design, by insert report procedure (rightclick the design form, &lt;b style=""&gt;insert/subreport&lt;/b&gt;)&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;span style="font-size:85%;"&gt;There must a field as conjuction/link      between main report and subreport. That is a field that exist in &lt;b style=""&gt;rsmain&lt;/b&gt; and &lt;b style=""&gt;rssub&lt;/b&gt;. In this example, the field is &lt;b style=""&gt;CustomerID&lt;/b&gt;. &lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;  &lt;p class="MsoNormal"  style="margin-left: 0.25in;font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p  style="text-align: center;font-family:arial;" class="MsoNormal"&gt;&lt;span style="font-size:85%;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="text-align: center;font-family:arial;" align="center"&gt;&lt;span style="font-size:85%;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="text-align: justify;font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;here is the menu to prepare the link :&lt;/span&gt;&lt;/p&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp2.blogger.com/_z-gOROj07o0/R8z-FxNtUtI/AAAAAAAAABQ/gTzxFKAL44g/s1600-h/subreport_link.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp2.blogger.com/_z-gOROj07o0/R8z-FxNtUtI/AAAAAAAAABQ/gTzxFKAL44g/s320/subreport_link.jpg" alt="" id="BLOGGER_PHOTO_ID_5173789447005491922" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp3.blogger.com/_z-gOROj07o0/R8z-GBNtUuI/AAAAAAAAABY/rOionC_WXUw/s1600-h/subreport_linkview.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp3.blogger.com/_z-gOROj07o0/R8z-GBNtUuI/AAAAAAAAABY/rOionC_WXUw/s320/subreport_linkview.jpg" alt="" id="BLOGGER_PHOTO_ID_5173789451300459234" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:arial;"&gt;4. After      subreport insertion, subreport created once will not be used anymore for      editing. &lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:arial;font-size:85%;"  &gt; &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:arial;"&gt;You should use the      subreport inserted by rightclicking subreport part in the mainreport form      and click Edit SubReport as depicted below.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp1.blogger.com/_z-gOROj07o0/R80AJRNtUvI/AAAAAAAAABg/4UnwgiruFs4/s1600-h/subreport_edit.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp1.blogger.com/_z-gOROj07o0/R80AJRNtUvI/AAAAAAAAABg/4UnwgiruFs4/s320/subreport_edit.jpg" alt="" id="BLOGGER_PHOTO_ID_5173791706158289650" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:arial;"&gt;5. After      step 4, you must have tab main Report dan Sub Report named&lt;/span&gt;&lt;b style="font-family: arial;"&gt; crDetail&lt;/b&gt;&lt;span style="font-family:arial;"&gt;. From this sub report,      you should do your design work.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp2.blogger.com/_z-gOROj07o0/R80AJhNtUwI/AAAAAAAAABo/FNVn1NeMrb8/s1600-h/subreport_tab.jpg"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp2.blogger.com/_z-gOROj07o0/R80AJhNtUwI/AAAAAAAAABo/FNVn1NeMrb8/s320/subreport_tab.jpg" alt="" id="BLOGGER_PHOTO_ID_5173791710453256962" border="0" /&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;span style="font-family:arial;"&gt;hope this helpful.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:arial;"&gt;wid, 2008&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22491498-357001138755668648?l=widyanahar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://widyanahar.blogspot.com/feeds/357001138755668648/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22491498&amp;postID=357001138755668648' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/357001138755668648'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/357001138755668648'/><link rel='alternate' type='text/html' href='http://widyanahar.blogspot.com/2008/03/how-to-design-sub-report-with-classical.html' title='How to Design sub report with classical CR 8.5 in VB6 IDE'/><author><name>N.A. Widyanahar</name><uri>http://www.blogger.com/profile/15078397541522591412</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='29' src='http://1.bp.blogspot.com/_z-gOROj07o0/SvD6e8Mf7DI/AAAAAAAAAHg/adRKozl4o-w/S220/profil1.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp2.blogger.com/_z-gOROj07o0/R8z-FxNtUtI/AAAAAAAAABQ/gTzxFKAL44g/s72-c/subreport_link.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22491498.post-4564075293201621487</id><published>2008-02-26T10:27:00.000+07:00</published><updated>2008-06-05T15:01:06.958+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='N06. ASP.NET C#'/><title type='text'>ASP.NET C# : Step by Step Akses Database dan menampilkan dalam grid</title><content type='html'>&lt;span style=";font-family:arial;font-size:85%;"  &gt;Pada artikel ini saya meringkas cara pengaksesan data ke sebuah database SQL dengan ADO.NET, menggunakan C#. Secara singkat mengakses data yang dicontohkan di sini ialah membuka koneksi ke database, mengakses tabelnya, dan menampilkan dalam sebuah datagrid.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-weight: bold;font-family:arial;font-size:85%;"  &gt;&lt;br /&gt;1. Membuka Koneksi Database&lt;/span&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:85%;"  &gt;Untuk mengakses data, kita menggunakan namespace berikut:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;        &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;using&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; System;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;using&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; System.Data;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;using&lt;/span&gt;&lt;span style=""&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; System.Data.OleDb;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:85%;color:black;"   &gt;Di sini kita menggunakan OleDb untuk mengakses data sql server. Sebetulnya kita bisa juga menggunakan namespace SqlClient, seperti berikut ini:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:Arial;font-size:85%;color:black;"   &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;      &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;using&lt;/span&gt;&lt;span style=""&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; System.Data.SqlClient;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:85%;color:black;"   &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;Pada OleDb ini, kita menggunakan dua buah Class &lt;/span&gt;&lt;span style=""&gt;OleDbConnection&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:85%;color:black;"   &gt; dan &lt;/span&gt;&lt;span style=""&gt;OleDbCommand&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:85%;color:black;"   &gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:Arial;font-size:85%;color:black;"   &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:Arial;font-size:85%;color:black;"   &gt;Contoh selengkapnya seperti tampak pada kode berikut ini. Query kita eksekusi dengan menggunakan &lt;/span&gt;&lt;span style=""&gt;OleDbCommand&lt;/span&gt;&lt;span style=""&gt; &lt;/span&gt;&lt;span style=";font-family:Arial;font-size:85%;"  &gt;yang kemudian dimasukkan dalam &lt;/span&gt;&lt;span style=""&gt;OleDbDataAdapter, &lt;/span&gt;&lt;span style=";font-family:Arial;font-size:85%;"  &gt;dan disajikan dalam &lt;/span&gt;&lt;span style=""&gt;DataSet&lt;/span&gt;&lt;span style=""&gt;.&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:85%;color:black;"   &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:Arial;font-size:85%;color:black;"   &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:courier new;"&gt;&lt;span style=";font-size:85%;color:blue;"  &gt;    namespace&lt;/span&gt;&lt;span style="font-size:85%;"&gt; WebApplication1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;    {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style=""&gt;      &lt;/span&gt;&lt;span style="color:blue;"&gt;    public&lt;/span&gt; &lt;span style="color:blue;"&gt;class&lt;/span&gt; apClsConnectData&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style=""&gt;      &lt;/span&gt;    {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style=""&gt;            &lt;/span&gt;&lt;span style="color:blue;"&gt;    public&lt;/span&gt; apClsConnectData()&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style=""&gt;            &lt;/span&gt;    {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"  style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;            &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;    }&lt;/span&gt;&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style=""&gt;            &lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;color:blue;"   &gt;    public&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt; DataSet DataConnect(&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;color:blue;"   &gt;string&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt; sSQL)&lt;/span&gt;&lt;o:p style="font-family: courier new;"&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style=""&gt;            &lt;/span&gt;    {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal"  style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style=""&gt;                  &lt;/span&gt;&lt;span style="color:blue;"&gt;    string&lt;/span&gt; strCon = "Provider=SQLOLEDB.1; Data Source = 192.168.88.108; Initial         Catalog= apDocumentation;" + " User ID =sa; Password=widya";&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style=""&gt;                  &lt;/span&gt;    OleDbConnection cn = &lt;span style="color:blue;"&gt;new&lt;/span&gt; OleDbConnection(strCon);&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"  style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style=""&gt;                  &lt;/span&gt;    cn.Open() ;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style=""&gt;                  &lt;/span&gt;    OleDbCommand cm = &lt;span style="color:blue;"&gt;new&lt;/span&gt; OleDbCommand(sSQL,cn);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style=""&gt;                  &lt;/span&gt;    OleDbDataAdapter da = &lt;span style="color:blue;"&gt;new&lt;/span&gt; OleDbDataAdapter();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style=""&gt;                  &lt;/span&gt;    da.SelectCommand = cm;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style=""&gt;                  &lt;/span&gt;    DataSet ds = &lt;span style="color:blue;"&gt;new&lt;/span&gt; DataSet();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style=""&gt;                  &lt;/span&gt;    da.Fill(ds);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style=""&gt;                  &lt;/span&gt;&lt;span style="color:blue;"&gt;    return&lt;/span&gt; ds;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style=""&gt;            &lt;/span&gt;    }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style=""&gt;      &lt;/span&gt;    }&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;    }&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;span style="font-weight: bold;font-family:arial;font-size:85%;"  &gt;2. Menampilkan data&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt; &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:85%;"  &gt;Untuk menampilkan data, pertama kita bisa menggunakan class yang kita buat di atas, dan kemudian kita masukkan hasilnya – yaitu return value berupa &lt;/span&gt;&lt;span style=""&gt;DataSet&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:85%;"  &gt; ke sebuah datagrid&lt;/span&gt;&lt;span style="font-size:85%;"&gt;.&lt;/span&gt;&lt;/p&gt;      &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:85%;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span style="font-size:85%;"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:85%;"  &gt;Berikut kode untuk menggunakan Class di atas:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal"  style="font-family:courier new;"&gt;&lt;span style=";font-size:85%;color:blue;"  &gt;    string&lt;/span&gt;&lt;span style="font-size:85%;"&gt; sQuery ="Select * from apApplication_DocMain" +&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt; " where apID='" + Application["ApID"].ToString() + "'" ;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal"  style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;                  &lt;/span&gt;    apClsConnectData cs = &lt;span style=";font-family:courier new;color:blue;"  &gt;new&lt;/span&gt; apClsConnectData();&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt; DataSet dsDoc = &lt;span style=";font-family:courier new;color:blue;"  &gt;new&lt;/span&gt; DataSet();&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt; dsDoc = cs.DataConnect(sQuery);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;Setelah itu, kita sebetulnya bisa langsung memasukkan ke dalam sebuah datagrid dengan kode berikut ini, &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style=""&gt;                  &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;    DataGrid1.DataSource= dsDoc;&lt;/span&gt;&lt;o:p style="font-family: courier new;"&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;br /&gt; DataGrid1.DataBind();&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="font-family: courier new;"&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp1.blogger.com/_z-gOROj07o0/R8OOYZ0LL3I/AAAAAAAAABI/y9QoCSYCVy0/s1600-h/grid.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp1.blogger.com/_z-gOROj07o0/R8OOYZ0LL3I/AAAAAAAAABI/y9QoCSYCVy0/s320/grid.JPG" alt="" id="BLOGGER_PHOTO_ID_5171133347049189234" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/p&gt;&lt;br /&gt;&lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:Arial;font-size:85%;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:Arial;font-size:85%;"  &gt;dengan tidak lupa mencentang &lt;b style=""&gt;Create Columns Automatically at Runtime&lt;/b&gt;, pada Property Builder yang kita akses dengan mengklik kanan Datagrid yang kita tempatkan dalam sebuah web form.&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal" style="text-align: center;"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:Arial;font-size:85%;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:Arial;font-size:85%;"  &gt;Apabila kita ingin membuat kolomnya secara koding, maka tanda centang di atas kita hilangkan, dan setiap kolom yang ingin ditampilkan di datagrid kita kodekan.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=";font-family:Arial;font-size:85%;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;span style=""&gt;&lt;span style=""&gt;         &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=""&gt;                  &lt;/span&gt;&lt;span style="color:green;"&gt; &lt;span style="font-family:courier new;"&gt;   /&lt;span style="font-size:85%;"&gt;/Column 1&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;o:p style="font-family: courier new;"&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;      &lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;                  &lt;/span&gt;&lt;span style="font-family:courier new;"&gt;    BoundColumn bl1 = &lt;/span&gt;&lt;span style=";font-family:courier new;color:blue;"  &gt;new&lt;/span&gt;&lt;span style="font-family:courier new;"&gt; BoundColumn();&lt;/span&gt;&lt;o:p style="font-family: courier new;"&gt;&lt;/o:p&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;    bl1.HeaderText = "Description";&lt;/span&gt;&lt;o:p style="font-family: courier new;"&gt;&lt;/o:p&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;    bl1.DataField= "Description";&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size:85%;"&gt;&lt;span style=""&gt;                        &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size:85%;"&gt;&lt;span style=""&gt;                  &lt;/span&gt;&lt;span style="color:green;"&gt;    //Column 2&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;          &lt;p class="MsoNormal" style=""&gt;&lt;span style="font-size:85%;"&gt;&lt;span style=""&gt;                  &lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;    HyperLinkColumn hl = &lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;color:blue;"   &gt;new&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt; HyperLinkColumn();&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;o:p style="font-family: courier new;"&gt;&lt;/o:p&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;    hl.HeaderText = "Title";&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;o:p style="font-family: courier new;"&gt;&lt;/o:p&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;    hl.DataTextField = "Title";&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;o:p style="font-family: courier new;"&gt;&lt;/o:p&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;    hl.DataNavigateUrlField ="Location" ;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;o:p style="font-family: courier new;"&gt;&lt;/o:p&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;    hl.DataNavigateUrlFormatString ="{0}";&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;o:p style="font-family: courier new;"&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:courier new;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style=""&gt;                  &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal" style=""&gt;&lt;span style=""&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;                  &lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;    DataGrid1.Columns.Add(hl);&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;    DataGrid1.Columns.Add(bl1);&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:Arial;font-size:85%;"  &gt;Pada contoh kode di atas kita membuat kolom BoundColumn dan Hyperlink Column.&lt;/span&gt;&lt;/p&gt;&lt;span style="color: rgb(0, 153, 0);font-size:85%;" &gt;&lt;span style="font-weight: bold; font-style: italic;font-family:arial;" &gt;widyanahar, 2006&lt;/span&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22491498-4564075293201621487?l=widyanahar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://widyanahar.blogspot.com/feeds/4564075293201621487/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22491498&amp;postID=4564075293201621487' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/4564075293201621487'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/4564075293201621487'/><link rel='alternate' type='text/html' href='http://widyanahar.blogspot.com/2008/02/aspnet-c-step-by-step-akses-database.html' title='ASP.NET C# : Step by Step Akses Database dan menampilkan dalam grid'/><author><name>N.A. Widyanahar</name><uri>http://www.blogger.com/profile/15078397541522591412</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='29' src='http://1.bp.blogspot.com/_z-gOROj07o0/SvD6e8Mf7DI/AAAAAAAAAHg/adRKozl4o-w/S220/profil1.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp1.blogger.com/_z-gOROj07o0/R8OOYZ0LL3I/AAAAAAAAABI/y9QoCSYCVy0/s72-c/grid.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22491498.post-3931435065067397914</id><published>2008-02-20T16:19:00.000+07:00</published><updated>2008-06-05T10:48:06.212+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='N02. IT Management'/><title type='text'>Testing &lt;&gt; development schedule : best practice</title><content type='html'>&lt;p  class="MsoNormal" style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;Pengujian atau Testing merupakan bagian yang tidak terpisahkan di dalam proses development/pengembangan sebuah produk Software atau perangkat lunak. Development disini secara spesifik merujuk pada proses pengkodean semua logika bisnis ke dalam kode program. Sebagaimana ditekankan di dalam berbagai kesempatan dan tulisan, pengujian sebagai sebuah upaya dalam proses pengendalian kualitas produk adalah untuk memastikan bahwa software yang dihasilkan benar-benar sesuai dengan keinginan atau harapan dari konsumen, yang pada akhirnya layak dipasarkan atau digunakan dalam dunia bisnis yang sebenarnya, dalam kata-kata wikipedia: &lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style=";font-family:arial;font-size:85%;"  &gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 153, 0);font-size:85%;" &gt;&lt;br /&gt;&lt;span style=""&gt;&lt;span style="font-family:arial;"&gt;“In engineering and manufacturing, quality control and quality engineering are involved in developing systems to ensure products or services are designed and produced to meet or exceed customer requirements.”&lt;/span&gt;  &lt;/span&gt;&lt;/span&gt;&lt;span style=";font-size:85%;color:blue;"  &gt;&lt;/span&gt;&lt;a href="http://en.wikipedia.org/wiki/Quality_control"&gt;http://en.wikipedia.org/wiki/Quality_control&lt;/a&gt;&lt;span style=";font-size:10;color:blue;"  &gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:85%;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;span style=";font-family:arial;font-size:100%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=";font-family:arial;font-size:100%;"  &gt;Untuk mencapai tujuan di atas, maka tentu saja diperlukan pendekatan yang bersifat lintas-fungsional, dengan melibatkan bidang bisnis dan &lt;/span&gt;&lt;span style=";font-family:arial;font-size:100%;"  &gt;&lt;i&gt;engineering&lt;/i&gt;&lt;/span&gt;&lt;span style=";font-family:arial;font-size:100%;"  &gt; lainnya. Poin dari pembicaraan ini ialah untuk &lt;/span&gt;&lt;span style=";font-family:arial;font-size:100%;"  &gt;&lt;b&gt;memasukkan quality control ini di dalam masa pengembangan.&lt;/b&gt;&lt;/span&gt;&lt;span style=";font-family:arial;font-size:100%;"  &gt; Ini berarti, &lt;/span&gt;&lt;span style=";font-family:arial;font-size:100%;"  &gt; &lt;/span&gt;&lt;span style=";font-family:arial;font-size:100%;"  &gt;pengujian sebagai salah satu tugas quality control memerlukan sebuah pendekatan praktis bagaimana proses ini dilakukan. Dalam kaitan ini perlu diatur sebuah mekanisme agar &lt;/span&gt;&lt;span style=";font-family:arial;font-size:100%;"  &gt; &lt;/span&gt;&lt;span style=";font-family:arial;font-size:100%;"  &gt;seluruh tahap&lt;/span&gt;&lt;span style=";font-family:arial;font-size:100%;"  &gt;  &lt;/span&gt;&lt;span style=";font-family:arial;font-size:100%;"  &gt;pengujian dilaksanakan sembari melihat watak sebuah proses produksi, dimana &lt;/span&gt;&lt;span style=";font-family:arial;font-size:100%;"  &gt; &lt;/span&gt;&lt;span style=";font-family:arial;font-size:100%;"  &gt;&lt;i&gt;timeframe&lt;/i&gt;&lt;/span&gt;&lt;span style=";font-family:arial;font-size:100%;"  &gt;, dan &lt;/span&gt;&lt;span style=";font-family:arial;font-size:100%;"  &gt;&lt;i&gt;budget&lt;/i&gt;&lt;/span&gt;&lt;span style=";font-family:arial;font-size:100%;"  &gt; menjadi faktor tradeoff yang tidak bisa ditawar. Sebuah praktek yang amat baik untuk dilakukan dalam masa pengembangan sebuah produk ialah manajemen pengujian/testing yang baik. &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;Berikut adalah sedikit dari beberapa &lt;i style=""&gt;best-practice&lt;/i&gt; dalam proses pengujian. &lt;/span&gt;&lt;/p&gt;    &lt;ol  style="margin-top: 0in;font-family:arial;" start="1" type="1"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-size:100%;"&gt;Menyusun      tim yang baik. Apakah menyusun tim yang baik itu:&lt;/span&gt;&lt;/li&gt;&lt;ol style="margin-top: 0in;" start="1" type="a"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-size:100%;"&gt;Memperhitungkan       jumlah tim tester sesuai dengan jumlah produk atau fitur yang dites.       Sebaiknya dihindari perbandingan jumlah tester dan produk yang terlalu       mencolok. Beberapa produk dengan masa pengembangan yang berdekatan sangat       tidak baik, apabila dilakukan hanya oleh satu orang tester, sebagai       contoh, karena seorang tester di Departemen QA harus benar-benar fokus       kepada setiap detail fitur sebuah produk. Karena ia akan menjadi pintu       keluar utama sebuah software dirilis ke klien.&lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-size:100%;"&gt;Mengoptimalkan       sistem rolling yang baik, apabila tim tester amat terbatas, sementara       kondisi manajemen tidak memungkinkan adanya tambahan tenaga.&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/ol&gt;&lt;ol  style="margin-top: 0in;font-family:arial;" start="2" type="1"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-size:100%;"&gt;Menyusun      jadwal Pengujian dengan baik. Maksudnya:&lt;/span&gt;&lt;/li&gt;&lt;ol style="margin-top: 0in;" start="1" type="a"&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-size:100%;"&gt;Prosedur       Pengujian &lt;b style=""&gt;harus dimasukkan&lt;/b&gt;       dalam jadwal proyek. &lt;/span&gt;&lt;/li&gt;&lt;li class="MsoNormal" style=""&gt;&lt;span style="font-size:100%;"&gt;Jadwal       Pengujian harus &lt;b style=""&gt;sinkron&lt;/b&gt; dengan       jadwal pengembangan.&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/ol&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;o:p&gt;&lt;br /&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;Jadwal Pengujian yang sinkron dengan jadwal pengembangan berarti waktu pengujian tidak bisa diletakkan secara sembarangan tanpa memperhitungkan jadwal pelaksanaan dari pengembangan. Seringkali kita terlalu fokus dengan jadwal pengembangan, tetapi kurang memperhatikan alokasi waktu untuk pengujian ini. &lt;/span&gt;&lt;/p&gt;      &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;Pada beberapa kasus sering dijumpai sebuah tim proyek tidak bisa atau tidak menentukan jadwal testing ini. Dan ketika tiba pada suatu waktu dimana pengujian harus dilakukan, &lt;span style=""&gt; &lt;/span&gt;Tim Pengujian menemukan masalah, melempar list of error ke tim Developer! Sayang mereka &lt;span style=""&gt; &lt;/span&gt;telah terikat dengan jadwal di proyek lainnya.&lt;br /&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;&lt;b style=""&gt;&lt;i style=""&gt;&lt;span style="color:blue;"&gt;Who kills who!&lt;/span&gt;&lt;/i&gt;&lt;/b&gt; Sementara UAT, &lt;i style=""&gt;user acceptance test&lt;/i&gt;, di tempat klien telah di depan mata, maka mau tidak mau developer harus menginterupsi pekerjaannya dan kembali ke produk atau fitur dari produk yang saat itu harus dites oleh tester. Akibatnya, seandainya ditemukan error, dan diperlukan update, maka ia harus sesegera mungkin melakukan koding ulang, dan akibat lebih buruk jadwal yang ada menjadi tergeser. Efek domino dalam keseluruhan aktivitas operasional menjadi terpengaruh.&lt;br /&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"  style="font-family:arial;"&gt;&lt;span style="font-size:100%;"&gt;Pada skala lokal, Sebuah tim developer yang mempunyai tanggungjawab lebih dari satu produk software, akan sangat terpengaruh produktivitasnya dengan buruknya manajemen Pengujian di departemen Pengujian. Pada skala lebih luas, &lt;span style=""&gt; &lt;/span&gt;terhadap keseluruhan proses produksi akan terdapat dampak yang cukup besar, bahkan amat mungkin pada overhead cost, demikian asumsi kasar yang bisa digambarkan. Walaupun belum saya temukan riset mengenai korelasi dan dampaknya secara statistik.&lt;/span&gt;&lt;/p&gt;&lt;span style=";font-family:arial;font-size:100%;"  &gt;  widya, 20 feb 2008&lt;/span&gt;&lt;br /&gt;&lt;p class="MsoNormal"&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22491498-3931435065067397914?l=widyanahar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://widyanahar.blogspot.com/feeds/3931435065067397914/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22491498&amp;postID=3931435065067397914' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/3931435065067397914'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/3931435065067397914'/><link rel='alternate' type='text/html' href='http://widyanahar.blogspot.com/2008/02/sinkronisasi-testing-development.html' title='Testing &lt;&gt; development schedule : best practice'/><author><name>N.A. Widyanahar</name><uri>http://www.blogger.com/profile/15078397541522591412</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='29' src='http://1.bp.blogspot.com/_z-gOROj07o0/SvD6e8Mf7DI/AAAAAAAAAHg/adRKozl4o-w/S220/profil1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22491498.post-4781181339968743717</id><published>2008-01-31T23:46:00.000+07:00</published><updated>2008-07-11T10:47:04.732+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='N05. Database Issues'/><category scheme='http://www.blogger.com/atom/ns#' term='N00. Articles in English'/><title type='text'>Incredible Tool : SQL Profiler</title><content type='html'>&lt;o:p&gt;&lt;span style="font-weight: bold; color: rgb(0, 153, 0);font-family:arial;" &gt;Incredible tool: SQL Profiler&lt;/span&gt;&lt;br /&gt;&lt;/o:p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;have you ever tried SQL Profiler for SQL Server 2005?&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="fullpost"&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;This is pretty good stuff, and i wish other rdbms engines has the same thing as this SS2005 provide.&lt;/p&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp2.blogger.com/_z-gOROj07o0/R6KYuHaCjNI/AAAAAAAAABA/gfBsZgJkWbQ/s1600-h/menu3.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp2.blogger.com/_z-gOROj07o0/R6KYuHaCjNI/AAAAAAAAABA/gfBsZgJkWbQ/s320/menu3.JPG" alt="" id="BLOGGER_PHOTO_ID_5161856040949681362" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;p style="text-align: center;" class="MsoNormal"&gt;&lt;br /&gt;&lt;/p&gt;    In the middle of the User Interface crowd, Profiler is very helpful that you can monitor every query against your beloved data. You don't need to go to debugging mode of your coding. Many parameters are involved! too crowded? Calm down, if seen messy, you can choose which one fits your need: Audit Login, Session, Stored Procedures or, TSQL.&lt;br /&gt;&lt;br /&gt;&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://bp0.blogger.com/_z-gOROj07o0/R6KVenaCjMI/AAAAAAAAAA4/WCO7Q6apSN8/s1600-h/audit.JPG"&gt;&lt;img style="margin: 0px auto 10px; display: block; text-align: center; cursor: pointer;" src="http://bp0.blogger.com/_z-gOROj07o0/R6KVenaCjMI/AAAAAAAAAA4/WCO7Q6apSN8/s320/audit.JPG" alt="" id="BLOGGER_PHOTO_ID_5161852476126825666" border="0" /&gt;&lt;/a&gt;&lt;p style="text-align: center;" class="MsoNormal"&gt;&lt;span style="font-size:85%;"&gt;parameters involved in the monitor&lt;/span&gt;&lt;br /&gt;&lt;!--[endif]--&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Experience your best sql-debugging, even without peeping your code!&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Wid, 2008&lt;/p&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22491498-4781181339968743717?l=widyanahar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://widyanahar.blogspot.com/feeds/4781181339968743717/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22491498&amp;postID=4781181339968743717' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/4781181339968743717'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/4781181339968743717'/><link rel='alternate' type='text/html' href='http://widyanahar.blogspot.com/2008/01/incredible-tool-sql-profiler.html' title='Incredible Tool : SQL Profiler'/><author><name>N.A. Widyanahar</name><uri>http://www.blogger.com/profile/15078397541522591412</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='29' src='http://1.bp.blogspot.com/_z-gOROj07o0/SvD6e8Mf7DI/AAAAAAAAAHg/adRKozl4o-w/S220/profil1.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://bp2.blogger.com/_z-gOROj07o0/R6KYuHaCjNI/AAAAAAAAABA/gfBsZgJkWbQ/s72-c/menu3.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22491498.post-7013655694431718995</id><published>2008-01-31T17:00:00.000+07:00</published><updated>2008-06-05T13:20:04.979+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='N03. my articles on Elektro Indonesia'/><title type='text'></title><content type='html'>&lt;h2 style="color: rgb(0, 153, 0);"&gt;&lt;span&gt;&lt;b&gt;&lt;span&gt;&lt;span style="font-size:100%;"&gt;&lt;b&gt;&lt;span style="font-family:Arial,Helvetica;"&gt;Pemanfaatan &lt;span style="color: rgb(51, 204, 0);"&gt;Programmable Logic Controller&lt;/span&gt; &lt;span style="color: rgb(153, 153, 153);"&gt;dalam Dunia Industri&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/h2&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-weight: bold;font-family:arial;" &gt;ELEKTRO INDONESIA Edisi 11, Januari 1998&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;blink&gt;&lt;/blink&gt;&lt;!---isi---&gt;&lt;span style="color: rgb(51, 102, 255);font-size:85%;" &gt;&lt;span style="font-family:times new roman;"&gt;&lt;a target="none" href="http://elektroindonesia.com/elektro/instrum11.html"&gt;http://elektroindonesia.com/elektro/instrum11.html&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;Perkembangan  industri dewasa ini, khususnya dunia industri  di negara kita, berjalan  amat pesat seiring dengan  meluasnya  jenis produk-produk industri, mulai dari apa yang digolongkan sebagai industri hulu sampai dengan industri hilir. Kompleksitas  pengolahan bahan mentah menjadi bahan baku,  yang berproses baik secara fisika maupun secara kimia, telah memacu  manusia untuk  selalu meningkatkan  dan memperbaiki  unjuk  kerja  sistem  yang mendukung  proses tersebut, agar semakin produktif dan  efisien.  Salah satu yang menjadi perhatian utama dalam hal ini ialah penggunaan  sistem pengendalian proses industri (sistem kontrol industri).  &lt;p&gt;Dalam  era  industri  modern, sistem  kontrol  proses  industri biasanya merujuk pada otomatisasi sistem kontrol yang digunakan.  Sistem kontrol  industri  dimana peranan manusia masih amat dominan  (misalnya dalam  merespon besaran-besaran proses yang diukur oleh  sistem  kontrol tersebut dengan serangkaian langkah berupa pengaturan panel dan  saklar-saklar  yang  relevan) telah banyak digeser dan digantikan  oleh  sistem kontrol  otomatis.  Sebabnya jelas  mengacu  pada faktor-faktor  yang  mempengaruhi  efisiensi   dan produktivitas  industri  itu sendiri, misalnya faktor human  error  dan tingkat keunggulan yang ditawarkan sistem kontrol tersebut. Salah  satu  sistem kontrol yang amat luas  pemakaiannya  ialah Programmable  Logic  Controller (PLC). Penerapannya  meliputi  berbagai jenis industri mulai dari industri rokok, otomotif, petrokimia, kertas, bahkan  sampai  pada industri tambang,  misalnya   pada pengendalian  turbin  gas  dan  unit industri lanjutan hasil  pertambangan.  Kemudahan transisi  dari sistem kontrol sebelumnya (misalnya dari  sistem  kontrol berbasis relay mekanis) dan kemudahan trouble-shooting dalam konfigurasi sistem merupakan dua faktor utama yang mendorong populernya PLC ini.  &lt;/p&gt;&lt;p&gt;Artikel ini mecoba memberikan gambaran ringkas tentang PLC ini dari sudut pandang piranti penyusunnya. &lt;/p&gt;&lt;h3&gt; &lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:0;"&gt;Apakah Sebenarnya PLC itu?&lt;/span&gt;&lt;/span&gt;&lt;/h3&gt; &lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;&lt;b&gt;NEMA &lt;/b&gt;  (The  National  electrical  Manufacturers   Association) mendefinisikan  &lt;b&gt;PLC&lt;/b&gt; sebagai  piranti elektronika   digital   yang menggunakan memori yang bisa diprogram sebagai penyimpan internal  dari sekumpulan instruksi dengan mengimplementasikan fungsi-fungsi  tertentu, seperti  logika,  sekuensial, pewaktuan,  perhitungan,  dan aritmetika, untuk  mengendalikan berbagai jenis mesin ataupun proses melalui  modul I/O digital dan atau analog.&lt;/span&gt;&lt;/span&gt;  &lt;p&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;&lt;b&gt;PLC &lt;/b&gt;merupakan sistem yang dapat memanipulasi, mengeksekusi, dan atau memonitor keadaan proses pada laju yang amat cepat,  dengan dasar  data yang bisa diprogram  dalam  sistem  berbasis mikroprosesor  integral. &lt;b&gt;PLC&lt;/b&gt; menerima masukan dan menghasilkan  keluaran sinyal-sinyal listrik untuk mengendalikan suatu sistem. Dengan  demikian besaran-besaran fisika dan kimia yang dikendalikan, sebelum diolah  oleh &lt;b&gt;PLC&lt;/b&gt;, akan diubah menjadi sinyal listrik baik analog maupun digital,yang merupakan data dasarnya.. Karakter  proses yang dikendalikan oleh &lt;b&gt;PLC&lt;/b&gt;  sendiri  merupakan proses yang sifatnya bertahap, yakni proses itu berjalan  urut untuk mencapai kondisi akhir yang diharapkan. Dengan kata lain proses  itu terdiri beberapa subproses, dimana subproses  tertentu  akan berjalan sesudah  subproses  sebelumnya  terjadi.  Istilah umum  yang digunakan  untuk proses yang berwatak demikian ialah  proses sekuensial (&lt;i&gt;sequential process&lt;/i&gt;). Sebagai perbandingan, sistem kontrol yang  populer selain &lt;b&gt;PLC&lt;/b&gt;, misalnya &lt;i&gt;Distributed Control System&lt;/i&gt; (&lt;b&gt;DCS&lt;/b&gt;), mampu  menangani proses-proses yang  bersifat sekuensial dan juga  kontinyu  (&lt;i&gt;continuous process&lt;/i&gt;) serta mencakup loop kendali yang relatif banyak.&lt;/span&gt;&lt;/span&gt; &lt;/p&gt;&lt;h3&gt; &lt;b&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:0;"&gt;Piranti Penyusunan PLC&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/h3&gt; &lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;&lt;b&gt;PLC&lt;/b&gt;  yang  diproduksi oleh berbagai perusahaan  sistem  kontrol terkemuka saat ini biasanya mempunyai ciri-ciri sendiri yang  menawarkan keunggulan  sistemnya, baik  dari segi  aplikasi (perangkat  tambahan) maupun modul utama sistemnya. Meskipun demikian pada umumnya setiap &lt;b&gt;PLC&lt;/b&gt; (sebagaimana komputer pribadi Anda yang cenderung mengalami standarisasi dan kompatibel satu sama lain) mengandung empat bagian (piranti) berikut ini:&lt;/span&gt;&lt;/span&gt; &lt;ol&gt;&lt;li&gt; &lt;b&gt;&lt;span style="font-family:Arial;"&gt;Modul Catu daya.&lt;/span&gt;&lt;/b&gt;&lt;/li&gt;&lt;li&gt; &lt;b&gt;&lt;span style="font-family:Arial;"&gt;Modul CPU.&lt;/span&gt;&lt;/b&gt;&lt;/li&gt;&lt;li&gt; &lt;b&gt;&lt;span style="font-family:Arial;"&gt;Modul Perangkat Lunak.&lt;/span&gt;&lt;/b&gt;&lt;/li&gt;&lt;li&gt; &lt;b&gt;&lt;span style="font-family:Arial;"&gt;Modul I/O.&lt;/span&gt;&lt;/b&gt;&lt;/li&gt;&lt;/ol&gt; &lt;center&gt; &lt;a href="http://elektroindonesia.com/elektro/inst11kt.html"&gt;Gambar 1&lt;/a&gt;  &lt;p&gt;&lt;a href="http://elektroindonesia.com/elektro/inst11b.gif"&gt;&lt;img src="http://elektroindonesia.com/elektro/inst11b.gif" alt="Gambar 2" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;Gambar 2. Interaksi antar modul dalam PLC Trisen TS3000. &lt;/p&gt;&lt;/center&gt; &lt;h3&gt; &lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:0;"&gt;&lt;b&gt;Modul Catu Daya&lt;/b&gt; (Power Supply: PS)&lt;/span&gt;&lt;/span&gt;&lt;/h3&gt; &lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;PS  memberikan tegangan DC ke berbagai modul &lt;b&gt;PLC&lt;/b&gt;  lainnya  selain modul tambahan dengan kemampuan arus total sekitar  20A  sampai  50A, yang sama dengan &lt;i&gt;battery lithium&lt;/i&gt; &lt;i&gt;integral&lt;/i&gt; (yang digunakan  sebagai  memory backup). Seandainya PS ini gagal atau tegangan bolak balik masukannya turun dari  nilai spesifiknya,  isi memori akan  tetap terjaga.  &lt;b&gt;PLC&lt;/b&gt;  buatan Triconex, USA, yakni Trisen TS3000 bahkan mempunyai &lt;i&gt;double power  supply&lt;/i&gt; yang berarti apabila satu PS-nya gagal, PS kedua otomatis akan  mengambil alih fungsi catu daya sistem.&lt;/span&gt;&lt;/span&gt; &lt;h3&gt; &lt;b&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:0;"&gt;Modul CPU&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/h3&gt; &lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;Modul CPU yang disebut juga modul kontroler atau prosesor  terdiri dari dua bagian:&lt;/span&gt;&lt;/span&gt; &lt;ul&gt;&lt;ol&gt;&lt;li&gt; &lt;b&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;Prosesor&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/li&gt;&lt;li&gt; &lt;b&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;Memori&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/ul&gt; &lt;b&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;1. Prosesor berfungsi:&lt;/span&gt;&lt;/span&gt;&lt;/b&gt; &lt;ul&gt;&lt;ul&gt;&lt;li&gt; &lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;mengoperasikan dan mengkomunikasikan modul-modul &lt;b&gt;PLC&lt;/b&gt; melalui bus-bus serial atau paralel yang ada.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt; &lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;Mengeksekusi program kontrol.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt; &lt;b&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;2. Memori, yang berfungsi:&lt;/span&gt;&lt;/span&gt;&lt;/b&gt; &lt;ul&gt;&lt;ul&gt;&lt;li&gt; &lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;Menyimpan informasi digital yang bisa diubah dan  berbentuk  tabel  data, register citra, atau RLL (Relay  Ladder  Logic),  yang merupakan program pengendali proses.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/ul&gt; &lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;Pada &lt;b&gt;PLC&lt;/b&gt; tertentu kadang kita jumpai pula beberapa prosesor sekaligus dalam satu modul, yang ditujukan untuk mendukung keandalan sistem. Beberapa prosesor tersebut bekerja sama dengan suatu prosedur tertentu untuk meningkatkan kinerja pengendalian. Contoh &lt;b&gt;PLC&lt;/b&gt; jenis ini ialah Trisen TS3000 mempunyai tiga buah prosesor dengan sistem yang disebut &lt;i&gt;Tripple Redundancy Modular.&lt;/i&gt;&lt;/span&gt;&lt;/span&gt;  &lt;p&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;Kapasitas memori pada &lt;b&gt;PLC&lt;/b&gt; juga bervariasi. Trisen  TS3000, misalnya, mempunyai memori 384 Kbyte (SRAM)  untuk program pengguna dan 256 Kbyte (EPROM) untuk sistem operasinya.  Simatic S5  buatan Siemens mempunyai memori EPROM 16Kbyte dan RAM 8 Kbyte. &lt;b&gt; PLC&lt;/b&gt;  FA-3S  Series mempunyai memori total sekitar 16 Kbyte. Kapasitas memori ini tergantung penggunaannya dan seberapa jauh Anda sebagai  mengoptimalisasikan  ruang  memori  &lt;b&gt;PLC&lt;/b&gt; yang Anda miliki,  yang  berarti pula tergantung seberapa banyak lokasi yang diperlukan program kontrol  untuk mengendalikan  &lt;i&gt;plant &lt;/i&gt;tertentu. Program kontrol untuk  pengaliran bahan bakar dalam turbin gas tentu membutuhkan lokasi memori yang lebih banyak dibandingkan  dengan program kontrol untuk menggerakkan putaran  mekanik robot pemasang  bodi mobil pada industri otomotif. Suatu modul memori tambahan  bisa juga diberikan ke sistem utama apabila  kebutuhan memori memang meningkat.&lt;/span&gt;&lt;/span&gt; &lt;/p&gt;&lt;h3&gt; &lt;b&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:0;"&gt;Modul Program Perangkat Lunak&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/h3&gt; &lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;&lt;b&gt;PLC &lt;/b&gt; mengenal  berbagai  macam  perangkat  lunak,  termasuk  State Language, SFC, dan bahkan C. Yang paling populer digunakan ialah RLL  (&lt;i&gt;Relay   Ladder Logic&lt;/i&gt;). Semua  bahasa  pemrograman   tersebut   dibuat berdasarkan  proses sekuensial yang terjadi dalam&lt;i&gt; plant&lt;/i&gt;  (sistem  yang dikendalikan). Semua instruksi dalam program akan dieksekusi oleh  modul CPU, dan penulisan program itu bisa dilakukan pada keadan on line maupun off line.  Jadi  &lt;b&gt;PLC &lt;/b&gt; dapat  bisa  ditulisi program kontrol  pada  saat  ia mengendalikan   proses  tanpa  mengganggu pengendalian yang   sedang dilakukan. Eksekusi perangkat lunak tidak akan mempengaruhi operasi I/O yang tengah berlangsung.&lt;/span&gt;&lt;/span&gt; &lt;h3&gt; &lt;b&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:0;"&gt;Modul I/O&lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;/h3&gt; &lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;Modul I/O merupakan modul masukan dan modul keluaran yang bertugas mengatur hubungan PLC dengan piranti eksternal atau periferal yang  bisa berupa  suatu komputer host, saklar-saklar, unit penggerak  motor,  dan berbagai macam sumber sinyal yang terdapat dalam plant.&lt;/span&gt;&lt;/span&gt; &lt;h4&gt; &lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;1. Modul masukan&lt;/span&gt;&lt;/span&gt;&lt;/h4&gt;  &lt;ul&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;Modul masukan berfungsi untuk menerima sinyal dari unit pengindera periferal, dan memberikan pengaturan sinyal, terminasi, isolasi,  maupun indikator  keadaan sinyal masukan. Sinyal-sinyal dari piranti  periferal akan di-scan dan keadaannya akan dikomunikasikan melalui modul antarmuka dalam &lt;b&gt;PLC&lt;/b&gt;.&lt;/span&gt;&lt;/span&gt;&lt;p&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;Beberapa jenis modul masukan di antaranya:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/p&gt;&lt;ul&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;- Tegangan  masukan  DC (110, 220, 14, 24, 48, 15-30V)  atau  arus C(4-20mA).&lt;/span&gt;&lt;/span&gt;&lt;/ul&gt;&lt;ul&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;- Tegangan AC ((110, 240, 24, 48V) atau arus AC (4-20mA).&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;- Masukan TTL (3-15V).&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;- Masukan analog (12 bit).&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;- Masukan word (16-bit/paralel).&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;- Masukan termokopel.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;- Detektor suhu resistansi (RTD).&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;- Relay arus tinggi.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;- Relay arus rendah.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;- Masukan latching (24VDC/110VAC).&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;- Masukan terisolasi (24VDC/85-132VAC).&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;- Masukan cerdas (mengandung mikroprosesor).&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;- Masukan pemosisian (positioning).&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;- Masukan PID (proporsional, turunan, dan integral).&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;- Pulsa kecepatan tinggi.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;- Dll.&lt;/span&gt;&lt;/span&gt;&lt;/ul&gt;&lt;/ul&gt;  &lt;h4&gt; &lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;2. Modul keluaran&lt;/span&gt;&lt;/span&gt;&lt;/h4&gt;  &lt;ul&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;Modul keluaran mengaktivasi berbagai macam piranti seperti  aktuator  hidrolik, pneumatik, solenoid, starter motor,  dan  tampilan status  titik-titik periferal yang terhubung dalam sistem.  Fungsi modul  keluaran lainnya mencakup conditioning, terminasi dan  juga pengisolasian  sinyal-sinyal yang ada. Proses aktivasi  itu  tentu saja dilakukan dengan pengiriman sinyal-sinyal diskret dan  analog yang relevan, berdasarkan watak &lt;b&gt;PLC &lt;/b&gt;sendiri yang merupakan piranti digital. Beberapa modul keluaran yang lazim saat ini di antaranya:&lt;/span&gt;&lt;/span&gt;&lt;/ul&gt;  &lt;ul&gt;&lt;ul&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;- Tegangan DC (24, 48, 110V) atau arus DC (4-20mA&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;- Tegangan AC (110, 240V) atau arus AC (4-20mA).&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;- Keluaran analog (12-bit).&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;- Keluaran word (16-bit/paralel)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;- Keluaran cerdas.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;- Keluaran ASCII.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;- Port komunikasi ganda.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/ul&gt;&lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;Dengan berbagai modul di atas &lt;b&gt;PLC&lt;/b&gt; bekerja mengendalikan berbagai &lt;i&gt;plant&lt;/i&gt; yang kita miliki. Mengingat sinyal-sinyal yang ditanganinya bervariasi dan merupakan informasi yang memerlukan pemrosesan saat itu juga, maka sistem yang kita miliki tentu memiliki perangkat pendukung yang mampu mengolah secara &lt;i&gt;real time&lt;/i&gt; dan bersifat &lt;i&gt;multi tasking&lt;/i&gt;,. Anda bayangkan bahwa pada suatu unit pembangkit tenaga listrik misalnya, &lt;b&gt;PLC&lt;/b&gt; Anda harus bekerja 24 jam untuk mengukur suhu buang dan kecepatan turbin, dan kemudian mengatur bukaan katup yang menentukan aliran bahan bakar berdasarkan informasi suhu buang dan kecepatan di atas., agar didapatkan putaran generator yang diinginkan! Pada saat yang sama sistem pelumasan turbin dan sistem alarm harus bekerja baik baik di bawah pengendalian &lt;b&gt;PLC&lt;/b&gt;! Suatu piranti sistem operasi dan komunikasi data yang andal tentu harus kita gunakan. Teknologi &lt;i&gt;cabling&lt;/i&gt;, pemanfaatan serat optik, sistem operasi berbasis &lt;i&gt;real time&lt;/i&gt; dan &lt;i&gt;multi tasking&lt;/i&gt; semacam Unix, dan fasilitas ekspansi yang memadai untuk &lt;i&gt;jaringan komputer&lt;/i&gt; merupakan hal yang lazim dalam instalasi &lt;b&gt;PLC&lt;/b&gt; saat ini.&lt;/span&gt;&lt;/span&gt;&lt;/ul&gt;  &lt;h3&gt; &lt;span style="font-family:Arial;"&gt;&lt;span style="font-size:0;"&gt;Sumber:&lt;/span&gt;&lt;/span&gt;&lt;/h3&gt;  &lt;ol&gt;&lt;li&gt; &lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;Robert B. Hee, A.A.S., &lt;i&gt;Knowing the Basics of PLCs-Part 1&lt;/i&gt;, EC &amp;amp;M Magazine, October 1995&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt; &lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;&lt;i&gt;TS3000 Planning &amp;amp; Installation Guide&lt;/i&gt; , March 1988&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt; &lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;T. senbun, F. Hanabuchi, &lt;i&gt;Instrumentation System, Fundamentals and Applications&lt;/i&gt;, Yokogawa electric Corp. Tokyo 1991.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt; &lt;span style="font-family:Arial;"&gt;&lt;span style=""&gt;Sumber-sumber lain.&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt; Oleh: N.A. Widyanahar&lt;br /&gt;&lt;a href="mailto:widyan@mailcity.com"&gt;&lt;/a&gt;Elektronika dan Instrumentasi FMIPA UGM Yogyakarta  &lt;p&gt;&lt;!----batas ---&gt; &lt;/p&gt;&lt;center&gt; &lt;hr /&gt;&lt;br /&gt;&lt;/center&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22491498-7013655694431718995?l=widyanahar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://widyanahar.blogspot.com/feeds/7013655694431718995/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22491498&amp;postID=7013655694431718995' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/7013655694431718995'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/7013655694431718995'/><link rel='alternate' type='text/html' href='http://widyanahar.blogspot.com/2008/01/elektro-indonesia-edisi-ke-sebelas.html' title=''/><author><name>N.A. Widyanahar</name><uri>http://www.blogger.com/profile/15078397541522591412</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='29' src='http://1.bp.blogspot.com/_z-gOROj07o0/SvD6e8Mf7DI/AAAAAAAAAHg/adRKozl4o-w/S220/profil1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22491498.post-5253123991478071722</id><published>2008-01-31T16:50:00.000+07:00</published><updated>2008-06-05T13:29:49.292+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='N03. my articles on Elektro Indonesia'/><title type='text'>Komunikasi Data Visual Basic - PLC Omron</title><content type='html'>&lt;h2  style="color: rgb(0, 153, 0);font-family:arial;"&gt;&lt;span style="font-size:130%;"&gt;&lt;span style="color: rgb(0, 102, 0);"&gt;Komunikasi Data &lt;/span&gt;Visual Basic - &lt;span style="color: rgb(153, 153, 153);"&gt;PLC Omron&lt;/span&gt;&lt;/span&gt;&lt;/h2&gt;&lt;span style=";font-family:arial;font-size:85%;"  &gt;&lt;span style="color: rgb(0, 0, 0);"&gt;ELEKTRO INDONESIA Nomor 29, Tahun VI,  Januari  2000&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="color: rgb(51, 102, 255);"&gt;&lt;a target="none" href="http://www.elektroindonesia.com/elektro/tel29.html"&gt; http://www.elektroindonesia.com/elektro/tel29.html&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;Saat ini penggunaan bahasa pemrograman berbasis objek sedang menjadi trend yang tak terhindarkan. Vendor perangkat lunak menawarkan bahasa dengan karakter tersebut dengan sebuah kosa kata yang cantik, yakni &lt;b&gt;Visual&lt;/b&gt;, sehingga kita kenal Delphi milik Borland, Visual C++, Visual Basic, atau Oracle, PowerBuilder, Visual dBase, Visual Foxpro, untuk aplikasi database. Tak terkecuali dalam aplikasi sistem kontrol industri, perangkat yang ditawarkan para vendornya juga semakin mendukung penggunaan pemrograman visual. Seperti Visual Basic, misalnya, kalangan industri sistem kontrol memberikan peluang untuk pengembangan sistem mereka dengan bahasa ini, terutama di kalangan pengguna sistem berbasis Windows. Yokogawa, ABB, Wonderware, adalah nama yang bisa disebutkan untuk hal ini. &lt;p&gt;Dalam artikel ini, kita akan mengetengahkan bagaimana Visual Basic digunakan mengakses data yang terdapat dalam memori sebuah PLC. Bahasa yang kita gunakan ialah Visual Basic 4.0 dan PLC-nya dari keluarga Omron. Komunikasi dilakukan melalui port serial. Aplikasi ini dibangun sebagai implementasi konsep dasar pertukaran data antara PLC dengan PC, dan membuka jalan bagi eksplorasi permasalahan komunikasi data lebih jauh dalam sistem kontrol industri. Pengesetan nilai setpoint parameter proses merupakan contoh utama penerapan program ini. &lt;/p&gt;&lt;p&gt;&lt;span style="font-size:78%;"&gt;Rancangan Aplikasi&lt;/span&gt; &lt;/p&gt;&lt;p&gt;Pada aplikasi ini, kita mengisikan sebuah data diskret ke PLC. Masukan yang kita berikan dari antarmuka Visual Basic ini akan ditunjukkan dalam bit indicator pada card I/O PLC . Apabila data adalah bit 1, maka indicator akan menyala. Apabila data nol indicator-nya tidak menyala. &lt;/p&gt;&lt;p&gt;RS 232&lt;br /&gt;&lt;img src="http://www.elektroindonesia.com/elektro/tel29g1.gif" align="absmiddle" height="39" width="42" /&gt;  ----Host Link Unit---- &lt;img src="http://www.elektroindonesia.com/elektro/tel29g2.gif" align="absmiddle" height="42" width="103" /&gt; Omron Sysmac C200HS + I/O card&lt;br /&gt;PC &lt;/p&gt;&lt;center&gt; &lt;p&gt;&lt;b&gt;&lt;span style=""&gt;Gambar 1 :&lt;/span&gt; Konfigurasi sistem hardware.&lt;/b&gt;&lt;/p&gt;&lt;/center&gt;  &lt;h3&gt; Persiapan Setting Sistem&lt;/h3&gt;  &lt;ul&gt;&lt;li&gt;&lt;span style="font-size:78%;"&gt;Pengesetan Host Link Units&lt;/span&gt; &lt;/li&gt;&lt;/ul&gt; &lt;b&gt;Host link Unit&lt;/b&gt; berfungsi untuk menjembatani PC dalam memonitor status pengoperasian dan lokasi data dari PLC. Dalam hal ini kita menggunakan &lt;b&gt;OMRON&lt;/b&gt; CQM1-CIF02. Parameter komunikasinya sudah ter-setting standar yaitu : &lt;p&gt;1. Kecepatan Transmisi. &lt;/p&gt;&lt;dir&gt;Baud-rate = 9.600 bps &lt;/dir&gt; &lt;p&gt;2. Format data untuk sebuah karakter. &lt;/p&gt;&lt;dir&gt; Nomor start bits = 1&lt;br /&gt;Panjang data = 7 bits&lt;br /&gt;Event (vertical) parity = 1 bits&lt;br /&gt;Nomor stop bits = 2 &lt;/dir&gt;  &lt;ul&gt;&lt;li&gt; &lt;span style="font-size:78%;"&gt;Pengesetan PC/Komputer&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;p&gt;  PC diset melalui pemrograman / penulisan kode, yaitu dengan men-set properti kontrol komunikasi. Pengesetan parameter kecepatan transmisi dan format data pada properti harus benar-benar sama dengan pengesetan pada &lt;b&gt;Host link Unit&lt;/b&gt;. &lt;/p&gt;&lt;h3&gt; Alokasi Data dan Memori CPU PLC&lt;/h3&gt; Sebelum melangkah ke pemrograman kita harus mengetahui alokasi data di dalam CPU PLC ini, yang mempunyai nama seri Omron Sysmac C200HS. Di sini alokasi data diatur dalam bagian-bagian dengan nama yang relevan dengan kegunaan data. Misalnya data untuk timer dan pencacah, disimpan dalam Timer Counter Area, atau disingkat TC. Detailnya dapat dilihat pada tabel 1. &lt;table border="1"&gt; &lt;tbody&gt;&lt;tr&gt; &lt;td colspan="2" valign="top"&gt;Area&lt;/td&gt;  &lt;td colspan="2" valign="top"&gt;Kapasitas&lt;/td&gt;  &lt;td valign="top"&gt;Jangkau&lt;/td&gt;  &lt;td valign="top"&gt;Keterangan&lt;/td&gt; &lt;/tr&gt;  &lt;tr&gt; &lt;td colspan="2" valign="top"&gt;I/O Area&lt;/td&gt;  &lt;td colspan="2" valign="top"&gt;480 bits&lt;/td&gt;  &lt;td valign="top"&gt;IR 000 s.d. IR 029&lt;/td&gt;  &lt;td valign="top"&gt;Word I/O dialokasikan untuk rak CPU berdasarkan posisi slot.&lt;sup&gt;1&lt;/sup&gt;&lt;/td&gt; &lt;/tr&gt;  &lt;tr&gt; &lt;td colspan="2" valign="top"&gt;Group-2 High-density &lt;p&gt;I/O Unit Area&lt;/p&gt;&lt;/td&gt;  &lt;td colspan="2" valign="top"&gt;320 bits&lt;/td&gt;  &lt;td valign="top"&gt;IR 030 s.d. IR 049&lt;/td&gt;  &lt;td valign="top"&gt;Dialokasikan untuk Group-2 High-density I/O unit 0 s.d. 9.&lt;sup&gt;1&lt;/sup&gt;&lt;/td&gt; &lt;/tr&gt;  &lt;tr&gt; &lt;td colspan="2" valign="top"&gt;SYSMAC BUS Area&lt;/td&gt;  &lt;td colspan="2" valign="top"&gt;800 bits&lt;/td&gt;  &lt;td valign="top"&gt;IR 050 s.d. IR 099&lt;/td&gt;  &lt;td valign="top"&gt;Dialokasikan untuk Remote I/O Slave Racks 0 s.d. 4.&lt;sup&gt;1&lt;/sup&gt;&lt;/td&gt; &lt;/tr&gt;  &lt;tr&gt; &lt;td colspan="2" valign="top"&gt;Special I/O Unit Area&lt;/td&gt;  &lt;td colspan="2" valign="top"&gt;1,600 bits&lt;/td&gt;  &lt;td valign="top"&gt;IR 100 s.d. IR 199&lt;/td&gt;  &lt;td valign="top"&gt;Dialokasikan untuk Special I/O Unit 0 s.d. 9.&lt;sup&gt;1&lt;/sup&gt;&lt;/td&gt; &lt;/tr&gt;  &lt;tr&gt; &lt;td colspan="2" valign="top"&gt;Optical Unit Area&lt;/td&gt;  &lt;td colspan="2" valign="top"&gt;512 bits&lt;/td&gt;  &lt;td valign="top"&gt;IR 200 s.d. IR 231&lt;/td&gt;  &lt;td valign="top"&gt;Dialokasikan untuk Unit I/O Optis.&lt;sup&gt;1&lt;/sup&gt;&lt;/td&gt; &lt;/tr&gt;  &lt;tr&gt; &lt;td colspan="2" valign="top"&gt;Work Area 1&lt;/td&gt;  &lt;td colspan="2" valign="top"&gt;64 bits&lt;/td&gt;  &lt;td valign="top"&gt;IR 232 s.d. IR 235&lt;/td&gt;  &lt;td valign="top"&gt;Untuk penggunaan bit-bit pada program (work bit).&lt;/td&gt; &lt;/tr&gt;  &lt;tr&gt; &lt;td colspan="2" valign="top"&gt;Special Relay Area 1&lt;/td&gt;  &lt;td colspan="2" valign="top"&gt;312 bits&lt;/td&gt;  &lt;td valign="top"&gt;SR 23600 s.d. SR 25507&lt;/td&gt;  &lt;td valign="top"&gt;Mengandung jam sistem, flag, bit kontrol, dan informasi status&lt;/td&gt; &lt;/tr&gt;  &lt;tr&gt; &lt;td colspan="2" valign="top"&gt;Special Relay Area 2&lt;/td&gt;  &lt;td colspan="2" valign="top"&gt;704 bits&lt;/td&gt;  &lt;td valign="top"&gt;SR 256 s.d. SR 299 (298 s.d. 299 reserved by system)&lt;/td&gt;  &lt;td valign="top"&gt;Mengandung flag, bit kontrol,dan informasi status &lt;/td&gt; &lt;/tr&gt;  &lt;tr&gt; &lt;td valign="top"&gt;&lt;br /&gt;&lt;/td&gt;  &lt;td valign="top"&gt;Macro Area&lt;/td&gt;  &lt;td colspan="2" valign="top"&gt;64 bits&lt;/td&gt;  &lt;td valign="top"&gt;SR 290 s.d. SR 293&lt;/td&gt;  &lt;td valign="top"&gt;&lt;i&gt;Input&lt;/i&gt;&lt;/td&gt; &lt;/tr&gt;  &lt;tr&gt; &lt;td valign="top"&gt;&lt;br /&gt;&lt;/td&gt;  &lt;td valign="top"&gt;&lt;br /&gt;&lt;/td&gt;  &lt;td colspan="2" valign="top"&gt;64 bits&lt;/td&gt;  &lt;td valign="top"&gt;SR 294 s.d. SR 299&lt;/td&gt;  &lt;td valign="top"&gt;&lt;i&gt;Output&lt;/i&gt;&lt;/td&gt; &lt;/tr&gt;  &lt;tr&gt; &lt;td colspan="2" valign="top"&gt;Work Area 2&lt;/td&gt;  &lt;td colspan="2" valign="top"&gt;3,392 bits&lt;/td&gt;  &lt;td valign="top"&gt;IR 300 s.d. IR 511&lt;/td&gt;  &lt;td valign="top"&gt;Sebagai &lt;i&gt;work bit&lt;/i&gt; dalam program.&lt;/td&gt; &lt;/tr&gt;  &lt;tr&gt; &lt;td colspan="2" valign="top"&gt;Temporary Relay Area&lt;/td&gt;  &lt;td colspan="2" valign="top"&gt;8 bits&lt;/td&gt;  &lt;td valign="top"&gt;TR 00 s.d. TR 07&lt;/td&gt;  &lt;td valign="top"&gt;Digunakan untuk menyimpan dan mengambil kondisi eksekusi ketika memprogram tipe tertentu dari diagran ladder.&lt;/td&gt; &lt;/tr&gt;  &lt;tr&gt; &lt;td colspan="2" valign="top"&gt;Holding Relay Area&lt;/td&gt;  &lt;td colspan="2" valign="top"&gt;1,600 bits&lt;/td&gt;  &lt;td valign="top"&gt;HR 00 s.d. HR 99&lt;/td&gt;  &lt;td valign="top"&gt;Digunakan untuk menyimpan data dan menjaga nilai data ketika catu daya PLC off. &lt;/td&gt; &lt;/tr&gt;  &lt;tr&gt; &lt;td colspan="2" valign="top"&gt;Auxiliary Relay Area&lt;/td&gt;  &lt;td colspan="2" valign="top"&gt;448 bits&lt;/td&gt;  &lt;td valign="top"&gt;AR 00 s.d. AR 27&lt;/td&gt;  &lt;td valign="top"&gt;Mengandung flag dan bit untuk fungsi khusus, dan menjaga status selama catu daya gagal.&lt;/td&gt; &lt;/tr&gt;  &lt;tr&gt; &lt;td colspan="2" valign="top"&gt;Link Relay Area&lt;/td&gt;  &lt;td colspan="2" valign="top"&gt;1,024 bits&lt;/td&gt;  &lt;td valign="top"&gt;LR 00 s.d. LR 63&lt;/td&gt;  &lt;td valign="top"&gt;Digunakan untuk link data pada Sistem Link PLC.&lt;sup&gt;1&lt;/sup&gt;&lt;/td&gt; &lt;/tr&gt;  &lt;tr&gt; &lt;td colspan="2" valign="top"&gt;Timer / Counter Area&lt;/td&gt;  &lt;td colspan="2" valign="top"&gt;512 counters / timers&lt;/td&gt;  &lt;td valign="top"&gt;TC 000 s.d. TC 511&lt;/td&gt;  &lt;td valign="top"&gt;Digunakan untuk menentukan timer, dan pencacah, serta flag selesai, PV dan SV. Timer interval timer 0 sampai 2 and pencacah kecepatan tinggi 0 sampai 2 diberikan di area terpisah. &lt;p&gt;TIM 000 s.d. TIM 015 dapat di-refresh refreshed via proses interrupt sebagai timer kecepatan tinggi..&lt;/p&gt;&lt;/td&gt; &lt;/tr&gt;  &lt;tr&gt; &lt;td colspan="2" valign="top"&gt;Data Memory Area&lt;/td&gt;  &lt;td colspan="2" valign="top"&gt;6,144 word&lt;/td&gt;  &lt;td valign="top"&gt;DM 000 s.d. DM 6143&lt;/td&gt;  &lt;td valign="top"&gt;Baca/Tulis&lt;/td&gt; &lt;/tr&gt;  &lt;tr&gt; &lt;td colspan="2" valign="top"&gt;Holding Relay Area&lt;/td&gt;  &lt;td valign="top"&gt;&lt;br /&gt;&lt;/td&gt;  &lt;td valign="top"&gt;1,000 word&lt;/td&gt;  &lt;td valign="top"&gt;DM 000 s.d. DM 0999&lt;/td&gt;  &lt;td valign="top"&gt;&lt;i&gt;Normal DM.&lt;/i&gt;&lt;/td&gt; &lt;/tr&gt;  &lt;tr&gt; &lt;td colspan="2" valign="top"&gt;&lt;br /&gt;&lt;/td&gt;  &lt;td valign="top"&gt;&lt;br /&gt;&lt;/td&gt;  &lt;td valign="top"&gt;1,000 word&lt;/td&gt;  &lt;td valign="top"&gt;DM 1000 s.d. DM 1999&lt;/td&gt;  &lt;td valign="top"&gt;&lt;i&gt;Special I/O Unit Area.&lt;sup&gt;2&lt;/sup&gt;&lt;/i&gt;&lt;/td&gt; &lt;/tr&gt;  &lt;tr&gt; &lt;td colspan="2" valign="top"&gt;&lt;br /&gt;&lt;/td&gt;  &lt;td valign="top"&gt;&lt;br /&gt;&lt;/td&gt;  &lt;td valign="top"&gt;4,000 word&lt;/td&gt;  &lt;td valign="top"&gt;DM 2000 s.d. DM 5999&lt;/td&gt;  &lt;td valign="top"&gt;&lt;i&gt;Normal DM&lt;/i&gt;&lt;/td&gt; &lt;/tr&gt;  &lt;tr&gt; &lt;td colspan="2" valign="top"&gt;&lt;br /&gt;&lt;/td&gt;  &lt;td valign="top"&gt;&lt;br /&gt;&lt;/td&gt;  &lt;td valign="top"&gt;31 word&lt;/td&gt;  &lt;td valign="top"&gt;DM 6000 s.d. DM 6030&lt;/td&gt;  &lt;td valign="top"&gt;&lt;i&gt;History log&lt;/i&gt;&lt;/td&gt; &lt;/tr&gt;  &lt;tr&gt; &lt;td colspan="2" valign="top"&gt;&lt;br /&gt;&lt;/td&gt;  &lt;td valign="top"&gt;&lt;br /&gt;&lt;/td&gt;  &lt;td valign="top"&gt;(44) word&lt;/td&gt;  &lt;td valign="top"&gt;DM 6100 s.d. DM 6143&lt;/td&gt;  &lt;td valign="top"&gt;&lt;i&gt;Link test area (reserved)&lt;/i&gt;&lt;/td&gt; &lt;/tr&gt;  &lt;tr&gt; &lt;td colspan="2" valign="top"&gt;Fixed DM Area&lt;/td&gt;  &lt;td colspan="2" valign="top"&gt;512 word&lt;/td&gt;  &lt;td valign="top"&gt;DM 6144 s.d. DM 6599&lt;/td&gt;  &lt;td valign="top"&gt;&lt;i&gt;Fixed DM Area (read only)&lt;/i&gt;&lt;/td&gt; &lt;/tr&gt;  &lt;tr&gt; &lt;td colspan="2" valign="top"&gt;&lt;br /&gt;&lt;/td&gt;  &lt;td valign="top"&gt;&lt;br /&gt;&lt;/td&gt;  &lt;td valign="top"&gt;56 word&lt;/td&gt;  &lt;td valign="top"&gt;DM 6600 s.d. DM 6655&lt;/td&gt;  &lt;td valign="top"&gt;&lt;i&gt;PLC Setup&lt;/i&gt;&lt;/td&gt; &lt;/tr&gt;  &lt;tr&gt; &lt;td colspan="2" valign="top"&gt;Expansion DM Area&lt;/td&gt;  &lt;td colspan="2" valign="top"&gt;3,000 word max.&lt;/td&gt;  &lt;td valign="top"&gt;DM 7000 s.d. DM 9999&lt;/td&gt;  &lt;td valign="top"&gt;&lt;i&gt;Read only&lt;/i&gt;&lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;&lt;p&gt;&lt;b&gt;&lt;span style=""&gt;Note &lt;/span&gt;1. Dapat digunakan sebagai &lt;i&gt;work word&lt;/i&gt; dan &lt;i&gt;work bit&lt;/i&gt; ketika tidak digunakan untuk tujuan alokasi mereka.&lt;/b&gt;&lt;br /&gt;&lt;b&gt;2. &lt;i&gt;Setup&lt;/i&gt; PC dapat diset untuk penggunaan DM 7000 sampai DM 7999 sebagai Area I/O Spesial.&lt;/b&gt; &lt;/p&gt;&lt;center&gt; &lt;p&gt;&lt;b&gt;Tabel 1 &lt;/b&gt;&lt;span style="font-size:0;"&gt;Alokasi tempat data dan memory data pada CPU OMRON C-200HS.&lt;/span&gt;&lt;/p&gt;&lt;/center&gt;  &lt;h3&gt; Pemaketan Data&lt;/h3&gt; Agar dapat membaca ataupun menulis, satu rangkaian data harus dikirim dengan bentuk paket terstruktur yang disebut &lt;b&gt;frame&lt;/b&gt;. Masing-masing lokasi data atau memori data mempunyai bentuk frame yang berbeda. Dalam contoh disini kita menuliskan data pada lokasi data IR (Internal Relay). Frame penulisannya: &lt;p&gt;&lt;img src="http://www.elektroindonesia.com/elektro/tel29g5.gif" height="232" width="537" /&gt; &lt;/p&gt;&lt;h3&gt; &lt;span style="font-size:78%;"&gt;Pemrograman Visual Basic&lt;/span&gt;&lt;/h3&gt; Berdasarkan data &lt;i&gt;resource&lt;/i&gt; dan rancangan sistem kita, maka kita bisa memulai pembuatan program yang kita butuhkan. Dalam aplikasi ini window yang kita buat sebagai antarmuka aplikasi merupakan window sederhana dengan jumlah objek minimum yang mencukupi. Objek ini kita butuhkan sebagai bagian dari perangkat komunikasi serial dalam perangkat lunak. Untuk ini kita buat ambil sebuah objek komunikasi dengan nama &lt;i&gt;default &lt;/i&gt;Comm1, dan tiga buah text box dan label yang sesuai. &lt;p&gt;Algoritma program meliputi pengaktifan port, pembacaan isi port, pembuatan frame data yang memenuhi syarat bisa dibaca PLC, yakni dengan frame yang telah kita sebutkan di atas, pengiriman data, dan pembacaan respon dari PLC. Pengecekan isi buffer merupakan opsional (tambahan saja). &lt;/p&gt;&lt;h3&gt; &lt;span style="font-size:78%;"&gt;Kode Program&lt;/span&gt;&lt;/h3&gt; &lt;u&gt;Pengaktifan Port&lt;/u&gt; &lt;dir&gt;&lt;span style="font-family:Courier New;"&gt;&lt;span style=""&gt;Private Sub Form_Load()&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Courier New;"&gt;&lt;span style=""&gt;Comm1.CommPort = 2&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Courier New;"&gt;&lt;span style=""&gt;Comm1.Settings = "9600,E,7,2"&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Courier New;"&gt;&lt;span style=""&gt;Comm1.PortOpen = True&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Courier New;"&gt;&lt;span style=""&gt;End Sub&lt;/span&gt;&lt;/span&gt;&lt;/dir&gt; Properti &lt;span style="font-family:Courier New;"&gt;&lt;span style=""&gt;CommPort&lt;/span&gt;&lt;/span&gt; bertugas men-set nomor serial port yang digunakan oleh PC. Karena kita menggunakan port COM 2 dan nama kontrol komunikasinya adalah &lt;span style="font-family:Courier New;"&gt;&lt;span style=""&gt;Comm1&lt;/span&gt;&lt;/span&gt;, maka kodenya &lt;span style="font-family:Courier New;"&gt;&lt;span style=""&gt;Comm1.CommPort = 2.&lt;/span&gt;&lt;/span&gt; &lt;p&gt;Properti &lt;span style="font-family:Courier New;"&gt;&lt;span style=""&gt;Settings&lt;/span&gt;&lt;/span&gt; bertugas men-set baud rate, parity, data bits dan stop bits COM2. Dalam hal ini baud-rate = 9.600 bps, nilai parity = even, panjang data 7 bits dan stop bit =2. &lt;/p&gt;&lt;p&gt;Properti PortOpen bertugas men-set keadaan COM 2, terbuka atau tertutup. Karena kelompok kode di atas dieksekusi pada saat awal program komunikasi di run, maka isinya &lt;span style="font-family:Courier New;"&gt;&lt;span style=""&gt;Comm1.PortOpen = True.&lt;/span&gt;&lt;/span&gt; &lt;/p&gt;&lt;p&gt;&lt;u&gt;Perhitungan FCS dan Pengiriman data.&lt;/u&gt; &lt;/p&gt;&lt;p&gt;&lt;b&gt;FCS&lt;/b&gt; (&lt;b&gt;Frame Check Sequence&lt;/b&gt;) adalah hasil konversi 8-bit data ke 2 digit karakter ASCII. Ke 8-bit data merupakan hasil dari exclusive OR secara berurut (&lt;i&gt;sequence&lt;/i&gt;) karakter pertama hingga karakter terakhir pada sebuah frame. Perhitungan FCS ini kita letakkan dalam event kotak perintah (&lt;i&gt;command box&lt;/i&gt;). &lt;/p&gt;&lt;blockquote&gt;&lt;span style="font-family:Courier New;"&gt;&lt;span style=""&gt;Private Sub Command1_Click()&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Courier New;"&gt;&lt;span style=""&gt;Dat$ = Text1.Text&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Courier New;"&gt;&lt;span style=""&gt;L = Len(Dat$)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Courier New;"&gt;&lt;span style=""&gt;A = 0&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Courier New;"&gt;&lt;span style=""&gt;For I = 1 Sd L&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Courier New;"&gt;&lt;span style=""&gt;Opo$ = Mid$(Dat$, I, 1)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Courier New;"&gt;&lt;span style=""&gt;A = Asc(Opo$) Xor A&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Courier New;"&gt;&lt;span style=""&gt;Next I&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Courier New;"&gt;&lt;span style=""&gt;FCS$ = Hex$(A)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Courier New;"&gt;&lt;span style=""&gt;If Len(FCS$) = 1 Then&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Courier New;"&gt;&lt;span style=""&gt;FCS$ = "0" + FCS$&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Courier New;"&gt;&lt;span style=""&gt;End If&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Courier New;"&gt;&lt;span style=""&gt;DatTX$ = Dat$ + FCS$ + "*" + Chr$(13)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Courier New;"&gt;&lt;span style=""&gt;Comm1.Output = DatTX$&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Courier New;"&gt;&lt;span style=""&gt;End Sub&lt;/span&gt;&lt;/span&gt;&lt;/blockquote&gt; Paket data akan yang dikirim diletakan dalam variabel &lt;span style="font-family:Courier New;"&gt;&lt;span style=""&gt;DatTX$.&lt;/span&gt;&lt;/span&gt; &lt;p&gt;&lt;u&gt;Pengambilan Respons PLC dari Buffer&lt;/u&gt; &lt;/p&gt;&lt;p&gt;Setiap kejadian pembacaan data ataupun penulisan harus melibatkan 2 perintah, yaitu kirim data dan terima respon. Perintah terima respon bertujuan agar buffer tetap bersih/kosong pada saat awal dan akhir kejadian, sehingga data yang terbaca tidak tercampur oleh sisa data (respon) dari kejadian sebelumnya. &lt;/p&gt;&lt;dir&gt;&lt;span style="font-family:Courier New;"&gt;&lt;span style=""&gt;Private Sub Command2_Click()&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Courier New;"&gt;&lt;span style=""&gt;Text2.Text = Comm1.Input&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Courier New;"&gt;&lt;span style=""&gt;End Sub&lt;/span&gt;&lt;/span&gt;&lt;/dir&gt; Hasil pembacaan diletakkan pada Text2. &lt;p&gt;&lt;u&gt;Pengecekan isi buffer&lt;/u&gt; &lt;/p&gt;&lt;dir&gt;&lt;span style="font-family:Courier New;"&gt;&lt;span style=""&gt;Private Sub Command3_Click()&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Courier New;"&gt;&lt;span style=""&gt;Text3.Text = Comm1.InBufferCount&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:Courier New;"&gt;&lt;span style=""&gt;End Sub&lt;/span&gt;&lt;/span&gt;&lt;/dir&gt; Properti &lt;span style="font-family:Courier New;"&gt;&lt;span style=""&gt;InBuffercount&lt;/span&gt;&lt;/span&gt; bertugas untuk mengetahui jumlah karakter di dalam buffer. Jadi dalam hal ini Text3 berguna untuk memonitor jumlah karakter dalam buffer. &lt;center&gt; &lt;p&gt;&lt;span style=""&gt;&lt;a href="http://www.elektroindonesia.com/elektro/tel29g3.jpg"&gt;Gambar 2 : Window Sederhana untuk Antarmuka Aplikasi.&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;/center&gt;  &lt;h3&gt; Eksekusi Program&lt;/h3&gt; Sebelum program dijalankan, kita pastikan dulu bahwa semua peralatan telah dihubungkan secara benar, dan masing-masing telah di-set sesuai dengan ketentuan di atas. CPU dan &lt;b&gt;I/O Card&lt;/b&gt; kita tempatkan pada panelnya dan koneksi kabel Host Link pada port serial dihubungkan dengan benar. Setelah dipastikan siap, barulah program kita jalankan. Dalam hal ini kita bisa melakukannya melalui lingkungan dalam Visual Basic, maupun program kompilasi .EXE. &lt;center&gt; &lt;p&gt;&lt;span style=""&gt;&lt;a href="http://www.elektroindonesia.com/elektro/tel29g4.jpg"&gt;Gambar 3: Hasil Eksekusi&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;&lt;/center&gt;  &lt;p&gt;Antarmuka aplikasi akan tampak seperti window pada gambar 2. Pada antarmuka ini, data yang kita kirim harus sudah diketik oleh pengguna dalam bentuk frame tanpa "*" dan "|" (karena keduanya sudah kita tuliskan dalam kode program). Setelah diketikkan isi datanya, baru kita tekan tombol &lt;b&gt;Transmit&lt;/b&gt;. &lt;/p&gt;&lt;p&gt;Tampak bahwa isiannya ialah @00WR0110FFFF, yang berarti: &lt;/p&gt;&lt;dir&gt; &lt;dir&gt; &lt;dir&gt; &lt;dir&gt; &lt;dir&gt; &lt;dir&gt;Channel : 110 atau 0110 dalam 4 digit desimal&lt;br /&gt;Data: FFFF dalam heksa&lt;/dir&gt; &lt;/dir&gt; &lt;/dir&gt; &lt;/dir&gt; &lt;/dir&gt; &lt;/dir&gt; Setelah kita tekan &lt;b&gt;Transmit&lt;/b&gt; kita tekan &lt;b&gt;Response&lt;/b&gt;, untuk mendapatkan data respon dari PLC (yang merupakan pengecekan apakah data yang kita kirim telah diterima PLC). Dengan &lt;i&gt;method &lt;/i&gt;&lt;span style="font-family:Courier New;"&gt;&lt;span style=""&gt;Input &lt;/span&gt;&lt;/span&gt;PLC akan memberi respon dengan frame @00WR0045*|, yang berarti data telah diterima PLC. &lt;p&gt;Dengan menekan tombol &lt;b&gt;Buffer&lt;/b&gt;, isi buffer diketahui kosong, karena telah didahului proses pengambilan isinya melalui penekanan tombol &lt;b&gt;Response&lt;/b&gt;. &lt;/p&gt;&lt;p&gt;Dengan proses di atas kita telah berhasil membuat sebuah antarmuka komunikasi dasar antara komputer dengan mesin PLC kita. Dengan kemudahan pemrograman visual, aplikasi ini tentu amat potensial dikembangkan agar semakin baik dan memudahkan pengguna. Fasilitas penulisan data dalam desimal (misalnya setpoin suhu pada boiler), atau pengesetan alamat secara otomatis dari database yang memuat alokasi memori PLC merupakan contoh pengembangan dalam hal ini. &lt;/p&gt;&lt;h3&gt; Daftar Pustaka&lt;/h3&gt;  &lt;ol&gt;&lt;li&gt; &lt;i&gt;C200HS Programmable Controller Operation Manual&lt;/i&gt;, &lt;b&gt;Omron&lt;/b&gt;,  August 1994&lt;/li&gt;&lt;li&gt; &lt;i&gt;Sysmac C200H/C500/C500F/C1000H/C2000H/C2000 Host Link Unit Operation Manual&lt;/i&gt;, Omron,1994&lt;/li&gt;&lt;li&gt; Jeff Web, dkk&lt;i&gt;, Pemrograman Lanjut dengan Visual Basic, &lt;/i&gt;Andi &amp;amp; Simon &amp;amp; Schuster (Asia) Pte Ltd., Yogyakarta, 1997&lt;/li&gt;&lt;li&gt; &lt;i&gt;Visual Basic Online Help&lt;/i&gt;&lt;/li&gt;&lt;/ol&gt; Oleh :&lt;br /&gt;Hari Suharsono&lt;br /&gt;N.A. Widyanahar&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22491498-5253123991478071722?l=widyanahar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://widyanahar.blogspot.com/feeds/5253123991478071722/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22491498&amp;postID=5253123991478071722' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/5253123991478071722'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/5253123991478071722'/><link rel='alternate' type='text/html' href='http://widyanahar.blogspot.com/2008/01/httpwww.html' title='Komunikasi Data Visual Basic - PLC Omron'/><author><name>N.A. Widyanahar</name><uri>http://www.blogger.com/profile/15078397541522591412</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='29' src='http://1.bp.blogspot.com/_z-gOROj07o0/SvD6e8Mf7DI/AAAAAAAAAHg/adRKozl4o-w/S220/profil1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22491498.post-4360779067016532670</id><published>2008-01-23T21:18:00.000+07:00</published><updated>2008-06-05T16:21:03.846+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='N07. Visual Basic Tips'/><title type='text'>VB. Baca Excel dengan late-binding</title><content type='html'>Dengan late binding, tidak perlu tau Excel versi berapa yang ada di PC klien. Dan tidak perlu reference di projectnya.&lt;br /&gt;&lt;br /&gt;silakan simak snapshotnya.&lt;br /&gt;'late binding&lt;br /&gt;&lt;span style=";font-family:arial;font-size:85%;"  &gt;&lt;span style="color: rgb(0, 153, 0);"&gt;   Dim wb As Object&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;   Dim rg As Object&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;   Dim ws1 As Object&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;   &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;   'Set Xfile = New Excel.Application&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;   If bXLSalreadyExist = False Then&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;      Set Xfile = CreateObject("Excel.Application")&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;      bXLSalreadyExist = True&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;   End If&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;  &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;   Xfile.Workbooks.Add&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;   Xfile.Workbooks(1).SaveAs sFile&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;   Xfile.Workbooks.Open sFile ', , , , , , , , , , False    '&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;   Set ws1 = Xfile.Worksheets.Item("Sheet1")&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;   Dim i As Integer&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;   i = 2&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;   &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;   'Get The FieldName: HEADER&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;   'Field Account No, STock Code, CHCode&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;         Set rg = ws1.Range("A1")&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;         rg.Value = "Account Code"&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;         Set rg = ws1.Range("B1")&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;         rg.Value = "StockCode"&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;         Set rg = ws1.Range("C1")&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;         rg.Value = "CH Code"&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;         Set rg = ws1.Range("D1")&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;         rg.Value = "Rec Date"&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;         Set rg = ws1.Range("E1")&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;         rg.Value = "Stock Portfolio"&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;         Set rg = ws1.Range("F1")&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;         rg.Value = "Stock On Hand"&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;         Set rg = ws1.Range("G1")&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;         rg.Value = "Stock Availability"&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;         Set rg = ws1.Range("H1")&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;         rg.Value = "For Trade Settlement"&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;         &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;            &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;   If rsDownload.RecordCount &lt;&gt; 0 Then&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;      rsDownload.MoveFirst&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;      While Not rsDownload.EOF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;        &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;      'F: Account No&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;         Set rg = ws1.Range("A" &amp;amp; i)&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;         rg.Value = rsDownload.Fields(0).Value&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;      'F: Stock Code&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;         Set rg = ws1.Range("B" &amp;amp; i)&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;         rg.Value = rsDownload.Fields(1).Value&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;      'F: CHCode&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;         Set rg = ws1.Range("C" &amp;amp; i)&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;         rg.Value = rsDownload.Fields(2).Value&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;      'F: Rec Date&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;         Set rg = ws1.Range("D" &amp;amp; i)&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;         rg.Value = rsDownload.Fields(3).Value&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;      'F: Stock Portfolio&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;         Set rg = ws1.Range("E" &amp;amp; i)&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;         rg.Value = rsDownload.Fields(4).Value&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;      'F: Stock StockOnHand&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;         Set rg = ws1.Range("F" &amp;amp; i)&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;         rg.Value = rsDownload.Fields(5).Value&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;      'F: Stock Stock Availability&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;         Set rg = ws1.Range("G" &amp;amp; i)&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;         rg.Value = rsDownload.Fields(6).Value&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;      'F: ForTrdSettlement&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;         Set rg = ws1.Range("H" &amp;amp; i)&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;         rg.Value = rsDownload.Fields(7).Value&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;         &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;         rsDownload.MoveNext&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;         i = i + 1&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;      Wend&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;   End If&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;   Xfile.Workbooks(1).Save&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;   Xfile.Workbooks.Close&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;gitu aja kok.&lt;br /&gt;wid, 2008 februari.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22491498-4360779067016532670?l=widyanahar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://widyanahar.blogspot.com/feeds/4360779067016532670/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22491498&amp;postID=4360779067016532670' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/4360779067016532670'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/4360779067016532670'/><link rel='alternate' type='text/html' href='http://widyanahar.blogspot.com/2008/01/vb-baca-excel-dengan-late-binding.html' title='VB. Baca Excel dengan late-binding'/><author><name>N.A. Widyanahar</name><uri>http://www.blogger.com/profile/15078397541522591412</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='29' src='http://1.bp.blogspot.com/_z-gOROj07o0/SvD6e8Mf7DI/AAAAAAAAAHg/adRKozl4o-w/S220/profil1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22491498.post-117611374838748754</id><published>2007-04-09T17:08:00.000+07:00</published><updated>2008-06-05T10:43:33.452+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='N01. Personal Expression'/><title type='text'>Berhenti sesaat</title><content type='html'>&lt;span style="font-weight: bold;"&gt;My  Second Posting.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;setelah sekian lama, kelupaan dengan user accountku di sini, akhirnya hari ini aku sempetin juga untuk menelusuri jejakku dan dapet akses lagi disini.&lt;br /&gt;&lt;br /&gt;Memang pekerjaan dan rutinitas sering membuatku tidak punya cukup waktu untuk time-out dan santai dengan hal-hal seperti ini. Suatu hal yang aneh, karena pada suatu kurun waktu tertentu aku bisa melakukan banyak hal positif - menulis - disamping melakukan aktivitas utama.&lt;br /&gt;&lt;br /&gt;hari-hari setelah ini mungkin akan banyak catatan di sini untuk topik-topik yang berkaitan profesional experience.&lt;br /&gt;&lt;br /&gt;-wid-&lt;br /&gt;apr 2007&lt;br /&gt;&lt;span style="font-weight: bold;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22491498-117611374838748754?l=widyanahar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://widyanahar.blogspot.com/feeds/117611374838748754/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22491498&amp;postID=117611374838748754' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/117611374838748754'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/117611374838748754'/><link rel='alternate' type='text/html' href='http://widyanahar.blogspot.com/2007/04/my-second-posting-setelah-sekian-lama.html' title='Berhenti sesaat'/><author><name>N.A. Widyanahar</name><uri>http://www.blogger.com/profile/15078397541522591412</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='29' src='http://1.bp.blogspot.com/_z-gOROj07o0/SvD6e8Mf7DI/AAAAAAAAAHg/adRKozl4o-w/S220/profil1.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-22491498.post-114000007613533313</id><published>2006-02-15T17:37:00.066+07:00</published><updated>2011-04-26T15:10:54.277+07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='N15. Oracle Issues'/><title type='text'>Oracle 10g di Oracle Linux</title><content type='html'>&lt;span style="font-family: Arial,Helvetica,sans-serif; font-size: large;"&gt;Persiapan dan Instalasi Oracle 10g Express Edition di Linux.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;i&gt;Back to Oracle again!&lt;/i&gt; Saya sudah lama mencoba dan menggunakan mesin database Oracle, walaupun kemudian terhenti. Tahun 2002~2003,waktu itu saya mencoba Oracle10g di Windows 2000.&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;Kali ini, karena fleksibilitas dan kemudahan yang ditawarkan oleh VMWare maka saya bisa melakukan utak-atik lagi tanpa kehilangan waktu untuk mengerjakan pekerjaan rutin saya. &lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;Tujuan saya ialah mesin database Oracle di salah satu distro Linux. &lt;br /&gt;&lt;a name='more'&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;b&gt;&lt;i&gt;Find the suitable Linux OS&lt;/i&gt;&lt;/b&gt;&lt;br /&gt;Mendengar dari teman-2 yang sudah &lt;i&gt;hands-on&lt;/i&gt; dengan Oracle saya melirik ke Red Hat. Setelah window shopping, melihat apa yang ada di repository server kantor dan juga di internet, mata saya tertuju dan memutuskan menggunakan Oracle Linux, dengan referensi di &lt;a href="http://www.oracle.com/us/technologies/linux/index.html"&gt;http://www.oracle.com/us/technologies/linux/index.html&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;Tampak di site tersebut penjelasan kenapa kita memilih Oracle Linux, terutama ialah Oracle Linux kompatible dengan Red Hat dengan kustomisasi dan patch yang sepenuhnya mengoptimasi O/S untuk Oracle.&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;Anda juga bisa mendapatkan keterangan lebih lanjut di-sini: &lt;a href="http://blogs.oracle.com/sergio/2010/05/the_oracle_enterprise_linux_so.html"&gt;http://blogs.oracle.com/sergio/2010/05/the_oracle_enterprise_linux_so.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;Saya mendapatkan installer Oracle Linux di Menu Download bagian &lt;b&gt;Server and Storage&lt;/b&gt; dan saya pilih &lt;b&gt;Linux and VM,&amp;nbsp;&lt;/b&gt;sehingga saya sampai di halaman&amp;nbsp; edelivery &lt;a href="https://edelivery.oracle.com/linux"&gt;https://edelivery.oracle.com/linux&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;Saya click Tombol Continue, sehingga saya mendapatkan halaman Registrasi dan Persetujuan Persyaratan.&amp;nbsp;Setelah mengisikan, Anda akan mendapatkan&amp;nbsp;halaman pilihan versi berikut ini: (32 bit atau 64bit)&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-nuz45s7t9Fo/TZAjKl5489I/AAAAAAAAAIo/ChfoQwSoV1M/s1600/oracle1.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="276" r6="true" src="http://4.bp.blogspot.com/-nuz45s7t9Fo/TZAjKl5489I/AAAAAAAAAIo/ChfoQwSoV1M/s400/oracle1.JPG" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;dengan memilih salah satu.&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-TsCMrH2c66w/TZAkJQ-iB1I/AAAAAAAAAIs/yFlduSUvzNA/s1600/oracle2.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="283" r6="true" src="http://2.bp.blogspot.com/-TsCMrH2c66w/TZAkJQ-iB1I/AAAAAAAAAIs/yFlduSUvzNA/s400/oracle2.JPG" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;Akhirnya dengan pertimbangan ukuran file, saya pilih Oracle Linux Release 5 Update 6,&lt;br /&gt;yang kemudian memberikan saya file ISO&amp;nbsp;bernama &lt;span style="color: #38761d;"&gt;&lt;i&gt;&lt;b&gt;Enterprise-R5-U6-Server-i386-dvd.iso.&lt;/b&gt; &lt;/i&gt;&lt;/span&gt;&lt;br /&gt;dari halaman ini:&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-vJjIVu6uLCQ/TZAmAuRhv5I/AAAAAAAAAIw/CeoHfuTgsfw/s1600/oracle3.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="281" r6="true" src="http://2.bp.blogspot.com/-vJjIVu6uLCQ/TZAmAuRhv5I/AAAAAAAAAIw/CeoHfuTgsfw/s400/oracle3.JPG" width="400" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;span style="color: black;"&gt;&lt;i&gt;Excellent!&lt;/i&gt; :)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;b&gt;Go For Oracle 10g.&lt;/b&gt;&lt;br /&gt;Dengan pertimbangan lisensi dan development environment, maka saya selanjutnya berburu installer Oracle 10g Express Edition.&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;Dari site yang sama pada bagian Menu Download, saya mendapatkan Database 10g Express edition, maka saya mendapatkan installer tsb. Hanya kali ini, saya harus mendaftarkan diri, sehingga memiliki user id dan password untuk mengunduhnya. Saya&amp;nbsp;mengikutinya dari halaman ini. &amp;nbsp;&lt;a href="http://www.oracle.com/technetwork/database/express-edition/downloads/index.html"&gt;http://www.oracle.com/technetwork/database/express-edition/downloads/index.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;Karena Oracle Linux merupakan&amp;nbsp;bukan turunan Debian&amp;nbsp; , maka saya ambil file .rpm dari sana. &lt;span style="color: #38761d;"&gt;&lt;i&gt;oracle-xe-univ-10.2.0.1-1.0.i386.rpm&lt;/i&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;span style="color: black;"&gt;&lt;b&gt;Proses Instalasi Oracle10g&lt;/b&gt;&lt;/span&gt;&lt;br /&gt;Pertama, tentu saja saya taruh file installer di atas disebuah folder dimana saya bisa mengaksesnya.&lt;br /&gt;let's say di lokasi berikut ini:&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;Saya masuk sebagai root. &lt;br /&gt;saya ketikkan perintah berikut ini:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace; font-size: x-small;"&gt;$ rpm -ivh downloads/oracle-xe-univ-10.2.0.1-1.0.i386.rpm&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;instalasi akan berjalan otomatis dengan pesan progress, sampai kemudian muncul pesan dan ketikkan berikut ini:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace; font-size: x-small;"&gt;$ /etc/init.d/oracle-xe configure&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;Masukkan konfigurasi berikut ini:&lt;br /&gt;1. Valid HTTP port untuk&amp;nbsp;Oracle Database XE graphical user interface (the default&amp;nbsp;8080)&lt;br /&gt;2. Valid port for the Oracle database listener (default&amp;nbsp;1521)&lt;br /&gt;3. password untuk&amp;nbsp;SYS dan SYSTEM administrative user accounts.&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;Sampai disini saya telah mendapatkan database Oracle di mesin saya.&amp;nbsp; Dimanakah kira-2 file instalasi saya berada. Saya mengecek lokasinya ada disini:&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="font-size: x-small;"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;/etc/oratab&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;saya lihat isinya ialah:&lt;br /&gt;&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace;"&gt;&lt;span style="font-size: x-small;"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; XE:/usr/lib/oracle/xe/app/oracle/product/10.2.0/server:N&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;posisi ini saya perlukan untuk mengeset $ORACLE_HOME&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;b&gt;Membuat User/Menambah O/S User ke Grup untuk mengakses Oracle&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;Setelah itu, saya mencoba&amp;nbsp;bisa menjalankan service start scr manual dengan perintah&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace; font-size: x-small;"&gt;$ /etc/init.d/oracle-xe start&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;Dan bila diperlukan menghentikannya dengan&amp;nbsp;perintah&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace; font-size: x-small;"&gt;$ /etc/init.d/oracle-xe stop&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;(ternyata tidak berjalan!)&lt;br /&gt;note:&amp;nbsp; &lt;br /&gt;1. log instalasi ini ada di &amp;nbsp;&lt;code&gt;$ORACLE_HOME/config/log/*&lt;/code&gt;. &lt;br /&gt;2. materi ini saya jalankan berdasarkan rujukan dari &lt;a href="http://www.oracle.com/technetwork/database/express-edition/downloads/toc-090217.html"&gt;http://www.oracle.com/technetwork/database/express-edition/downloads/toc-090217.html&lt;/a&gt; &lt;br /&gt;&amp;nbsp; &lt;br /&gt;&amp;nbsp;Sampai pada tahap di atas, ternyata saya tidak bisa memulai service tsb, dg pesan:&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace; font-size: x-small;"&gt;operation failed, &amp;nbsp;root is not a member of dba group.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;span style="font-family: Courier New; font-size: x-small;"&gt;&lt;/span&gt;&amp;nbsp;Ya, saya belum mensetup root sebagai member dari anggota dba saya. Kemudian saya menambahkan dengan senang hati di Menu System/Administration/User and Group&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/-Q3GS1hvp4Sk/TZBZ6dgH4WI/AAAAAAAAAI0/7s3yldmGws8/s1600/linuxusermanagement.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="279" r6="true" src="http://3.bp.blogspot.com/-Q3GS1hvp4Sk/TZBZ6dgH4WI/AAAAAAAAAI0/7s3yldmGws8/s320/linuxusermanagement.JPG" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;Dengan menambahkan super user /root ke dalam grup dba, maka saya bisa melakukan start-up pada mesin oracle saya.&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;b&gt;Home Environment Oracle: ORACLE_HOME&lt;/b&gt;&lt;br /&gt;Hal penting setelah instalasi ialah mengatur environment Oracle dengan tepat.&lt;br /&gt;Tapi tunggu, setelah saya berhasil melakukan instalasi, saya kok tidak mendapatkan $ORACLE_HOME di environment saya?&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&amp;nbsp;dengan Bourne, Bash, or Korn shell:&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace; font-size: x-small;"&gt;export ORACLE_BASE=/usr/lib/oracle/xe/app/oracle&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace; font-size: x-small;"&gt;export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/server&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace; font-size: x-small;"&gt;export PATH=$PATH:$ORACLE_HOME/bin&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace; font-size: x-small;"&gt;export ORACLE_HOME_LISTNER=$ORACLE_HOME&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace; font-size: x-small;"&gt;export ORACLE_SID=XE&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&amp;nbsp;&amp;nbsp;&lt;/div&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Command atau setting di atas saya tempatkan di dalam default&amp;nbsp;user profile&amp;nbsp;(.bash_profile)&amp;nbsp;saya dengan melalui editor vi. &lt;br /&gt;&lt;br /&gt;perintahnya: &lt;b&gt;vi .bash_profile&lt;/b&gt;&lt;br /&gt;(untuk mengedit, ketikkan&amp;nbsp;&lt;b&gt;i&lt;/b&gt; lalu isikan entrian dan akhiri mode edit dengan ESC dan :w, tutup dengan :q!)&lt;br /&gt;setelah itu kita mengecek hasil isian dengan perintah &lt;b&gt;env.&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Sebelumnya jangan lupa me-refresh profile dengan perintah berikut ini pada command line.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&amp;nbsp;&amp;nbsp; . .bash_profile &lt;/b&gt;&lt;br /&gt;&lt;br /&gt;Start Oracle&lt;br /&gt;Setelah setting diatur diatur dengan baik, mesin Oracle bisa dijalankan dengan menjalankan melalui beberapa cara:&lt;br /&gt;1.&amp;nbsp; Dari Service : melalui menu System/Administration/ServerSettings/Service. Pilih Oracle XE&lt;br /&gt;2. Dari Program: melalui menu Application/Oracle 10g XE Start Database.&lt;br /&gt;&lt;br /&gt;3. Dari command line, seperti pada alinea di atas.&lt;br /&gt;&lt;br /&gt;Dari opsi satu, Service yang tidak berjalan akan memberikan message seperti di bawah:&lt;br /&gt;&lt;div style="font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif;"&gt;&lt;span style="font-family: &amp;quot;Courier New&amp;quot;,Courier,monospace; font-size: x-small;"&gt;&lt;span style="color: red;"&gt;Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC_FOR_XE)))&lt;/span&gt;&lt;br style="color: red;" /&gt;&lt;span style="color: red;"&gt;TNS-12541: TNS:no listener&lt;/span&gt;&lt;br style="color: red;" /&gt;&lt;span style="color: red;"&gt;&amp;nbsp;TNS-12560: TNS:protocol adapter error&lt;/span&gt;&lt;br style="color: red;" /&gt;&lt;span style="color: red;"&gt;&amp;nbsp; TNS-00511: No listener&lt;/span&gt;&lt;br style="color: red;" /&gt;&lt;span style="color: red;"&gt;&amp;nbsp;&amp;nbsp; Linux Error: 2: No such file or directory&lt;/span&gt;&lt;br style="color: red;" /&gt;&lt;span style="color: red;"&gt;Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=mylinux.limas.com)(PORT=1521)))&lt;/span&gt;&lt;br style="color: red;" /&gt;&lt;span style="color: red;"&gt;TNS-12545: Connect failed because target host or object does not exist&lt;/span&gt;&lt;br style="color: red;" /&gt;&lt;span style="color: red;"&gt;&amp;nbsp;TNS-12560: TNS:protocol adapter error&lt;/span&gt;&lt;br style="color: red;" /&gt;&lt;span style="color: red;"&gt;&amp;nbsp; TNS-00515: Connect failed because target host or object does not exist&lt;/span&gt;&lt;br style="color: red;" /&gt;&lt;span style="color: red;"&gt;&amp;nbsp;&amp;nbsp; Linux Error: 11: Resource temporarily unavailable&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;br /&gt;Penyebab dari pesan di atas antara lain:&lt;br /&gt;1. network protocol belum diaktifkan, atau penentuan ORACLE_BASE dan ORACLE_HOME tidak tepat.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-4KvqB2Y2FzA/TbZ8zgEHEuI/AAAAAAAAAJA/3V_W0gWxn-M/s1600/Screenshot-Network+Configuration.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="318" src="http://4.bp.blogspot.com/-4KvqB2Y2FzA/TbZ8zgEHEuI/AAAAAAAAAJA/3V_W0gWxn-M/s320/Screenshot-Network+Configuration.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;setelah network aktif, dan setting environment berjalan dengan baik, pesan sukses biasanya akan tampil.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://4.bp.blogspot.com/-G57OWYYd6PI/TbZ9jwCkBiI/AAAAAAAAAJE/5WxIuoo3TiQ/s1600/Screenshot-Service+Configuration.png" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="239" src="http://4.bp.blogspot.com/-G57OWYYd6PI/TbZ9jwCkBiI/AAAAAAAAAJE/5WxIuoo3TiQ/s320/Screenshot-Service+Configuration.png" width="320" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;Dengan keseluruhan isi pesan:&lt;br /&gt;&lt;span style="color: #38761d; font-family: Georgia,&amp;quot;Times New Roman&amp;quot;,serif; font-size: x-small;"&gt;LSNRCTL for Linux: Version 10.2.0.1.0 - Production on 22-APR-2011 10:29:17&lt;br /&gt;&lt;br /&gt;Copyright (c) 1991, 2005, Oracle.&amp;nbsp; All rights reserved.&lt;br /&gt;&lt;br /&gt;Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC_FOR_XE)))&lt;br /&gt;STATUS of the LISTENER&lt;br /&gt;------------------------&lt;br /&gt;Alias&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LISTENER&lt;br /&gt;Version&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; TNSLSNR for Linux: Version 10.2.0.1.0 - Production&lt;br /&gt;Start Date&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 22-APR-2011 10:28:54&lt;br /&gt;Uptime&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; 0 days 0 hr. 0 min. 22 sec&lt;br /&gt;Trace Level&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; off&lt;br /&gt;Security&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ON: Local OS Authentication&lt;br /&gt;SNMP&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; OFF&lt;br /&gt;Default Service&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; XE&lt;br /&gt;Listener Parameter File&amp;nbsp;&amp;nbsp; /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/network/admin/listener.ora&lt;br /&gt;Listener Log File&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/network/log/listener.log&lt;br /&gt;Listening Endpoints Summary...&lt;br /&gt;&amp;nbsp; (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC_FOR_XE)))&lt;br /&gt;&amp;nbsp; (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=mylinux.limas.com)(PORT=1521)))&lt;br /&gt;Services Summary...&lt;br /&gt;Service "PLSExtProc" has 1 instance(s).&lt;br /&gt;&amp;nbsp; Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...&lt;br /&gt;Service "XE" has 1 instance(s).&lt;br /&gt;&amp;nbsp; Instance "XE", status READY, has 1 handler(s) for this service...&lt;br /&gt;Service "XEXDB" has 1 instance(s).&lt;br /&gt;&amp;nbsp; Instance "XE", status READY, has 1 handler(s) for this service...&lt;br /&gt;Service "XE_XPT" has 1 instance(s).&lt;br /&gt;&amp;nbsp; Instance "XE", status READY, has 1 handler(s) for this service...&lt;br /&gt;The command completed successfully&lt;/span&gt;&lt;br /&gt;Oracle yang berjalan dengan baik, setelah login akan menampilkan &lt;i&gt;user-interface&lt;/i&gt; tampak seperti ini pada homepage-nya.&lt;br /&gt;&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://1.bp.blogspot.com/-c3T9NOy33bc/TbEHn3K9xVI/AAAAAAAAAI4/cAJ8iaA8HSg/s1600/instaloracle.JPG" imageanchor="1" style="margin-left: 1em; margin-right: 1em;"&gt;&lt;img border="0" height="218" i8="true" src="http://1.bp.blogspot.com/-c3T9NOy33bc/TbEHn3K9xVI/AAAAAAAAAI4/cAJ8iaA8HSg/s320/instaloracle.JPG" width="320" /&gt;&amp;nbsp;&lt;/a&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/22491498-114000007613533313?l=widyanahar.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://widyanahar.blogspot.com/feeds/114000007613533313/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=22491498&amp;postID=114000007613533313' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/114000007613533313'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/22491498/posts/default/114000007613533313'/><link rel='alternate' type='text/html' href='http://widyanahar.blogspot.com/2006/02/ikut-ikutan-bikin-blog.html' title='Oracle 10g di Oracle Linux'/><author><name>N.A. Widyanahar</name><uri>http://www.blogger.com/profile/15078397541522591412</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='29' src='http://1.bp.blogspot.com/_z-gOROj07o0/SvD6e8Mf7DI/AAAAAAAAAHg/adRKozl4o-w/S220/profil1.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-nuz45s7t9Fo/TZAjKl5489I/AAAAAAAAAIo/ChfoQwSoV1M/s72-c/oracle1.JPG' height='72' width='72'/><thr:total>0</thr:total></entry></feed>
