Menangani kesalahan di Power Query
Di Power Query, Anda bisa mengalami dua jenis kesalahan:
- Kesalahan tingkat langkah
- Kesalahan tingkat sel
Artikel ini memberikan saran tentang cara memperbaiki kesalahan paling umum yang mungkin Anda temukan di setiap tingkat, dan menjelaskan alasan kesalahan, pesan kesalahan, dan detail kesalahan untuk masing-masing.
Kesalahan tingkat langkah
Kesalahan tingkat langkah mencegah kueri memuat dan menampilkan komponen kesalahan di panel kuning.
- Alasan kesalahan: Bagian pertama sebelum titik dua. Dalam contoh di atas, alasan kesalahannya adalah Expression.Error.
- Pesan kesalahan: Bagian langsung setelah alasannya. Dalam contoh di atas, pesan kesalahan adalah Kolom 'Kolom' tabel tidak ditemukan.
- Detail kesalahan: Bagian langsung setelah Detail: string. Dalam contoh di atas, detail kesalahannya adalah Kolom.
Kesalahan tingkat langkah umum
Dalam semua kasus, kami sarankan Anda melihat lebih dekat alasan kesalahan, pesan kesalahan, dan detail kesalahan untuk memahami apa yang menyebabkan kesalahan. Anda dapat memilih tombol Buka kesalahan , jika tersedia, untuk melihat langkah pertama tempat kesalahan terjadi.
Tidak dapat menemukan sumber - DataSource.Error
Kesalahan ini biasanya terjadi ketika sumber data tidak dapat diakses oleh pengguna, pengguna tidak memiliki kredensial yang benar untuk mengakses sumber data, atau sumber telah dipindahkan ke tempat lain.
Contoh: Anda memiliki kueri dari ubin teks yang terletak di drive D dan dibuat oleh pengguna A. Pengguna A berbagi kueri dengan pengguna B, yang tidak memiliki akses ke drive D. Ketika orang ini mencoba menjalankan kueri, mereka mendapatkan DataSource.Error karena tidak ada drive D di lingkungan mereka.
Solusi yang mungkin: Anda dapat mengubah jalur file teks ke jalur yang dapat diakses oleh kedua pengguna. Sebagai pengguna B, Anda dapat mengubah jalur file menjadi salinan lokal dari file teks yang sama. Jika tombol Edit pengaturan tersedia di panel kesalahan, Anda bisa memilihnya dan mengubah jalur file.
Kolom tabel tidak ditemukan
Kesalahan ini biasanya dipicu ketika langkah membuat referensi langsung ke nama kolom yang tidak ada dalam kueri.
Contoh: Anda memiliki kueri dari file teks di mana salah satu nama kolom adalah Kolom. Dalam kueri, Anda memiliki langkah yang mengganti nama kolom tersebut menjadi Tanggal. Tetapi ada perubahan dalam file teks asli, dan tidak lagi memiliki judul kolom dengan nama Kolom karena diubah secara manual menjadi Tanggal. Power Query tidak dapat menemukan judul kolom bernama Kolom, sehingga tidak dapat mengganti nama kolom apa pun. Ini menampilkan kesalahan yang ditunjukkan pada gambar berikut.
Solusi yang mungkin: Ada beberapa solusi untuk kasus ini, tetapi semuanya bergantung pada apa yang ingin Anda lakukan. Untuk contoh ini, karena header kolom Tanggal yang benar sudah berasal dari file teks Anda, Anda cukup menghapus langkah yang mengganti nama kolom. Ini akan memungkinkan kueri Anda berjalan tanpa kesalahan ini.
Kesalahan tingkat langkah umum lainnya
Saat menggabungkan atau menggabungkan data di antara beberapa sumber data, Anda mungkin mendapatkan kesalahan Formula.Firewall seperti yang diperlihatkan dalam gambar berikut.
Kesalahan ini dapat disebabkan oleh sejumlah alasan, seperti tingkat privasi data antara sumber data atau cara sumber data ini digabungkan atau digabungkan. Untuk informasi selengkapnya tentang cara mendiagnosis masalah ini, buka Firewall privasi data.
Kesalahan tingkat sel
Kesalahan tingkat sel tidak akan mencegah kueri dimuat, tetapi menampilkan nilai kesalahan sebagai Kesalahan dalam sel. Memilih spasi kosong dalam sel menampilkan panel kesalahan di bawah pratinjau data.
Catatan
Alat pembuatan profil data dapat membantu Anda lebih mudah mengidentifikasi kesalahan tingkat sel dengan fitur kualitas kolom. Informasi selengkapnya: Alat pembuatan profil data
Menangani kesalahan di tingkat sel
Saat mengalami kesalahan tingkat sel, Power Query menyediakan sekumpulan fungsi untuk menanganinya baik dengan menghapus, mengganti, atau menyimpan kesalahan.
Untuk bagian berikutnya, contoh yang disediakan akan menggunakan kueri sampel yang sama dengan titik awal. Dalam kueri ini, Anda memiliki kolom Penjualan yang memiliki satu sel dengan kesalahan yang disebabkan oleh kesalahan konversi. Nilai di dalam sel itu adalah NA, tetapi ketika Anda mengubah kolom tersebut menjadi bilangan buletik Power Query tidak dapat mengonversi NA menjadi angka, sehingga menampilkan kesalahan berikut.
Menghapus kesalahan
Untuk menghapus baris dengan kesalahan di Power Query, pertama-tama pilih kolom yang berisi kesalahan. Pada tab Beranda , di grup Kurangi baris , pilih Hapus baris. Dari menu drop-down, pilih Hapus kesalahan.
Hasil dari operasi tersebut akan memberi Anda tabel yang Anda cari.
Ganti kesalahan
Jika alih-alih menghapus baris dengan kesalahan, Anda ingin mengganti kesalahan dengan nilai tetap, Anda juga dapat melakukannya. Untuk mengganti baris yang memiliki kesalahan, pertama-tama pilih kolom yang berisi kesalahan. Pada tab Transformasi , di grup Kolom apa pun, pilih Ganti nilai. Dari menu drop-down, pilih Ganti kesalahan.
Dalam kotak dialog Ganti kesalahan , masukkan nilai 10 karena Anda ingin mengganti semua kesalahan dengan nilai 10.
Hasil dari operasi tersebut akan memberi Anda tabel yang Anda cari.
Pertahankan kesalahan
Power Query dapat berfungsi sebagai alat audit yang baik untuk mengidentifikasi baris apa pun dengan kesalahan meskipun Anda tidak memperbaiki kesalahan. Di sinilah kesalahan Keep dapat membantu. Untuk mempertahankan baris yang memiliki kesalahan, pertama-tama pilih kolom yang berisi kesalahan. Pada tab Beranda , di grup Kurangi baris , pilih Pertahankan baris. Dari menu drop-down, pilih Pertahankan kesalahan.
Hasil dari operasi tersebut akan memberi Anda tabel yang Anda cari.
Kesalahan tingkat sel umum
Seperti halnya kesalahan tingkat langkah apa pun, kami sarankan Anda melihat dari dekat alasan kesalahan, pesan kesalahan, dan detail kesalahan yang disediakan di tingkat sel untuk memahami apa yang menyebabkan kesalahan. Bagian berikut membahas beberapa kesalahan tingkat sel yang paling sering terjadi di Power Query.
Kesalahan konversi jenis data
Umumnya dipicu saat mengubah jenis data kolom dalam tabel. Beberapa nilai yang ditemukan dalam kolom tidak dapat dikonversi ke tipe data yang diinginkan.
Contoh: Anda memiliki kueri yang menyertakan kolom bernama Sales. Satu sel dalam kolom tersebut memiliki NA sebagai nilai sel, sementara sel lainnya memiliki seluruh angka sebagai nilai. Anda memutuskan untuk mengonversi tipe data kolom dari teks ke bilangan bujur, tetapi sel dengan nilai NA menyebabkan kesalahan.
Solusi yang mungkin: Setelah mengidentifikasi baris dengan kesalahan, Anda dapat memodifikasi sumber data untuk mencerminkan nilai yang benar daripada NA, atau Anda dapat menerapkan operasi Ganti kesalahan untuk memberikan nilai untuk nilai NA apa pun yang menyebabkan kesalahan.
Kesalahan operasi
Saat mencoba menerapkan operasi yang tidak didukung, seperti mengalikan nilai teks dengan nilai numerik, kesalahan terjadi.
Contoh: Anda ingin membuat kolom kustom untuk kueri Anda dengan membuat string teks yang berisi frasa "Total Penjualan: " yang digabungkan dengan nilai dari kolom Penjualan . Kesalahan terjadi karena operasi perangkaian hanya mendukung kolom teks dan bukan kolom numerik.
Solusi yang mungkin: Sebelum membuat kolom kustom ini, ubah tipe data kolom Penjualan menjadi teks.
Nilai berlapis ditampilkan sebagai kesalahan
Saat bekerja dengan data yang berisi nilai terstruktur berlapis (seperti tabel, daftar, atau rekaman), Terkadang Anda mungkin mengalami kesalahan berikut:
Expression.Error: We cannot return a value of type {value} in this context
Details: In the past we would have returned a text value of {value}, but we now return this error. Please see https://go.microsoft.com/fwlink/?linkid=2099726 for more information.
Kesalahan ini biasanya terjadi karena dua alasan:
- Ketika Firewall Privasi Data menyangga sumber data, nilai non-skalar berlapis secara otomatis dikonversi menjadi kesalahan.
- Saat kolom yang ditentukan dengan
Any
tipe data berisi nilai non-skalar, nilai tersebut akan dilaporkan sebagai kesalahan selama pemuatan (seperti dalam Buku Kerja di Excel atau model data di Power BI Desktop).
Solusi yang mungkin:
- Hapus kolom yang berisi kesalahan, atau atur jenis non-data
Any
untuk kolom tersebut. - Ubah tingkat privasi sumber data yang terlibat menjadi sumber data yang memungkinkan mereka digabungkan tanpa di-buffer.
- Meratakan tabel sebelum melakukan penggabungan untuk menghilangkan kolom yang berisi nilai terstruktur berlapis (seperti tabel, rekaman, atau daftar).