روز بخیر، خوانندگان عزیز وبلاگ ما! امروز می خواهم با استفاده از یک مثال واقعی به شما بگویم چگونه
از توابع ACS Array و JoinStrings استفاده کنید. در مقاله ای در مورد
اشاره کوچکی به نحوه کار با آن شد
روی نشانک
، همچنین قبلاً توضیح داده شده است
با استفاده از برگه "منابع". امروز بار دیگر به این موارد خواهیم پرداخت
نشانک ها در پرتو موضوع ما.
ظاهر یک گزارش نمونه 1C با استفاده از دو عملکرد ACS آرایهو ConnectRowsبعد:
بیان مشکل برای استفاده از توابع ACS Array و JoinStrings
وظیفه: باید تمام اعداد فروش یک محصول را در یک سلول درج کنید.
چیزی شبیه به: نامگذاری | مقدار | 001، 002 و غیره |
ما از یک درخواست برای ثبت انباشت "تحقق TMZ" استفاده خواهیم کرد.
انتخاب کنید
پیاده سازی TMZ ثبت نام. عدد،
پیاده سازی TMZ نامگذاری،
پیاده سازی TMZ ثبت نام،
پیاده سازی TMZ مقدار گردش مالی
از جانب
ثبت تجمع پیاده سازی TMZ انقلاب
(, , Registrar, ) نحوه پیاده سازی TMZ
ثبت انباشت "تحقق TMZ" هم در پیکربندی حسابداری و هم در پیکربندی مدیریت شرکت تجاری (UTP) وجود دارد. نحوه پیکربندی USP را در عنصر دایرکتوری "Nomenclature" بیاموزید. بنابراین، پس از دانلود، می توانید این گزارش را در هر دو پیکربندی اجرا کنید تا عملکرد آن را بررسی کنید.
اجرای کار با استفاده از توابع SKD Array و ConnectRows
از همان مراحل، اما با مقداری اضافات، برای ایجاد استفاده شد
.
شرح تابع JoinStrings
JoinStrings
برای به هم پیوستن رشته ها به یک رشته استفاده می شود.
نحو:
ConnectRows (Value، ItemSeparator، ColumnSeparator)
گزینه ها:
- معنی- عباراتی که باید در یک خط ترکیب شوند.
اگر آرایه باشد، عناصر آرایه در یک رشته ترکیب می شوند.
اگر یک ValueTable باشد، تمام ستونها و ردیفهای جدول در یک ردیف ترکیب میشوند. - جداکننده عناصر- یک رشته حاوی متنی که باید به عنوان استفاده شود
جداکننده بین عناصر آرایه و ردیف های جدول مقدار. پیش فرض - کاراکتر خوراک خط. - جداکننده های ستون-رشته ای حاوی متنی که باید به عنوان جداکننده استفاده شود
بین ستون های جدول مقادیر پیش فرض ";".
استفاده صحیح از طرح ترکیب داده ها (DCS) به شما امکان می دهد:
- به طور قابل توجهی زمان مورد نیاز برای تهیه گزارش را کاهش دهید.
- از بین بردن نیاز به ایجاد یک کنترل کننده فرم مدیریت شده؛
- یک نتیجه زیبا با امکان سفارشی سازی اضافی توسط کاربر دریافت کنید.
اما همه توسعهدهندگان از قابلیتهای این طرح نهایت استفاده را نمیبرند، زیرا همه تنظیمات آن واضح و شهودی نیستند. به طور خاص، بسیاری از مردم می دانند که در 1C SKD فیلدهای محاسبه شده وجود دارد، با این حال، آنها به طور کامل دامنه استفاده و روش کار با آنها را درک نمی کنند.
فیلد محاسبه شده چیست
در بیشتر موارد، منبع داده در نمودار طرح بندی یک پرس و جو است. در اصل، در خود پرس و جو می توانید از فرمول ها، ساختارها و عبارات مختلفی استفاده کنید. یک سوال طبیعی مطرح می شود: چرا به عملکرد تکراری نیاز داریم؟
واقعیت این است که سیستم کنترل دسترسی چیزی فراتر از نمایش نتیجه یک پرس و جو است و این به وضوح از فرم ایجاد نمودار قابل مشاهده است (شکل 1).
فیلدهای محاسبه شده به شما این امکان را می دهد که اقدامات خاصی را با مجموعه داده های تولید شده انجام دهید:
- خروجی آرایه ای از داده های دریافت شده توسط یک درخواست در یک سلول خاص، ترکیب چندین خط در یک.
- دسترسی به توابع صادرات ماژول عمومی.
- عبارات مختلف موجود برای زبان طرح بندی را اجرا کنید و از توابع ویژه EvaluateExpression استفاده کنید.
بیایید این لیست را مرور کنیم.
آرایه ای از مقادیر در یک سلول
بیایید وضعیتی را شبیه سازی کنیم که در آن لازم است تمام شماره های سند رسید برای طرف مقابل در یک سلول جداگانه دریافت شود:
بنابراین، ما یک فیلد محاسبه اضافی در طرح خود ایجاد کرده ایم.
همانطور که از مثال بالا می بینید، هیچ مشکلی در افزودن و پردازش فیلدهای محاسبه شده وجود ندارد. ما از دو تابع Array() و ConnectRows().
چند کلمه در مورد دومی. علاوه بر اولین پارامتر که نشان دهنده شناسه آرایه، مقادیر یا مقدار است، دو پارامتر دیگر را می توان در آن تنظیم کرد:
- جداکننده عنصر - نشان می دهد که کدام کاراکتر یک عنصر آرایه یا یک ردیف از جدول مقادیر را از دیگری جدا می کند (در مورد ما، ما این پارامتر را حذف کردیم و یک خط شکست به طور پیش فرض اختصاص داده شد).
- Column Separator - کاراکتری که برای جداسازی ستون های جدول مقادیر استفاده می شود (نقطه ویرگول به طور پیش فرض استفاده می شود).
دسترسی به توابع صادرات یک ماژول مشترک
توابع یک ماژول مشترک می تواند به عنوان یک منبع داده برای پر کردن یک فیلد محاسبه شده عمل کند.
چند نکته مهم:
- تابع باید قابل صادرات باشد.
- اگر یک تابع در یک ماژول مشترک با مجموعه ویژگی "Global" قرار دارد، مستقیماً با نام فراخوانی می شود، در غیر این صورت تابع باید طبق طرح "نام ماژول مشترک" فراخوانی شود. "نام تابعی که باید فراخوانی شود."
به عنوان مثال استفاده، ما همان درخواست را برای اسناد دریافت دریافت می کنیم و آن را در یک ستون جداگانه نمایش می دهیم. ما خود درخواست را شرح نمی دهیم؛ بیایید مستقیماً به فیلدهای محاسبه شده برویم:
بنابراین، می بینیم که تقریباً هر پردازشگر داده را می توان از سیستم کنترل دسترسی مقداردهی اولیه کرد، که به طور قابل توجهی امکان استفاده از این طرح را گسترش می دهد.
طرح بندی عبارات زبان
اغلب اوقات در کار یک توسعه دهنده، زمانی که لازم است نتیجه تقسیم در زمینه ACS نمایش داده شود، موقعیتی پیش می آید:
- محاسبه میانگین هزینه کالا؛
- همه نوع علاقه؛
- محاسبات میانگین درآمد و غیره
برای جلوگیری از مشکلات، در این موارد توصیه می شود یک تست برای تقسیم بر 0 در فیلد محاسبه شده وارد کنید.
این را می توان با استفاده از ساختار "انتخاب وقتی .... سپس ... در غیر این صورت ... پایان" انجام داد.
در پایان، چند کلمه در مورد تابع نسبتا جدید CalculateExpression(). با کمک آن، به ویژه، می توانید انحرافات هزینه بین خطوط فعلی و قبلی، تعادل تجمعی و غیره را محاسبه کنید.
فرض کنید می توانید با تعیین مقدار Calculate Expression ("مجموع سند"، "جمع قبلی") در قسمت "Expression"، Document Sum را از خط قبلی درخواست ما دریافت کنید.
با توجه به انتشار آینده 8.2.14، سعی خواهم کرد برخی از عملکردهای جدید سیستم ترکیب داده را شرح دهم.
برای سهولت در ویرایش، نمودار طرح بندی داده ها را ترجیحاً در یک گزارش خارجی باز کنید.
مجموعه داده ای از نوع پرس و جو را اضافه می کنیم و به صورت دستی یا با استفاده از طراح پرس و جو، یک پرس و جو ساده می نویسیم:
1. یک درخواست در سیستم کنترل دسترسی تنظیم کنید.
2. فیلدهای محاسبه شده را در سیستم کنترل دسترسی تنظیم کنید
3. طرح داده ها را در برگه تنظیمات پیکربندی کنید
4. 1C Enterprise 8.2.14 را راه اندازی کنید. گزارش را باز کنید شکل می دهیم، دریافت می کنیم.
شرح خود توابع جدید:
1. تاریخ فعلی ()
تاریخ سیستم را برمی گرداند. هنگام نوشتن طرحبندی، در تمام عباراتی که در طرحبندی وجود دارد، تابع CurrentDate() با مقدار تاریخ جاری جایگزین میشود.
2. COMPUTEEXPRESSION()
نحو:
CalculateExpression(,)
شرح:
این تابع برای ارزیابی یک عبارت در زمینه گروه بندی طراحی شده است.
این تابع انتخاب گروه بندی ها را در نظر می گیرد، اما انتخاب های سلسله مراتبی را در نظر نمی گیرد.
این تابع را نمی توان برای یک گروه بندی در انتخاب گروه آن گروه بندی اعمال کرد. به عنوان مثال، در انتخاب گروه بندی Nomenclature، نمی توانید از عبارت استفاده کنید CalculateExpression("Sum(SumTurnover)"، "TotalTotal") > 1000. اما چنین عبارتی را می توان در انتخاب سلسله مراتبی استفاده کرد.
اگر رکورد پایانی قبل از رکورد شروع باشد، در نظر گرفته می شود که هیچ رکوردی برای محاسبه داده های دقیق و محاسبه توابع جمع وجود ندارد.
هنگام محاسبه عبارات بازه ای برای کل کل (پارامتر Grouping روی GrandTotal تنظیم شده است)، فرض می شود که هیچ رکوردی برای محاسبه داده های دقیق و محاسبه توابع جمع وجود ندارد.
پیوند دهنده چیدمان هنگام تولید یک عبارت تابع CalculateExpression، اگر عبارت ترتیب شامل فیلدهایی باشد که نمی توان از آنها در گروه بندی استفاده کرد، تابع را جایگزین می کند CalculateExpressionبر خالی.
گزینه ها
نوع: خط. عبارتی که باید ارزیابی شود.
نوع: خط. شامل نام گروهی است که عبارت باید در زمینه آن ارزیابی شود. اگر یک رشته خالی به عنوان نام گروه بندی استفاده شود، محاسبه در زمینه گروه بندی فعلی انجام می شود. اگر از رشته GeneralTotal به عنوان نام گروه استفاده شود، محاسبه در زمینه کل کل انجام می شود. در غیر این صورت، محاسبه در زمینه گروه مادر با همین نام انجام می شود.
مثلا:
Sum(Sales.SumTurnover)/Calculate("Sum(Sales.SumTurnover)"، "Total")
در این مثال، نتیجه نسبت مجموع فیلدها خواهد بود فروش.میزان گردش مالیگروه بندی رکوردها به مجموع همان فیلد در کل طرح.
نوع: خط. پارامتر می تواند مقادیر زیر را بگیرد:
· کل کل- عبارت برای تمام رکوردهای گروه بندی محاسبه می شود.
· سلسله مراتب- این عبارت برای رکورد سلسله مراتبی والد، در صورت وجود یکی، و برای کل گروه بندی، اگر رکورد سلسله مراتبی والد وجود نداشته باشد، ارزیابی می شود.
· گروه بندی- عبارت برای رکورد گروه بندی گروه فعلی ارزیابی می شود.
· GroupingNonResource- هنگام محاسبه یک تابع برای یک رکورد گروهی توسط منابع، عبارت برای اولین رکورد گروه از گروه بندی اصلی محاسبه می شود.
هنگام محاسبه یک تابع CalculateExpression() با معنی GroupingNonResourceبرای رکوردهای گروهی که توسط منابع گروه بندی نمی شوند، تابع به همان روشی محاسبه می شود که اگر مقدار پارامتر برابر با مقدار باشد محاسبه می شود. گروه بندی.
سازنده طرحبندی ترکیب داده، هنگام تولید یک طرحبندی ترکیب داده، هنگام خروجیدادن فیلد منبعی که توسط آن گروهبندی در طرحبندی انجام میشود، عبارتی را در طرحبندی قرار میدهد که با استفاده از تابع محاسبه میشود. CalculateExpression() ، پارامتر را نشان می دهد GroupingNonResource. برای سایر منابع، عبارات معمول منابع در گروه بندی منابع قرار می گیرند.
نوع: خط. نشان می دهد که قطعه باید از کدام رکورد شروع شود، توابع بیان جمع باید محاسبه شوند، و از کدام رکورد برای به دست آوردن مقادیر فیلد خارج از توابع انبوه. مقدار می تواند یکی از موارد زیر باشد:
· اولین
· آخرین (آخرین)
· قبلی
· بعدی (بعدی)
· جاری
· LimitingValue(BoundaryValue) LimitingValue
نوع: خط. نشان می دهد که قطعه باید به کدام رکورد ادامه داده شود، که در آن توابع جمع عبارت باید محاسبه شود. مقدار می تواند یکی از موارد زیر باشد:
· اولین. کسب اولین رکورد گروه بندی ضروری است. بعد از کلمه داخل پرانتز می توانید عبارتی را مشخص کنید که نتیجه آن از ابتدای گروه بندی به عنوان یک افست استفاده می شود. مقدار حاصل باید یک عدد صحیح بزرگتر از صفر باشد. برای مثال First(3) - دریافت رکورد سوم از ابتدای گروه بندی.
اگر رکورد اول خارج از گروه بندی باشد، در نظر گرفته می شود که هیچ رکوردی وجود ندارد. به عنوان مثال، اگر 3 رکورد وجود دارد، و شما می خواهید First(4) را دریافت کنید، در نظر گرفته می شود که هیچ رکوردی وجود ندارد.
· آخرین (آخرین). شما باید آخرین رکورد گروه بندی را دریافت کنید. بعد از کلمه داخل پرانتز، می توانید عبارتی را مشخص کنید که نتیجه آن به عنوان یک افست از انتهای گروه بندی استفاده می شود. مقدار حاصل باید یک عدد صحیح بزرگتر از صفر باشد. به عنوان مثال، Last(3) - دریافت رکورد سوم از پایان گروه.
اگر آخرین رکورد خارج از گروه بندی باشد، در نظر گرفته می شود که هیچ رکوردی وجود ندارد. به عنوان مثال، اگر 3 رکورد وجود دارد، و شما می خواهید آخرین (4) را دریافت کنید، در نظر گرفته می شود که هیچ رکوردی وجود ندارد.
· قبلی. باید رکورد گروه بندی قبلی را بدست آورید. بعد از کلمه داخل پرانتز، میتوانید عبارتی را مشخص کنید که نتیجه آن به عنوان یک برگشت از رکورد گروهبندی فعلی استفاده میشود. به عنوان مثال، Previous(2) - گرفتن قبلی از رکورد قبلی.
اگر رکورد قبلی فراتر از گروه بندی باشد (به عنوان مثال، برای رکورد گروه بندی دوم باید Previous(3) را دریافت کنید)، اولین رکورد گروه بندی به دست می آید.
هنگام بازیابی رکورد قبلی برای کل گروه بندی، در نظر گرفته می شود که اولین رکورد به دست آمده است.
· بعدی (بعدی). باید رکورد گروه بندی بعدی را دریافت کنید. بعد از کلمه داخل پرانتز، می توانید عبارتی را مشخص کنید که نتیجه آن به عنوان یک افست به جلو از رکورد گروه بندی فعلی استفاده می شود. به عنوان مثال، Next(2) - گرفتن بعدی از رکورد بعدی.
اگر رکورد بعدی فراتر از گروه بندی باشد، در نظر گرفته می شود که هیچ رکوردی وجود ندارد. به عنوان مثال، اگر 3 ورودی وجود داشته باشد و ورودی سوم () Next را دریافت کند، در نظر گرفته می شود که هیچ ورودی وجود ندارد.
هنگامی که رکورد بعدی برای کل گروه بندی دریافت می شود، در نظر گرفته می شود که رکوردی وجود ندارد.
· جاری. شما باید رکورد فعلی را بدست آورید.
هنگام بازیابی برای کل گروه بندی، اولین رکورد به دست می آید.
· LimitingValue(BoundaryValue). نیاز به به دست آوردن رکورد با مقدار مشخص شده. بعد از کلمه LimitingValueدر پرانتز شما باید عبارتی را که می خواهید قطعه را با مقدار آن شروع کنید، اولین فیلد سفارش را مشخص کنید.
اولین رکوردی که مقدار فیلد سفارشی آن بزرگتر یا مساوی با مقدار مشخص شده باشد به عنوان رکورد برگردانده می شود. به عنوان مثال، اگر از فیلد Period به عنوان فیلد سفارش استفاده می شود و دارای مقادیر 01/01/2010، 02/01/2010، 03/01/2010 است و می خواهید دریافت کنید. LimitingValue(DateTime(2010, 1, 15))، سپس رکوردی با تاریخ 1389/02/01 دریافت خواهد شد.
نوع: خط. عباراتی را فهرست می کند که با کاما از هم جدا شده اند و قوانین ترتیب را توصیف می کنند. اگر مشخص نشده باشد، ترتیب به همان روشی انجام می شود که برای گروه بندی که عبارت برای آن ارزیابی می شود. بعد از هر عبارت می توانید یک کلمه کلیدی را مشخص کنید سن(برای سفارش به ترتیب صعودی) نزولی(برای سفارش به ترتیب نزولی) و سفارش خودکار(برای مرتب کردن فیلدهای مرجع بر اساس فیلدهایی که می خواهید شی ارجاع شده را با آنها مرتب کنید). کلمه سفارش خودکارمی تواند مانند کلمه استفاده شود سن، بنابراین با کلمه نزولی.
نوع: خط. همانند پارامتر مرتب سازی. برای سازماندهی رکوردهای سلسله مراتبی استفاده می شود. اگر مشخص نشده باشد، سازنده layout ترتیب را مطابق با ترتیب مشخص شده در پارامتر ایجاد می کند. مرتب سازی.
نوع: خط. قاعده ای را برای تعیین رکورد قبلی یا بعدی در مواردی که چندین رکورد با مقدار سفارش یکسان وجود دارد، مشخص می کند:
· بصورت جداگانهنشان می دهد که یک دنباله از رکوردهای مرتب شده برای تعیین رکوردهای قبلی و بعدی استفاده می شود. مقدار پیش فرض.
· با یکدیگرنشان می دهد که رکوردهای قبلی و بعدی بر اساس مقادیر عبارات ترتیب تعیین می شوند.
به عنوان مثال، اگر دنباله حاصل بر اساس تاریخ مرتب شده باشد:
№ | تاریخ | نام و نام خانوادگی | معنی |
1 | 01 ژانویه 2001 |
ایوانف ام. |
10 |
2 | 02 ژانویه 2001 | پتروف اس. | 20 |
3 | 03 ژانویه 2001 | سیدوروف آر. | 30 |
4 | 04 ژانویه 2001 | پتروف اس. | 40 |
بصورت جداگانه، این که:
§ ورودی قبلی به ورودی 3 ورودی 2 خواهد بود.
فعلی، جاری(بر این اساس، پارامترها شروع کنیدو پایان) سپس برای رکورد 2 این قطعه شامل یک رکورد 2 می شود. عبارت برابر با 20 خواهد بود.
اگر مقدار پارامتر باشد با یکدیگر، این که:
§ ورودی قبلی به ورودی 3 ورودی 1 خواهد بود.
§ اگر قطعه محاسبه به صورت تعریف شده باشد فعلی، جاری(بر این اساس، پارامترها شروع کنیدو پایان) سپس برای رکورد 2 این قطعه شامل رکوردهای 2 و 3 خواهد بود CalculateExpression("Sum(Value)", Current, Current)برابر 50 خواهد بود.
هنگام تعیین مقدار پارامتر برابر با با یکدیگر، در پارامترها شروع کنیدو پایانشما نمی توانید یک افست برای موقعیت ها مشخص کنید اول، آخرین، قبلی، بعدی.
CalculateExpression("Sum(SumTurnover)"، "First"، "Current")
اگر می خواهید مقدار گروه بندی را در خط قبلی بدست آورید، می توانید از عبارت زیر استفاده کنید:
CalculateExpression ("نرخ"، "قبلی")
فهرست کنید جدیدکارکرد:CalculateExpressionWithGroupArray(,) -
تابع آرایه ای را برمی گرداند که هر عنصر آن حاوی نتیجه ارزیابی یک عبارت برای گروه بندی بر اساس فیلد مشخص شده است.
CalculateExpressionWithGroupValueTable(,) -
تابع جدولی از مقادیر را برمیگرداند که هر ردیف آن حاوی نتیجه ارزیابی عبارات برای گروهبندی بر اساس فیلد مشخص شده است.
ValueFilled() - اگر مقدار غیر از مقدار پیشفرض این نوع، غیر از NULL، غیر از یک مرجع خالی، غیر از Undefined باشد، مقدار True را برمیگرداند. مقادیر بولی برای مقادیر NULL بررسی می شوند. رشته ها برای عدم وجود کاراکترهای بدون فاصله بررسی می شوند
قالب(، ) - یک رشته فرمت شده از مقدار ارسال شده را دریافت کنید. رشته قالب مطابق با رشته قالب سیستم 1C: Enterprise تنظیم شده است.
رشته فرعی(, , ) - این تابع برای استخراج یک زیر رشته از یک رشته طراحی شده است.
طول خط() - تابع برای تعیین طول یک رشته طراحی شده است. پارامتر یک عبارت رشته ای است
خط() - اگر آرایه ای به عنوان پارامتر ارسال شود، تابع رشته ای را برمی گرداند که حاوی نمایش رشته ای از تمام عناصر آرایه است که با کاراکترهای ";" از هم جدا شده اند. اگر جدولی از مقادیر بهعنوان پارامتر ارسال شود، تابع رشتهای حاوی نمایشهای رشتهای از تمام ردیفهای جدول مقادیر را برمیگرداند که نمایشهای سلولی هر ردیف با کاراکترهای «;» و ردیفها با یک خط جدید از هم جدا شدهاند. شخصیت. اگر نمایش رشته یک عنصر خالی باشد، یک رشته به جای نمایش آن نمایش داده می شود.
1. محاسبه (Eval)- در نظر گرفته شده برای ارزیابی یک عبارت در زمینه برخی از گروه بندی. این تابع برای سازگاری با نسخه های قبلی پلت فرم استفاده می شود. توصیه می شود به جای آن از تابع CalculateExpression استفاده کنید.
نحو:
محاسبه (بیان، گروه بندی، نوع محاسبه)
گزینه ها :
- اصطلاح(خط). شامل یک عبارت محاسبه شده است.
- گروه بندی(خط). شامل نام گروهی است که عبارت باید در زمینه آن ارزیابی شود. اگر یک رشته خالی به عنوان نام گروه بندی استفاده شود، محاسبه در زمینه گروه بندی فعلی انجام می شود. اگر رشته GrandTotal به عنوان نام گروه استفاده شود، محاسبه در زمینه کل کل انجام می شود. در غیر این صورت، محاسبه در زمینه گروه مادر با همین نام انجام می شود.
مثلا:
جمع (Sales.SumTurnover) / محاسبه ("Sum(Sales.SumTurnover)"، "Total").
در این مثال، نتیجه نسبت مقدار فیلد «Sales.AmountTurnover» رکورد گروهبندی به مقدار همان فیلد در کل طرحبندی خواهد بود. - نوع محاسبه(خط). اگر این پارامتر روی "TotalTotal" تنظیم شود، عبارت برای تمام رکوردهای گروه بندی محاسبه می شود. اگر مقدار پارامتر "گروه بندی" باشد، مقادیر برای رکورد گروه گروه بندی فعلی محاسبه می شود.
نحو:
CalculateExpression(Expression، Grouping، CalculationType، Start، End، Sort، HierarchicalSort، ProcessingIdenticalOrderValues)
گزینه ها :
- اصطلاح(خط). شامل یک عبارت محاسبه شده است.
- گروه بندی(خط). شامل نام گروهی است که عبارت باید در زمینه آن ارزیابی شود. اگر یک رشته خالی به عنوان نام گروه بندی استفاده شود، محاسبه در زمینه گروه بندی فعلی انجام می شود. اگر رشته GrandTotal به عنوان نام گروه استفاده شود، محاسبه در زمینه کل کل انجام می شود. در غیر این صورت، محاسبه در زمینه گروه بندی والد با آن نام انجام می شود.
- نوع محاسبه(خط). اگر این پارامتر روی "TotalTotal" تنظیم شود، عبارت برای تمام رکوردهای گروه بندی محاسبه می شود. اگر مقدار پارامتر "گروه بندی" باشد، مقادیر برای رکورد گروه گروه بندی فعلی محاسبه می شود. اگر پارامتر روی "گروه بندی غیر منبع" تنظیم شود، هنگام محاسبه تابع برای یک رکورد گروهی بر اساس منبع، عبارت برای اولین رکورد گروهی گروه بندی اصلی ارزیابی می شود. هنگام ارزیابی تابع CalculateExpression با مقدار "GroupingNonResource" برای رکوردهای گروهی که بر اساس منبع گروه بندی نمی شوند، تابع به همان روشی ارزیابی می شود که با مقدار پارامتر "گروه بندی" ارزیابی می شود. سازنده طرحبندی ترکیب داده، هنگام تولید یک طرحبندی ترکیب داده هنگام خروجی یک فیلد - منبعی که توسط آن گروهبندی انجام میشود، به طرحبندی، یک عبارت محاسبهشده با استفاده از تابع CalculateExpression با پارامتر «GroupingNon-Resource» مشخص شده را به چیدمان خروجی میدهد. برای سایر منابع گروه بندی شده بر اساس منبع، عبارات منبع عادی برگردانده می شوند. اگر پارامتر روی "سلسله مراتب" تنظیم شده باشد، در صورت وجود رکورد سلسله مراتبی والد، و اگر رکورد سلسله مراتبی والد وجود ندارد، عبارت باید برای کل گروه بندی ارزیابی شود. سازنده layout، هنگام تولید عبارتی برای % در فیلد Hierarchy Group، عبارتی را تولید می کند که حاوی رابطه عبارت منبع با تابع CalculateExpression برای عبارت منبعی است که برای گروه بندی فعلی با نوع محاسباتی Hierarchy محاسبه می شود.
- شروع کنید. نشان می دهد که قطعه باید از کدام رکورد شروع شود، توابع بیان جمع باید محاسبه شوند، و از کدام رکورد برای به دست آوردن مقادیر فیلد خارج از توابع انبوه. رشته ای حاوی یکی از:
- "اولین" کسب اولین رکورد گروه بندی ضروری است. بعد از کلمه داخل پرانتز می توانید عبارتی را مشخص کنید که نتیجه آن از ابتدای گروه بندی به عنوان یک افست استفاده می شود. مقدار حاصل باید یک عدد صحیح بزرگتر از صفر باشد. به عنوان مثال First(3) – دریافت سومین رکورد از ابتدای گروه بندی. اگر رکورد اول خارج از گروه بندی باشد، در نظر گرفته می شود که هیچ رکوردی وجود ندارد. به عنوان مثال، اگر 3 رکورد وجود دارد، و شما می خواهید First(4) را دریافت کنید، در نظر گرفته می شود که هیچ رکوردی وجود ندارد.
- "آخر" شما باید آخرین رکورد گروه بندی را دریافت کنید. بعد از کلمه داخل پرانتز، می توانید عبارتی را مشخص کنید که نتیجه آن به عنوان یک افست از انتهای گروه بندی استفاده می شود. مقدار حاصل باید یک عدد صحیح بزرگتر از صفر باشد. به عنوان مثال، Last(3) - دریافت سومین رکورد از پایان گروه. اگر آخرین رکورد خارج از گروه بندی باشد، در نظر گرفته می شود که هیچ رکوردی وجود ندارد. به عنوان مثال، اگر 3 رکورد وجود دارد، و شما می خواهید آخرین (4) را دریافت کنید، در نظر گرفته می شود که هیچ رکوردی وجود ندارد.
- "قبلی" باید رکورد گروه بندی قبلی را بدست آورید. بعد از کلمه داخل پرانتز، میتوانید عبارتی را مشخص کنید که نتیجه آن به عنوان یک برگشت از رکورد گروهبندی فعلی استفاده میشود. به عنوان مثال، Previous(2) - گرفتن قبلی از رکورد قبلی. اگر رکورد قبلی خارج از گروه بندی باشد (به عنوان مثال، رکورد گروه بندی دوم نیاز به گرفتن Previous(3) دارد)، اولین رکورد گروه بندی به دست می آید. هنگام دریافت رکورد قبلی برای کل گروه بندی، اولین رکورد به دست می آید.
- "بعد" باید رکورد گروه بندی بعدی را دریافت کنید. بعد از کلمه داخل پرانتز، می توانید عبارتی را مشخص کنید که نتیجه آن به عنوان یک افست به جلو از رکورد گروه بندی فعلی استفاده می شود. به عنوان مثال، Next(2) - گرفتن بعدی از رکورد بعدی. اگر رکورد بعدی فراتر از گروه بندی باشد، در نظر گرفته می شود که هیچ رکوردی وجود ندارد. به عنوان مثال، اگر 3 ورودی وجود داشته باشد و ورودی سوم Next را دریافت کند، در نظر گرفته می شود که هیچ ورودی وجود ندارد. هنگامی که رکورد بعدی برای کل گروه بندی دریافت می شود، در نظر گرفته می شود که رکوردی وجود ندارد.
- "جاری". شما باید رکورد فعلی را بدست آورید. هنگام بازیابی برای کل گروه بندی، اولین رکورد به دست می آید.
- "BoundaryValue". نیاز به به دست آوردن رکورد با مقدار مشخص شده. بعد از کلمه LimitingValue در پرانتز، باید عبارتی را که میخواهید قطعه را با مقدار آن شروع کنید، اولین فیلد مرتبسازی را مشخص کنید. اولین رکوردی که مقدار فیلد سفارشی آن بزرگتر یا مساوی با مقدار مشخص شده باشد به عنوان رکورد برگردانده می شود. برای مثال، اگر از فیلد Period به عنوان فیلد سفارش استفاده می شود و دارای مقادیر 01/01/2010، 02/01/2010، 03/01/2010 است و می خواهید LimitingValue(DateTime(2010) را دریافت کنید. ، 1، 15))، سپس رکوردی با تاریخ 02/01 به دست می آید. 2010.
- پایان. نشان می دهد که قطعه باید به کدام رکورد ادامه داده شود، که در آن عبارت جمع باید محاسبه شود. رشته ای حاوی یکی از:
- "اولین"
- "آخر"
- "قبلی"
- "بعد"
- "جاری".
- "BoundaryValue".
- مرتب سازی. رشتهای که عباراتی را که با کاما از هم جدا شدهاند، فهرست میکند و دنباله باید در جهت آن مرتب شود. اگر مشخص نشده باشد، ترتیب به همان روشی انجام می شود که برای گروه بندی که عبارت برای آن ارزیابی می شود. بعد از هر عبارت، میتوانید کلیدواژه Ascending، برای مرتبسازی به ترتیب صعودی، Descending، برای مرتبسازی به ترتیب نزولی، Auto-Ordering، برای مرتبسازی فیلدهای مرجع بر اساس فیلدیهایی که میخواهید شی مورد ارجاع را با آن مرتب کنید، تعیین کنید. کلمه Auto Order هم با کلمه Ascending و هم با کلمه Descending قابل استفاده است.
- مرتب سازی سلسله مراتبی. مشابه مرتب سازی. برای سازماندهی رکوردهای سلسله مراتبی استفاده می شود. اگر مشخص نشده باشد، ترکیبکننده layout ترتیب را طبق ترتیب مشخص شده در پارامتر Sort ایجاد میکند.
- پردازش مقادیر مشابه سفارش. رشته ای حاوی یکی از:
- "با هم" به این معنی است که دنباله ای از رکوردهای مرتب شده برای تعیین رکوردهای قبلی و بعدی استفاده می شود.
- "به طور جداگانه" به این معنی است که رکوردهای قبلی و بعدی بر اساس مقادیر عبارات ترتیب تعیین می شوند.
1. 01 ژانویه 2001 Ivanov M. 10
2. 02 ژانویه 2001 Petrov S. 20
3. 02 ژانویه 2001 سیدوروف R. 30
4. 03 ژانویه 2001 Petrov S. 40
هنگام استفاده از پردازش مقادیر یکسان از ترتیب "به طور جداگانه"، قبلی برای رکورد 3 رکورد 2 خواهد بود و هنگام استفاده از "Together" - رکورد 1. و قطعه برای رکورد فعلی برای رکورد 2 برای "به طور جداگانه" رکورد 2 و برای "Together" - رکوردهای 2 و 3 خواهد بود. بنابراین، مجموع رکورد فعلی برای "Separately" 20 و برای "Together" - 50 خواهد بود. وقتی "Together" در Start و پارامترهای پایان، نمی توانید برای موقعیت های "اول"، "آخرین"، "قبلی"، "بعدی" یک افست تعیین کنید. مقدار پیش فرض "جدا" است.
به دست آوردن نسبت مبلغ برای قسمت "Sales.AmountTurnover" یک رکورد گروه بندی به مقدار همان فیلد در کل طرح بندی:
Sum(Sales.SumTurnover) / CalculateExpression("Sum(Sales.SumTurnover)"، "Total").
این مثال مقدار سلسله مراتب فعلی را محاسبه می کند:
انتخاب
وقتی Level() > 0
سپس EvaluateExpression ("مرجع"، "سلسله مراتب")
در غیر این صورت پوچ
پایان
یادداشت:
این تابع انتخاب گروه بندی ها را در نظر می گیرد، اما انتخاب های سلسله مراتبی را در نظر نمی گیرد. این تابع را نمی توان برای یک گروه بندی در انتخاب گروه آن گروه بندی اعمال کرد. به عنوان مثال، در انتخاب گروه بندی Nomenclature، نمی توانید از عبارت CalculateExpression("Sum(SumTurnover)", "TotalTotal") > 1000 استفاده کنید. اما چنین عبارتی را می توان در انتخاب سلسله مراتبی استفاده کرد. اگر رکورد پایانی قبل از رکورد شروع باشد، در نظر گرفته می شود که هیچ رکوردی برای محاسبه داده های دقیق و محاسبه توابع جمع وجود ندارد. هنگام محاسبه عبارات بازه برای یک کل کل (پارامتر Grouping روی "GrossTotal" تنظیم شده است)، فرض می شود که هیچ رکوردی برای محاسبه داده های دقیق و محاسبه توابع جمع وجود ندارد. هنگام تولید یک عبارت برای تابع CalculateExpression، ترکیبکننده layout، اگر عبارت ترتیبی حاوی فیلدهایی باشد که نمیتوان از آنها در گروهبندی استفاده کرد، تابع CalculateExpression را با NULL جایگزین میکند.
3. ارزیابی بیان با آرایه گروهی (EvalExpression با آرایه گروهی) - تابع آرایه ای را برمی گرداند که هر عنصر آن حاوی نتیجه محاسبه یک عبارت برای گروه بندی بر اساس فیلد مشخص شده است.
نحو:
CalculateExpressionWithGroupArray (Expression، GroupFieldExpressions، SelectRecords، SelectGroups)
گزینه ها :
- اصطلاح(رشته) - عبارتی که باید ارزیابی شود. به عنوان مثال، "Amount(AmountTurnover)"؛
- FieldExpressionsGroups
- انتخاب رکوردها
- انتخاب گروه بندی ها- انتخاب برای رکوردهای گروه اعمال می شود. به عنوان مثال: "Amount(AmountTurnover) > &Parameter1".
Maximum(CalculateExpressionWithGroupArray("Amount(AmountTurnover)"، "Counterparty"));
سازنده layout، هنگام تولید عباراتی برای نمایش یک فیلد سفارشی که عبارت آن فقط شامل تابع CalculateArrayWithGroup است، عبارت خروجی را به گونه ای تولید می کند که داده های نمایش و داده ها مرتب شوند.
به عنوان مثال، برای یک فیلد سفارشی با عبارت:
CalculateExpressionWithGroupArray("Amount(AmountTurnover)"، "Counterparty")
سازنده layout عبارت زیر را برای خروجی ایجاد می کند:
ConnectRows(Array(Order(CalculateExpressionWithGroupingValueTable("View(Sum(DataSet.AmountTurnover))، Amount(DataSet.AmountTurnover)"، "DataSet.Account")، "2"))
4. محاسبه عبارت با GroupValueTable (EvalExpressionWithGroupValueTable) - تابع جدولی از مقادیر را برمی گرداند که هر عنصر آن حاوی نتیجه محاسبه یک عبارت برای گروه بندی بر اساس فیلد مشخص شده است.
نحو:
CalculateExpressionWithGroupValueTable (عبارت، عبارات GroupField، انتخاب رکوردها، انتخاب گروه)
گزینه ها :
- اصطلاح(رشته) - عبارتی که باید ارزیابی شود. یک خط می تواند شامل چندین عبارت باشد که با کاما از هم جدا شده اند. بعد از هر عبارت ممکن است یک کلمه کلیدی اختیاری AS و نام ستون جدول مقدار وجود داشته باشد. به عنوان مثال: "طرف مقابل، مبلغ (مبلغ گردش مالی) به عنوان حجم فروش."
- FieldExpressionsGroups- عبارات فیلدهای گروه بندی که با کاما از هم جدا شده اند. به عنوان مثال، "Counterparty، Party"؛
- انتخاب رکوردها- عبارتی که برای رکوردهای جزئیات اعمال می شود. به عنوان مثال، "پرچم حذف = نادرست." اگر این پارامتر از یک تابع تجمیع استفاده کند، هنگام ترکیب داده ها خطایی رخ می دهد.
- انتخاب گروه بندی ها- انتخاب برای رکوردهای گروه اعمال می شود. به عنوان مثال: "Amount(AmountTurnover) > &Parameter1".
محاسبه بیان با جدول گروه بندی مقادیر ("حساب به عنوان طرف مقابل، مبلغ (مبلغ گردش مالی) به عنوان حجم فروش، "حساب")
نتیجه این تابع جدولی از مقادیر با ستون های Counterparty و Sales Volume خواهد بود که شامل طرف مقابل با حجم فروش آنها خواهد بود.
ترکیبکننده layout، هنگام ایجاد یک طرح، پارامترهای تابع را به فیلدهای طرحبندی ترکیب دادهها تبدیل میکند. به عنوان مثال، قسمت Account به DataSet.Account تبدیل می شود.
به عنوان مثال، یک فیلد سفارشی با عبارت:
CalculateExpressionWithGroupValueTable("حساب، مبلغ(مبلغ گردش)"، "حساب")
سازنده layout عبارت زیر را برای خروجی ایجاد می کند:
ConnectRows(GetPart(Order(CalculateExpressionWithGroupValueTable("DataSet.Account، DataSet.AccountRepresentation، Sum(DataSet.AmountTurnover)، View(DataSet.AmountTurnover)، DataSet.Ordering1،"DataSet. ), "2، 4"))
5. سطح - عملکرد برای به دست آوردن سطح ضبط فعلی طراحی شده است.
نحو:
مرحله()
مثال:
مرحله()
6. SequenceNumber - شماره سریال بعدی را دریافت کنید.
نحو:
NumberByOrder()
مثال:
NumberByOrder()
7. SequenceNumberInGrouping - شماره دنباله بعدی را در گروه بندی فعلی برمی گرداند.
مثال:
NumberByOrderInGroup()
8. قالب بندی - یک رشته فرمت شده از مقدار ارسال شده را دریافت کنید.
نحو:
قالب (مقدار، FormatString)
گزینه ها :
- معنی- عبارتی که باید قالب بندی شود.
- FormatString- رشته قالب مطابق با رشته قالب 1C: Enterprise تنظیم شده است.
قالب (مقدار فاکتورها. سند، "NPV=2")
9. BeginOfPeriod
نحو:
دوره شروع (تاریخ، نوع دوره)
گزینه ها :
- تاریخ(تاریخ). تاریخ مشخص شده؛
- نوع دوره
StartPeriod (DateTime (2002, 10, 12, 10, 15, 34), "Month")
نتیجه: 10/01/2002 0:00:00
10. EndOfPeriod - این تابع برای انتخاب یک تاریخ خاص از یک تاریخ معین طراحی شده است.
نحو:
پایان دوره (تاریخ، نوع دوره)
گزینه ها :
- تاریخ(تاریخ). تاریخ مشخص شده؛
- نوع دوره(خط). حاوی یکی از مقادیر زیر است: Minute; ساعت؛ روز؛ یک هفته؛ ماه؛ ربع؛ سال؛ دهه؛ نیم سال.
EndPeriod(DateTime(2002, 10, 12, 10, 15, 34), "Week")
نتیجه: 1381/10/13 23:59:59
11. AddKDate (DateAdd) - این تابع برای افزودن مقدار مشخصی به تاریخ طراحی شده است.
نحو:
AddToDate (بیان، نوع افزایشی، بزرگی)
گزینه ها :
- اصطلاح(تاریخ). تاریخ اصلی؛
- نوع بزرگنمایی(خط). حاوی یکی از مقادیر زیر است: Minute; ساعت؛ روز؛ یک هفته؛ ماه؛ ربع؛ سال؛ دهه؛ نیم سال.
- اندازه(عدد). تا چه مقدار تاریخ باید افزایش یابد، بخش کسری نادیده گرفته می شود.
AddToDate(DateTime(2002, 10, 12, 10, 15, 34), "Month", 1)
نتیجه: 11/12/2002 10:15:34
12. تفاوت تاریخ - این تابع برای بدست آوردن تفاوت بین دو تاریخ طراحی شده است.
نحو:
DifferenceDate(Expression1, Expression2, DifferenceType)
گزینه ها :
- بیان 1(تاریخ). تاریخ کسر شده؛
- بیان 2(تاریخ). تاریخ اصلی؛
- TypeDifference(خط). حاوی یکی از مقادیر: Second; دقیقه؛ ساعت؛ روز؛ ماه؛ ربع؛ سال.
DATEDIFFERENCE(DATETIME(2002، 10، 12، 10، 15، 34)،
DATETIME(2002، 10، 14، 9، 18، 06)، "DAY")
نتیجه: 2
13. رشته فرعی - این تابع برای استخراج یک رشته فرعی از یک رشته طراحی شده است.
نحو:
رشته فرعی (رشته، موقعیت، طول)
گزینه ها :
- خط(خط). رشته ای که رشته فرعی از آن استخراج می شود.
- موقعیت(عدد). موقعیت کاراکتری که رشته فرعی که باید از رشته استخراج شود از آن شروع می شود.
- طول(عدد). طول رشته فرعی اختصاص داده شده
SUBSTRING(Accounts.Address, 1, 4)
14. طول رشته - تابع برای تعیین طول یک رشته طراحی شده است.
نحو:
طول رشته (رشته)
پارامتر :
- خط(خط). رشته ای که طول آن مشخص شده است.
خط (Counterparties. Address)
15. سال- این تابع برای استخراج سال از مقدار نوع Date طراحی شده است.
نحو:
سال (تاریخ)
پارامتر :
- تاریخ(تاریخ). تاریخی که در آن سال تعیین می شود.
YEAR (هزینه. تاریخ)
16. ربع - این تابع برای استخراج عدد یک چهارم از مقدار نوع Date طراحی شده است. عدد یک چهارم معمولاً از 1 تا 4 متغیر است.
نحو:
ربع (تاریخ)
پارامتر :
- تاریخ(تاریخ). تاریخی که سه ماهه تعیین می شود
QUARTER (هزینه. تاریخ)
17. ماه - این تابع برای استخراج شماره ماه از مقدار نوع Date طراحی شده است. تعداد ماه معمولاً از 1 تا 12 متغیر است.
نحو:
ماه (تاریخ)
پارامتر :
- تاریخ(تاریخ). تاریخی که ماه تعیین می شود.
MONTH (هزینه. تاریخ)
18. روز سال (DayOfYear) - این تابع برای بدست آوردن روز سال از مقدار نوع Date طراحی شده است. روز سال معمولاً از 1 تا 365 (366) متغیر است.
نحو:
روز سال (تاریخ)
پارامتر :
- تاریخ(تاریخ). تاریخی که در آن روز سال تعیین می شود.
DAYYEAR (ExpenseAccount.Date)
19. روز- این تابع برای بدست آوردن روز ماه از مقدار نوع Date طراحی شده است. روز ماه معمولاً از 1 تا 31 متغیر است.
نحو:
روز (تاریخ)
پارامتر :
- تاریخ(تاریخ). تاریخی که در آن روز ماه تعیین می شود.
DAY (هزینه. تاریخ)
20. هفته - این تابع برای بدست آوردن عدد هفته سال از مقدار نوع Date طراحی شده است. هفته های سال از 1 شماره گذاری می شوند.
نحو:
هفته (تاریخ)
پارامتر :
- تاریخ(تاریخ). تاریخی که در آن اعداد هفته تعیین می شود.
WEEK (هزینه. تاریخ)
21. روز هفته - این تابع برای بدست آوردن روز هفته از مقدار نوع Date طراحی شده است. روز عادی هفته از 1 (دوشنبه) تا 7 (یکشنبه) متغیر است.
نحو:
روز هفته (تاریخ)
پارامتر :
- تاریخ(تاریخ). تاریخی که در آن روز هفته تعیین می شود.
روز هفته (هزینه. تاریخ)
22. ساعت- این تابع برای بدست آوردن ساعت روز از مقدار نوع Date طراحی شده است. ساعت روز از 0 تا 23 متغیر است.
نحو:
ساعت (تاریخ)
پارامتر :
- تاریخ(تاریخ). تاریخی که ساعت روز تعیین می شود.
HOUR (هزینه. تاریخ)
23. دقیقه - این تابع برای بدست آوردن دقیقه ساعت از مقدار نوع Date طراحی شده است. دقیقه ساعت از 0 تا 59 متغیر است.
نحو:
دقیقه (تاریخ)
پارامتر :
- تاریخ(تاریخ). تاریخی که دقیقه ساعت تعیین می شود.
MINUTE (خرج. تاریخ)
24. دوم - این تابع برای بدست آوردن ثانیه از یک دقیقه از مقدار نوع Date طراحی شده است. ثانیه از یک دقیقه از 0 تا 59 متغیر است.
نحو:
دوم (تاریخ)
پارامتر :
- تاریخ(تاریخ). تاریخی که ثانیه های دقیقه تعیین می شود.
SECOND (هزینه. تاریخ)
25. بازیگران - این تابع برای استخراج یک نوع از عبارتی طراحی شده است که ممکن است دارای یک نوع ترکیبی باشد. اگر عبارت حاوی نوع دیگری غیر از نوع مورد نیاز باشد، NULL برگردانده می شود.
نحو:
اکسپرس (بیان، نوع نشانگر)
گزینه ها :
- اصطلاح- عبارتی که باید تبدیل شود.
- نشانگر نوع(خط). شامل یک نوع رشته است. به عنوان مثال، "Number"، "String" و غیره. علاوه بر انواع اولیه، این خط ممکن است حاوی نام جدول باشد. در این صورت سعی می شود اشاره ای به جدول مشخص شده بیان شود.
Express(Data.Props1، "Number(10,3)")
26. IsNull (IsNull) - اگر مقدار پارامتر اول NULL باشد، این تابع مقدار پارامتر دوم را برمی گرداند. در غیر این صورت، مقدار پارامتر اول برگردانده می شود.
نحو:
IsNull(Expression1, Expression2)
گزینه ها :
- بیان 1- ارزشی که باید بررسی شود.
- بیان 2- اگر Expression1 NULL باشد مقدار را برمی گرداند.
YesNULL(مبلغ (فروش. مقدار گردش)، 0)
27.ACos- کسینوس قوس الکتریکی را بر حسب رادیان محاسبه می کند.
نحو:
ACos (بیان)
پارامتر :
- اصطلاح(عدد). مقدار کسینوس (در محدوده -1 ... 1) که با آن زاویه تعیین می شود.
نحو:
ASin (بیان)
پارامتر :
- اصطلاح(عدد). مقدار سینوس (در محدوده -1 ... 1) که با آن زاویه تعیین می شود.
نحو:
ATan (بیان)
پارامتر :
- اصطلاح(عدد). مقدار مماس که با آن زاویه تعیین می شود.
نحو:
Cos (بیان)
پارامتر :
- اصطلاح
نحو:
Exp (بیان)
پارامتر :
- اصطلاح(عدد). معنی مدرک.
نحو:
گزارش (بیان)
پارامتر :
- اصطلاح
نحو:
Log10 (عبارت)
پارامتر :
- اصطلاح(عدد). عدد اصلی بزرگتر از 0 است.
نحو:
پاو (پایه، نشانگر)
گزینه ها :
- پایه(عدد). اساس عملیات توان.
- فهرست مطالب(عدد). توان.
نحو:
گناه (بیان)
پارامتر :
- اصطلاح(عدد). بر حسب رادیان مشخص شده است.
نحو:
Sqrt (بیان)
پارامتر :
- اصطلاح(عدد). عدد غیر منفی
نحو:
قهوهای مایل به زرد (بیان)
پارامتر :
- اصطلاح(عدد). مقدار سینوس که با آن زاویه تعیین می شود.
نحو:
Env (بیان، عمق بیت)
گزینه ها :
- اصطلاح(عدد). شماره اصلی؛
- عمق بیت(عدد). تعداد ارقام اعشار برای گرد کردن.
نحو:
شی (بیان)
پارامتر :
- اصطلاح(عدد). یک عدد کسری
یک عبارت موتور ترکیب داده ممکن است شامل فراخوانی هایی به توابع ماژول های پیکربندی مشترک جهانی باشد. برای فراخوانی چنین توابعی نیازی به نحو اضافی نیست.
مثال:
AbbreviatedName(Documents.Link، Documents.Date، Documents.Number)
در این مثال، تابع "AbbreviatedName" از ماژول پیکربندی عمومی فراخوانی می شود.
توجه داشته باشید که استفاده از توابع ماژول مشترک تنها در صورتی مجاز است که پارامتر پردازشگر ترکیب داده مناسب مشخص شده باشد.
علاوه بر این، توابع ماژول های رایج را نمی توان در عبارات فیلد سفارشی استفاده کرد.
41. نارضایتی - این تابع یک نمایش رشته ای از مقدار ارسال شده از یک نوع غیر ابتدایی را برمی گرداند. برای مقادیر از نوع اولیه، خود مقدار را برمی گرداند.
<Пустое значение>".
مثال:
ارائه (طرف مقابل)
42. رشته - این تابع مقدار ارسال شده را به یک رشته تبدیل می کند.
اگر از یک آرایه یا جدول مقادیر به عنوان پارامتر استفاده شود، تابع رشته ای حاوی نمایش رشته ای از تمام عناصر آرایه را برمی گرداند که با کاراکترهای ";" از هم جدا شده اند. اگر هر عنصری یک نمایش رشته خالی داشته باشد، رشته "<Пустое значение>".
مثال:
ردیف (تاریخ فروش)
43. ValueIsFilled
برای مقادیر NULL، Undefined همیشه False را برمیگرداند.
برای مقادیر بولی، همیشه True را برمی گرداند.
برای انواع دیگر، اگر مقدار با مقدار پیشفرض نوع داده شده متفاوت باشد، True را برمیگرداند.
مثال:
ValueFilled (تاریخ تحویل)
44. LevelInGroup - این تابع سطح ضبط فعلی را نسبت به گروه بندی دریافت می کند.
می توان برای به دست آوردن سطح تودرتو یک رکورد در یک گروه بندی سلسله مراتبی استفاده کرد.
مثال:
LevelInGroup()
45. ValueType
نحو:
ValueType (عبارت)
پارامتر :
- اصطلاح(خط). نوع مقدار رشته