logologo
Mulai
Panduan
Pengembangan
Plugin
API
Beranda
English
简体中文
日本語
한국어
Español
Português
Deutsch
Français
Русский
Italiano
Türkçe
Українська
Tiếng Việt
Bahasa Indonesia
ไทย
Polski
Nederlands
Čeština
العربية
עברית
हिन्दी
Svenska
Mulai
Panduan
Pengembangan
Plugin
API
Beranda
logologo
Alur Kerja
Ikhtisar
Mulai Cepat

Pemicu

Ikhtisar
Peristiwa Koleksi
Tugas Terjadwal
Peristiwa Sebelum Tindakan
Peristiwa Setelah Tindakan
Peristiwa Tindakan Kustom
Persetujuan
Webhook

Node

Ikhtisar

Kecerdasan Buatan

Model Bahasa Besar

Kontrol Alur

Kondisi
Cabang Multi-kondisi
Perulangan
Variabel
Cabang Paralel
Panggil Alur Kerja
Output Alur
Pemetaan Variabel JSON
Penundaan
Selesai

Kalkulasi

Kalkulasi
Kalkulasi Tanggal
Kalkulasi JSON

Operasi Data

Tambah Data
Perbarui Data
Kueri Data
Hapus Data
Operasi SQL

Pemrosesan Manual

Pemrosesan Manual
Persetujuan
Tembusan (CC)

Tipe Ekstensi

Permintaan HTTP
Skrip JavaScript
Notifikasi
Kirim Email
Respons
Pesan Respons
Variabel
Riwayat Eksekusi
Manajemen Versi
Opsi Lanjutan

Pengembangan Ekstensi

Ikhtisar
Ekstensi Tipe Pemicu
Ekstensi Tipe Node
Referensi API
Previous PageKalkulasi Tanggal
Next PageTambah Data
TIP

Dokumen ini diterjemahkan oleh AI. Untuk ketidakakuratan apa pun, silakan lihat versi bahasa Inggris

#Perhitungan JSON

Alur kerja: Perhitungan JSONCommunity Edition+

#Pendahuluan

Berdasarkan berbagai mesin perhitungan JSON, node ini menghitung atau mengubah struktur data JSON kompleks yang dihasilkan oleh node sebelumnya agar dapat digunakan oleh node selanjutnya. Misalnya, hasil dari operasi SQL dan node permintaan HTTP dapat diubah menjadi nilai dan format variabel yang diperlukan melalui node ini untuk digunakan oleh node selanjutnya.

#Membuat Node

Di antarmuka konfigurasi alur kerja, klik tombol plus ("+") di dalam alur untuk menambahkan node "Perhitungan JSON":

Membuat Node

Catatan

Biasanya, node Perhitungan JSON dibuat di bawah node data lainnya untuk memparsingnya.

#Konfigurasi Node

#Mesin Parsing

Node Perhitungan JSON mendukung berbagai sintaks melalui mesin parsing yang berbeda. Anda dapat memilih berdasarkan preferensi dan fitur masing-masing mesin. Saat ini, tiga mesin parsing didukung:

  • JMESPath
  • JSONPath Plus
  • JSONata

Pilihan Mesin

#Sumber Data

Sumber data bisa berupa hasil dari node sebelumnya atau objek data dalam konteks alur kerja. Biasanya, ini adalah objek data tanpa struktur bawaan, seperti hasil dari node SQL atau node permintaan HTTP.

Sumber Data

Catatan

Biasanya, objek data dari node terkait koleksi sudah terstruktur melalui informasi konfigurasi koleksi dan umumnya tidak perlu diparsing oleh node Perhitungan JSON.

#Ekspresi Parsing

Ekspresi parsing kustom berdasarkan kebutuhan parsing dan mesin parsing yang dipilih.

Ekspresi Parsing

Catatan

Mesin yang berbeda menyediakan sintaks parsing yang berbeda. Untuk detailnya, silakan merujuk ke dokumentasi di tautan.

Mulai versi v1.0.0-alpha.15, ekspresi mendukung penggunaan variabel. Variabel akan dipra-parsing sebelum mesin tertentu dieksekusi, mengganti variabel dengan nilai string spesifik sesuai aturan template string, dan menggabungkannya dengan string statis lainnya dalam ekspresi untuk membentuk ekspresi akhir. Fitur ini sangat berguna ketika Anda perlu membangun ekspresi secara dinamis, misalnya, ketika beberapa konten JSON memerlukan kunci dinamis untuk parsing.

#Pemetaan Properti

Ketika hasil perhitungan adalah sebuah objek (atau array objek), Anda dapat lebih lanjut memetakan properti yang diperlukan ke variabel anak melalui pemetaan properti untuk digunakan oleh node selanjutnya.

Pemetaan Properti

Catatan

Untuk hasil objek (atau array objek), jika pemetaan properti tidak dilakukan, seluruh objek (atau array objek) akan disimpan sebagai variabel tunggal dalam hasil node, dan nilai properti objek tidak dapat digunakan langsung sebagai variabel.

#Contoh

Misalkan data yang perlu diparsing berasal dari node SQL sebelumnya yang digunakan untuk mengkueri data, dan hasilnya adalah kumpulan data pesanan:

[
  {
    "id": 1,
    "products": [
      {
        "id": 1,
        "title": "Product 1",
        "price": 100,
        "quantity": 1
      },
      {
        "id": 2,
        "title": "Product 2",
        "price": 120,
        "quantity": 2
      }
    ]
  },
  {
    "id": 2,
    "products": [
      {
        "id": 3,
        "title": "Product 3",
        "price": 130,
        "quantity": 1
      },
      {
        "id": 4,
        "title": "Product 4",
        "price": 140,
        "quantity": 2
      }
    ]
  }
]

Jika kita perlu memparsing dan menghitung total harga masing-masing dari dua pesanan dalam data, dan menggabungkannya dengan ID pesanan yang sesuai ke dalam sebuah objek untuk memperbarui total harga pesanan, kita dapat mengkonfigurasinya sebagai berikut:

Contoh - Konfigurasi Parsing SQL

  1. Pilih mesin parsing JSONata;
  2. Pilih hasil dari node SQL sebagai sumber data;
  3. Gunakan ekspresi JSONata $[0].{"id": id, "total": products.(price * quantity)} untuk parsing;
  4. Pilih pemetaan properti untuk memetakan id dan total ke variabel anak;

Hasil parsing akhirnya adalah sebagai berikut:

[
  {
    "id": 1,
    "total": 340
  },
  {
    "id": 2,
    "total": 410
  }
]

Setelah itu, lakukan perulangan pada array pesanan yang dihasilkan untuk memperbarui total harga pesanan.

Perbarui total harga pesanan yang sesuai