Suherman

January 2010 - Posts

MUGI Banjarmasin Channel 1

Salam SUPER !!

kami dengan bangga mempersembahkan sebuah channel khusus dari MUGI Banjarmasin. Channel ini berisi tutorial-toturial hasil karya para anggota MUGI Banjarmasin.

Silahkan langsung kunjungi Channel kami di youtube : http://www.youtube.com/mugibjm

dan video berikut adalah Channel MUGI Banjarmasin 1 untuk bulan Januari 2010

Report : General Lecture with MUGI Banjarmasin at LP3I Banjarmasin

Pada tanggal 30 Januari 2010, MUGI Banjarmasin di undang oleh LP3I Banjarmasin untuk mengisi materi di Kuliah Umum untuk 2 buah kelas jurusan Ilmu Komputer.

Kuliah umum ini dihadiri oleh 50 mahasiswa jurusan ilmu komputer. Materi yang disampaikan adalah :

  1. Pengenalan MUGI dan Overview Windows 7 yang dibawakan oleh Suherman STP, disini beliau mengenalkan fitur-fitur terbaru dari Windows 7 seperti Search, Snipping tool, Magnifier, aero shake, aero peek dan sedikit cerita mengenai SQL Server 2008 (karena ada yang nanya OOT)
  2. Pengenalan Ajax Control Toolkit oleh Intan Sari, disini intan menjelaskan bagaimana mendapatkan Ajax Control Toolkit, instalasinya dan juga menggunakannya. tampaknya semua peserta terkejut sekali dengan ‘kesaktian’ ajax control toolkit, tidak heran karena mereka terbiasa dengan ASP Klasik.
  3. Windows Mobile Application oleh Ferry Kurniawan, disini Ferry mendemokan membuat aplikasi sederhana untuk Windows Mobile serta menjelaskan penggunaan Windows Mobile didunia Industri, kebetulan tempat beliau bekerja sudah juga menggunakan PDA ber OS Windows Mobile untuk membaca meter air pelanggan.

berikut ini adalah dokumentasinya :

IMGP0229_46E2FF31[1] IMGP0227_0000CCA0[1]

Suherman STP

IMGP0244_63342B21[1] IMGP0246_587DC438[1]

Intan Sari

IMGP0233_35144C3C[1] IMGP0234_70026F71[1]

Ferry Kurniawan

IMGP0239_02CECB1E[1] IMGP0236_711DD311[1]

Peserta Kuliah Umum

Need Help about Windows 7 ?

untuk meningkatkan pelayanan para customer microsoft untuk produk windows 7, microsoft menghadirkan Microsoft Customer Service nya di portal Twitter.

kunjungi portalnya disini : http://twitter.com/MICROSOFTHelps

microsofthelptwit

Posted: Jan 23 2010, 04:21 PM by Suherman | with no comments
Filed under:
Another Undocumented Developer Features in Windows 7

Melanjutkan blog saya mengenai GodMode, berikut ini adalah string-string lain yang dapat memunculkan shortcut tersembunyi dari Windows 7. caranya adalah

  1. shortcut1.{00C6D95F-329C-409a-81D7-C46C66EA7F33} , shortcut untuk menampilkan default location setting.
  2. shortcut2.{0142e4d0-fb7a-11dc-ba4a-000ffe7ab428} , shortcut untuk menampilkan Biometric Devices Setting.
  3. shortcut3.{025A5937-A6BE-4686-A844-36FE4BEC8B6D}, shortcut untuk menampilkan Power Plan Setting.
  4. shortcut4.{05d7b0f4-2121-4eff-bf6b-ed3f69b894d9} , shortcut untuk menampilkan Notification Area Setting.
  5. shortcut5.{1206F5F1-0569-412C-8FEC-3204630DFB70} , shortcut untuk menampilkan Credential Manager.
  6. shortcut6.{15eae92e-f17a-4431-9f28-805e482dafd4}, shortcut untuk menampilkan Install From Network Setting.
  7. shortcut7.{17cd9488-1228-4b2f-88ce-4298e93e0966} , shortcut untuk menampilkan Default Programs Setting.
  8. shortcut9.{1FA9085F-25A2-489B-85D4-86326EEDCD87} , shortcut untuk menampilkan Wireless Network Manager.
  9. shortcut10.{208D2C60-3AEA-1069-A2D7-08002B30309D}, shortcut untuk menampilkan Network WorkGroup Setting
  10. shortcut11.{20D04FE0-3AEA-1069-A2D8-08002B30309D}, shortcut untuk menampilkan My Computer
  11. shortcut12.{2227A280-3AEA-1069-A2DE-08002B30309D} , shortcut untuk menampilkan Printers Manager
  12. shortcut13.{241D7C96-F8BF-4F85-B01F-E2B043341A4B} , shortcut untuk menampilkan RemoteApp and Destop connection Setting
  13. shortcut14.{4026492F-2F69-46B8-B9BF-5654FC07E423} , shortcut untuk menampilkan Windows Firewall Setting
  14. shortcut16.{78F3955E-3B90-4184-BD14-5397C15F1EFC} , shortcut untuk menampilkan Windows Experience Index

Text ‘shortcut’ bisa anda ganti dengan text apapun. Selamat mencoba

Posted: Jan 23 2010, 03:39 PM by Suherman | with 1 comment(s)
Filed under: ,
Creating Windows 7’s “GodMode”

Ternyata di windows 7 banyak menyimpan undocumented developer features. salah satu nya adalah yang dikenal dengan ‘GodMode’. GodMode merupakan undocumented Settings Folder yang bisa menjadi sebuah shortcut ke control panel yang berisi banyak sekali control options.

Berikut ini langkah-langkah membuat Windows 7’s GodMode :

  1. Buat folder baru di desktop anda
  2. Rename folder baru tersebut dengan string berikut :

    GodMode.{ED7BA470-8E54-465E-825C-99712043E01C}

  3. maka icon folder akan berubah seperti ini :

    image

  4. Bila Shortcut tersebut kita klik 2 kali maka akan muncul control panel berikut

    godmode

  5. tidak seperti biasanya control panel, GodMode menampilkan 284 Control Options.

Selamat mencoba

Posted: Jan 23 2010, 03:19 PM by Suherman | with 1 comment(s)
Filed under: ,
FILESTREAM limitations

Mengaktifkan fitur FILESTREAM di SQL Server 2008 memang sangat bermanfaat pada saat anda sedang mengerjakan project yang banyak melakukan pekerjaan menyimpan file-file dokumen berukuran besar. Namun ada beberapa hal yang harus disadari saat menggunakan fitur ini :

  1. FILESTREAM data tidak dapat di enkripsi walaupun transparant data encryption diaktifkan
  2. Database Mirroring tidak dapat diterapkan pada database yang mengaktifkan FILESTREAM
  3. Database Snapshots tidak dapat diterapkan pada database yang mengaktifkan FILESTREAM

 

logo-header-sql08-dg

Avoid Update Commands of All Record

Kadang bila kita sering bekerja dengan perintah-perintah DML, ya namanya manusia kadang ada khilafnya. bagaimana apabila Khilaf anda adalah melakukan perintah Update pada sebuah tabel tanpa menggunakan klausa ‘Where’ ? tentunya menjadi sebuah kecelakaan yang ‘menggetarkan’ hati bukan ?

sebenarnya hal ini bisa dicegah sejak dini, yaitu dengan memproteksi salah satu tabel atau semua tabel yang dianggap sangat penting. Pasang trigger pada tabel yang kita inginkan. berikut ini adalah contohnya :

   1: USE AdventureWorks
   2: GO
   3: CREATE TRIGGER production.CegahUpdate 
   4: ON production.product 
   5: FOR UPDATE AS 
   6: BEGIN
   7:      DECLARE @JmlTerupdate int
   8:      SET @JmlTerupdate = @@ROWCOUNT;
   9:      IF @JmlTerupdate >= (SELECT SUM(row_count)jml FROM sys.dm_db_partition_stats 
  10:          WHERE index_id = 1 and OBJECT_ID = OBJECT_ID('production.product'))
  11:      BEGIN
  12:          RAISERROR('Update Semua Data Tidak Diizinkan',16,1) 
  13:          ROLLBACK TRANSACTION
  14:          RETURN;
  15:      END
  16: END
  17: GO

Saya akan coba jelaskan bagaimana trigger production.CegahUpdate ini bekerja. 

Pada line 7 dan 8, kita coba tangkap jumlah baris yang terupdate pada statement terakhir, yaitu pada DML update yang terjadi. Bila record yang terjadi mencapai angka 2 milyar record atau lebih, jangan gunakan @@Rowcount tapi gunakan ROWCOUNT_BIG. dan rubah type data variable @JmlTerupdate dengan BigInt.

Setelah itu pada line 9 dan 10 mencoba untuk membandingkan jumlah baris yang terupdate dan jumlah baris record yang ada pada tabel production.product. Jika ternyata jumlah yang terupdate itu lebih atau sama dengan record yang ada, maka proses update yang terjadi akan di rollback (line 13) dan dipasang Raiserror dengan nilai severity 16 (line 12). Severity 16 melambangkan bahwa error yang terjadi dapat diatasi oleh user.

Mari kita coba trigger tersebut. saya coba untuk update tabel production.product pada field ListPrice. saya akan ubah semua listprice menjadi 100 dan berikut hasilnya

updateall

terlihat proses update telah di aborted. data tetap pada kondisi sebelum terjadi update.

Demikian semoga bermanfaat.

Posted: Jan 12 2010, 10:55 PM by Suherman | with 1 comment(s)
Filed under: ,
Using DML Statement in FileStream Database

Setelah kita bisa meng Enabled kan fitur FileStream di SQL Server 2008, kemudian berhasil membuat FileStream database. sekarang kita coba untuk bisa melakukan aktivitas DML (Data Manipulation Language) di dalam FileStream Database. pertama kita buat sebuah table yang memiliki FileStream Coloumn yang nantinya sebagai menyimpan data FileStream. berikut ini adalah contoh tablenya (artikel pertama, kedua dan yang ini saling berurutan)

Use FileStreamSampleDB
GO
CREATE TABLE ProductPhoto
(
[ID] [INT] IDENTITY(1,1) NOT NULL, [Name] Varchar(50) not null,
[PhotoFileStream] VARBINARY(MAX) FILESTREAM NULL,
[PhotoFileStreamGUID] UNIQUEIDENTIFIER ROWGUIDCOL NOT NULL UNIQUE DEFAULT NEWSEQUENTIALID(),
[Waktu] DATETIME DEFAULT GETDATE()
)
ON [PRIMARY]
FILESTREAM_ON FileStreamSampleDBGroup
GO

untuk melakukan menyimpanan BLOB kedalam FileStream,  kita pertama membuat coloumn bertype data Varbinary(MAX) dengan atribut FileStream. dan coloumn ini harus berpasangan dengan sebuah Uniqueidentifier coloumn.

setelah berhasil membuat sebuah table FileStream, kita coba pertama dengan menginputkan 3 buah data kedata kedalam table tersebut. sebelumnya mari kita lihat kondisi FileStream countainer Folder nya.

filestream6

tampak setelah membuat database baru diatas, muncul sebuah folder baru, apabila kita coba expand lebih dalam akan tampak seperti berikut

filestream7

ternyata masih kosong.

Mari kita coba lakukan penginputan, saya sudah siapkan 3 buah file gambar di drive E:\FileSample, yaitu Filestream1.jpg , FileStream2.jpg , FileStream3.jpg .

filestream8

berikut ini adalah T-SQL untuk menginsert ketiga gambar tersebut :

Use FileStreamSampleDB
GO

INSERT INTO ProductPhoto
(name, PhotoFileStream) values
('Gambar 1',
(select * from OPENROWSET(BULK N'E:\FileSample\FileStream1.JPG' ,SINGLE_BLOB) AS Document))
GO

INSERT INTO ProductPhoto
(name, PhotoFileStream) values
('Gambar 2',
(select * from OPENROWSET(BULK N'E:\FileSample\FileStream2.JPG' ,SINGLE_BLOB) AS Document))
GO

INSERT INTO ProductPhoto
(name, PhotoFileStream) values
('Gambar 3',
(select * from OPENROWSET(BULK N'E:\FileSample\FileStream3.JPG' ,SINGLE_BLOB) AS Document))
GO

setelah kita lakukan penambahan 3 buah data, ternyata ada penambahan 3 buah file pada FileStream countainer folder

filestream9

Coba oleh anda lakukan perintah select sederhana pada tabel ProductPhoto.

Karena anda sudah mengerti cara melakukan insert, berarti akan mudah untuk melakukan perintah delete dan update . Selamat mencoba ;)

Creating a FileStream Database in SQL Server 2008

Setelah di blog yang lalu membahas mengenai Enable FILESTREAM on the instance of the SQL Server Database Engine, selanjutnya adalah membuat FileStream database nya.

Berbeda dengan cara membuat database biasanya. dalam membuat FileStream database memerlukan adanya penambahan File database yang memiliki file type FileStream Data yang berfungsi sebagai FileStream Data Countainer. Juga ada proses penambahan FileGroups sebagai Countains FileStream.

berikut ini adalah langkah-langkah pembuatan FileStream Database.

  1. Pertama kita siapkan sebuah FileStream Data Countainer didalam Hardrive kita. dalam contoh ini akan saya buat di drive E:\  yang nantinya apabila databasenya telah terbentuk akan muncul folder berikut E:\FileStreamSampleCountainer. Sedangkan File .MDF dan .LDF saya letakkan di  E:\FileStreamSampleDB
  2. selanjutnya kita coba membuat databasenya
    Use Master
    GO
    -- Membuat Database FileStreamSampleDB
    CREATE DATABASE FileStreamSampleDB ON PRIMARY
    ( NAME = N'FileStreamSampleDB', FILENAME = N'E:\FileStreamSampleDB\FileStreamSampleDB.mdf' ,
    SIZE = 10MB , MAXSIZE = UNLIMITED, FILEGROWTH = 10% )
    LOG ON
    ( NAME = N'FileStreamSampleDB_log', FILENAME = N'E:\FileStreamSampleDB\FileStreamSampleDB_log.ldf' ,
    SIZE = 10MB , MAXSIZE = UNLIMITED , FILEGROWTH = 10%)
    GO
    -- Membuat FileGroup
    ALTER DATABASE FileStreamSampleDB
    ADD FILEGROUP [FileStreamSampleDBGroup] CONTAINS FILESTREAM
    GO
    -- Membuat FileStream Data Countainer
    ALTER DATABASE FileStreamSampleDB
    ADD FILE (NAME = N'FileStreamSampleDB_FSData', FILENAME = N'E:\FileStreamSampleCountainer')
    TO FILEGROUP FileStreamSampleDBGroup
    GO

  3. setelah di Execute dapat kita lihat object- object apa saja yang timbul di Instances yang kita miliki

    filestream3 

    filestream4

Sampai disini kita sudah berhasil membuat sebuat FileStream Database. perhatikan pada folder E:\FileStreamSampleCountainer, terbentuk 2 buah objek yang salah satunya bernama filestream.hdr ,

filestream5

file filestream.hdr merupakan file yang menampung informasi header dari FileStream, sehingga kerusakan pada file ini akan berakibat fatal pada FileStream Database.

Enable FILESTREAM on the instance of the SQL Server Database Engine

Bila anda sedang mengerjakan sebuah project aplikasi yang menggunakan database serta dalam routinenya sering menggunakan file-file gambar, video, document, audio dan lain-lain atau anggaplah anda sedang mengerjakan project Document Management dengan menggunakan database SQL Server 2008, ada baiknya anda memanfaatkan fitur Filestream yang ada di SQL Server 2008.

Dengan menggunakan fitur FILESTREAM, file sebenarnya tidak tersimpan dalam database file, melainkan berada pada NT File System (akan saya jelaskan pada blog berikutnya).

untuk menggunakan fitur Filestream, ini bisa dilakukan pada saat instalasi pertama SQL Server 2008 atau apabila sudah terinstall namun belum mengaktifkan fitur Filestreamnya, dapat melakukan langkah-langkah sebagai berikut, namun sebelumnya anda harus memiliki akses sebagai SYSADMIN :

  1. Klik Start –> All Programs –> Microsoft SQL Server 2008 –> Configuration tools –> SQL Server Configuration Manager
  2. Klik SQL Server Services
  3. Pilih Instance yang mana yang akan di Enabled kan fitur Filestream nya (pada sample, saya memilih instance SQLSRV2008),   lalu klik kanan, pilih Properties

    filestream1

  4. Maka akan muncul dialog box, pilih tab FILESTREAM seperti berikut :

    filestream2

  5. Check option ‘Enable FILESTREAM for Transact-SQL access’ kemudian klik OK.
  6. setelah itu jalankan T-SQL berikut :
EXEC sp_configure filestream_access_level, 2
RECONFIGURE