Excel File Source
Buka di CMSSQL Database Reader dapat menjawab pertanyaan dari workbook Excel yang Anda upload, tanpa database sama sekali. Setiap sheet menjadi satu tabel, sehingga agent bisa menjawab "total order lunas per pelanggan sejak Februari" dari spreadsheet, sama seperti dari database.
Kapan digunakan
| File Excel | Database (direct atau gateway) | |
|---|---|---|
| Butuh database | Tidak | Ya |
| Akses jaringan ke sistem Anda | Tidak ada | Port database, atau gateway keluar |
| Kesegaran data | Snapshot — upload versi baru untuk memperbarui | Live |
| Ukuran | Hingga 20 MB per workbook | Sebesar isi database Anda |
Pilih file Excel untuk data yang memang tersimpan di spreadsheet, untuk prototipe, dan untuk data referensi kecil yang sesekali berubah. Pilih koneksi database bila datanya terus berubah atau lebih besar dari sebuah workbook.
Coba dengan workbook contoh
Unduh retail-sales-sample.xlsx untuk mengikuti panduan ini. Isinya data penjualan tiga tahun (2023–2025) sebuah jaringan ritel kecil dengan 10 toko — delapan di Amerika Serikat, satu di Singapura, dan satu di Jakarta — dengan semua nilai dalam dolar AS:
| Sheet | Baris | Isi |
|---|---|---|
| Stores | 10 | store_id, nama, kota, negara bagian/wilayah, negara, tanggal buka, luas, is_flagship |
| Products | 25 | product_id, nama, kategori (Apparel, Footwear, Electronics, Home, Beauty, Accessories), harga jual dan harga pokok dalam USD |
| Sales | 4.000 | Satu baris per toko, produk, dan hari: sale_date, store_id, product_id, units_sold, unit_price_usd, discount_pct, channel (In-store atau Online), on_promotion |
| Monthly Targets | 354 | Target omzet dalam USD per toko per bulan (month adalah tanggal 1 di bulan tersebut) |
Setelah diupload, tambahkan virtual foreign key berikut agar pertanyaan bisa menggabungkan beberapa sheet:
Sales.store_id → Stores.store_idSales.product_id → Products.product_idMonthly Targets.store_id → Stores.store_id
Akan membantu juga bila aturan omzet dijelaskan di deskripsi tabel Sales, misalnya "Revenue = units_sold × unit_price_usd × (1 − discount_pct)". Lalu coba pertanyaan seperti:
- Which store had the highest revenue in 2025?
- Show the monthly revenue of the Singapore store in 2024.
- Which product category grew the most between 2023 and 2025?
- In which months of 2025 did the Jakarta store miss its target?
- What share of 2025 revenue came from online sales in each country?
Menyiapkan workbook
- Satu tabel per sheet. Nama sheet menjadi nama tabel.
- Nama field di baris 1, mulai dari sel A1. Jangan ada baris judul atau catatan di atasnya.
- Setiap kolom yang berisi data wajib punya nama field yang unik. Nama dibandingkan tanpa membedakan huruf besar-kecil, jadi
Totaldantotaldianggap sama. - Jangan merge sel header. Sel merge di area data boleh, tetapi hanya sel kiri-atas yang menyimpan nilainya.
- Isi satu kolom dengan satu jenis nilai. Kolom yang mencampur angka dan teks disimpan sebagai teks.
- Gunakan tanggal Excel yang sebenarnya, bukan tanggal yang diketik sebagai teks, agar agent bisa memfilter dan mengelompokkan berdasarkan tanggal.
- Formula boleh — yang dipakai adalah nilai terakhir yang dihitung Excel.
- Baris kosong dilewati, sheet kosong diabaikan, dan sheet tersembunyi tetap ikut.
Batas
| Batas | |
|---|---|
| Jenis file | .xlsx (file .xls lama: buka di Excel lalu simpan sebagai .xlsx) |
| Ukuran file | 20 MB |
| Baris per sheet | 200.000 |
| Field per sheet | 500 |
| Sel per workbook | 3.000.000 |
| Workbook berpassword | Tidak didukung — hapus password terlebih dahulu |
Menyiapkan plugin
1. Pilih Excel file
Buka plugin SQL Database Reader dari Tools → Plugins. Pada Where does your data come from?, pilih Excel file. Langkah Connection diganti dengan langkah Excel File; tidak ada yang perlu dihubungkan dan tidak ada kredensial yang perlu diisi.
2. Upload dan periksa workbook
Seret workbook ke area upload atau klik Browse. Qlar mengupload dan memeriksanya sebelum apa pun disimpan.
Bila workbook valid, Anda melihat ringkasan: jumlah tabel, field, dan baris, serta untuk setiap sheet jumlah barisnya dan setiap field beserta tipe yang dideteksi Qlar:
| Tipe terdeteksi | Arti |
|---|---|
INTEGER | Bilangan bulat |
REAL | Bilangan desimal |
TEXT | Teks, atau kolom yang mencampur beberapa jenis nilai |
BOOLEAN | TRUE / FALSE |
DATE | Tanggal tanpa jam |
DATETIME | Tanggal dengan jam |
Peringatan — sheet kosong yang dilewati, kolom yang disimpan sebagai teks karena isinya campuran — ditampilkan di atas ringkasan. Peringatan tidak menghalangi Anda melanjutkan.
Bila workbook tidak valid, setiap masalah ditampilkan beserta sheet dan selnya, misalnya Sales › C1 — Column C has data but no field name in row 1. Tidak ada yang disimpan. Perbaiki file di Excel lalu pilih lagi.
3. Tabel, pengaturan, dan pengujian
Workbook tidak punya foreign key, jadi Qlar tidak tahu hubungan antar-sheet. Bila pertanyaan perlu menggabungkan beberapa sheet — order dengan pelanggan yang memesannya — beri tahu field mana yang menunjuk ke mana lewat Virtual Foreign Keys, misalnya Orders.customer_id → Customers.id.
Selanjutnya penyiapannya sama seperti untuk database: pilih tabel dan field yang boleh digunakan agent beserta deskripsinya (Configure Tables and Columns), atur nama fungsi dan perilakunya (Function Tool Settings), lalu simpan. Testing Queries dan Usage Logs bekerja seperti biasa.
Memperbarui data
Agent menjawab dari versi workbook yang Anda upload. Bila datanya berubah:
- Buka plugin dan masuk ke tab Excel File. Tab ini menampilkan file aktif, kapan diupload, dan tabel-tabelnya.
- Klik Replace with a new file lalu upload versi baru. File diperiksa persis seperti upload pertama.
- Qlar menampilkan apa saja yang berubah — tabel yang bertambah atau hilang, jumlah baris, field baru atau yang dihapus, field yang tipenya berubah — dan meminta konfirmasi lewat Replace & save.
Deskripsi dan pilihan field dipertahankan untuk tabel dan field yang namanya tetap; field baru langsung terpilih. Sebelum Anda mengonfirmasi, agent tetap menjawab dari file yang sekarang.
Di mana file disimpan
Workbook disimpan di storage privat milik Qlar, bersama salinan read-only yang dipakai untuk menjawab pertanyaan. File tidak pernah publik dan hanya bisa dibaca oleh konfigurasi agent ini.
- Mengganti file akan menghapus versi sebelumnya.
- Menghapus konfigurasi plugin, atau agent-nya, akan menghapus file.
- File yang diupload tetapi tidak pernah disimpan ke konfigurasi akan dihapus otomatis setelah satu hari.
Seperti sumber data lain, baris yang dihasilkan sebuah pertanyaan dikirim ke model AI untuk menyusun jawaban. Jangan pilih kolom yang tidak boleh dibagikan, atau keluarkan dari workbook.