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

Pemicu

Ikhtisar
Peristiwa Tabel Data
Tugas Terjadwal
Peristiwa Sebelum Aksi
Peristiwa Setelah Aksi
Peristiwa Aksi Kustom
Persetujuan
Webhook

Node

Ikhtisar

AI

LLM

Kontrol Alur

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

Kalkulasi

Kalkulasi
Kalkulasi Tanggal
Kalkulasi JSON

Operasi Data

Tambah Data
Perbarui Data
Kueri Data
Hapus Data
Operasi SQL

Penanganan Manual

Penanganan Manual
Persetujuan
Tembusan (CC)

Perluas Tipe

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

Pengembangan Ekstensi

Ikhtisar
Perluas Tipe Pemicu
Perluas 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

This feature is provided by the plugin «Alur Kerja: Perhitungan JSON»

#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