گذاشتن یک داشبورد روی صفحهای کشیدهشده
هدف
همان صفحهای را که پیشتر داشبورد بود بسازید — عددها، نمودارها، شبکهای از رکوردها و فرمی برای افزودن یکی — همچون صفحهای که خودتان کشیدهاید.
چرا چنین چیزی هست
داشبورد یعنی کاشی، عدد، نمودار و یکی دو سطح رکوردیِ جاسازیشده. صفحهٔ کشیدهشده دو تای نخست را داشت و دو تای پایانی را نه، پس حالا هر دو را دارد: کنترل نمودار و کنترل نمای جدول یا فرم.
آنچه بیش از داشبوردِ پیشین به دست میآورید این است که چیدمان از آنِ شماست. کاشیها جعبههای معمولیاند، پس هر اندازه و هر رنگی میگیرند و هر حالت کشیدهشدهای برمیدارند؛ و صفحه میتواند ناوبری کند، پوشانه باز کند و دستگیره بدواند، چون یک صفحه است.
آنچه از دست میدهید سازندهٔ پرسوجوی هر کاشی است. عدد اینجا یک loadRecords است، همان خطی که هر
صفحهٔ استودیوی دیگر مینویسد.
عدد یعنی یک پرسوجوی شمارشی
loadRecords("par_ticket", "probe", {
top: 1,
where: { par_status: 100000002 },
countInto: "statusActive"
});
countInto جایی است که شمار ردیفهای همخوان میرود — نه شمار آنچه برگشته. top: 1 همین را
درست نگه میدارد: شمار روی همهچیز است و صفحهای که کسی نمیخواندش تا جای ممکن کوچک است. probe
میدان حالتی است که یک بار اعلامش میکنید و هرگز نگاهش نمیکنید.
سپس متنی بزرگ بکشید و متن آن را به text(state.statusActive) ببندید.
شمردن آنچه خالی است. where فقط برابری را میسنجد، پس «آنهایی که میدانی خالی دارند» گزینهٔ
جداگانهای دارد: empty، فهرستی از میدانهایی که نباید مقداری داشته باشند.
loadRecords("pbo_position", "probe", {
top: 1,
where: { state: 0 },
empty: ["pbo_currentoccupant"],
countInto: "vacant"
});
این جایگاههای باز را میشمارد که کسی در آنها نیست. همان شرط فیلتر «خالی است» در یک نماست، پس کاشی و فهرست کنارش یک عدد را نشان میدهند.
یک نمودار
مؤلفهها ← نمودار را بگذارید. در برگهٔ برنامه:
-
نمودار — میلهای، میلهای انباشته، خطی، سطحی، دایرهای یا حلقهای.
-
مقدار — فهرستی از
{ label, value }:[{ label: "New", value: state.statusNew },{ label: "Active", value: state.statusActive },{ label: "Resolved", value: state.statusResolved }]
نمودار از آنِ سکوست، نه یک نقاشی. این مهمتر از آن است که به گوش میآید: بخش سختِ نمودار انتخاب درجهها، برخورد برچسبها و دادهای است که کسی برایش طراحی نکرده — نتیجهای بیردیف، یک دادهٔ پرت چهارصد برابر بقیه، یا دستهای با نودحرف نام. اینها هر بار که نمودار رسم میشود تصمیم گرفته میشوند. نموداری که خودتان میکشیدید آنها را یک بار و در برابر دادهٔ نمونهٔ پیش رویتان تصمیم میگرفت: در طراح درست و در تولید نادرست.
نوشته را درون کنترل بگذارید. هر متنی که درون نمودار بکشید نام دسترسپذیر آن میشود — بی آن، صفحهخوان تنها «تصویر» میگوید. روی نمودار کشیده نمیشود؛ عنوان دیدنی در پنل بالای آن مینشیند.
محور دوگانه نیست و نخواهد بود. دو سنجه روی دو مقیاس در یک قاب، مقایسهای را دعوت میکند که هندسه پشتیبانیاش نمیکند. دو سنجه با اندازههای متفاوت، دو نمودارند.
شبکه یا فرمی از یک جدول
مؤلفهها ← نمای جدول یا فرم را بگذارید. در برگهٔ برنامه:
| میدان | یعنی |
|---|---|
| نمایش میدهد | ردیفهای یک نما، فرمی برای رکورد تازه، یا فرمی برای یک رکورد |
| جدول | از جدولهای محیط برگزیده میشود — برای پالایش با نام یا نام منطقی تایپ کنید |
| نما / فرم | از نماها یا فرمهای همان جدول برگزیده میشود، یا پیشفرض جدول |
آنچه پدیدار میشود خودِ چیز است: شبکهٔ مدلمحور با مرتبسازی، صفحهبندی، انتخاب ستون و دسترسیهای هر رکوردِ خودش؛ یا فرم ایجاد سریع خود جدول با قاعدههای الزامی و گامهای افزونهاش. هیچ کدام دوباره کشیده نشدهاند، و برای همین میدانی که روی جدول الزامی است اینجا هم الزامی است.
فرمی برای یک رکورد رکوردش را از بستِ مقدار میگیرد — یک شناسه، معمولاً از چیزی که کسی در همان صفحه برگزیده است.
گامها
- صفحه را بکشید: یک سرنویس، ردی فی از کاشیها، پنلهایی برای نمودارها و پنلهایی برای سطحها.
- حالت را اعلام کنید — یک میدان برای هر عدد، بهعلاوهٔ
probe. - هر پرسوجوی شمارشی را در دستگیرهٔ بارگذاری صفحه بگذارید، و همان خطها را پشت دکمهٔ تازهسازی.
- نمودارها و سطحها را بگذارید و میدانهایشان را پر کنید.
- به هر شیء قید بدهید تا صفحه پنجره را پر کند — کاشیها پخش شوند و نمودارها و سطحها لبههایشان را نگه دارند.
اول نمونه را وارد کنید
استودیو — داشبورد همین صفحه است، ساختهشده. واردش کنید، افزودن ۲۴ تیکت را بزنید، و هر کنترل را در طراح کنار نتیجهاش در پوسته ببینید.
عیبیابی
- سطح میگوید نمیداند کدام جدول. — میدان جدول خالی است. ذخیره دربارهٔ این هشدار میدهد و ردش نمیکند، تا بتوانید بعدا ً تمامش کنید.
- سطح میگوید چنین جدولی نیست. — جدول از زمانی که برگزیده شد حذف شده، یا برنامه به محیطی وارد شده که آن را ندارد. میدان جدول هنوز نام قدیمی را نشان میدهد؛ جدولی را برگزینید که محیط دارد.
- سطح میگوید این میزبان نمیتواند سطح مدلمحور نشان دهد. — به پیشنمایش طراح نگاه میکنید که هیچ محیطی پشتش نیست. برنامه را در پوسته باز کنید.
- نمودار خالی است. — مقدار آن فهرستی از
{ label, value }نیست. ردیفی که این شکل را ندارد کنار گذاشته میشود نه صفر رسم، پس شکل نادرست همچون میلهای گمشده دیده میشود. - عددها پس از افزودن رکورد تکان نمیخورند. — چیزی پرسوجوها را دوباره ندوانده. آنها را پشت دکمهٔ تازهسازی بگذارید، یا در همان دستگیرهای که رکورد را نوشت دوباره بدوانید.
- عددها تکان خوردند اما شبکهٔ توکار نه. — سطح توکار، شبکه یا فرم خودِ پلتفرم است و پرسوجوی
خودش را دارد؛ پس دوبارهدواندن پرسوجوهای شما به آن دست نمیزند. دستگیره را با
reloadSurfaces()تمام کنید تا هر جدول و فرم توکارِ صفحه دوباره نشان داده شود. این را هم در دستگیرهای که رکوردها را ساخت بیاورید و هم در تازهسازی — بیستوچهار ردیف تازه کنار جدولی خالی، گیجکنندهترین چیزی است که یک داشبورد میتواند نشان دهد.