در نسخهٔ جدید سیستم (5.2)، چندین تغییر اساسی در نحوهٔ تفسیر و پردازش خروجی‌های استاندارد و مقادیر پیش‌فرض پارامترها اعمال شده است که ممکن است رفتار ماژول‌های موجود را تحت تأثیر قرار دهد. تیم‌ توسعهٔ ماژول‌ باید این تغییرات را بررسی کرده و در صورت نیاز ماژول‌های خود را به‌روزرسانی نمایند.

1. 🔁 بازتعریف «خروجی استاندارد»

شرح تغییر:
از نسخهٔ 5.2 به بعد، یک خروجی فقط در صورتی به‌عنوان «استاندارد» شناخته می‌شود که دقیقاً دو ستون با نام‌های Result و Message داشته باشد.

تأثیرات:

  • سیستم دیگر نام‌گذاری ستون‌ها را بر اساس موقعیت (مثلاً "ستون اول = Result، ستون دوم = Message") قبول نمی‌کند.
  • اگر ستون دوم فاقد نام باشد (حتی اگر ستون اول Result باشد)، خروجی به‌عنوان استاندارد شناخته نمی‌شود.
  • خروجی‌های چندسطری بسته به محتوا پذیرفته می‌شوند، ولی معیار اصلی نام ستون‌هاست، نه تعداد ردیف‌ها.

اقدام لازم: تمام ماژول‌ها و سرویس‌هایی که خروجی استاندارد تولید می‌کنند باید خروجی خود را به‌صورت دقیق با دو ستون Result و Message ارائه دهند.

2. ⚠️ بررسی تمام خروجی‌های استاندارد (نه تنها اولی)

شرح تغییر:
در نسخه‌های قبلی، در صورت وجود چند خروجی استاندارد در یک سرویس یا گزارش، فقط اولین خروجی برای تصمیم‌گیری (مثلاً تشخیص موفق یا خطا بودن) مورد استفاده قرار می‌گرفت.
در نسخهٔ 5.2، تمامی خروجی‌های استاندارد بررسی می‌شوند و وجود حتی یک خروجی با Result = Error باعث شکست کلی عملیات می‌شود.

مثال قبل از تغییر:

  • خروجی ۱: Result=OK, Message=""
  • خروجی ۲: Result=Error, Message="..."
    → سیستم: ✅ موفق (فقط خروجی اول در نظر گرفته می‌شد)

مثال پس از تغییر:

  • خروجی ۱: Result=OK
  • خروجی ۲: Result=Error
    → سیستم: ❌ خطا (همه خروجی‌ها بررسی شدند)

اقدام لازم: ماژول‌هایی که چند خروجی استاندارد تولید می‌کنند باید اطمینان حاصل کنند که هیچ‌کدام از خروجی‌ها در شرایط عادی مقدار خطا برنمی‌گردانند، یا این رفتار را به‌صورت عمدی پیاده‌سازی کرده باشند.

3. 🧾 لغو اعمال خودکار مقادیر پیش‌فرض در گزارشات

شرح تغییر:
در نسخه‌های قبلی، در صورتی که کاربر یک فیلد پارامتر را خالی می‌گذاشت، سیستم به‌صورت خودکار مقدار پیش‌فرض آن پارامتر را جایگزین می‌کرد.
در نسخهٔ 5.2، مقادیر پیش‌فرض فقط جنبهٔ راهنمایی یا placeholder دارند و در صورت خالی ماندن فیلد، مقدار null ارسال می‌شود.

تأثیرات:

  • ماژول‌هایی که انتظار دارند مقادیر پیش‌فرض به‌صورت خودکار اعمال شوند، ممکن است با خروجی متفاوت گزارش یا منطق نادرست مواجه شوند.
  • رفتار سیستم اکنون صریح‌تر است: اگر کاربر ورودی ندهد، سیستم مقداری جایگزین نمی‌کند.

اقدام لازم:

  • ماژول‌ها باید مقادیر null را به‌درستی مدیریت کنند.
  • یا در لایهٔ UI/فرانت‌اند، اطمینان حاصل شود که مقادیر پیش‌فرض واقعاً ارسال می‌شوند (مثلاً با فیلد required یا اجباری کردن تکمیل آن).

4. (lightbulb)  آپدیت نسخه استیمول

شرح تغییرات:

در نسخه‌های قبلی، تغییرات مربوط به طراحی فرم‌های پرینت از طریق برنامه مستر انجام می‌شد.

در نسخه 5.2، به دلیل به‌روزرسانی استیمول به آخرین نسخه (که در راستای رفع مشکلات اعلام‌شده انجام شده است)، اعمال تغییرات و اصلاحات مربوط به فرم‌های پرینت تنها از طریق Designer وب امکان‌پذیر خواهد بود.

تأثیرات:

آپدیت استیمول باعث ایجاد تغییراتی در برخی بخش‌های فرم‌های پرینت شده است؛ از جمله:

  • تغییر در چپ‌چین و راست‌چین

  • تفاوت در چیدمان ظاهری برخی المان‌ها

  • سایر تغییرات مرتبط با طراحی فرم

✅ اقدام لازم:

تمامی فرم‌های پرینتی که طراحی ظاهری آن‌ها دچار مشکل شده یا با نسخه قدیمی تفاوت دارند، باید از طریق Designer وب باز شده و اصلاح گردند.

نحوه دسترسی به Designer وب:

  1. ابتدا پرینت موردنظر را در مرورگر باز کنید.

  2. در صورتی که امکان ویرایش مستقیم لینک وجود ندارد، لینک پرینت را کپی کرده و در یک تب جدید باز نمایید.

  3. برای ورود به Designer، کافی است در لینک پرینت، کلمه‌ی print را با designer جایگزین کنید.

نمونه لینک‌ها (پرینت گزارش تبلت):

لینک print:

https://betaapi.mahyadc.com/oauth2/dd8cb695-ab86-44b4-ab57-f4856dfe5833/v2/print/8d743b15-9fc0-4c3c-aac1-06dfeeac5200/report?filters=[[%22lineinfo_id%22,%22equals%22,1],%22and%22,[%22visitorpersoninfo_id%22,%22equals%22,278312],%22and%22,[%22todate%22,%22equals%22,%222023-06-15%22]]&cacheKey=d0a30566-8b33-49dc-a705-c306b58a5568&company=betaweb&cacheKey=d0a30566-8b33-49dc-a705-c306b58a5568

لینک designer:

https://betaapi.mahyadc.com/oauth2/dd8cb695-ab86-44b4-ab57-f4856dfe5833/v2/designer/8d743b15-9fc0-4c3c-aac1-06dfeeac5200/report?filters=[[%22lineinfo_id%22,%22equals%22,1],%22and%22,[%22visitorpersoninfo_id%22,%22equals%22,278312],%22and%22,[%22todate%22,%22equals%22,%222023-06-15%22]]&cacheKey=d0a30566-8b33-49dc-a705-c306b58a5568&company=betaweb&cacheKey=d0a30566-8b33-49dc-a705-c306b58a5568

5. chart increasing  جمع در گرید گزارش های طراحی شده

شرح تغییرات:

در نسخه های قبلی، در گزارش های طراحی شده اگر فیلد جدول داری جمع در گرید میبود در قسمت فوتر گزارش  آورده میشد و نیاز نبود که در گزارش تیک جمع در گرید زده شود.

در نسخه 5.2، فقط در صورتی جمع در گرید محاسبه میشود که در طراحی گزارش تیک جمع در گرید خورده باشد.


6. chart decreasing  Custom Function در گزارشات طراحی شده

شرح تغییرات:

در نسخه های قبلی، در صورتیکه در گزارش طراحی شده ای نیاز به CusomFunction بود بدون اینکه Alias مربوط به ستون ها ذکر شود خروجی گزارش بدون خطا نمایش داده میشد.

در نسخه 5.2، به دلیل بهینه سازی کدهای تولید گزارش، باید هنگام استفاده از CustomFunction ها برای تمام ستون هایی که در کوئری استفاده شده است Alias آن را مشخص نمایید.

تاثیرات:

مشاهده خطا هنگام لود گزارش، یک نمونه خطا برای این مورد به شرح زیر است :

خطا در اجرای گزارش طراحی شده[جزئيات مرخصي].خطایی رخ داده است.این خطا بررسی و رفع خواهد شد.

  • No labels