JSON DAT

پرش به ناوبری | پرش به جستجو

خلاصه (Summary)

اپراتور JSON DAT متن JSON را با استفاده از نحو JSONPath تبدیل و فیلتر می‌کند و نتایج فیلتر شده را خروجی می‌دهد.
این DAT نیاز به نوشتن اسکریپت برای پارس و دستکاری JSON را حذف می‌کند و جریان داده را به صورت رویه‌ای (procedural) حفظ می‌کند.

  • ورودی این DAT باید متن JSON باشد و آن را به یک Python object در عضو DAT.source تبدیل می‌کند.

  • سپس JSON را با استفاده از پارامتر JSONPath Filter فیلتر می‌کند و داده حاصل را به صورت متن JSON خروجی می‌دهد.

  • نتایج فیلتر شده نیز به صورت DAT.results (یک لیست پایتون از نتایج) و DAT.result (اولین نتیجه) ذخیره می‌شوند.

می‌توانید عبارت‌ها را روی DAT.source، DAT.result و DAT.results تست کنید، با قرار دادن منوی Output روی Expression و استفاده از عباراتی مانند:

me.result['city']

که مقدار ارزیابی شده از DAT را خروجی می‌دهد.
می‌توانید سپس از این عبارت به شکل:

op('json1').result['city']

در جای دیگر استفاده کنید.
DAT.expr نیز عضوی از JSON DAT است، مثلاً:

op('json1').expr

مقدار پارامتر عبارت ارزیابی شده را بازمی‌گرداند.

خروجی جدول‌ها (Output tables):
JSON DAT می‌تواند جدول خروجی بدهد با قرار دادن منوی Output Format روی Table.
این DAT تلاش می‌کند نتیجه فیلتر JSON را به ردیف‌ها و ستون‌هایی از مقادیر و عنوان‌ها تبدیل کند.
هر سلولی که نتوان به صورت رشته ساده، عدد صحیح، عدد اعشاری یا Boolean بیان کرد، به صورت رشته JSON باقی می‌ماند.
یک سلول یا محدوده‌ای از سلول‌ها می‌تواند با Select DAT کاهش یابد و سپس به JSON DAT دیگری داده شود تا رشته‌های JSON به جدول تبدیل شوند.

ارجاع‌ها: JSONPath، OP Snippets و توابع TDJSON برای تبدیل و دستکاری داده‌های JSON.

jsonDAT_Class


فهرست مطالب (Contents)

  1. Summary

  2. Parameters – JSON Page

  3. Parameters – Common Page

  4. Operator Inputs

  5. Info CHOP Channels
    5.1. Common DAT Info Channels
    5.2. Common Operator Info Channels


پارامترها – صفحه JSON (Parameters – JSON Page)

Filter (filter)
ـ یک رشته فیلتر با نحو JSONPath که برای فیلتر کردن JSON ورودی استفاده می‌شود.

Output (output)
ـ خروجی JSON DAT را انتخاب کنید.

Expression (expression)
ـ عبارت سفارشی برای خروجی.

Format Output (formatoutput)
ـ وقتی فعال باشد، خروجی DAT با تورفتگی‌ها و خطوط جدید (indents و newlines) قالب‌بندی می‌شود.

Hold Last Non-Empty Results (holdlast)
ـ وقتی فعال باشد، آخرین نتیجه غیرخالی نگه داشته می‌شود اگر نتایج خالی شوند. در عمل فقط نتایج جدید و غیرخالی خروجی را به‌روزرسانی می‌کنند.


پارامترها – صفحه Common (Parameters – Common Page)

Language (language)
ـ انتخاب زبان اسکریپت برای اجرا توسط DAT.

Edit/View Extension (extension)
ـ انتخاب پسوند فایلی که این DAT برای ویرایشگرهای خارجی نمایش دهد.

Custom Extension (customext)
ـ تعیین پسوند سفارشی.

Word Wrap (wordwrap)
ـ فعال کردن شکستن خطوط (Word Wrap) برای نمایش نود.


ورودی‌های اپراتور (Operator Inputs)

Input 0: – ورودی متن JSON


کانال‌های Info CHOP (Info CHOP Channels)

اطلاعات اضافی برای JSON DAT از طریق Info CHOP قابل دسترسی است.

کانال‌های اطلاعات مشترک DAT (Common DAT Info Channels)

  • num_rows – تعداد ردیف‌ها در این DAT.

  • num_cols – تعداد ستون‌ها در این DAT.

کانال‌های اطلاعات مشترک اپراتور (Common Operator Info Channels)

  • total_cooks – تعداد دفعاتی که اپراتور از شروع فرایند Cook شده است.

  • cook_time – مدت زمان آخرین Cook به میلی‌ثانیه.

  • cook_frame – شماره فریم زمانی که این اپراتور آخرین بار نسبت به جدول زمانی کامپوننت Cook شده است.

  • cook_abs_frame – شماره فریم زمانی که این اپراتور آخرین بار نسبت به زمان مطلق Cook شده است.

  • cook_start_time – زمان شروع Cook اپراتور در همان فریم به میلی‌ثانیه.

  • cook_end_time – زمان پایان Cook اپراتور در همان فریم به میلی‌ثانیه.

  • cooked_this_frame – ۱ اگر اپراتور در این فریم Cook شده باشد.

  • warnings – تعداد هشدارهای موجود در این اپراتور در صورت وجود.

  • errors – تعداد خطاهای موجود در این اپراتور در صورت وجود.