Syntax highlighter untuk blogspot

Inget postingan gw yang sok-sokan ngeluh karena blogspot ga bisa syntax highligting?

Akhirnya gw dapet solusi masalah syntax highligter!!
Seneng gw cuy!!

Jadinya coding2 kita di blog bisa terlihat lebih cantik.
Liat ke sini deh.

Sekarang gw coba java code:

public void printHello(){
Haha.javacode.kayagini("Tapi masih ada satu ni yang kurang");
WRITE 'ABAP CODE ga ada sih, tapi bisa diganti Java'.
}


Gw cobain ABAP code:







Asik kan cuy...
Mau blogspot atau lo di server manapun,
sekarang udah bisa syntax highligting.

Thanks to alex.gorbatchev for make it happend.
Menurut gw ini tools wajib banget bagi programmer yang suka share ilmu codingnya..


Gimana menurut lo pada?




Regards,
tomfreakz

Membuat SAP tcode untuk Report Painter dan Report Writer

Pada saat kita mengcustomize report melalui report painter (tcode: GRR1) atau report writer (tcode: GR31), kita menyimpan program tersebut pada report group yang perlu kita create juga. Anggaplah kita membuat report melalui report writer dengan nama ZWRE yang tergabung dalam report group bernama ZGRE.

Sekarang bagiamana membuat SAP tcode untuk Report Painter dan Report Writer?
Untuk menjawab itu kita lihat dulu kenapa kita harus pake report group? Kalo dari si help.sap.com begini:
Once you have created a report you have to create a report group for this report or assign the report to an existing report group. A report group can contain one or more reports. When reports use the same characteristics and share the same data, data is selected faster and processing time is quicker since report data is only selected once for all reports within a report group.
Program pada report group ini dapat kita execute melalui tcode GR55, kemudian kita ketik nama report groupnya, misalnya ZGRE, barulah kita execute, dan selanjutnya barulah muncul selection screen.



Nah sekarang gimana caranya agar user dapat langsung mengetik tcode kemudian selection screen muncul?
Bagaimana membuat SAP tcode untuk Report Painter dan Report Writer?

Melalui tcode: SE93 (Maintain Transaction) kita buat tcode baru untuk report group kita. Kita isi transaction code dengan Z_RE. Short text sebagai penjelasan tcodenya dan kita pilih Transaction with parameters (parameter transaction) seperti pada gambar:


Pada screen selanjutnya, untuk Default values for, pilih radio button "Transaction", isikan dengan START_REPORT, dan tick pada Skip initial screen. Pilih Inherit GUI attributes

Pada table di bawah, isikan Name of screen field dengan:
D_SREPOVARI-REPORTTYPE, isikan valuenya RW
D_SREPOVARI-REPORT, isikan dengan ZGRE (nama report writer kita tadi).



Selanjutnya kita save, selesai.

Kita bisa menjalankan report kita dengan mengetikan tcode: Z_RE.

Mungkin lo pada penasaran, kok gw bisa tau sih caranya gitu?! Dari mane itu? Dari dukun? Wangsit? Mama Loren? Mimpi ketemu moleykat? Cyaah moleykat tulisannya.

Kita bisa tau itu karena ceritanya gini men.

Awalnya, gw terbesit untuk nyari di menu Environment > Technical Information, seperti mencari object name pada smartforms. Dari situ kita bisa melihat nama programnya. Tapi sayang, namanya seperti ini: GP091XH9T0A646RMNZJAIG74R5F110.

Nama itu seperti nama yang di generate suatu waktu saja. Karena waktu sudah hampir habis, gw coba untuk bikin tcodenya dan tcode itu memanggil program dengan nama GP091XH9T0A646RMNZJAIG74R5F110 *doh ga enak banget nama programnya*.

Beberapa menit kemudian boss gw ngasih solusi bagaimana cara bikin tcode untuk report painter/writer tersebut. Dia bilang bla bla bla (sama dengan yang gw jelasin diatas). Disitu gw mikir, kok dia bisa tau sih? Apa karna emang ada di training material dengan topik tertentu? Atau ada di http://help.sap.com/? Atau ada di https://www.sdn.sap.com/irj/sdn? Atau ada di tempat dimana cuma orang yang punya SAP id yang bisa tau informasinya? Akhirnya gw tanya sama temen gw yang jadi team lead abaper disana dan bertanya gimana si boss ini bisa tau caranya. Gw nebak, di googling ya? Trus dia jawab, "Blum sempet googling tuh", programnya di-"DEBUG". Buset!!... tapi logis sih.

Jadi kebetulan, untuk kasus spek report painter ini, functionalnya biasanya memberikan clue "tolong buat report seperti yang udah ada di SAP standard." Misalnya namanya S_ALR_0811990099. Nah jadinya kita mendebug program ini. Akhirnya gw cobain debug dengan cara melakukan tcode /h, baru kemudian memasukan tcode report standard SAPnya. Eh yang ada pusing sendiri wakakakak, setelah gw coba debug 4 kali... gw ga ngerti... apa yang bisa jadi clue? Akhirnya gw coba pikir lagi, gw baru ngeh kalo S_ALR_0811990099 adalah tcode. Akhirnya gw lari ke tcode: SE93, kemudian gw display. Dan disitulah kira-kira TKP yang bisa menjadi acuan bagi kita semua.

Yaudah dari tcode itu kita bisa display kan, kita samain aja konfigurasinya.

Gitu cuy... tenang cuy.. gw bukan orang jago.. gw cuma orang yang suka penasaran dengan orang lain yang membuat gw suka bertanya dalam hati "Kok dia tau sih? Apa yang membuat dia tau?".

Deklarasi Internal table dan work area di ABAP

Sekali-sekali ngeblog tentang kerjaan boleh kan? Kali ini gw mau coba share tentang ABAP. Nah apa itu? Singkatnya, ABAP adalah bahasa pemrograman di SAP. Kalo kita bikin program di SAP, baik berupa Report, Interface, Conversion, Extension, Forms (RICEF), nah itu codingnya pake bahasa ABAP. Contoh lain, lo bikin Twitter.com pake rubyonrails.

Kadang susah untuk bisa sharing mengenai ABAP karena menjelaskannya dengan tulisan agak sulit. Nulisnya juga ga enak di blogspot, ga ada indentnya, ga ada syntax highlightingnya (banyak alasan). Gw penasaran, gimana sih caranya? Nanti kalo udah nemu caranya atau elo tau caranya tolong kasih tau gw ya. Biar kita bacanya bisa lebih enak dan otomatis sharing knowledgenya juga bisa lebih baik.

Latar Belakang

Dalam kesempatan ini, gw coba share mengenai Internal table (itab) dan work area (wa) dalam lingkungan SAP ABAP. Nah sekarang ape sih gunanya dua cecunguk itu? Nah coba kita flashback dari latar belakangnya dulu. Dalam pemrograman, ada kalanya kita berhadapan dengan pengolahan database. Ada kalanya kita membuat suatu report yang mengambil data dari beberapa table di database, kemudian kita join, atau lakukan beberapa perhitungan, kemudian ditampilkan di screen. Dalam melakukan perhitungan ini, kita butuh variable yang dapat menyimpan kumpulan data dari table tersebut. Nah disinilah kita gunakan internal table. Contoh praktisnya misalnya:


SELECT *
FROM kendaraan
INTO TABLE it_kendaraan.

Dari code diatas, dapat diartikan kita menyimpan semua data dari table kendaraan ke internal table it_kendaraan. Gimana? Udeh jelas kan mengenai internal table?

Pada saat kita sedang melakukan pengolahan data-data tersebut, kita biasanya butuh memprosesnya satu-satu. Untuk itulah kita butuh work area. Misal dari table kendaraan itu terdapat atribut: No kendaraan, nama kendaraan, jenis kendaraan, warna, harga. Nah misal kita ingin merubah semua harga kendaraan bertambah 10 rupiah. Gimana caranya?

Data yang ingin kita olah, dapat kita ambil / copy per rownya dari internal table. Nah 1 row ini kita letakan di work area. Setelah itu work area inilah yang kita olah, kita lakukan penjumlahan. Misalnya dalam kasus kita
wa_kendaraan-harga. Selanjutnya bisa kita replace valuenya kembali ke internal table.

LOOP AT it_kendaraan TO wa_kendaraan.

wa_kendaraan-harga = wa_kendaraan-harga +10.

MODIFY it_kendaraan FROM wa_kendaraan.

ENDLOOP.

Dalam code diatas tiap row dari internal table kita loop, kita pindahkan dulu ke wa_kendaraan. Kemudian dari work area itu kita lakukan penjumlahan.Selanjutnya dari work area kita replace balik ke internal table.

Dari cerita ini, bisa kita simpulkan:


Work area (wa)
Mempunyai tipe data structure seperti pada pemrograman lainnya. Sebuah variable yang bisa mempunyai beberapa atribut.

Internal table (itab)
Gambarannya sama dengan table. Bedanya, kalo table ada secara fisik di database. Sedangkan itab hanya terbentuk di memory saat run-time program. Mungkin prinsipnya sama dengan structure yang punya lebih dari satu row.

Di ABAP kita bisa mendeklarasikan internal table (itab) dan mengisi itab itu dengan data yang kita masukan melalui work area. Data ini bisa berupa data hasil query database, atau dimasukan manual dengan cara kita tulis di codenya. Pada contoh dibawah ini diberikan cara memasukan data ke internal table secara manual.

Oke langsung praktek aje ye boss. Studi kasusnya gini:
Misal kita perlu menampilkan daftar nilai siswa. Data nilai dimasukan secara hardcode di program kemudian ditampilkan. Simple kan?? Nah, biar rada ribet dikit, kita coba iseng menggunakan 2 itab. itab A digunakan untuk memasukan data, kemudian dipindahkan ke itab B, selanjutnya dari itab B itu data ditampilkan.

Cukup jelas?
Kalo belom silahkan tunjuk tangan, dan kasih komentar di blog post ini.

Langsung gw jabarin source codenya:
Sori kalo ngga ga enak bacanya karna ga ada indent

REPORT ztestx.
*Test program to get data into internal table using work area

*************** Types and Data declaration ****************

*Types declaration
TYPES: BEGIN OF ty_a,
name(10) TYPE c,
mark TYPE i,
END OF ty_a.

*Data declaration based on types
DATA:
* Work area
wa_a TYPE ty_a,

* Internal table
it_a TYPE TABLE OF ty_a.


*************** Begin of program ****************

*Make sure internal table is empty
REFRESH it_a.
CLEAR it_a.

*Insert content to itab through work area
*and make sure the work area is empty for each insertion

CLEAR wa_a.
wa_a-name = 'Thomas'.
APPEND wa_a TO it_a.

CLEAR wa_a.
wa_a-name = 'Megan'.
APPEND wa_a TO it_a.

CLEAR wa_a.
wa_a-name = 'Fox'.
APPEND wa_a TO it_a.


*Loop itab and insert each mark fields
LOOP AT it_a INTO wa_a.
wa_a-mark = 90.
MODIFY it_a FROM wa_a.
ENDLOOP.



*Let say we want to move all the content in it_a to another internal
*table named it_b using work area. First we declare it_b and *wa_b

DATA:
wa_b LIKE wa_a,
it_b LIKE it_a.


*Insert all data in it_a to it_b using work area
LOOP AT it_a INTO wa_a.
CLEAR wa_b.
wa_b-name = wa_a-name.
wa_b-mark = wa_a-mark.
APPEND wa_b TO it_b.
ENDLOOP.


*Delete all content in it_a.
FREE it_a.

*Display all content from it_b.
LOOP AT it_b INTO wa_b.
WRITE:/ wa_b-name,
wa_b-mark.
ENDLOOP.

*************** End of program ****************


Kuncinya pertama pada saat deklarasi:
Kita buat tipe data structure dengan 2 atribut:

*Types declaration
TYPES: BEGIN OF ty_a,
name(10) TYPE c,
mark TYPE i,
END OF ty_a.

Kita buat data yang bertipe structure tadi.


*Data declaration based on types
DATA:
* Work area
wa_a TYPE ty_a,


Kita buat juga itab dengan tipe table dari tipe struktur tadi.


* Internal table
it_a TYPE TABLE OF ty_a.





Coba kita sedikit bahas melalui beberapa screen shoot. Ini adalah screenshoot pada saat debug. Dalam screen shoot ini, sebuah itab kita debug dan lihat valuenya pada saat runtime. Disini kita dapat melihat kondisi itab it_a ketika cursor melalui 1x loop pada pengisian mark (kondisi sekarang telah berada di loop kedua).


Ini adalah kondisi itab it_b ketika di assign data dari itab it_a. Disini diperlihatkan it_a sedang dalam loop ke 1. Kita dapat melihat itab it_b masih kosong pada baris ke 2 dan selanjutnya.


Dibawah ini adalah kondisi itab it_b ketika semua telah diisi data dari itab it_a.


Ini adalah kondisi itab it_b ketika di assign data dari itab it_a. Disini diperlihatkan loop pertama dari inserting data dari it_a ke it_b. Work area wa_b pada atribut name barusan di assign dari wa_a-name, yaitu "Thomas".



Gimana? Udah kebayang kan mengenai apa itu internal table dan apa itu work area di SAP - ABAP? Kalo belum ya boleh bertanya di comment. Kalo gw ngerti pasti gw jawab.

Source code juga bisa diambil dari sini.

Sejarah Penampakan Malaikat Agung Santo Mikhael

St. Mikhael, Sang Malikat Perang, tidak hanya berfungsi sebagai pengawal perang Gereja. Di mana masa lalu, pada Gereja di daerah Timur, fungsi sebagai penyembuh juga diberikan kepadanya.

Tradisi menyebutkan bahwa pada tahun-tahun awal, St. mikhael menjadikan sebuah mata air muncul di dearah Chairotopa dekat Kolose dan semua yang memiliki penyakit dan mandi di sana sambail berseru kepada St. Mikhael akhirnya mengalami kesembuhan.

Yang lebih terkenal lagi adalah sumber-sumber mata air di mana St. Mikhael dikatakan telah menariknya kelur dari bebatuan di daerah Kolose. Para kaum pagan memerintahkan dilakukannnya upaya untuk menghancurkan sumber mata air yang datang dari st. Mikhael tersebut dengancara membanjirinya dengan air, tetapi Malaikat Perang membelah batu-batu yang ada di sana dengan kilat untuk memberikan tempat baru bagi air yang membanjiri tempat tersebut dan memisahkannya dengan air yang datang dari sumber mata air miliknya.

Di Konstantinopel, separti biasanya, St. Mikhael merupakan seorang penyembuh yang hebat dari Surga. Para penganut Kristen dari Mesir menempatkan sungai sumber kehidupan milik mereka, sungai Nil, di bawah perlindungan St. Mikhael. Di Roma, gereja-gereja didirikan dan dipersembahkan untuk St. Mikahel seperti yang terjadi pada gereja-gereja di tahun 494. Pada masa pemerintahan St. Gregorius memerintahkan untuk dilakukannya prosesi permohonan ampun dimana ia sendiri menggendong patung Perawan yang terbekati selama prosesi tersebut berlangsung.

Delapan puluh orang meninggal selama prosesi itu, tetapi St. Gregorius Agung terus melanjutkan doa-doanya. Ketika mereka sampai pada sebuah jembatan yang menyeberangi daerah Tiber, mereka mendengar lagu-lagu dari para malaikat diangkasa. Tiba-tiba di atas menara kastil San Angelo, St. Mikhael muncul dalam ukuran raksasa. Di tangan kananya ia memengemggam sebuah pedang yang dibenamkan di dalam sarungnya. Di saat yang bersamaan, musibah penyakit di kota itu perlahan-lahan menghilang.

Banyak dari instansi-instansi yang juga percaya akan adanya keajaiban alam mengilustrasikan kekuatan St. Mikhael untuk menyembuhkan penyakit yang juga diberikannya kepada St. Rafael, "Sang Penyembuh Penyakit dari Allah". Walaupun kapten perang dari Gereja tuhan, St. Mikhael menaruh perhatian lebih pada kejadiaan-kejadiaan yang terjadi pada orang-orang yang memujanya, terutama pada musibah-musibah yang terjadi atas mereka, sementara ia tidak melihat permintaan pribadi mereka untuk kesembuhan di dalam keadaan apapun, biarlah kita tetap memiliki sebuah keyakinan untuk meminta bantuan kepadanya pada saat kita sedang mengalami sakit penyakit dan jika itu merupakan kehendak Tuhan bahwa kita boleh mengalami bantuan dari st. Mikhael, maka ia pasti akan datang untuk membantu kita melawan penyakit dan mengalami kesembuhan yang datang dari Drah Penebus.

St. Mikhael dan mereka yang sedang sekarat.
Bila di dalam belas kasih-Nya Bapa kita yang di Surga memutuskan untuk memanggil kita pulang. St. Mikhael akan melanjutkan pelayanannya sebagai maliakat atas kita sampai ia melihat kita telah sampai dengan selamat di gerbang kehidupan kekal. Karena tidak hanya pada saat kita masih hidup Sang malaikat Perang akan membentangi dan melindungi jiwa-jiwa kita, ia juga terutama adalah pengacara pada saat kematian kita. "Ia menyertai setiap orang yang sedang sekarat," "Karena tugas istimewa adalah untuk menerima jiwa-jiwa yang telah dipanggil, pada saat raganya berhenti berfungsi, Ia dengan ketenangannya yang mendamaikan dan keberadaannya yang bagai seorang pangeran, membawa mereka kepada Cahaya abadi dan memperkenalakan mereka kepada Rumah Kemuliaan Tuhan. Gereja Kudus sendiri yang memberitakan kepada kita pada kata-kata di saat Liturgi mengenai hak istimewa dari sang malaikat Perang yang Agung. Gereja mengajarkan kepada kita bahwa ia telah diperintahkan oleh Surga dan bahwa Tuhan telah memberikannya kuasa untuk membawa ke Surga jiwa-jiwa yang akan diterima di sana."

Ketika saat-saat terakhir dari karir duniawi kita semakin dekat dan kita dihadapkan pada situasi yang buruk dimana jiwa kita harus meninggalkan tubah kita yang telah sangat dicintainya untuk melewati gerbang kematian yang sangat sempit, setan dan iblis menjadi seperti singa-singa yang kelaparan ketika mereka mengupayakan serangan terakhir mereka untuk memenangkan jiwa-jiwa kita. Tetapi kita tidak perlu takut jika selama hidup kita memiliki Devosi kepada Darah Yang Suci dan telah dengan setia menghormati St. Mikhael dan memohon bantuannya pada saat-saat terakhir kita.

Di waktu-waktu tersebut ketika kita benar-benar membutuhkannya, Malaikat Perang yang tangguh, yang selalu siap untuk mendampingi jiwa-jiwa yang setia, akan datang sebagai bantuan untuk kita dengan kepemimpinannya yang mulia dan perkasaannya. Ia akan melingkupi kita dengan perlindungannya yang kuat dan akan membawa kita. Oleh karena itu sangatlah dianjurkan untuk memohon pertolongan St. Mikhael guna mendampingi kita saat-saat menjelang kematian kita.

Di tengah-tenggah tulisan St. Alfonsus Ligouri, kami menemukan sepaenggal cerita berikut mengenai penyertaan St. Mikhael pada saat menjelang kematian. Seorang yang datang dari kaum ningrat di Polandia hidup bertahun-tahun di dalam kejahatan. Ketika saat-saat menjelang kematiaannya semakin mendekat, ia dipenuhi dengan terror dan tersiksa oleh penyesalan manakala ia menyadari kecerobohan yang sering ia lakukan sehingga ia merasa seperti tidak memiliki pengharapan. Tidak ada ucapan ataupun penyemangat yang dapat berarti baginya; ia menolak sepenuhnya setiap upaya keagamaan yang ingin dilakukan kepadanya"

"Pria tidak berbahagia ini, bagaimanapun juga, masih memiliki sedikti hormat kepada St> Mikhael dan Tuhan dengan belas kasih-Nya mengizinkan Malaikat Perang yang Suci itu untuk menghampirinya di perjuangan terakhirnya. St. Mikhael mendorong pria itu untuk mengakui dan mengatakan bahwa ia telah memohon untuk diberikan cukup waktu bagi pria itu untuk menyelesaikan permasalahan yang sedang dihadapi oleh jiwanya."

"Tidak terlau lama setelah itu, dua pastor Dominikan datang ke rumah pria tiu, mengatakan bahwa seorang asing telah mengirim mereka ketempat itu. Pria yang sedang sakit itu menyadari bahwa ini merupakan pekerjaan tangan St. Mikhael. Ia mengakui semua dosa-dosanya di tengah-tengah tangisan penyesalannya, menerima Komuni Suci dengan Devosi yang sangat menyentuh dan menghembuskan nafas terkahirnya dengan indikasi yang sangat jelas bahwa jiwanya telah berdamai dengan Allah."

Sumber St. Mikhael and The Angels serta sumber-sumber lainnya.


Diambil dari salah satu group di facebook.
Another reference.
Ilustrasi Mikhael di google.


In my opinion:
Kenapa saya posting blog yang seperti ini?
Dari kecil saya senang dengan karakter malaikat. Enyak Babe gw pernah bilang kalo kita selalu dilindungi oleh malaikat. Kemanapun kita pergi, apapun yang kita lakukan, semuanya didampingi oleh malaikat. Waktu kita kecil kadang kita dikenalkan kata "setan" oleh teman atau orang lain atau mungkin orang tua kita sendiri. Tapi setelah orang tua saya bilang kalo kita selalu dilindungi oleh malaikat. Perasaan takut setan jadi agak pudar. Ya ini balik ke diri kita masing-masing juga sih. Namanya juga agama, kepercayaan, iman. Setidaknya ini membawa saya ke hal yang positif.

Kebetulan banget ada karakter malaikat yang cukup dikenal di lingkungan Katolik, yaitu Mikhael. Seperti yang telah diceritakan diatas, intisari yang dapat saya ambil bahwa Mikhael dapat menjadi sosok malaikat yang sangat inspiratif bagi kita untuk TIDAK PERLU TAKUT dalam menjalani kehidupan. Mikhael akan dengan setia dan berani melindungi kita.

Tuhan memberkati.

Video Quality

Repost From sini. *halah sini*

- Cam "CAM"
A copy made in a cinema using a camcorder, possibly mounted on a tripod. The sound source is the camera microphone. Cam rips can quickly appear online after the first preview or premiĆ©‘¢e of the film. The quality ranges from terrible to very good, depending on the group of persons performing the recording and the resolution of the camera used. The main disadvantage of this is the sound quality. The microphone does not only record the sound from the movie, but also the background sound in the cinema. The camera can also record movements of the audience in the theater, like when someone stands up in front of the screen.

- Workprint "WP" / "WORKPRINT"
A copy made from an unfinished version of a film produced by the studio. Typically a workprint has missing effects and overlays, and may not be identical to its theatrical release. Some workprints have a time index marker running in a corner or on the top edge; some may also include a watermark. A workprint might be an uncut version, and missing some material that would appear in the final movie. Note that the index timer is below the frame in the image.

- Telesync "TS" / "TELESYNC"
Contrary to popular belief, the video quality of a TS is not necessarily better than a cam. The term Telesync doesn't indicate better video quality but better audio quality. The CAM source is then synchronized with a secondary audio recording, either done with a professional microphone in an empty cinema (even though by Scene Rules this would be nuked since the audio is not direct, they are hard to tell the difference), fed directly from the cinema's sound system, or captured from an FM radio transmission intended for hearing-impaired customers. Often, a "Cam" is mislabeled as a telesync.

- R5 "R5"
The R5 Line is a retail DVD from region 5. Region 5 consists of Eastern Europe (Former Soviet Union), Indian subcontinent, Africa, North Korea, and Mongolia. R5 releases differ from normal releases in that they are a direct Telecine transfer of the film without any of the image processing. They take the information from the DVD disc and sync it to an English version of the film, usually a previously released version.

- Screener "SCR" / "SCREENER" / "DVDSCR" / "DVD-SCREENER" / "VHS-SCREENER"
These are early DVD or VHS releases of the theatrical version of a film, typically sent to movie reviewers, Academy members, and executives for review purposes. A screener normally has a message overlaid on its picture, with wording similar to: "The film you are watching is a promotional copy, if you purchased this film at a retail store please contact 1-800-NO-COPIES to report it." Apart from this, some movie studios release their screeners with a number of scenes of varying duration shown in black-and-white. Aside from this message, and the occasional B&W scenes, screeners are normally of only slightly lower quality than a retail DVD-Rip, due to the smaller investment in DVD mastering for the limited run.
Note: Screeners make a small exception here, since the content may differ from a retail version, it can be considered as lower quality than a DVD-Rip (even if the screener in question was sourced from a DVD).

- Telecine "TC" / "TELECINE"
A copy captured from a film print using a machine that transfers the movie from its analog reel to digital format. These were rare because telecine machines for making these prints were very costly and very large, however, recently they have become much more common. Telecine has basically the same quality as DVD, since the technique is same as digitizing the actual film to DVD. However, the result is inferior since the source material is usually a lower quality copy reel. Telecine machines usually cause a slight left-right jitter in the picture and have inferior color levels compared to DVD. Note the piece of lint in frame above; this is a common occurrence during digital film transfer, particularly when not done in a clean room environment.

- DVD Rip "DVD-Rip"
A final retail version of a film, typically released before it is available outside its originating region. Often after one "release group" releases a high-quality DVD-Rip, the "race" to release that film will stop. Because of their high quality, DVD-Rips generally replace any earlier copies that may already have been circulating.

- DVDR "DVDR image"
A final retail version of a film in DVD format. Usually a complete copy from the original DVD. If the original DVD is released in the DVD-9 format, extras might be removed and/or the video re-encoded to make the image fit the more common and less expensive (for burning) DVD-5 format. DVDR releases often follow DVD-Rips after a few hours.

- HDTV or DS Rip "TVRip" / "DSR" / "PDTV" / "HDTV"
TVRip is a capture source from an analog capture card (coaxial/composite/s-video connection)
Digital stream rip (DSR) is a rip that is captured from a non standard definition digital source like satellite.
HDTV or PDTV rips often come from Over-the-Air transmissions. With an HDTV source, the quality can sometimes even surpass DVD. Movies in this format are starting to grow in popularity.
Analog, DSR, and PDTV sources are often re-encoded to 512x384 if fullscreen, 640x352 if widescreen. HDTV sources are re-encoded to multiple resolutions such as 640x352 (360p), 960x528 (540p), 1280x720 (720p) at various file sizes for pirated releases.

Sebenernya lebih enak kalo bahasa indonesia kali yak.
Gih deh.. kali aja ada yang mau nerjemahin..