Skip to Content
Menu
v 18.0 Third Party
Availability
Odoo Online
Odoo.sh
On Premise
Lines of code 393
Technical Name direct_print_ok
LicenseOPL-1
Websitehttps://linkedin.com/in/okky-permana-sihipo
Versions 16.0 17.0 18.0
You bought this module and need support? Click here!

Manual Penggunaan Modul Direct Print PDF & POS

Analisis Modul Secara Keseluruhan

Modul Direct Print PDF & POS dirancang untuk memperluas fungsionalitas pencetakan laporan standar Odoo. Laporan standar Odoo biasanya mengharuskan pengguna untuk mengunduh file PDF ke perangkat lokal sebelum dapat mencetaknya. Modul ini menyediakan tiga metode pencetakan yang terintegrasi langsung ke dalam sistem Odoo: pencetakan otomatis melalui dialog cetak browser, pengunduhan langsung, dan yang paling penting, pencetakan terotomatisasi melalui antrian cetak untuk klien eksternal. Fungsionalitas inti ini sangat berguna dalam lingkungan bisnis yang memerlukan pencetakan cepat dan tanpa intervensi manual, seperti di kasir Point of Sale (POS) atau pencetakan label di gudang.

1. Konfigurasi Level Format Kertas (Paper Format)

Pengaturan ini berfungsi sebagai konfigurasi pencetakan default yang berlaku untuk semua laporan yang menggunakan format kertas tertentu. Konfigurasi ini akan menjadi standar secara global, kecuali jika ada pengaturan spesifik yang mengesampingkannya di tingkat laporan individu.

  1. Akses Menu: Navigasi ke menu Settings > Technical > Paper Format.
  2. Pilihan Format: Pilih format kertas yang sudah ada atau buat format baru sesuai kebutuhan bisnis Anda.
  3. Bidang Default Behavior: Di dalam formulir, Anda akan menemukan bidang Default Behavior yang menawarkan tiga opsi untuk mengontrol alur pencetakan:
    • Send to Client: Ini adalah metode pencetakan standar Odoo. Saat laporan dicetak, file PDF akan secara otomatis diunduh ke perangkat pengguna, yang kemudian harus dibuka dan dicetak secara manual.
    • Open Print Dialog: Opsi ini secara otomatis memicu jendela dialog cetak dari browser web segera setelah laporan selesai di-render. Pengguna dapat langsung memilih printer dan mencetak tanpa langkah perantara.
    • Queued to Hook: Opsi ini adalah fitur utama untuk pencetakan terotomatisasi. Laporan akan di-render sebagai PDF, dienkode dalam format base64, dan ditempatkan dalam antrian di database Odoo, menunggu untuk diambil oleh aplikasi klien cetak eksternal.
  4. Konfigurasi Printer (Jika Queued to Hook dipilih): Jika Anda memilih Queued to Hook, bidang Printer Unique ID akan muncul. Ini adalah langkah penting untuk mengidentifikasi printer fisik.
    • Menambahkan ID Printer: Klik Add a line untuk mendefinisikan ID unik untuk printer. Nama ini (misalnya, Cashier-Printer-01 atau Main-Warehouse-Printer) akan digunakan oleh klien cetak eksternal untuk mengambil laporan dari antrian yang benar.
    • Pembatasan Pengguna: Anda dapat membatasi akses printer ini untuk sekelompok pengguna Odoo tertentu melalui bidang Users. Jika tidak ada pengguna yang dipilih, ID printer ini akan tersedia untuk semua pengguna.
    • Tombol Download Client: Tombol ini juga akan terlihat, memungkinkan Anda mengunduh aplikasi klien cetak eksternal yang diperlukan untuk mengambil laporan dari antrian.

2. Konfigurasi Tata Letak Dokumen (Document Layout)

Modul ini mengintegrasikan konfigurasi pencetakan ke dalam menu Document Layout, yang berfungsi sebagai jalan pintas yang praktis untuk mengelola perilaku pencetakan. Pengaturan di sini secara langsung mencerminkan dan memodifikasi konfigurasi pada Paper Format yang terkait dengan tata letak dokumen yang Anda pilih.

  1. Akses Menu: Navigasi ke menu Settings > General Settings > Business Documents > Configure Document Layout.
  2. Bidang Terintegrasi: Bidang Printing Action dan Printer Unique ID di sini akan secara otomatis mencerminkan dan mengubah konfigurasi dari Paper Format yang terhubung.
  3. Tombol Download: Tombol Download Client juga tersedia di menu ini untuk kemudahan akses.

3. Konfigurasi Laporan Individu (Report Actions)

Untuk fleksibilitas maksimal, Anda dapat mengesampingkan pengaturan pencetakan default dari Paper Format dan menerapkan perilaku pencetakan spesifik untuk setiap laporan. Ini sangat berguna jika, misalnya, Anda ingin faktur dicetak otomatis di kasir sementara laporan lainnya tetap dapat diunduh.

  1. Akses Menu: Navigasi ke menu Settings > Technical > Actions > Reports.
  2. Pilihan Laporan: Pilih laporan spesifik yang ingin Anda konfigurasi (misalnya, `account.report_invoice`).
  3. Tab Print: Buka tab Print di formulir laporan.
  4. Override Printing Action: Atur Printing Action khusus untuk laporan ini. Misalnya, Anda dapat mengatur laporan ini menjadi Queued to Hook meskipun format kertas default-nya adalah Send to Client.
  5. Pilihan Printer: Jika Printing Action diatur ke Queued to Hook, Anda dapat memilih Printer Unique ID spesifik yang akan digunakan untuk laporan ini.
  6. Pemantauan Antrian: Bidang Queue akan menampilkan daftar laporan yang sedang menunggu untuk dicetak, memungkinkan Anda memantau status antrian cetak secara langsung dari formulir laporan.
  7. Tombol Download: Tombol Download Client juga tersedia pada tab ini.

4. Fungsionalitas Klien Pencetak Langsung

Klien cetak adalah sebuah program eksternal ringan yang diinstal di komputer yang terhubung ke printer fisik. Klien ini berkomunikasi dengan server Odoo untuk mengelola proses pencetakan secara otomatis. Berikut adalah alur kerjanya:

  1. Generasi Laporan: Ketika laporan dicetak dengan opsi Queued to Hook, Odoo akan merender laporan menjadi PDF, mengonversinya menjadi data base64, dan menyimpannya dalam antrian di model ir.actions.report.queue.
  2. Polling Klien: Aplikasi klien cetak secara berkala (misalnya, setiap beberapa detik) akan melakukan polling ke server Odoo, menyediakan Printer Unique ID yang telah dikonfigurasi.
  3. Pengambilan Laporan: Jika klien menemukan laporan yang cocok dengan Printer Unique ID-nya di antrian, ia akan mengunduh data base64 tersebut dari server.
  4. Pencetakan: Klien akan mendekode data base64 kembali menjadi file PDF, lalu mengirimkannya ke printer fisik lokal untuk dicetak secara otomatis.
  5. Konfirmasi dan Penghapusan: Setelah proses pencetakan berhasil, klien akan mengirimkan konfirmasi ke Odoo, yang kemudian akan secara otomatis menghapus entri laporan dari antrian untuk mencegah pencetakan ganda.
Odoo Proprietary License v1.0

This software and associated files (the "Software") may only be used (executed,
modified, executed after modifications) if you have purchased a valid license
from the authors, typically via Odoo Apps, or if you have received a written
agreement from the authors of the Software (see the COPYRIGHT file).

You may develop Odoo modules that use the Software as a library (typically
by depending on it, importing it and using its resources), but without copying
any source code or material from the Software. You may distribute those
modules under the license of your choice, provided that this license is
compatible with the terms of the Odoo Proprietary License (For example:
LGPL, MIT, or proprietary licenses similar to this one).

It is forbidden to publish, distribute, sublicense, or sell copies of the Software
or modified copies of the Software.

The above copyright notice and this permission notice must be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
DEALINGS IN THE SOFTWARE.

Please log in to comment on this module

  • The author can leave a single reply to each comment.
  • This section is meant to ask simple questions or leave a rating. Every report of a problem experienced while using the module should be addressed to the author directly (refer to the following point).
  • If you want to start a discussion with the author or have a question related to your purchase, please use the support page.