1s SKD агрегат функцийн массив. SKD. Нэг нүдэнд хүснэгтийн мэдээллийг харуулах. Шинэ тайлан үүсгэх

Энэхүү богино тэмдэглэлд би мэдээллийн бүтцийн системийг ашиглан тайланд бүлэглэх янз бүрийн түвшний утгыг хэрхэн нэгтгэж болохыг харуулахыг хүсч байна.
Зурагт үзүүлснээр зөвхөн "Барааны бүлгүүд" бүлэглэлийн түвшинд "Захиалга" нөөцийг тооцоолж, тодорхой нөхцлөөс хамааран одоогийн барааны бүлэгт хэр их захиалга өгөх шаардлагатайг харуулна.


Энэ утгыг зөвхөн тооцоолж болно энэ түвшинБүлэглэх, учир нь дээр болон доор тооцох утга байхгүй. Жишээлбэл, нарийвчилсан бүртгэлийн түвшинд бүлэгт хамгийн их тоо хэмжээний тухай мэдээлэл байдаггүй, учир нь энэ өгөгдөл нь зөвхөн бүлгийн хувьд хүчинтэй бөгөөд түүний бие даасан бүрэлдэхүүн хэсгүүдэд хамаарахгүй.

Үүний дагуу одоо дээрх бүлгүүдийн ("Агуулах", "Агуулахын төрөл") нийт дүн болон нийт дүнг тооцох шаардлагатай байна.
Үүнийг хийхийн тулд функцийг ашиглана уу ТооцоолохExpressionWithGroupArray:
GROUPARRAYТЭЙ ИЛЭРХИЙЛЭЛИЙГ ҮНЭЛЭХ (EVALEXPRESSIONWITHGROUPARRAY)
Синтакс:
EvaluateExpressionWithGroupArray(,)
Тодорхойлолт:
Функц нь массивыг буцаадаг бөгөөд элемент бүр нь заасан талбараар бүлэглэх илэрхийлэлийг үнэлэх үр дүнг агуулсан байдаг.
Байршлын бүрдүүлэгч нь бүдүүвчийг үүсгэх үед функцын параметрүүдийг өгөгдлийн найрлагын байршлын талбар болгон хувиргадаг. Жишээлбэл, Account талбарыг DataSet.Account руу хөрвүүлэх болно.
Бүдүүвч бүтээгч нь зөвхөн CalculateArrayWithGroupArray() функцийг агуулсан тусгай талбарын гаралтын илэрхийлэл үүсгэх үед гаралтын мэдээллийг дарааллаар нь гаргахын тулд гаралтын илэрхийлэл үүсгэдэг. Жишээлбэл, илэрхийлэл бүхий захиалгат талбарт:

ТооцоолохExpressionWithGroupArray("Хэмжээ(Дэмжээ)", "Харилцагч тал")
Байршлын бүтээгч нь гаралтын хувьд дараах илэрхийллийг үүсгэнэ.

ХолбохМөрүүд(Масив(Захиалга(ИлэрхийлэлийгБүлэглэхҮнэт Хүснэгтээр тооцоолох("Харах(Нийтлэл(ӨгөгдлийнСэтгэл. Дүн Эргэлтийн))), Нийлбэр(ӨгөгдлийнСэтгэл. Дүн Эргэлтийн)", "ӨгөгдлийнСэт. Дансны"),"2")))

Сонголтууд:

Төрөл: мөр. Үнэлгээ хийх илэрхийлэл. Мөр, жишээ нь Amount(AmountTurnover).

Төрөл: мөр. Бүлэглэх талбарын илэрхийллүүд – таслалаар тусгаарлагдсан бүлэглэх талбаруудын илэрхийллүүд. Жишээлбэл, Гүйцэтгэгч, Тал.

Төрөл: мөр. Нарийвчилсан бүртгэлд ашигласан сонголтыг тодорхойлсон илэрхийлэл. Энэ илэрхийлэл нь нэгтгэх функцийг ашиглахыг дэмждэггүй. Жишээлбэл, DeletionFlag = Худал.

Төрөл: мөр. Бүлгийн бүртгэлд хэрэглэгдэх сонголтыг тодорхойлсон илэрхийлэл. Жишээ нь Amount(AmountTurnover) > &Parameter1.
Жишээ:

Хамгийн их(CalculateExpressionWithGroupArray("Дүн (AmountTornover)", "Харилцагч тал"));

Функцийн синтаксийн дэлгэрэнгүй тайлбарыг http://its.1c.ru/db/v837doc#bookmark:dev:TI000000582 дээрээс олж болно.
Одоо тооцооллын хувьд бид "Захиалга" талбарыг "Тооцоолох ..." гэсэн өөр өөр утгатай, дараах илэрхийллийг ашиглан давхардуулж, дээд түвшин бүрт бүлгүүдийн доорх түвшний утгыг ашигладаг болохыг анхаарна уу. .

Үүний үр дүнд бид дараахь бүтцийг олж авна.

Өгөгдлийн бүтцийн схемийг (DCS) зөв ашиглах нь танд дараахь боломжийг олгоно.

  • тайлан боловсруулахад шаардагдах хугацааг эрс багасгах;
  • бий болгох шаардлагаас ангижрах хяналттай хэлбэрпроцессор;
  • хэрэглэгчийн нэмэлт тохируулга хийх боломжтой сайхан үр дүнд хүрэх.

Гэхдээ бүх хөгжүүлэгчид схемийн бүх боломжуудыг ашигладаггүй, учир нь түүний бүх тохиргоо нь ойлгомжтой, ойлгомжтой байдаггүй. Ялангуяа 1С SKD-д тооцоолсон талбарууд байдгийг олон хүмүүс мэддэг боловч тэдгээрийн хэрэглээний хамрах хүрээ, тэдэнтэй ажиллах аргуудыг бүрэн ойлгодоггүй.

Тооцоолсон талбар гэж юу вэ

Ихэнх тохиолдолд байршлын диаграм дахь мэдээллийн эх сурвалж нь асуулга юм. Зарчмын хувьд, асуулга дотор та янз бүрийн томъёо, бүтэц, илэрхийллийг аль хэдийн ашиглаж болно. Босож байна логик асуулт, яагаад бидэнд давхардсан функц хэрэгтэй байна вэ?

Үнэн хэрэгтээ хандалтын хяналтын систем нь асуулгын үр дүнг харуулахаас өөр зүйл бөгөөд энэ нь диаграмм үүсгэх маягтаас тодорхой харагдаж байна (Зураг 1).

Тооцоолсон талбарууд нь үүсгэсэн өгөгдлийн багцтай тодорхой үйлдлүүдийг хийх боломжийг танд олгоно.

  • Хүсэлтийн дагуу хүлээн авсан өгөгдлийн массивыг хэд хэдэн мөрийг нэгтгэж, тодорхой нүдэнд оруулах;
  • Ерөнхий модулийн экспортын функцүүдэд хандах;
  • Байршлын хэлэнд ашиглах боломжтой янз бүрийн илэрхийлэлүүдийг ажиллуулж, тусгай EvaluateExpression функцуудыг ашиглана уу.

Энэ жагсаалтыг харцгаая.

Нэг нүдэнд утгын массив

Тусдаа нүдэнд эсрэг талын бүх баримт бичгийн дугаарыг хүлээн авах шаардлагатай нөхцөл байдлыг дуурайцгаая.


Тиймээс бид схемдээ нэмэлт тооцооллын талбарыг бий болгосон;


Дээрх жишээнээс харахад тооцоолсон талбаруудыг нэмэх, боловсруулахад ямар ч бэрхшээл гарахгүй. Бид Array() ба ConnectRows() гэсэн хоёр функц ашигласан.

Сүүлчийн талаар хэдэн үг хэлье. Массив, утга эсвэл утгын танигчийг харуулсан эхний параметрээс гадна өөр хоёрыг тохируулж болно.

  1. Элемент тусгаарлагч - аль тэмдэгт нь массивын нэг элемент эсвэл утгын хүснэгтийн нэг мөрийг нөгөөгөөсөө тусгаарлахыг заадаг (бидний тохиолдолд бид энэ параметрийг орхигдуулсан бөгөөд анхдагчаар мөрийн завсарлага өгсөн);
  2. Багана тусгаарлагч - утгын хүснэгтийн баганыг салгахад ашигладаг тэмдэгт (үндсэн тохиолдолд цэгтэй таслалыг ашигладаг).

Нийтлэг модулийн экспортын функцүүдэд хандах

Нийтлэг модулийн функцууд нь тооцоолсон талбарыг бөглөх мэдээллийн эх сурвалж болж чадна.

Хэд хэдэн чухал оноо:

  • Функц нь экспортлох боломжтой байх ёстой;
  • Хэрэв функц нь "Глобал" шинж чанарын багц бүхий нийтлэг модульд байрласан бол түүнийг шууд нэрээр нь дуудна, эс бөгөөс функцийг "Хуваалцсан модулийн нэр" схемийн дагуу дуудах ёстой. "Дуудагдах функцын нэр."

Ашиглалтын жишээ болгон бид хүлээн авсан баримт бичгийн ижил хүсэлтийг авч, тусдаа баганад харуулах болно. Бид хүсэлтийг өөрөө тайлбарлахгүй, тооцоолсон талбарууд руу шууд шилжье:


Тиймээс бид бараг бүх өгөгдөл боловсруулагчийг хандалтын хяналтын системээс эхлүүлж болохыг харж байгаа бөгөөд энэ нь схемийг ашиглах боломжийг ихээхэн өргөжүүлдэг.

Байршлын хэлний илэрхийллүүд

Хөгжүүлэгчийн ажилд ихэвчлэн ACS талбарт хуваагдлын үр дүнг харуулах шаардлагатай нөхцөл байдал үүсдэг.

  1. Тухайн зүйлийн дундаж өртгийг тооцоолох;
  2. Бүх төрлийн сонирхол;
  3. Дундаж орлогын тооцоо гэх мэт.

Асуудлаас зайлсхийхийн тулд эдгээр тохиолдолд тооцоолсон талбарт 0-д хуваагдах тест оруулахыг зөвлөж байна.

Үүнийг "Хэзээ сонгох .... Дараа нь ... Үгүй бол ... Төгсгөл" бүтцийг ашиглан хийж болно.

Эцэст нь хангалттай тухай хэдэн үг хэлье шинэ шинж тэмдэгИлэрхийллийг тооцоолох(). Үүний тусламжтайгаар та одоогийн болон өмнөх мөрүүдийн хоорондох зардлын хазайлт, хуримтлагдсан үлдэгдэл гэх мэтийг тооцоолж болно.

"Илэрхийлэл" талбарт Тооцоолсон илэрхийлэл ("Баримт бичгийн дүн", "Өмнөх дүн") гэсэн утгыг зааж өгснөөр манай хүсэлтийн өмнөх мөрөнд бичиг баримтын дүнг авч болно гэж бодъё.

Өдрийн мэнд, манай блогын эрхэм уншигчид! Өнөөдөр би танд энэ тухай хэлэхийг хүсч байна бодит жишээ, Хэрхэн
ACS функцийг Array болон JoinStrings ашиглана уу. тухай нийтлэлд

хэрхэн ажиллах талаар бага зэрэг дурдагдсан
хавчуурга дээр
, гэж бас аль хэдийн тайлбарласан
"Нөөц" табыг ашиглан. Өнөөдөр бид эдгээрт дахин анхаарлаа хандуулах болно
бидний сэдвийн хүрээнд хавчуурга.

Хоёр ашиглан 1С тайлангийн жишээний харагдах байдал ACS функцууд МассивТэгээд Холбох мөрүүддараачийн:

Array болон JoinStrings ACS функцуудыг ашиглах асуудлын мэдэгдэл

Даалгавар: Та нэг бүтээгдэхүүний борлуулалтын бүх дугаарыг нэг нүдэнд оруулах шаардлагатай.

Үүнтэй адил зүйл: нэршил | тоо хэмжээ | 001, 002 гэх мэт. |

Бид "TMZ-ийн борлуулалт" хуримтлалын бүртгэлийн хүсэлтийг ашиглана.

СОНГОХ
TMZ-ийн хэрэгжилт. Бүртгүүлэгч. Тоо,
TMZ-ийн хэрэгжилт. Нэршил,
TMZ-ийн хэрэгжилт. Бүртгүүлэгч,
TMZ-ийн хэрэгжилт. Тоо хэмжээ Эргэлтийн
FROM
Хуримтлалын бүртгэл. TMZ-ийн хэрэгжилт. Хувьсгалууд
(, , Бүртгүүлэгч, ) TMZ-ийг ХЭРХЭН хэрэгжүүлэх ВЭ

“TMZ-ийг хэрэгжүүлэх” хуримтлалын бүртгэл нь Нягтлан бодох бүртгэлийн тохиргоо болон Худалдааны аж ахуйн нэгжийн удирдлагын (UTP) тохиргоонд хоёуланд нь байдаг. "Нэршил" лавлах элементээс USP-г хэрхэн тохируулах талаар олж мэдээрэй. Тиймээс, татаж авсны дараа та энэ тайланг хоёр тохиргоонд ажиллуулж, түүний ажиллагааг шалгах боломжтой.

SKD Array болон ConnectRows функцуудыг ашиглан даалгаврын хэрэгжилт


Үүсгэхийн тулд ижил алхмуудыг ашигласан боловч зарим нэмэлтүүдээр хийсэн
.

JoinStrings функцийн тодорхойлолт

JoinStrings

Мөрүүдийг нэг мөр болгон холбоход ашигладаг.

Синтакс:

Мөрүүдийг холбох(утга, зүйл тусгаарлагч, багана тусгаарлагч)

Сонголтууд:

  1. Утга- нэг мөрөнд нэгтгэх шаардлагатай илэрхийллүүд.
    Хэрэв энэ нь Массив бол массивын элементүүдийг мөр болгон нэгтгэнэ.
    Хэрэв энэ нь ValueTable бол хүснэгтийн бүх багана, мөрүүдийг эгнээ болгон нэгтгэнэ;
  2. Элемент тусгаарлагч- ашиглах текстийг агуулсан мөр
    массивын элементүүд болон утгын хүснэгтийн мөр хоорондын тусгаарлагч. Өгөгдмөл - мөрийн тэжээлийн тэмдэгт;
  3. Багана тусгаарлагч-хязгаарлагч болгон ашиглах текстийг агуулсан мөр
    утгын хүснэгтийн баганын хооронд. Өгөгдмөл ";".

Сайт руу оюутны хувиар нэвтэрнэ үү

Сургуулийн материалд хандахын тулд сурагчаар нэвтэрнэ үү

Эхлэгчдэд зориулсан мэдээллийн бүтцийн систем 1С 8.3: үр дүнг тоолох (нөөц)

Энэ хичээлийн зорилго нь:

  • Бүтээгдэхүүний жагсаалт (Хүнсний лавлах), тэдгээрийн илчлэг, амт зэргийг харуулсан тайлан бич.
  • Бүтээгдэхүүнийг өнгөөр ​​нь бүлэглэх.
  • Дүгнэлт (нөөц) болон тооцоолсон талбаруудын талаар мэдэж аваарай.

Шинэ тайлан үүсгэх

Өмнөх хичээлүүдийн нэгэн адил бид мэдээллийн санг нээж байна " Дели"Тохируулагчид орж, цэсээр дамжуулан шинэ тайлан үүсгэх" Файл"->"Шинэ...":

Баримт бичгийн төрөл - гадаад тайлан:

Тайлангийн тохиргооны маягт дээр нэрийг бичнэ үү " Хичээл 3"болон товчлуурыг дарна уу" Нээлттэй өгөгдлийн бүтцийн диаграм":

Үндсэн схемийн нэрийг үлдээгээд " Бэлэн":

Зохион бүтээгчээр дамжуулан хүсэлт нэмж байна

Таб дээр " Өгөгдлийн багц" дарна уу ногооннэмэх тэмдэг хийгээд " Өгөгдлийн багц нэмэх - Асуулга":

Хүсэлтийн текстийг гараар бичихийн оронд бид үүнийг дахин ажиллуулдаг асуулга үүсгэгч:

"Таб" дээр Хүснэгтүүд"ширээг чирэх" Хоол хүнс" эхний баганаас хоёр дахь багана хүртэл:

Хүснэгтээс сонгоно уу " Хоол хүнс"Бидний хүсэлт гаргах талбарууд. Үүнийг хийхийн тулд талбаруудыг чирж буулгана уу" Нэр", "Амт", "Өнгө"Ба" Калорийн агууламж" хоёр дахь баганаас гурав дахь багана хүртэл:

Энэ нь дараах байдалтай болсон.

товчийг дарна уу " БОЛЖ БАЙНА УУ" - хүсэлтийн текст автоматаар үүсгэгдсэн:

Тайлан танилцуулах тохиргоог үүсгэж байна

Таб руу очно уу " Тохиргоо"гэж товшино уу шидэт саваа, залгах тохиргооны дизайнер:

Тайлангийн төрлийг сонгоно уу " Жагсаалт..." ба "товчлуур" дээр дарна уу. Цаашид":

Жагсаалтад гарч ирэх талбаруудыг зүүн баганаас баруун тийш чирээд "" дээр дарна уу. Цаашид":

Зүүн баганаас баруун тал руу чирнэ үү " Өнгө"- энэ болно бүлэглэхтайлан дахь мөрүүд. "Дарна уу БОЛЖ БАЙНА УУ":

Загвар зохион бүтээгчийн ажлын үр дүн энд байна. Манай тайлангийн шатлал:

  • тайланг бүхэлд нь
  • "Өнгө" бүлэглэл
  • дэлгэрэнгүй оруулгууд - хүнсний нэр бүхий мөрүүд

Тайланг хадгалах (товч дискет) Мөн хаахгүйгээрБид тохируулагчийг хэрэглэгчийн горимд нэн даруй нээх болно. Энэ нь дараах байдалтай болсон.

Баганын дарааллыг өөрчлөх

Гэхдээ байцгаая дарааллыг өөрчильебаганууд (дээш доош сумнууд) нь доорх зураг шиг харагдана.

Тайланг хадгалаад хэрэглэгчийн горимд дахин нээцгээе:

Гайхалтай, энэ нь хамаагүй дээр.

Калорийн агууламжийг нэгтгэн дүгнэж үзье

Хүнсний илчлэгийн агууламжийг бүлгээр нь нэгтгэн дүгнэх нь сайхан байх болно. Бүх бүтээгдэхүүний калорийн агууламжийн нийлбэрийг харахын тулд цагаан эсвэл шар өнгөтэй байна. Эсвэл мэдээллийн санд байгаа бүх бүтээгдэхүүний нийт калорийн агууламжийг олж мэдээрэй.

Үүний тулд нөөцийг тооцох механизм бий.

Таб руу очно уу " Нөөц"болон талбайг чирэх" Калорийн агууламж"(бид үүнийг нэгтгэн дүгнэх болно) зүүн баганаас баруун тийш.

Энэ тохиолдолд талбараас доош унах жагсаалтаас илэрхийллийг сонгоно уу " Хэмжээ (калори)", учир нь нийлбэр нь нийлбэрт багтсан бүх элементүүдийн нийлбэр байх болно:

Бид тайланг хадгалж, үүсгэдэг:

Бид одоо бүлэг тус бүр болон нийт тайлангийн үр дүнгүүдтэй байна.

Үүнийг (дунджаар) илчлэгээр дүгнэж үзье

Одоо үүнийг өөр баганад харагдуулъя дундажБүтээгдэхүүний калорийн агууламжийг бүлгээр болон тайланд бүхэлд нь харуулав.

Та одоо байгаа "Илчлэг" баганад хүрч болохгүй - нийт дүн нь аль хэдийн харагдсан тул өөр талбар үүсгэцгээе, аль нь байх болно яг хуулбар"Калори" талбарууд.

Ийм "виртуал" талбарыг бий болгохын тулд бид механизмыг ашиглах болно тооцоолсон талбарууд.

Таб руу очно уу " Тооцоолсон талбарууд"болон дарна уу ногооннэмэх тэмдэг:

Баганад " Өгөгдлийн зам"бид шинэ талбарын нэрийг бичнэ ( саадгүй, зайгүй). Үүнийг нэрлэе" Дундаж калорийн агууламж", мөн баганад" Илэрхийлэл"Бид одоо байгаа талбарын нэрийг бичдэг бөгөөд үүний үндсэн дээр шинэ талбарыг тооцоолох болно. Бид тэнд бичдэг " Калорийн агууламж". Багана " Гарчиг" автоматаар бөглөнө.

Бид шинэ талбар нэмсэн (" Дундаж калорийн агууламж"), гэхдээ энэ нь тайланд өөрөө харагдахгүй - та дахин залгах хэрэгтэй тохиргооны дизайнер("шидэт саваа") эсвэл энэ талбарыг нэмнэ үү гараар.

Энийг хийцгээе хоёрдугаартарга зам. Үүнийг хийхийн тулд таб руу очно уу " Тохиргоо", сонгох" Тайлан"(эцсийн эцэст бид талбарыг бүхэлд нь тайланд нэмэхийг хүсч байна), доод талд байгаа табыг сонгоно уу" Сонгосон талбарууд"болон талбайг чирэх" Дундаж калорийн агууламж"зүүн баганаас баруун тийш:

Энэ нь дараах байдалтай болсон.

Бид тайланг хадгалж, үүсгэдэг:

Талбар гарч ирсэн бөгөөд түүний утгууд нь "Калори" талбарын утгууд болохыг бид харж байна. Агуу их!

Үүнийг хийхийн тулд бид аль хэдийн танил болсон механизмыг дахин ашиглах болно нөөц(дүгнэлт). Таб руу очно уу " Нөөц"болон талбайг чирэх" Дундаж калорийн агууламж"зүүн баганаас баруун тийш:

Түүнээс гадна "багананд" Илэрхийлэл"сонгох" Дундаж(дундаж калори)":

Бид тайланг хадгалж, үүсгэдэг:

Бүлгүүдийн хувьд, өөрөөр хэлбэл өнгө бүрийн хувьд, мөн тайлангийн хувьд дундаж утгыг туйлын зөв тооцоолсон болохыг бид харж байна. Гэхдээ тэд одоо байгаа нэмэлт оруулгууд тайлангаас хасахыг хүсч буй бие даасан бүтээгдэхүүнүүдийн хувьд (бүлэг биш).

Тэд яагаад гарч ирснийг та мэдэх үү (бүлэг биш утгууд)? Учир нь бид талбарыг нэмэхэд " Дундаж калорийн агууламж"Тайлангийн тохиргоонд бид хоёр дахь алхамыг сонгосон тайланг бүхэлд ньмөн энэ шинэ талбар нь элемент дээр дууссан " Дэлгэрэнгүй бичлэгүүд".

Алдаагаа засъя. Үүнийг хийхийн тулд таб руу буцна уу " Тохиргоо", сонгох" Нарийвчилсан оруулгууд"Эхлээд дээрээс (2-р алхам), дараа нь" Нарийвчилсан оруулгууд"доороос (3-р алхам), хавчуурга руу очно уу" Сонгосон талбайнууд"мөн бид түүний баруун баганад элементийг харах болно" Автомат".

Бүрэлдэхүүн " Автомат" - энэ бол нэг талбар биш. Эдгээр нь дээд түвшний тохиргоонд тулгуурлан автоматаар буух хэд хэдэн талбар юм.

Эдгээр талбарууд юу болохыг харахын тулд элемент дээр дарна уу " Автомат" зөвтовчийг дараад " Өргөтгөх":

Бүрэлдэхүүн " Автомат"Дараах талбаруудад өргөжсөн:

Энд бидний талбай байна" Дундаж калорийн агууламж"Энэ цэгээс энд ирсэн" Тайлан"Бид түүнийг тийшээ чирэхэд. Зүгээр л хасъягаралтыг арилгахын тулд энэ талбарын хажууд байгаа нүдийг шалгана уу.

Удахгүй гарах 8.2.14 хувилбартай холбогдуулан би өгөгдлийн бүтцийн системийн зарим шинэ функцуудыг тайлбарлахыг хичээх болно.

Засварлахад хялбар болгохын тулд өгөгдлийн байршлын диаграммыг гадаад тайланд нээнэ үү.

Бид асуулгын төрлийн өгөгдлийн багцыг нэмж, гараар эсвэл асуулга зохион бүтээгчийг ашиглан энгийн асуулга бичдэг.

1. Хандалтын хяналтын системд хүсэлтийг тохируулах.

2. Хандалтын хяналтын системд тооцоолсон талбаруудыг тохируулах

3. Тохиргоо таб дээрээс өгөгдлийн байршлыг тохируулна уу

4. 1С Enterprise 8.2.14 програмыг ажиллуул. Тайланг нээнэ үү. Бид бүрдүүлдэг, хүлээн авдаг.

Шинэ функцүүдийн тайлбар:

1. Одоогийн огноо ()

Системийн огноог буцаана. Байршлын бүдүүвчийг зохиохдоо байршилд байгаа бүх илэрхийлэлд CurrentDate() функцийг одоогийн огнооны утгаар солино.

2. COMPUTEEXPRESSION()

Синтакс:

Илэрхийллийг тооцоолох(,)

Тодорхойлолт:

Функц нь зарим бүлэглэлийн хүрээнд илэрхийлэлийг үнэлэх зорилготой юм.

Энэ функц нь бүлгүүдийн сонголтыг харгалзан үздэг боловч шаталсан сонголтыг харгалздаггүй.

Энэ функцийг тухайн бүлгийн бүлгийн сонголт дахь бүлэглэлд ашиглах боломжгүй. Жишээлбэл, Нэршлийн бүлгийг сонгохдоо та илэрхийллийг ашиглах боломжгүй Тооцоолох илэрхийлэл("Нийт (нийлбэр эргэлт)", "Нийт") > 1000. Гэхдээ ийм илэрхийллийг шаталсан сонголтод ашиглаж болно.

Хэрэв төгсгөлийн бичлэг нь эхлэлийн бичлэгийн өмнө байгаа бол нарийвчилсан өгөгдлийг тооцоолох, нэгтгэсэн функцийг тооцоолох бүртгэл байхгүй гэж үзнэ.

Нийт дүнгийн интервалын илэрхийллийг тооцоолохдоо (Бүлэглэх параметрийг GrandTotal гэж тохируулсан) нарийвчилсан өгөгдлийг тооцоолох, нэгтгэсэн функцийг тооцоолох бүртгэл байхгүй гэж үздэг.

Функцийн илэрхийлэл үүсгэх үед байрлал холбогч Илэрхийлэлийг тооцоолох, хэрэв эрэмбэлэх илэрхийлэл бүлэгт ашиглах боломжгүй талбаруудыг агуулж байвал функцийг орлуулна Илэрхийлэлийг тооцоолохдээр NULL.

Сонголтууд

Төрөл: Шугам. Үнэлгээ хийх илэрхийлэл.

Төрөл: Шугам. Илэрхийллийг үнэлэх агуулгын хүрээнд бүлэглэлийн нэрийг агуулна. Хэрэв бүлгийн нэрийг ашигласан бол хоосон мөр, тооцооллыг одоогийн бүлэглэлийн хүрээнд гүйцэтгэнэ. Хэрэв GeneralTotal мөрийг бүлгийн нэр болгон ашигласан бол тооцооллыг нийт дүнгийн хүрээнд гүйцэтгэнэ. Үгүй бол тооцооллыг ижил нэртэй эцэг эхийн бүлгийн хүрээнд гүйцэтгэнэ.

Жишээлбэл:

Нийлбэр(Борлуулалт.Нийт эргэлт)/Тооцоо("Нийт(Борлуулалт.Нийт)", "Нийт")

IN энэ жишээндүр дүн нь талбарын нийлбэрийн харьцаа байх болно Борлуулалтын хэмжээбүх байрлал дахь ижил талбарын нийлбэрт бичлэгүүдийг бүлэглэх;

Төрөл: Шугам. Параметр нь дараах утгыг авч болно.

· Их нийт- илэрхийлэл нь бүх бүлгийн бүртгэлд тооцогдоно.

· Шатлан ​​захирах ёс— илэрхийлэл нь хэрэв байгаа бол дээд шатлалын бүртгэлд, хэрэв дээд шатлалын бүртгэл байхгүй бол бүхэл бүтэн бүлэгт үнэлэгдэх болно.

· Бүлэглэх- илэрхийлэл нь одоогийн бүлгийн бүлэглэлийн бүртгэлд үнэлэгдэх болно.

· Нөөцийн бус бүлэглэл— Бүлгийн бичлэгийн функцийг нөөцөөр тооцохдоо анхны бүлэглэлийн эхний бүлгийн бичлэгт илэрхийлэлийг тооцоолно.

Функцийг тооцоолохдоо Илэрхийллийг тооцоолох() утга учиртай Нөөцийн бус бүлэглэлНөөцөөр бүлэглэгдээгүй бүлгийн бичлэгүүдийн хувьд параметрийн утга нь тухайн утгатай тэнцүү байсан тохиолдолд функцийг тооцоолсонтой ижил аргаар тооцдог. Бүлэглэх.

Өгөгдлийн бүтэц зохион бүтээгч нь зохион байгуулалтад бүлэглэх нөөцийн талбарыг гаргахдаа өгөгдлийн найрлагын бүдүүвчийг үүсгэх үед функцийг ашиглан тооцоолсон илэрхийлэлийг байршилд байрлуулдаг. Илэрхийллийг тооцоолох() , параметрийг зааж байна Нөөцийн бус бүлэглэл. Бусад нөөцийн хувьд ердийн нөөцийн илэрхийлэлийг нөөцийн бүлэгт байрлуулна.

Төрөл: Шугам. Фрагментийг аль бичлэгээс эхлүүлэх, нэгтгэсэн илэрхийллийн функцийг тооцоолох, нэгтгэсэн функцүүдийн гадна талбарын утгыг аль бичлэгээс авахыг заана. Утга нь дараахь зүйлсийн аль нэг нь байж болно.

· Эхлээд

· Сүүлийн (Сүүлийн)

· Өмнөх

· Дараагийн (дараагийн)

· Одоогийн

· Хязгаарлагдмал утга(Хязгаарын утга) Хязгаарлагдмал утга

Төрөл: Шугам. Фрагментийг аль бичлэгт үргэлжлүүлэх, илэрхийллийн нэгтгэсэн функцийг тооцоолохыг заана. Утга нь дараахь зүйлсийн аль нэг нь байж болно.

· Эхлээд. Эхний бүлгийн бүртгэлийг авах шаардлагатай. Хаалтанд байгаа үгийн дараа та илэрхийллийг зааж өгөх боломжтой бөгөөд үр дүнг нь бүлэглэх эхнээс офсет болгон ашиглах болно. Үр дүнгийн утга нь тэгээс их бүхэл тоо байх ёстой. Жишээлбэл, First(3) - бүлэглэлийн эхнээс гурав дахь бичлэгийг хүлээн авах.

Хэрэв эхний бичлэг нь бүлэглэлээс гадуур байвал бүртгэл байхгүй гэж үзнэ. Жишээлбэл, хэрэв 3 бичлэг байгаа бөгөөд та First(4)-ийг авахыг хүсвэл бичлэг байхгүй гэж үзнэ.

· Сүүлийн (Сүүлийн). Та хамгийн сүүлийн бүлгийн бичлэгийг авах хэрэгтэй. Хаалтанд байгаа үгийн дараа та илэрхийлэлийг зааж өгөх боломжтой бөгөөд үүний үр дүнг бүлгийн төгсгөлөөс офсет болгон ашиглах болно. Үр дүнгийн утга нь тэгээс их бүхэл тоо байх ёстой. Жишээлбэл, Last(3) - бүлгийн төгсгөлөөс гурав дахь бичлэгийг хүлээн авах.

Хэрэв сүүлийн бичлэгбүлэглэлээс давсан, бүртгэл байхгүй гэж үздэг. Жишээлбэл, хэрэв 3 бичлэг байгаа бөгөөд та Last(4)-ийг авахыг хүсвэл бичлэг байхгүй гэж үзнэ.

· Өмнөх. Та өмнөх бүлгийн бүртгэлийг авах хэрэгтэй. Хаалтанд байгаа үгийн дараа та илэрхийлэлийг зааж өгч болно, үүний үр дүнг одоогийн бүлэглэлийн бичлэгээс буцаах байдлаар ашиглах болно. Жишээ нь, Previous(2) - өмнөх бичлэгээс өмнөхийг авах.

Хэрэв өмнөх бичлэг нь бүлэглэлээс давсан бол (жишээ нь, хоёр дахь бүлэглэлийн бичлэгийн хувьд та Өмнөх(3)-ыг авах шаардлагатай), эхний бүлэглэлийн бичлэгийг авна.

Бүлэглэлийн нийлбэрийн өмнөх бичлэгийг сэргээхэд эхний бичлэгийг авсан гэж үзнэ.

· Дараагийн (дараагийн). Та дараагийн бүлгийн бичлэгийг авах хэрэгтэй. Хаалтанд байгаа үгийн дараа та илэрхийлэлийг зааж өгөх боломжтой бөгөөд үүний үр дүнг одоогийн бүлэглэлийн бичлэгээс офсет болгон ашиглах болно. Жишээлбэл, Next(2) - дараагийн бичлэгээс дараагийн авах.

Хэрэв дараагийн бичлэг нь бүлэглэлээс давсан бол бичлэг байхгүй гэж үзнэ. Жишээлбэл, хэрэв 3 оруулга байгаа бол гурав дахь оруулга Next() -ийг хүлээн авбал ямар ч оруулга байхгүй гэж үзнэ.

Бүлэглэлийн нийлбэр дүнгээр дараагийн бичлэгийг хүлээн авах үед бүртгэл байхгүй гэж үзнэ.

· Одоогийн. Та одоогийн бичлэгийг авах хэрэгтэй.

Бүлэглэлийн нийлбэрийг олж авахдаа эхний бичлэгийг авна.

· Хязгаарлагдмал утга(Хязгаарын утга). Заасан утгаараа бичлэг авах хэрэгцээ. Үгний дараа Хязгаарлагдмал утгаХаалтанд та фрагментийг эхлүүлэхийг хүсч буй утга бүхий илэрхийлэл, эхний эрэмбийн талбарыг зааж өгөх хэрэгтэй.

Захиалгын талбарын утга нь заасан утгаас их буюу тэнцүү байгаа эхний бичлэгийг бичлэг болгон буцаана. Жишээлбэл, Хугацаа талбарыг захиалгын талбар болгон ашигладаг бөгөөд 2010-01-01, 2010-02-01, 2010-03-01 гэсэн утгатай бол та авахыг хүсч байна. LimitingValue(DateTime(2010, 1, 15)), дараа нь 02/01/2010 огноотой бичлэгийг хүлээн авна.

Төрөл: Шугам. Захиалгын дүрмийг тодорхойлсон илэрхийллүүдийг таслалаар тусгаарлан жагсаана. Хэрэв заагаагүй бол дарааллыг илэрхийллийг үнэлж буй бүлэгтэй ижил аргаар гүйцэтгэнэ. Илэрхийлэл бүрийн дараа та зааж өгч болно түлхүүр үг Нас(өсөх дарааллаар захиалахын тулд), Бууж байна(буурах дарааллаар захиалах) ба Автомат захиалга(лавлагааны талбаруудыг та лавласан объектыг захиалахыг хүссэн талбараар нь захиалах). Үг Автомат захиалгаүгтэй адил хэрэглэж болно Нас, тийм үгээр Бууж байна.

Төрөл: Шугам. Параметртэй адил Эрэмбэлэх. Шаталсан бүртгэлийг зохион байгуулахад ашигладаг. Хэрэв заагаагүй бол зохион байгуулалтыг бүтээгч нь параметрт заасан дарааллын дагуу захиалга үүсгэдэг Эрэмбэлэх.

Төрөл: Шугам. Ижил эрэмбийн утгатай хэд хэдэн бичлэг байгаа тохиолдолд өмнөх эсвэл дараагийн бичлэгийг тодорхойлох дүрмийг зааж өгнө.

· Тус тусад ньөмнөх болон дараагийн бичлэгүүдийг тодорхойлохын тулд эрэмбэлэгдсэн бичлэгүүдийн дарааллыг ашигладаг болохыг харуулж байна. Өгөгдмөл утга.

· Хамтдааөмнөх болон дараагийн бичлэгүүдийг эрэмбийн илэрхийллийн утгууд дээр үндэслэн тодорхойлсон болохыг харуулж байна.

Жишээлбэл, үр дүнгийн дарааллыг огноогоор эрэмбэлсэн бол:

огноо Бүтэн нэр Утга
1 2001 оны нэгдүгээр сарын 1

Иванов М.

10
2 2001 оны нэгдүгээр сарын 2 Петров С. 20
3 2001 оны нэгдүгээр сарын 3 Сидоров Р. 30
4 2001 оны нэгдүгээр сарын 4 Петров С. 40

Тус тусад нь, Тэр нь:

§ 3-р бичилтийн өмнөх оруулга нь 2-р бичилт болно.

Одоогийн, Одоогийн(зүгээр нь параметрүүд ЭхлэхТэгээд Төгсгөл), тэгвэл 2-р бичлэгийн хувьд энэ фрагмент нь нэг бичлэгээс бүрдэнэ 2. Илэрхийлэл нь 20-той тэнцүү байна.

Хэрэв параметрийн утга бол Хамтдаа, Тэр нь:

§ 3-р бичилтийн өмнөх оруулга нь 1-р бичилт болно.

§ тооцооны фрагмент гэж тодорхойлсон бол Одоогийн, Одоогийн(зүгээр нь параметрүүд ЭхлэхТэгээд Төгсгөл), дараа нь 2-р бичлэгийн хувьд энэ фрагмент нь 2 ба 3-р бичлэгээс бүрдэнэ. Илэрхийлэл Тооцоолох илэрхийлэл("Нийт (утга)", одоогийн, одоогийн) 50-тай тэнцүү байх болно.

-тэй тэнцүү параметрийн утгыг зааж өгөх үед Хамтдаа, параметрээр ЭхлэхТэгээд Төгсгөлта албан тушаалын офсетийг зааж өгөх боломжгүй Эхний, сүүлчийн, өмнөх, дараагийн.

Тооцоолох илэрхийлэл("Нийт (нийлбэрийн эргэлт)", "Эхний", "Одоогийн")

Хэрэв та өмнөх мөрөнд бүлэглэх утгыг авахыг хүсвэл дараах илэрхийллийг ашиглаж болно.

Тооцоолох илэрхийлэл("Үнэлгээ", "Өмнөх")

Жагсаалт шинэфункцууд:

ExpressionWithGroupArray-ээр тооцоол(,) -

Функц нь массивыг буцаадаг бөгөөд элемент бүр нь заасан талбараар бүлэглэх илэрхийлэлийг үнэлэх үр дүнг агуулсан байдаг.

Илэрхийлэлийг группын утгын хүснэгтээр тооцоол(,) -

Энэ функц нь утгын хүснэгтийг буцаадаг бөгөөд мөр бүр нь заасан талбараар бүлэглэх илэрхийллийг үнэлэх үр дүнг агуулсан болно.

Утга дүүргэсэн() - Хэрэв утга нь утгаас өөр байвал Үнэнийг буцаана энэ төрлийнөгөгдмөл, NULL-ээс бусад, хоосон лавлагаааас бусад, Тодорхойгүйгээс бусад. Boolean утгуудыг NULL утгуудаар шалгана. Мөрүүдийг хоосон зайгүй тэмдэгт байхгүй эсэхийг шалгана

Формат(, ) - Дамжуулсан утгын форматлагдсан мөрийг хүлээн авна. Форматын мөрийг 1C: Enterprise системийн форматын мөрийн дагуу тохируулна.

Дэд мөр(, , ) - Энэ функц нь мөрнөөс дэд мөрийг задлахад зориулагдсан.

Шугамын урт() - Функц нь мөрний уртыг тодорхойлоход зориулагдсан. Параметр нь мөрийн илэрхийлэл юм

Шугам() - Хэрэв массивыг параметр болгон дамжуулсан бол функц нь ";" тэмдэгтээр тусгаарлагдсан бүх массивын стринг дүрслэлийг агуулсан мөрийг буцаана. Хэрэв утгын хүснэгтийг параметр болгон дамжуулсан бол функц нь утгын хүснэгтийн бүх мөрийн тэмдэгтүүдийг агуулсан мөрийг буцаана, мөр бүрийн нүднүүдийн дүрслэлийг ";" тэмдэгтээр, мөрүүдийг шинэ мөрөөр тусгаарлана. зан чанар. Хэрэв элементийн тэмдэгт мөр хоосон байвал түүний төлөөллийн оронд тэмдэгт мөр гарч ирнэ.