Perlindungan pembayaranSelengkapnya
- Revisi dalam batas paket tidak dikenai biaya.
- Jika Anda tidak merespons dalam 3 hari setelah penyerahan hasil, hasil kerja diterima secara otomatis.
Uang ditahan saat Anda membayar dan diteruskan hanya setelah Anda menerima hasil kerja.

Contoh hasil
Menggabungkan file penjualan bulanan 9 toko menjadi satu laporan Excel
Cara menjalankannya
python merge_sales.py --month 2026-10
2026-11-02 09:14:03 INFO Folder: sales/2026-10, ditemukan 9 file
2026-11-02 09:14:03 INFO shop-01.csv: 1.284 baris
2026-11-02 09:14:04 INFO shop-02.xlsx: 967 baris
2026-11-02 09:14:04 WARN shop-07.csv: 3 baris tanpa harga dilewati (baris 88, 412, 913)
2026-11-02 09:14:05 INFO Selesai: 10.412 baris -> report-2026-10.xlsx (sheet "Penjualan" dan "Total")
Pengaturan, bukan kode
Nama kolom setiap toko disimpan di settings.ini, jadi toko baru atau kolom yang berganti nama cukup ditambahkan satu baris di sana:
[columns]
date = Tanggal, Tanggal penjualan, Hari
product = Produk, Barang, Nama
quantity = Qty, Jumlah, Pcs
price = Harga, Harga satuan
Sebagian kode
def read_shop_file(path: Path, columns: dict[str, list[str]]) -> pd.DataFrame:
"""Membaca file satu toko dan memberinya nama kolom laporan."""
table = pd.read_excel(path) if path.suffix == ".xlsx" else pd.read_csv(path, encoding="utf-8-sig")
renamed = {}
for name, variants in columns.items():
found = next((c for c in table.columns if c.strip() in variants), None)
if found is None:
raise ReportError(f"{path.name}: tidak ada kolom untuk '{name}' (dicari: {', '.join(variants)})")
renamed[found] = name
table = table.rename(columns=renamed)[list(columns)]
table["shop"] = path.stem
return table
File: arsip ZIP berisi merge_sales.py (310 baris), settings.ini, requirements.txt, dan README tentang cara memasang Python, menjalankan skrip, dan arti setiap pesan di log. Klien menjalankannya di komputernya sendiri.
Klien: jaringan kecil 9 toko alat tulis; setiap toko mengirim penjualan bulanannya sebagai file CSV atau Excel, dengan nama kolom yang sedikit berbeda. Tugas: satu skrip yang membaca setiap file di sebuah folder, menyeragamkan kolomnya, dan menulis satu laporan Excel berisi semua penjualan serta sheet total per toko.
Klien dan semua datanya fiktif.
Tentang layanan ini
Jadwal pelajaran, rencana shift, slot pengiriman, atau susunan acara sering disimpan di Google Spreadsheet, dan menyalinnya ke Google Kalender satu per satu lambat serta rawan salah. Google Apps Script ini membaca baris Anda dan membuat acara untuk setiap baris di kalender pilihan Anda: judul, waktu mulai dan selesai, tempat, dan deskripsi dari kolom Anda. Skrip menyimpan ID acara di baris itu, jadi jika Anda mengubah waktu dan menjalankannya lagi, acaranya bergeser alih-alih tergandakan. Premium bisa membagi acara ke beberapa kalender, misalnya satu per guru atau ruangan. Tamu hanya mendapat undangan jika Anda mengaktifkannya. Acara masuk ke akun Google Anda sendiri, tempat Anda memasang dan menjalankan skrip; skrip tidak memeriksa bentrokan jadwal atau memesan apa pun untuk orang lain.
Yang termasuk
- Yang Anda dapatkanArsip ZIP berisi kode Apps Script dan README yang menunjukkan cara menambahkannya ke spreadsheet, memilih kalender, dan menjalankannya; kodenya juga ditampilkan di halaman pesanan.
- Kolom AndaJudul, tanggal, mulai, selesai, tempat, dan deskripsi
- Tanpa gandaID acara di baris mengikatnya ke acaranya
- Zona waktu AndaWaktu dibaca dalam zona waktu yang Anda tetapkan
- Undangan hanya jika Anda mauTamu diundang hanya jika fitur itu diaktifkan
- Kode yang mudah dibacaDengan komentar, mudah menambah kolom nanti
Cara kerja
- 1TugasAnda mengirim kolom spreadsheet dan kalender yang dipakai
- 2KodeKami menulis skrip dan panduan memasangnya
- 3CobaAnda menjalankannya di salinan spreadsheet ke kalender uji
- 4RevisiAnda meminta revisi sesuai paket dan mengirim pesan error jika ada
Yang kami butuhkan dari Anda
Nama kolom spreadsheet Anda dan beberapa baris (nama karangan tidak masalah), bagaimana tanggal dan waktu ditulis di dalamnya, zona waktu Anda, dan kalender tujuan acara (atau, untuk Premium, kolom yang menentukan kalender). Apa yang harus terjadi jika sebuah baris berubah atau dihapus, dan apakah tamu dari sebuah kolom perlu mendapat undangan. Kira-kira berapa baris, dan seberapa sering spreadsheet berubah.
Kami akan menanyakan:
- Apa isi spreadsheet-nya?
- Ke kalender mana acara dimasukkan?
- Apa yang terjadi jika baris berubah?
- Apakah tamu perlu diundang?
Bandingkan paket
| Paket | DasarBaris ke acaraRp 272.000 | StandarAcara dengan pengaturanRp 561.000 | PremiumAlat kalenderRp 1.139.000 |
|---|---|---|---|
| Tenggat | 1 hari | 2 hari | 3 hari |
| Revisi | 1 | 2 | 3 |
| Kode | hingga 150 baris | hingga 400 baris | hingga 1.000 baris |
| File kode | 1 | hingga 3 | hingga 8 |
| File pengaturan | Tidak | Ya | Ya |
| Pesan error yang jelas dan log | Tidak | Ya | Ya |
| Opsi menjalankan dan panduan menjalankannya terjadwal | Tidak | Tidak | Ya |
| Panduan instalasi dan menjalankan (README) | Ya | Ya | Ya |
| Bahasa | Google Apps Script | Google Apps Script | Google Apps Script |
| Pesan Dasar | Pesan Standar | Pesan Premium |
Perlindungan pembayaran
Anda membayar saat memesan, tetapi uangnya diteruskan hanya untuk hasil kerja yang diterima.
- Harga pastiHarga paket tidak berubah setelah Anda membayar.
- Uang ditahanSaat Anda membayar, jumlahnya hanya ditahan. Dana diteruskan ke Dleex setelah Anda menerima hasil kerja.
- Diperiksa sebelum penyerahanSetiap hasil melewati pemeriksaan kualitas sebelum sampai kepada Anda, dan Anda dapat melihatnya di halaman pesanan sebelum menerimanya.
- Revisi gratisMinta revisi sesuai brief Anda sebanyak yang diizinkan paket.
- Diterima setelah 3 hariJika dalam 3 hari setelah penyerahan hasil Anda tidak menerima hasil kerja maupun meminta revisi, hasil kerja diterima secara otomatis. Jika Anda menulis di chat pesanan setelah penyerahan hasil, pesanan akan menunggu; setelah kami menjawab, kami dapat memulai ulang hitungan 3 hari dan akan memberitahukannya di chat.
- Dikerjakan ulang atau pengembalian dana penuhJika hasilnya tidak sesuai brief Anda dan revisi tidak memperbaikinya, atau pengerjaan memakan waktu lebih dari dua kali tenggatnya, tulis di chat pesanan: kami akan mengerjakan ulang atau mengembalikan pembayaran secara penuh.
Tanya jawab
Bagaimana jika saya mengubah baris setelah acaranya dibuat?
Mulai Standar, skrip menemukan acara berdasarkan ID yang tersimpan di baris dan memperbaruinya. Di Dasar, baris yang sudah punya acara dilewati, jadi Anda mengubah acaranya sendiri di kalender.
Apakah skrip akan menghapus acara?
Hanya di Premium dan hanya sesuai aturan yang Anda berikan, misalnya menghapus acara jika barisnya ditandai Dibatalkan. Acara yang tidak dibuat oleh skrip tidak pernah disentuh.
Bisakah skrip memasukkan acara ke kalender rekan kerja saya?
Ke kalender yang bisa Anda edit, seperti kalender bersama, bisa. Jika tidak, Anda bisa mengundang mereka sebagai tamu dari sebuah kolom, jika undangan diaktifkan.
Apakah Anda mendapat akses ke kalender saya?
Tidak. Anda menambahkan skrip ke spreadsheet Anda sendiri dan memberi izin aksesnya sendiri. Kami tidak pernah masuk ke akun Google Anda.
Tidak menemukan jawabannya?